无忧启动论坛

标题: [sysshield]系统安全盾 [打印本页]

作者: wang6071    时间: 2005-6-11 13:19
标题: [sysshield]系统安全盾
[这个贴子最后由wang6071在 2005/10/10 10:41pm 第 6 次编辑]

软件下载请到:
http://free5.ys168.com/?wangsea

一般来说,如果上面更新地址下到的[系统安全盾]是比较稳定的版本.如果软件更新,一般是在本贴最后先给出主程序测试,稳定后再上传到
http://free5.ys168.com/?wangsea

如果您好对本软件有好的建议,请在本贴后贴出您的建议.

目前软件性能稳定,功能基本成熟,已不开源,请不要再提类似问题.

完整安装包及程序使用说明请单独到偶的空间下载,本贴仅提供覆盖更新文件

[ 本帖最后由 wang6071 于 2006-9-22 11:40 PM 编辑 ]
作者: wang6071    时间: 2005-6-11 13:20
标题: [sysshield]系统安全盾
安全盾自定义规则说明:

  1:本级目录下不创建任何文件:全选X即可。

  2:本级目录及其子目录下都不允许创建任何文件:监视子目录打勾,其余打X。

  3:设置一个免检目录:勾选免检,其余打X。

  4:对某个目录使用免检列表,不在列表中的文件不允许创建:勾选免检+子目录,其余打X。

  5:自定义规则更改后必须应用设置才会保存,监控级别必须在自定义监视上才会有效。

组合应用示例:

  以下设置对应路径 子目录 免检  黑名单  模糊  类型
  (以下由文字代表选择√,未先择的用X表示)

  c:\                        规则:X X X X X
  这条设置是C:盘根目录下不允许创建任何文件,子目录不受影响。
  C:\Program Files\          规则:X X X X X
  注意,全X设置不能继承,所以我们对于c盘的子目录Program Files设置了一个相同的设置。

  但有的用户觉得对于c:\Program Files\设为不允许创建任何文件,要安装文件时自已切换到安全盾的
  安装模式中安装,所以对此目录可设置更严的规则
  C:\Program Files\          规则: 子目录 X X X X
  这样设置后,使用中发现C:\Program Files\KV2005\的病毒库升级在受到了影响,所以
  下面将Kv2005目录设置成免检目录。
  C:\Program Files\KV2005\   规则: X 免检 X X X
  

  c:\windows\                 规则: 子目录 X X X X
  对于windows目录,我们不希望有任何写入,上面的设定可实现这一点。可以,假设我们有一些程序需要
  写 runlog.log这个记录文件到c:\windows下时又如何办呢?
  我们需要先将runlog.log添加到免检文件中,再如下设置:
  c:\windows\                 规则: 子目录 免检 X X X
  这样c:\windows\目录下可以创建runlog.log,其它文件一律不允许创建。当然,如果我们想管理得宽松一
  些,比如使用只不允许创建类型过滤指定的文件时,可以选择:
  c:\windows\                 规则: 子目录 免检 X 类型  
                              或者: 子目录 免检 X 模糊 X  等.  

  c:\windows\temp\             规则: 子目录 X 黑名单 X X
  这个就简单了,对整个临时目录temp使用黑名单过滤。

  除了全X选项外(全X来能继承),其余规则是可以继承的即:
  c:\windows\              子目录 X X X X
  c:\windows\Fonts\        子目录 X X X X
  第二条设置相同规则就是多余的了,因为子目录Fonts不设置时可以继承父目录c:\windwos的设置。


                                                                    wangsea 20060921

[ 本帖最后由 wang6071 于 2006-9-21 11:05 PM 编辑 ]
作者: 紫狐    时间: 2005-6-11 16:42
标题: [sysshield]系统安全盾
没想到那天只是提了一下,兄弟这么快就发布新版和提供源码,感谢wang6071提供这么好的软件和源码!测试中!
作者: emca    时间: 2005-6-11 17:27
标题: [sysshield]系统安全盾
兄弟是最好的原创者之一,佩服!佩服!佩服技术也佩服人品!今天过节,顺便祝兄弟节日快乐,老婆成群:)
作者: emca    时间: 2005-6-11 17:28
标题: [sysshield]系统安全盾
如此原创和奉献,版主置顶吧!!!
作者: emca    时间: 2005-6-11 17:36
标题: [sysshield]系统安全盾
很高兴地试用。我不擅长编程,但提几点建议:
1、“当前启动项”的内容框建议改为自动显示横向和纵向滚动条,以方便长路径地查看;
2、“进程监视”中建议添加进程文件对应的路径,则查杀恶意程序时更加方便、实用!而且也是必需的。
3、对于属于系统本身的关键进程,能否以不同颜色显示?如果文件名及所在目录与系统中默认的一致,就可以以绿色显示;其余的以红色显示。如何?
4、“杀进程”功能,如果能够改进一下,改成前面带有复选框,用户可选择多个进程,然后一并查杀,以解决恶意程序的守护进程常规情况下无法关闭的问题;
其他的临时想到临时再提。谢谢!!
作者: emca    时间: 2005-6-11 17:57
标题: [sysshield]系统安全盾
请教:
对于 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor 这样带有空格的键项名称,是否直接写入?还是要用引号括起来?
作者: emca    时间: 2005-6-11 18:17
标题: [sysshield]系统安全盾
这里提供本人添加的一些监视项目,不知道格式是否正确,请兄弟指教:
; 深山红叶提供
; 启用系统文件保护:
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=SFCDisable
rval=00000001
; 保护系统初始化程序
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=Userinit
rval=%SystemRoot%\system32\userinit.exe,
; 保护系统外壳
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=VmApplet
rval=rundll32 shell32,Control_RunDLL "sysdm.cpl"
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=Shell
rval=%SystemRoot%\Explorer.exe
; 防范恶意程序彻底隐藏文件(开启显示隐藏文件也不行!)
rem 防范恶意程序彻底隐藏文件:
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=CheckedValue
rval=00000000
;
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=ValueName
rval=Hidden
;
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=DefaultValue
rval=00000002
;
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=HKeyRoot
rval=80000001
; 防范命令行自动运行参数被添加附加程序:
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor
rkey=AutoRun
rval=
; 防范以登录或注销脚本形式自动加载恶意程序:
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts
rkey=
rval=
; 修正和防范启动组位置重定向:
root=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
rkey=Startup
rval="%USERPROFILE%\「开始」菜单\程序\启动"
; 防范通过 load 或 run 自动运行恶意程序和更改可执行文件类型:
root=HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows
rkey=load
rval=
root=HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows
rkey=run
rval=
;保持pif文件的打开方式
root=HKEY_CLASSES_ROOT\piffile\shell\open\command
rkey=
rval="%1" %*
;保持inf文件的打开方式
root=HKEY_CLASSES_ROOT\inffile\shell\open\command
rkey=
rval=%SystemRoot%\Notepad.exe %1
;保持hlp文件的打开方式
root=HKEY_CLASSES_ROOT\hlpfile\shell\open\command
rkey=
rval=%SystemRoot%\System32\winhlp32.exe %1
;保持cmd批处理文件的打开方式
root=HKEY_CLASSES_ROOT\cmdfile\shell\open\command
rkey=
rval="%1" %*
; 取消碎片文档类型:
;原始键值:rundll32 %SystemRoot%\system32\shscrap.dll,OpenScrap_RunDLL %1
root=HKEY_CURRENT_USER\ShellScrap\shell\open\command
rkey=
rval=
; 防止恶意 DLL 与 Explorer 链接加载:
root=CLASSES_ROOT\CLSID\{E6FB5E20-DE35-11CF-9C87-00AA005127ED}\InProcServer32
rkey=
rval=%SystemRoot%\system32\webcheck.dll

作者: 紫狐    时间: 2005-6-11 19:18
标题: [sysshield]系统安全盾
简单的看了一下,wang6071的编程水平不错,但是我觉得使用Easysize控件的作用不大,建议去掉,这样在一定程度可以减少资源的占用,由于我对Delphi还不是很懂,而且也没有详细的细读程序,所以想问一下,兄弟是不是以发生消息来进行检测的?另,我看到程序里面有使用到Time控件,是不是程序检测是以时间为间隔来进行检测?如果是,这样的效率会不会低了些?不知道用HOOK来写会不会好些?有说错的地方希望wang6071兄弟指正。
作者: runningpig    时间: 2005-6-11 23:14
标题: [sysshield]系统安全盾
想看看源码,给一个是否可?zjlahfzx@sina.com
作者: pyqkgd    时间: 2005-6-12 02:10
标题: [sysshield]系统安全盾
下载试用了一下,很好用.希望功能更强一些,例于能够例出注册表中启动项.
作者: wang6071    时间: 2005-6-12 10:58
标题: [sysshield]系统安全盾
非常感谢各位朋友对本软件的关注及测试。昨天过节,没看贴子,现在回答各位兄弟的对软件的提议
首先回答红叶兄的建议及关于userset.ini的写法问题:
emca兄的建议:
  1、“当前启动项”的内容框建议改为自动显示横向和纵向滚动条,以方便长路径地查看;
  其实可以自动横向与纵向的,实在不行还可以最大化窗口看.主要原因是使用了一个鸡肋控件Easysize,下一版将去除它(以前用它只是为了适应各种不同分辨率下窗口不变形,不过现在看来效果并不好).

  2、“进程监视”中建议添加进程文件对应的路径,则查杀恶意程序时更加方便、实用!而且也是必需的。
  因"进程监视"在win9x可显示完整路径及文件名,只是在NT系统如任务管理器一样无法显示路径及文件名,不过好象这个问题还是有办法解决的.
  3:对于属于系统本身的关键进程,能否以不同颜色显示?如果文件名及所在目录与系统中默认的一致,就可以以绿色显示;其余的以红色显示。如何?

  同2,如果取得文件路径,显示上做点功夫可以实现.

   4、“杀进程”功能,如果能够改进一下,改成前面带有复选框,用户可选择多个进程,然后一并查杀,以解决恶意程序的守护进程常规情况下无法关闭的问题;
   明白了,下一版改进.
关于在xp下使用userset.ini的问题:
   
   虽然偶努力想通过文字说清楚如何写userset.ini,但看来我的文字表达能力还是太差,还是有许多地方让各位兄弟不好理解呀.
   对于 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor 这样带有空格的键项名称,是否直接写入?还是要用引号括起来?
   是直接写入.不要用引号.如果对Command Processor主键名不太确定,可以打开注册表编辑器,找到这个键,然后右键重名定位到它的名字上,然后拷贝出它的名字.
这里提供本人添加的一些监视项目,不知道格式是否正确,请兄弟指教:
[locklist]
; 深山红叶提供
;
; 启用系统文件保护:
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=SFCDisable   //这个键值名可不行,因为它的类型是REG_MULTI_SZ型,本程序目前只支持REG_SZ型
rval=00000001     
;
; 保护系统初始化程序
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=Userinit  //这个可以使用,类型是REG_SZ
rval=%SystemRoot%\system32\userinit.exe,
;
; 保护系统外壳
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=VmApplet  //这个可以使用,类型是REG_SZ
rval=rundll32 shell32,Control_RunDLL "sysdm.cpl"
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=Shell    //这个也可以,但偶的win2003下 rval=Explorer.exe  不需要%SystemRoot%路径(以注册表中所见为准,不知xp是否有路径)
rval=%SystemRoot%\Explorer.exe
;
; 防范恶意程序彻底隐藏文件(开启显示隐藏文件也不行!)
rem 防范恶意程序彻底隐藏文件://不能用rem开头做注释,注释全部以;开头
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=Checkedvalue   //这个偶的注册表中无此键值名,看值的样子好象不是REG_SZ型
rval=00000000
;
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=valueName      //偶的注册表中无此键值名,如果是REG_SZ型就没问题   
rval=Hidden
;
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=Defaultvalue   //同上,偶的机器中无,查看你的注册表以确定
rval=00000002      
;其实对于系统默认没有的主键及键值可以加到[DelList]段删除就可以了,不必用locklist锁定
;锁定的话系统中没有此键或键值是会创建[locklist]中指定的主键或键值的.
;
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=HKeyRoot  //偶的机器上没有此键值名
rval=80000001
; 防范命令行自动运行参数被添加附加程序:
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor
rkey=AutoRun   //这个可以使用
rval=
; 防范以登录或注销脚本形式自动加载恶意程序:
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts  //这个主键偶的机器上没有,加到[DelList]段删除中即可
rkey=              
rval=
; 修正和防范启动组位置重定向:
root=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
rkey=Startup  
;这个偶不确定,因为我的是rval=E:\Documents and Settings\Administrator\「开始」菜单\程序\启动
;各个机器可能会不同吧,以注册表中所见为准
rval="%USERPROFILE%\「开始」菜单\程序\启动"
;
; 防范通过 load 或 run 自动运行恶意程序和更改可执行文件类型:
root=HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows
rkey=load           //这个可以使用
rval=
root=HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows
rkey=run     //偶机器上没有此键名,可加到[DelList]中删除
rval=
;
;保持pif文件的打开方式
root=HKEY_CLASSES_ROOT\piffile\shell\open\command
rkey=        //这个可以使用
rval="%1" %*
;
;保持inf文件的打开方式
root=HKEY_CLASSES_ROOT\inffile\shell\open\command
rkey=  //偶机器上这个键值类型是REG_EXPAND_SZ,不能使用,另外,win2003下rval=%SystemRoot%\System32\NOTEPAD.EXE %1多了个路径system32
rval=%SystemRoot%\Notepad.exe %1
;
;保持hlp文件的打开方式
root=HKEY_CLASSES_ROOT\hlpfile\shell\open\command
rkey=    //这个可以使用
rval=%SystemRoot%\System32\winhlp32.exe %1
;
;保持cmd批处理文件的打开方式
root=HKEY_CLASSES_ROOT\cmdfile\shell\open\command
rkey=    //可以使用
rval="%1" %*
;
; 取消碎片文档类型:
;原始键值:rundll32 %SystemRoot%\system32\shscrap.dll,OpenScrap_RunDLL %1
root=HKEY_CURRENT_USER\ShellScrap\shell\open\command  
rkey=   //偶机器上没有此ShellScrap主键,可放在[DelList]段中删除即可
rval=
;
; 防止恶意 DLL 与 Explorer 链接加载:
root=CLASSES_ROOT\CLSID\{E6FB5E20-DE35-11CF-9C87-00AA005127ED}\InProcServer32
rkey=          //这个不行,键名默认值是REG_EXPAND_SZ型
rval=%SystemRoot%\system32\webcheck.dll
以上是对红叶兄提供的[locklist]段中可使用和不可使用部分的注解,各位兄弟可参照打开自已的注册表实际对比一下,就明白如何写userset.ini了.
  
不过,对于文件类型锁定的指定我还是要和大家探讨一下:
如果是我,对文件类型我会这么做,useset.ini内容如下
[DelList]
;注删表编辑器解锁
root=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\
rkey=DisableRegistryTools
[locklist]
;只需锁定.reg文件的打开方式,然后导出一分ROOT分支root.reg
;当发生指定方式打开错误时,以保证偶的备份能顺利导入即可.
root=HKEY_CLASSES_ROOT\regfile\shell\open\command
rkey=
rval=regedit.exe "%1"


作者: wang6071    时间: 2005-6-12 10:59
标题: [sysshield]系统安全盾
下面引用由紫狐2005/06/11 07:18pm 发表的内容:
简单的看了一下,wang6071的编程水平不错,但是我觉得使用Easysize控件的作用不大,建议去掉,这样在一定程度可以减少资源的占用,由于我对Delphi还不是很懂,而且也没有详细的细读程序,所以想问一下,兄弟是不 ...
   Easysize控件的作用确实不大,偶用它只是想用它来实现在不同分辨率下显示界面的一致性.可以去掉,但资源并不能省多少,"变化监视"本身仅占极少的资源.
   另外,检测确实是用的Timer控件,无它,只为节省资源占用.用全局HOOK占用要比现在多得多(至少我以前尝试是这样的).用Timer并不会降低效率(无论恶意程序写注册表多少次,我们只要确保能删除它最后一次写在注册表中的东西就成了.)
   再有,用Timer程序会非常健状(指我们这个软件的情况),说点题外话:我曾经帮朋友在一台中了木马的机器上杀进程,结果是XP的任务管理器死了,我们的变化监视软件仍然活着,仍旧能杀进程.

作者: wang6071    时间: 2005-6-12 11:09
标题: [sysshield]系统安全盾
关于pyqkgd兄提的
    下载试用了一下,很好用.希望功能更强一些,例于能够例出注册表中启动项.
    因为软件定位在于监视而不是一个注册表工具,所以没做这方面的工作,请见谅。个人愚见,导注删表的工具很多,偶想没必要再加一个众多软件都能实现的功能吧。
关于runningpig,wqx520等兄弟因威望不到1不能得到源码的问题:
    是这样的,偶在贴子如下写的:
    因为偶考虑到此软件的危险性,怕不懂的朋友乱改(软件用delphi6编制,应可以在d4-d7都可编译成功),所以软件只对无忧论坛上威望为1以上的朋友开放源码(获得无忧的威望1也不是件容易的事,一定为各位兄弟做了不少奉献.)
    希望得到源码的朋友能在此基础上做出更好的软件。
    所以请不能得到源码的朋友见谅。编译好的软件你可免费下载,传播与使用,希望能得到您的意见。

作者: emca    时间: 2005-6-12 13:32
标题: [sysshield]系统安全盾
几点探讨和说明:
①root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=Shell    //这个也可以,但偶的win2003下 rval=Explorer.exe  不需要%SystemRoot%路径(以注册表中所见为准,不知xp是否有路径)
rval=%SystemRoot%\Explorer.exe
——加上%SystemRoot%是强行指定系统外壳路径,Windows默认是没有的。如果恶意程序用Explorer.exe为文件名,并放到System(NT为System32)目录,则由于后者的路径优先级要高,因此病毒可以优先于系统外壳被加载!
②; 防范恶意程序彻底隐藏文件(开启显示隐藏文件也不行!)
rem 防范恶意程序彻底隐藏文件://不能用rem开头做注释,注释全部以;开头
root=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
rkey=Checkedvalue   //这个偶的注册表中无此键值名,看值的样子好象不是REG_SZ型
rval=00000000
——这个不是Windows的默认键值。如果对此处进行修改,则即使在资源管理器文件夹选项中启用显示系统及隐藏文件,资源管理器也不会显示的!某些病毒就是用此法隐蔽自己,效果不错。本人用的是TotalCommander,因此经常可以在别人机器上找到好多类似的隐蔽恶意程序!
③; 修正和防范启动组位置重定向:
root=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
rkey=Startup  
;这个偶不确定,因为我的是rval=E:\Documents and Settings\Administrator\「开始」菜单\程序\启动
;各个机器可能会不同吧,以注册表中所见为准
rval="%USERPROFILE%\「开始」菜单\程序\启动"
——修改此处键值可以重定向启动组位置,此时开始菜单中的启动组却仍然指向原来的位置。这给恶意程序自动加载提供了隐蔽的手法。
----------------------------------------
其实恶意程序可以利用的地方还有许多,现在知道了方法,以后就好办了!希望大家经常交流配置文件!
感谢Wang兄的热心指导!希望大家献计献策,让大家都能够用上一个方便无比的好东西!
再次感谢、致敬!
作者: wang6071    时间: 2005-6-12 16:44
标题: [sysshield]系统安全盾
感谢红叶兄对注册表中恶意键值的注释,学到了不少东西,谢谢!
作者: 渺微    时间: 2005-6-12 23:00
标题: [sysshield]系统安全盾
佩服  学到很多 耐下心来编程
作者: 假皮    时间: 2005-6-13 12:28
标题: [sysshield]系统安全盾
gsg
作者: wuboss    时间: 2005-6-13 15:08
标题: [sysshield]系统安全盾
这么好东东,谢谢楼主
作者: 紫狐    时间: 2005-6-13 17:21
标题: [sysshield]系统安全盾
[这个贴子最后由紫狐在 2005/06/13 05:44pm 第 1 次编辑]

wang6071,在源码里面是不是缺少MSNPopUp。
作者: wang6071    时间: 2005-6-13 18:57
标题: [sysshield]系统安全盾
下面引用由紫狐2005/06/13 05:21pm 发表的内容:
wang6071,在源码里面是不是缺少MSNPopUp。
上传时清理监时文件不小心清掉了,我已重新上传,请重新下载吧。

作者: 紫狐    时间: 2005-6-14 16:26
标题: [sysshield]系统安全盾
wang6071,建议下个版本添加在SysTray上双击的时候显示主界面的事件。
作者: wang6071    时间: 2005-6-14 18:57
标题: [sysshield]系统安全盾
下面引用由紫狐2005/06/14 04:26pm 发表的内容:
wang6071,建议下个版本添加在SysTray上双击的时候显示主界面的事件。
谢谢紫狐兄的建议。
功能上下一版拟做如下改进:
1:去掉鸡肋控件Easysize。(已完成)
2:进程监视的增强,98与xp都能完整地显示程序路径,xp下可显下该程序包含的模块.
(这个已完成)
3:杀进程功能改进,拟用更好的方式杀进程(思路是杀本身进程,杀父进程等,筹划中)。
4:注册表写功能增强,使写操作完全支持字符串的各种类型。(还未开始)
其它的,听大家的意见啦。。。。
作者: xubo1971    时间: 2005-6-14 20:09
标题: [sysshield]系统安全盾
好东西,值得期待喔。
作者: emca    时间: 2005-6-14 21:07
标题: [sysshield]系统安全盾
感觉兄弟这一个小工具应当是顺应目前的潮流的一个极其实用、极其宝贵的一个工具!理由:
1、开放接口的结构,使得在实现基本功能之后,能够在用户(或高手)指导下,轻而易举地完成程序功能的无限升级;
2、小巧方便,远非那些标榜自己的大公司的软件所能比;
3、开放源代码,顺应潮流,前途不可估量!目前许多小工具还没有成熟就先吵着注册什么的,但用户并非全是傻瓜,真正成功的又有几何?些工具完美后,我想应当在互联网上凭借其真正的实用性一定会取得一席之地,此时作者的品牌也就自然形成。以后再如何发挥,就是下一步的事情了,并非完全没有回报的!但这种凭借实力取得的成绩和口碑,与非法捆绑的网络猪、3721等相比,根本是不可同日而语的!
4、一点建议:一切以实现主要的防御目的为重,技术上一定要有前瞻性,千万不要添加任何无关紧要的功能!
5、建议将锁定启动项目作为默认被选定。
6、在完善基本功能的基础上,再考虑更灵活的选项。
7、目前,本人已经确定互联网上的一种全新的“网络黑社会型”病毒类型,某杂志已经刊登了预告,目前正在紧张的证据收集和文章撰写之中。我将从技术和法律的双重角度来探讨目前的网络黑社会问题。些问题一经提出,相信兄弟的这款工具也可以借势更进一步!到时可以独成一统,也可以考虑与知名品牌合作……嘿嘿嘿嘿~

作者: wang6071    时间: 2005-6-14 22:33
标题: [sysshield]系统安全盾
谢谢红叶兄对软件的过高评价和对软件后期改进的建议。
"一切以实现主要的防御目的为重,技术上一定要有前瞻性,千万不要添加任何无关紧要的功能!"
  这条最好,我会记住的。
建议将锁定启动项目作为默认被选定。在完善基本功能的基础上,再考虑更灵活的选项。
  这条我也非常赞成(所以这个版本的变化监视我仍然是默认就监测启动项目),因为我喜欢写操作简单,但又不乏灵活性的软件。我对好软件的看法也是:操作简单、有扩展性。
  至于对软件后期的展望,谢谢红叶兄的吉言,但偶清楚自已的水平(93年函大计算机应用,大家可以想想能学些什么),所以努力写好这个软件回报大家对这个软件的支持已很满足了。
作者: emca    时间: 2005-6-15 10:58
标题: [sysshield]系统安全盾
转一个帖子:
下面引用由紫狐2005/06/14 10:33pm 发表的内容:
昨晚处理了一台中了CNNIC的机器,那个垃圾CNNIC真的很讨厌,加入了几个进程,还使用DLL加载,而且还在IE的BHOs加入内容,我要出动Browser Sentinel、IceSword、ComeXp等才解决掉,看来确实得增加对付这些东东的 ...
现在处理这类问题的过程中,我发现即使系统中进行了免疫,但对捆绑式安装无效;即使安装了监视程序,但许多人在出现对话框时经常不加考虑地选择了“是”……
因此,一般的防范方法对这类东西应当是没有理想的效果了!
目前我发现真正有效的仍然是用NTFS的目录和文件权限功能,将相关垃圾文件和目录的ACL设置为Everyone拒绝访问,只有这样才既可防,也可杀(设置并重启后垃圾插件就无法加载运行了)。我们不妨把这个功能定义为“静态锁定”。
-------------------------------------
因此我想Wang兄是否可以考虑日后添加一项“静态锁定非法项目”(包括文件名/目录名以及注册表键值)的功能?比如把这个功能做成一个独立的选项卡……
作者: yjfyj    时间: 2005-6-15 16:33
标题: [sysshield]系统安全盾
这么好的东西我怎么没有权限看呢 拜托了
作者: 紫狐    时间: 2005-6-15 17:46
标题: [sysshield]系统安全盾
下面引用由emca2005/06/15 10:58am 发表的内容:
转一个帖子:
现在处理这类问题的过程中,我发现即使系统中进行了免疫,但对捆绑式安装无效;即使安装了监视程序,但许多人在出现对话框时经常不加考虑地选择了“是”……
因此,一般的防范方法对这类东西应当是 ...
这个提议很好;
Downloaded Program Files这个目录也是那些垃圾软件经常藏匿的地方,能够对他进行监控就可以减少垃圾软件的“入侵”。
作者: hyzrm2003    时间: 2005-6-15 18:16
标题: [sysshield]系统安全盾
路过的门外汉
作者: wang6071    时间: 2005-6-15 19:15
标题: [sysshield]系统安全盾
[这个贴子最后由wang6071在 2005/06/15 07:36pm 第 1 次编辑]

[UploadFile=1_1118834013.jpg]
大家的建议我会认真考虑的,这两天主要在完成 杀进程 部分的增强(已成功地干掉了在服务中启动的kv2005及kv防火墙),基本上是完成了还未做更多的测试,先贴个图给大家看一下。
超强杀进程采用的是微软内置的超强命令,只不过是保它集成在界面中,可以批处理地杀一帮进程.呵呵,不怕DLL守护啦.
微软无敌命令介绍:
    ntsd -c q -p PID
  只有System、SMSS.EXE和CSRSS.EXE不能杀。前两个是纯内核态的,最后那个是Win32子系统,ntsd本身需要它。ntsd从2000开始就是系统自带的用户态调试工具。被调试器附着(attach)的进程会随调试器一起退出,所以可以用来在命令行下终止进程。使用ntsd自动就获得了debug权限,从而能杀掉大部分的进程。
作者: wang6071    时间: 2005-6-15 21:46
标题: [sysshield]系统安全盾
[这个贴子最后由wang6071在 2005/06/15 09:47pm 第 1 次编辑]

由于发现新出的一种无进程木马在
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\ShellExecuteHooks]下写入键值,所以提前发布一个半成品
如果只有一个
"{AEB6717E-7E19-11d0-97EE-00C04FD91972}"="" 是正常的多了就得考虑了。
这个版本内置检查中加入了上面说的防无进程木马的注册表检查,请大家同时测试一下楼上说的超强杀进程。
由于文件大小超过了200K,分包可能有朋友不会合并,我放到我的空间了
http://wangsea.ys168.com/
作者: emca    时间: 2005-6-15 22:59
标题: [sysshield]系统安全盾
1、“册除”应当为“删除”,笔误请修正;
2、建议添加程序自身的保护能力,比如退出时确认一下,甚至可以考虑日后添加用口令才能退出的功能(实现是否麻烦,对系统是否有影响?仅供参考)
3、我试用新版本时,两个选项默认是未被选定的,是否改为默认选定好些?
作者: wang6071    时间: 2005-6-15 23:28
标题: [sysshield]系统安全盾
[这个贴子最后由wang6071在 2005/06/16 01:17am 第 3 次编辑]
下面引用由emca2005/06/15 10:59pm 发表的内容:
1、“册除”应当为“删除”,笔误请修正;
2、建议添加程序自身的保护能力,比如退出时确认一下,甚至可以考虑日后添加用口令才能退出的功能(实现是否麻烦,对系统是否有影响?仅供参考)
3、我试用新版本时, ...
没注意打错字了,谢谢提醒.
退出时确认也可以加入,这个不麻烦,口令的事暂不考虑,因为密码与绿色软件有一点小冲突,保存在何处要考虑一下.
第三点是指  启动时运行 锁定启动组 吗?我原先的考虑是不把软件做得太霸道,让用户运行后自已选择。因为启动时运行要将自已加到启动组中,而锁定启动组虽不写注册表但怕用户拷贝时将自已的配置文件连同软件本身一起拷到不同的机器上造成误删除。(虽然我在代码中加了检测系统用户名,但现在克隆的机器比较多,怕造成不必要的损失)同时锁定启动组也仅是每次开机是否按重新生成set.ini,关系不是很大,所以是这么设定的。
如果觉得菜鸟多于老鸟的话也可以先以做成默认是选定的。
还是修正一下,按上面的3点更改了一下程序,请各位兄弟试试感觉怎样?

作者: xianhu    时间: 2005-6-16 10:20
标题: [sysshield]系统安全盾
怎么看不了?
作者: 紫狐    时间: 2005-6-16 13:45
标题: [sysshield]系统安全盾
下面引用由wang60712005/06/15 11:28pm 发表的内容:
没注意打错字了,谢谢提醒.
退出时确认也可以加入,这个不麻烦,口令的事暂不考虑,因为密码与绿色软件有一点小冲突,保存在何处要考虑一下.
第三点是指  启动时运行 锁定启动组 吗?我原先的考虑是不把软件做得太霸道 ...
口令的问题能不能用加密串保存在ini文件里面,而且连设置串都加密。
作者: emca    时间: 2005-6-16 18:55
标题: [sysshield]系统安全盾
口令可以是明文。我想如果要设置口令,唯一的目的就是为了防范监视器被不小心随意关闭。我就不小心关闭了一次。
作者: wang6071    时间: 2005-6-16 19:59
标题: [sysshield]系统安全盾
下面引用由emca2005/06/16 06:55pm 发表的内容:
口令可以是明文。我想如果要设置口令,唯一的目的就是为了防范监视器被不小心随意关闭。我就不小心关闭了一次。
上一个匆忙改的版本有一个BUG,不能使用用户定义文件userset.ini,所以改进了一下,其的更新见下面。下载还是在我的空间:http://wangsea.ys168.com/
口令下次的版本中加入。
最新增加的说明:
   调整了一下功能关联。软件第一次运行将自已加到run中,并自动锁定启动组。如果要删除本软件,请先解除"启动时运行"的选项,退出软件即可删除。
   当锁定启动组选择未勾选时,每次开机重新生成配置文件set.ini.
   若软件运行中未勾选"锁定启动组",当在使用 关闭监视--然后--启动监视 时重新生成新的set.ini文件,以用于某些启动时运行软件的安装。反之,当"锁定启动组"被选定,则关闭监视--然后--启动监视仍然检测原来的set.ini中记录的启动项是否被改变。
   为节约资源,进程显示页的刷新不是实时刷新的。在以下三种情况下可以看到进程显示的刷新:
   1:在启动监视与进程监视页面中切换一下。
  
   2:最小化软件到托盘,再重新使用"恢复窗口"功能恢复窗口时。
   3:杀掉某个进程后。
   新的功能:
   进程管理中如果你杀掉Explorer,程序将会自动重新开启一个Explorer,并同时将自已的任务栏图标刷新。
所以即使其它的任务栏图标在杀死Explorer后不可见,本软件的任务栏图标仍然可见,解决最小化后调不出界面的问题。
  这个功能主要用在杀掉大多数木马的宿主Explorer,以便进行清除木马的后期工作。

作者: lj858155    时间: 2005-6-16 22:18
标题: [sysshield]系统安全盾
怎么可以加载多次,应该有自我检验的能力
作者: emca    时间: 2005-6-16 22:19
标题: [sysshield]系统安全盾
下面引用由wang60712005/06/16 07:59pm 发表的内容:
上一个匆忙改的版本有一个BUG,不能使用用户定义文件userset.ini,所以改进了一下,其的更新见下面。下载还是在我的空间:http://wangsea.ys168.com/
口令下次的版本中加入。
最新增加的说明:
   调整了一下功能 ...
看得出,Wang兄不但有不错的编程水平,而且有极好的编程习惯!
作者: peak8    时间: 2005-6-17 06:58
标题: [sysshield]系统安全盾
下面引用由wang60712005/06/16 07:59pm 发表的内容:
上一个匆忙改的版本有一个BUG,不能使用用户定义文件userset.ini,所以改进了一下,其的更新见下面。下载还是在我的空间:http://wangsea.ys168.com/
口令下次的版本中加入。
最新增加的说明:
   调整了一下功能 ...
建议:让此程序成为windows的服务!,这样就可以在登陆前次程序就已经生效!

作者: xflinlin    时间: 2005-6-17 10:14
标题: [sysshield]系统安全盾
学习中。 谢谢
作者: galaxytec    时间: 2005-6-17 13:15
标题: [sysshield]系统安全盾
我想下载
作者: dinggg1    时间: 2005-6-17 14:58
标题: [sysshield]系统安全盾
找了好久了 谢谢分享
作者: 老毛桃    时间: 2005-6-17 19:18
标题: [sysshield]系统安全盾
来迟一步,感谢楼主的无私精神,顶一下先
作者: wang6071    时间: 2005-6-17 20:00
标题: [sysshield]系统安全盾
听取了各位朋友的意见,今日更新如下:
1:加入用户退出码,退出号采取随机方式给出(避开了保存密码),防止误退.现在退出注册表监视器有两个方案
  a:右键托盘小图标选择退出(需要输入随机的退出号)。
  b:通过杀进程“自杀"。
2:userset.ini做了一个小修改
[locklist]段中现在允许使用 reg_sz型及reg_expland_sz型(以前不支持reg_expland_sz型),这样对文件打开方式的锁定基本上都可以使用了.其它的类型一般不会有恶意程序修改.
要注意的是,locklist段支持的reg_expland_sz型必须是你系统存在的键值,若不存在则默认创建的是reg_sz型,这点请大家注意.也就是说,仅可以使用locklist段在注册表中新增一个reg_sz型的键值,其它的类型是不支持新增的.
程序中对rval将自动校验其类型,仅reg_sz及reg_expland_sz型才会做锁定恢复,不再因类型错误写不进注册表而出现系统提示数据类型不匹配的窗口.
3:有朋友们提到程序可以反复加载的问题,其实只有你保持程序自动启动(不手动启动)就没有这个问题,不过修改这一点并不麻烦,所以就顺便加了几行代码保证只有一个"注册表监视器"运行.
4:有朋友提出将程序放到服务中启动,因服务中启动的程序是没有界面的,暂不做这样的考虑.
下载地方不变:http://wangsea.ys168.com/
作者: xubo1971    时间: 2005-6-17 20:27
标题: [sysshield]系统安全盾
下载试用了一下,感觉很不错,进程类型也分开了,我很喜欢它!
发现有一些未知进程未显示路进,希望能改进。
作者: 紫狐    时间: 2005-6-18 00:06
标题: [sysshield]系统安全盾
源码没有更新~~~~呵呵~~~
作者: wang6071    时间: 2005-6-18 01:06
标题: [sysshield]系统安全盾
下面引用由紫狐2005/06/18 00:06am 发表的内容:
源码没有更新~~~~呵呵~~~
别慌呀,等我再查一下有无BUG,把帮助文件重写一下就上传源码.

作者: would    时间: 2005-6-18 03:25
标题: [sysshield]系统安全盾
good啊……真係好利害啊
作者: wang6071    时间: 2005-6-18 11:08
标题: [sysshield]系统安全盾

今天花了三个钟头再次测试并重写了帮助文件(1楼源码及2楼软件说明已更新)
http://wangsea.ys168.com/ 已重上传了加入说明的压缩包。
xubo1971朋友提出的某些未知进程未显示路径,可能是因为这些进程是通过服务加载的,所以无法取得路径。待找到好的方法再解决吧。
软件的基本功能是完成了,如果没有大的改动或者是Bug发现,下一个版本可能要过一段较长的时间才会推出。学习兼资料搜集中.............




作者: pk126    时间: 2005-6-18 20:52
标题: [sysshield]系统安全盾
一为新人报到,二路过,三顶!~
作者: emca    时间: 2005-6-18 22:34
标题: [sysshield]系统安全盾
我在使用Mcafee的时候,发现一个非常实用的功能:锁定系统目录,禁止向Windows和System32目录写入EXE或DLL文件。如果这个工具能够实现这个功能,则多数情况下不是用户自己安装程序时,其他试图感染系统目录的企图都应当可以防范的。大家认为如何?当然操作的方便性上大家可以讨论。在此基础上,甚至可以考虑锁定Program Files目录,禁止在其中生成空目录(这可能对于安装新软件有些不便),而如果能够由用户指定不生成哪些文件名或目录就更好了!这就相当于一套特殊的防毒软件,通过作者和热心人对恶意程序特征目录和文件名的提供和收集,把它写入配置文件清单,则我们就拥有对付 3721 之流这类恶意网络黑社会病毒的利器了!这是传统的杀毒软件都不具备的功能!
作者: wang6071    时间: 2005-6-19 10:25
标题: [sysshield]系统安全盾
下面引用由emca2005/06/18 10:34pm 发表的内容:
我在使用Mcafee的时候,发现一个非常实用的功能:锁定系统目录,禁止向Windows和System32目录写入EXE或DLL文件。如果这个工具能够实现这个功能,则多数情况下不是用户自己安装程序时,其他试图感染系统目录的企 ...
谢谢红叶兄的提议。
监视文件的创建是可以办到的,但如何监视,如何保护(主要是如何分别正常软件与恶意软件)得花点心思去想一个周全的方案。要做到使用上的简单(这样可适用的不同层次的用户),同时又不乏设置上的灵活性,考虑中......

作者: emca    时间: 2005-6-19 13:53
标题: [sysshield]系统安全盾
建议:
设置两三个可复选的选项——
   ■ 禁止在Windows目录创建以下类型文件:
      □ *.Dll    □ *.EXE   □ *.SYS  □ *.COM   □ *.CMD  □ *.VBS
      (注意:安装某些大型软件时可能需要临时取消限制!)
   ■ 禁止在系统目录和程序目录创建指定的文件或目录(多个项目以半角分号隔开,不区分大小写。如 3721;Dudu;……)
      ————————————(用输入框)
      □同时也禁止访问这些目录或文件
通过上述设置,加上提供一些典型的配置方案(特别是后面那个,相当于病毒特征码了),应当有一定效果。前面一个可宽松一些,默认为选定;后面一个默认可以为选定状态。
大家认为如何?

作者: x521125    时间: 2005-6-19 17:20
标题: [sysshield]系统安全盾
晕我怎么没有查看的权利了呢!!
作者: x521125    时间: 2005-6-20 00:09
标题: [sysshield]系统安全盾
5555为什么我市高级会员怎么就没有威望呢!!
作者: wxw1556    时间: 2005-6-20 07:15
标题: [sysshield]系统安全盾
我怎么不能看呀.
作者: rsjd    时间: 2005-6-20 10:58
标题: [sysshield]系统安全盾
源码在哪里?我看看,DELPHI我也是用过不少时间的
作者: cyida    时间: 2005-6-20 13:07
标题: [sysshield]系统安全盾
为什么???我的威望不够,,想看看
作者: Kenz    时间: 2005-6-20 14:27
标题: [sysshield]系统安全盾
弟是最好的原创者之一,佩服!佩服!佩服技术也佩服人品!
作者: 2buydomain    时间: 2005-6-20 15:53
标题: [sysshield]系统安全盾
源码呀
作者: lzwei21    时间: 2005-6-21 00:21
标题: [sysshield]系统安全盾
我看不到
作者: guang5050    时间: 2005-6-21 11:59
标题: [sysshield]系统安全盾
为什么还要设威望 痛苦
作者: 剑指华山    时间: 2005-6-21 13:34
标题: [sysshield]系统安全盾
请问斑竹怎样才能达到威望1?

作者: lj858155    时间: 2005-6-22 09:09
标题: [sysshield]系统安全盾
下面引用由emca2005/06/19 01:53pm 发表的内容:
建议:
设置两三个可复选的选项——
   ■ 禁止在Windows目录创建以下类型文件:
      □ *.Dll    □ *.EXE   □ *.SYS  □ *.COM   □ *.CMD  □ *.VBS
...
红叶的建议很不错
作者: qhyxing    时间: 2005-6-22 09:51
标题: [sysshield]系统安全盾
想看看源码,可惜威望不够!
作者: VictorWoo    时间: 2005-6-22 11:08
标题: [sysshield]系统安全盾
啊,如何提高威望啊?看不了,郁闷
作者: wang6071    时间: 2005-6-22 19:21
标题: [sysshield]系统安全盾
这段时间工作上的事很忙,晚上有点空也在不断地查资料学习中。先贴一点最近看资料的心得,以回答朋友们关注的文件监控的问题:
    以前偶没试过做文件监视,本以为很简单(delphi本身就有一个控件),可真正做起来才发现问题不是那么简单:
    1:现成的控件没找到一个能监测文件及文件夹增加的并返回增加的文件或文件夹名的,只能返回有变化,但监测不到是哪个文件变化了。
    2:查阅很多资料后,得出的结论是在NT系统下要完成实时监控必须用WDM驱动编程(9x下要使用VXD编程)。怪不得这方面的资料那么少,驱动编程一般只有大公司才做,这个东东太高深了,俺不懂呀,想学也没有完整点的资料。
    3:如果仅是不允许用户作增加,改变文件等操作,是有那么几个API(或用钩子)做,但我们的要求是要禁止程序的安装而不是限定Shell的功能。所以此路也不通。
   4:最后在<深度历险>找到了一个范例,可以非实时查到文件的变化,但只支持NT类系统。原理是采用单独的一个线程监测某个目录。
   偶已经将它改写成了一个类,以方便多线程的创建,但随之而来的问题:线程的稳定性及系统资源的占用性(用线程来监视肯定不如驱动编程的实时与稳定,实时的话可以直接就禁止操作了,而非实时要等操作完成后再做后期处理。另外,线程监控是用轮循的方式,而驱动编程是用消息的方式)。所以如果哪位兄弟有更好的想法或做过这方面的东西,不妨告之。
   虽然用线程的方案不是很完美,但做为一个学习的过程我还是决定先用我这个改写成的类试验一下,想法是:当安装程序在windows下创建文件夹或文件后立即删除它的新增文件。如果完成后测试的结果理想,就用这个方案了。
作者: lj858155    时间: 2005-6-24 01:39
标题: [sysshield]系统安全盾
好工具!什么时候新版本出来!锁定文件工具完成以后,能不能做出锁住全部注册表类型的?
作者: 13745399    时间: 2005-6-24 10:50
标题: [sysshield]系统安全盾
努力支持中,学习中
作者: wang6071    时间: 2005-6-24 12:32
标题: [sysshield]系统安全盾
下面引用由lj8581552005/06/24 01:39am 发表的内容:
好工具!什么时候新版本出来!锁定文件工具完成以后,能不能做出锁住全部注册表类型的?
经测试还是比较好的方案,偶用rar压缩一大堆程序自解压来测试偶的自动删除,当一个文件未解压完就开动了删除,以致于偶为了避免删除失败不得不在程序中加入延时以等待文件解压完毕。
新版本近期就会出来,我已经开始将测试代码正式移植到注册表监视器中,当然为了程序的良好结构,还要将代码优化一下,同时也要做更多的测试(ps:在测试过程中我因为一时疏忽写错了一句代码,结果在几秒内俺的C盘文件全部被删除。好在我的C盘没有重要文件,加上有Ghost备份,所以才没造成大的损失).

作者: lj858155    时间: 2005-6-24 13:50
标题: [sysshield]系统安全盾
支持!原创
作者: laq1028    时间: 2005-6-24 15:17
标题: [sysshield]系统安全盾
打几个字,顶一下,提升 威望!
作者: xubo1971    时间: 2005-6-24 18:42
标题: [sysshield]系统安全盾
支持!楼主函大计算机应用专业毕业,编程能有如此水平,真是佩服!
吾连计算机函大都没有上过,只看过一些计算机教材,感觉自己硬件、网络学的还算可以,编程则是一大硬伤。我现在想提高一下编程能力(看过一点C语言,未正式编过程),却感觉有些摸不着门道,无从下手。老大应该是自学成才的范例,能否介绍介绍些经验,并略微指点一二,帮帮我等编程门外汉。盼回!
作者: lj858155    时间: 2005-6-24 20:27
标题: [sysshield]系统安全盾
哈哈、 不说不知道啊 楼主真的很有天分
作者: netsion    时间: 2005-6-25 01:40
标题: [sysshield]系统安全盾
看不了?
作者: wang6071    时间: 2005-6-25 09:39
标题: [sysshield]系统安全盾
下面引用由xubo19712005/06/24 06:42pm 发表的内容:
支持!楼主函大计算机应用专业毕业,编程能有如此水平,真是佩服!
吾连计算机函大都没有上过,只看过一些计算机教材,感觉自己硬件、网络学的还算可以,编程则是一大硬伤。我现在想提高一下编程能力(看过一点C ...
xubo1971兄弟:
   偶虽然是读过函大计算机应用专业,但因为毕业的时间早(1994年毕业),所以当时学的知识(主要是dos下的编程,那时的操作系统主流还是dos3.3)可以说是完全用不上。
   从1994-2003年,偶从事的工作都与计算机无关,虽然自已从1997年购买了自已的第一台计算机,但由于种种原因,并没有写过一个程序。所以,偶的感觉是想学编程并不在于你是否读过计算机专业。而且,计算机知识的更新是非常快的,要撑握新的知识唯有靠自学。
  
   2003年偶的工作变动后进入偶公司的微机室,发现偶公司的收费管理系统在速度上无法及时处理日益增多的用户数据,且原系统存在管理漏洞。一开始是想联系软件公司购置新系统,但一来因为售价不菲(要十多万),二来是公司收费有它的特殊点,所以软件公司的软件要修改才能使用.三是原有的数据不能丢掉,要完全导入新库.四是公司原有用户管理的帐号因原来设计不好,需要重整数据库。软件公司需要花一点时间改程序,但对数据库的导入与数据重整未作明确答复。
   在等待新软件交付使用期间,系统是不可能停止计费的。原系统是用delphi编程的,而我恰好以前购有两本delphi的入门书,所以就开始了我的编程之族。原系统虽然没有源码可以参考,但好在它的数据库没有加密,所以偶分析了数据库的结构,在3个月后写成了偶公司的收费管理程序的第一个升级版,当然以后就没再购软件公司的软件了。
   后来这个系统经过我不断地升级,在速度与数据分析上已经比同行业的同类系统好用多了,这是题外话,就不多说了。
   写这么多主要不是要表现lj858155兄弟所说的我如何有"天份",是想对有志编程的兄弟说:想学编程首先要有爱好(偶如果没有爱好就不会在未使用delphi前就
在书藉打折时购上两本delphi书收藏),二是要有目标(以前偶有一段时间也曾考虑过学VB编程,结果是因为没有目标,遇到一点困难就半途而废了)。
当然,有了爱好有了目标不一定就能编程入门,所以下面我再谈一点学习编程语言的方法(个人看法):
      
1:关于资料的选购:
  
   书不在多,但一定要选对你的入门书。最好到旧书市场淘一本你选择的编程语言的入门书,最好是被某大学课本书。这点很重要!因为你自学是没有老师答疑的,选大学的课本书一是书编写的比较详细,有例题或辅助资料,例子一般都能调试通过。
   这本书仅作为你大概看一下,没必要做它提供的例题,对不理解的地方不要强求,主要的目的是对你想学的那种编程语言有一个印象。
   同类的入门书不要购得太多,一两本足够参照学习了。(当你基本学会了这门语言再购更深入的书,那时一定要选老外的中译本啊!)
   
2:如何开始写第一个程序:
   看书不做例子,你一定会说我是在胡扯。我的看法是教材的例子大多数是算法,做研究还有点价值,初学者往往会因此失去编程的兴趣。那么,我们正式写程序的切入点在哪呢?
   如果你有条件上网,先搜索你要学习的语言的电子书,最好是chm的,pdf的也行,但超星就算了,电脑上看太吃力。没条件上网就到电脑市场购买相关的碟子,这样可以省一大笔学习费用。
   下载来的电子书作为你学习的参考,不一定马上看,是遇到难点时作为资料查的。
   然后到相关的编程网站去下载示例源码,找感兴趣的下它一大堆放到你的硬盘。一个一个地调试这些源码并作一定修改。初期最好读懂原作者的每一行代码的意思,不理解就查你购的书与下的资料(所以开始不要选太长太难的源码来调试)。
   调试中如果有难点,不要轻易放弃,应再找实现同样功能的源码来看。参照学习就容易理会了。当然,肯定还会有部份你无法理解的,这时也不必太深入,暂时先放弃它,学习其它的源码。
   注意:不光是调试别人的源码,同时也要试图NEW一个工程,自已仿照着写一下。
3:关于调试工具的安装
  
   初学者所用的编程工具一定不要下XXX精简版,一定要带帮助的完全版,要学会查软件自带的帮助(这样你才不会因一个小的函数不知道用法而四处问别人了).
有条件的话最好是安装MSDN,那个帮助十分地完整,任何语言都可参照学习它。MSDN有点大(偶也没装),不想装的话用下面的方法。
4:如何更深入编程
   如果平时搜集的资料够多,一般来说不会再上XX编程论坛上问初级的问题了。偶认为如果你编程遇到难点,不要轻易到论坛发贴子求助,应首查你下载的资料中有无解决方案(所以我前面说CHM格式的资料最好,查询方便呀!),如果没有google一下,还是没有就到相关编程网看有无相关的示例源码。最后才选择到论坛发贴子求助。
  
   如果编程已基本入门,就得看一些经典的书来补充开始时快速入门的不够系统的不足了,此时读这些书你就会对你以前写的程序有了更深一层的认识与了解。
   
5:网站推荐
   如果你决定学C,偶推荐的网站是:
   CSDN             http://community.csdn.net/
   中国动力联盟     http://www.playicq.com/   
   如果你决定学delphi,偶推荐的网站是:
   大富翁论坛       http://www.delphibbs.com/
   delphi盒子       http://www.2ccc.com/
   CSDN             http://community.csdn.net/
   中国动力联盟     http://www.playicq.com/
   基于网速及网站的开放性,我建议你到上述网站的论坛上去注册,其它的网站你根据你的需要自已找吧。
   当你学会一门编程语言后,你会发现学习其它的编程语言也是非常容易入门的。
   

作者: xubo1971    时间: 2005-6-25 13:51
标题: [sysshield]系统安全盾
    我总结老大的编程之路:个人兴趣+工作需要+不懈努力。
    所介绍的学习方法要点:1、先找一本编程的大学课本大概看一下;2、调试、修改从网上下载的示例源码;3、不懂的地方先查帮助文件、电子书,再不行就到论坛发贴子求助;4、从自己试着仿照着写程序到独力地写程序;5、在基本入门后,看一些经典的书加以系统学习和提高。
    从调试、修改示例源码入手学编程,真是经验之谈哪!谢谢了!
    老大能否再介绍一点从DOS平台编程到Windows平台编程的过渡问题?因没有老师教,如此简单的问题俺都不知到哪里寻求答案,该看一些什么资料。
作者: wang6071    时间: 2005-6-25 15:18
标题: [sysshield]系统安全盾
[这个贴子最后由wang6071在 2005/06/25 03:27pm 第 1 次编辑]
下面引用由xubo19712005/06/25 01:51pm 发表的内容:
我总结老大的编程之路:个人兴趣+工作需要+不懈努力。
    所介绍的学习方法要点:1、先找一本编程的大学课本大概看一下;2、调试、修改从网上下载的示例源码;3、不懂的地方先查帮助文件、电子书,再不行就到 ...
没有过渡,偶原来的dos编程等于没学。偶是自学delphi后再返回学dos编程的。所以完全是按偶总结的方法来学dos编程的。
如果你想学dos编程,用TC的话则可以先下wintc,并到唯C论坛注册,以便查看老贴解决你的初级问题。
你还可找一些国外的FTP网站下一些别人的源码看。具体网址偶记不住了你可到http://qbdos.51.net/cgi-bin/bbs/index.php去找,这个Basic编程网论坛的置顶贴中有几个好的国外FTP网址,可下到不少源码参考。
如果你是想从dos编程编程到windows过渡,把它当作一门新的语言来学吧,偶上面提到的网址中可下到不少的源码及电子书,应该够用了。

作者: wang6071    时间: 2005-6-25 15:21
标题: [sysshield]系统安全盾
注册表监视器的文件监视部份完成了,请各位到二楼提供的地址中去下载试用。
【文件监视】:本软件提供了一个监视windows目录下新创建文件及文件夹的功能。我们知道,windows目录下一般应用程序是不写这里的,通常在这里添加程序的软件一般来说都是恶意软件。所以,本程序的这功能是自动删除windows目录下新增的文件及文件夹。
    此功能仅能在NT类系统下使用,9x就不支持了。该功能可以手动停止,也允许你在设定"锁定启动组"的情况下决定下次是否随软件启动。
测试该功能的方法:
1:手动在windows\目录下建文件或文件夹。
2:使用软件将一些文件安装到windows\目录下试验。比如用winrar压一些文件为rar.exe自解压文件,然后直接将这些文件释放到windows\目录下试验。
作者: VanXs    时间: 2005-6-25 16:06
标题: [sysshield]系统安全盾
支持!谢谢
作者: 推士机    时间: 2005-6-25 18:17
标题: [sysshield]系统安全盾
下面引用由wang60712005/06/25 09:39am 发表的内容:
xubo1971兄弟:
   偶虽然是读过函大计算机应用专业,但因为毕业的时间早(1994年毕业),所以当时学的知识(主要是dos下的编程,那时的操作系统主流还是dos3.3)可以说是完全用不上。
   从1994-2003年,偶从事的工作 ...
得益匪浅!学习ing
作者: 推士机    时间: 2005-6-25 18:39
标题: [sysshield]系统安全盾
最新测试版只监视了windows根目录,在子目录如system32下仍然可以创建添加文件或文件夹。有些垃圾就是不请自进system32里,建议增加对system32目录的监视。
作者: wang6071    时间: 2005-6-25 19:10
标题: [sysshield]系统安全盾
下面引用由推士机2005/06/25 06:39pm 发表的内容:
最新测试版只监视了windows根目录,在子目录如system32下仍然可以创建添加文件或文件夹。有些垃圾就是不请自进system32里,建议增加对system32目录的监视。
程序设计来就只监视windows根目录,不监视子目录的。主要原因是为了方便安装程序。实际上要监视完还有system,Downloaded Program Files等,但完全做成自动删除会给使用者带来不便。
所以,监视这些目录还不如让用户自行设定这些目录的只读权限。

作者: 推士机    时间: 2005-6-25 19:26
标题: [sysshield]系统安全盾
个人认为增加对system32目录的监视,对阻止木马、病毒入侵是有一定作用的
作者: wang6071    时间: 2005-6-25 19:35
标题: [sysshield]系统安全盾
下面引用由推士机2005/06/25 07:26pm 发表的内容:
个人认为增加对system32目录的监视,对阻止木马、病毒入侵是有一定作用的
增中system32等目录监控不难,偶还是先放一放,多听听大家的意见。是采用目录权限的方式好啦还是自动删除好。

作者: lj858155    时间: 2005-6-25 22:34
标题: [sysshield]系统安全盾
哈哈看了楼主的编程经历,最后成功的几步我没有恒心进行下去,也存在一些特殊原因。工作忙、以前没有上网的条件等。现在是没有办法继续下去了。。。。
作者: lj858155    时间: 2005-6-25 22:37
标题: [sysshield]系统安全盾
另外删除的软件应该有一个记录,怎样方便查看错误和看有什么软件入侵
作者: feihu667    时间: 2005-6-25 23:07
标题: [sysshield]系统安全盾
好东西
作者: clwx    时间: 2005-6-26 00:40
标题: [sysshield]系统安全盾
建议也监测system32目录.
1.监视添加和删除文件.
2.增加判断 添加和删除 的进程 中止还是继续 毕竟有些是自主的.例如安装一些软件. 不是自主安装的则杀之...
作者: wang6071    时间: 2005-6-26 01:34
标题: [sysshield]系统安全盾
查看记录新增与删除原本是办到了的,但因为偶想要快速清除,所以就没做出显示来(做显示一是有影响删除速度,二是当删除文件太多时对线程的稳定性有一定影响。所以最后做成的是删除不了的文件才报告到日志上来。不过如确实需要可以改进这点,只需再开一个线程来显示就行了。
因为想把软件做得易用些,所以不打算采用用户交互的方式来决定新增文件的去留。怕影响软件的安装你完全可以关闭文件监视功能,待安装完毕后再打开。如果做成交互方式,提示对话框在正常软件安装时会很多(例如安装一个较大型的软件),同时也可能想杀木马时已经晚了(木马可能已经在等待回答提示框的同时已经执行了,正在执行的文件是不可能删除的).
system32目录的监视问题我再考虑一下,有朋友试过目录权限吗?目录权限有何不足,望告之。

作者: lj858155    时间: 2005-6-26 09:11
标题: [sysshield]系统安全盾
很多人系统盘都使用FAT32格式,以方便维护、ghost等,我认为应该加入系统子目录文件监视功能
作者: ffppee    时间: 2005-6-27 15:29
标题: [sysshield]系统安全盾
看不到哈

作者: wang6071    时间: 2005-6-27 18:59
标题: [sysshield]系统安全盾
   考虑了几天,觉得反正都锁定windows了,再加个system32的监视也不会有多少不便,所以本次更新增加了system32的锁定.其它目录暂不监视(偶觉得可以手动删除的就必要自动删除,大家最怕的是文件被锁定无法删除),视兄弟们使用后的反馈而决定.
  本次代码已经优化,实际监视的是系统盘上所有新增(含子目录),只不过偶做了一个小小的过滤,所以目前只开放了windows及windows\system32下的新增自动删除.偶想如果你是先使用了监视功能再安装或上网,由于自动删除保护了你的这两个重要目录,注册表启动监视保护了你的启动项,应该很少有程序能够在这种条件下复活了.所以即使留有垃圾文件,手动清除应该项没问题了.
   在文件监视页你可看到被监视目录下的文件新增及程序执行后删除的情况.由于偶改变了一下删除的方式,所以不会再有漏删情况(上一版在安装文件子目录结构很复杂时可能会漏删一部份文件).如果左边的新增中有某个文件则表明是无法删除的文件,这种情况是那个文件正在执行或使用着,根据文件名在杀进程页中杀了它,应该可以自动册除.(这仅是预防万一,一般不会发生这种情况)
当然,监视system32的后果是安装你需要的程序时得注意:
先关闭文件监视-->安装程序-->安完后再打开.
如果忘记了也不要紧,重新按上面说的步骤再次安装即可.
为了保护您的系统,这点不便想来大家都可接受吧.
  虽然偶已经对程序做过了测试,但为慎重起见,请你在测试前备份好您的系统以免造成损失.
ps:有条件的朋友请在VM中做一下样本测试,找些木马及恶意软件安装看看,以便及时发现程序的不足。
作者: sesmoonboy    时间: 2005-6-27 19:40
标题: [sysshield]系统安全盾
好!!!!
作者: emca    时间: 2005-6-27 20:35
标题: [sysshield]系统安全盾
目前的目录监视已经不错了,但有个难以解决的问题:对于那些以捆绑方式安装的垃圾程序,如果不开放系统目录,则正常的程序安装可能受到影响;如果开放系统目录吧,则那些捆绑程序又会乘虚而入。因此仍然建议添加一个黑名单功能。
作者: wang6071    时间: 2005-6-27 22:45
标题: [sysshield]系统安全盾
[这个贴子最后由wang6071在 2005/06/27 10:49pm 第 1 次编辑]
下面引用由emca2005/06/27 08:35pm 发表的内容:
目前的目录监视已经不错了,但有个难以解决的问题:对于那些以捆绑方式安装的垃圾程序,如果不开放系统目录,则正常的程序安装可能受到影响;如果开放系统目录吧,则那些捆绑程序又会乘虚而入。因此仍然建议添加 ...
确实如此,如果要安装一个捆绑方式的软件,而这个干净的软件又不太好找时会遇到这个问题。下一版将增加黑名单方式,多一种选择总是好的。
各位兄弟能否帮忙搜集一下进入的黑名单软件的文件列表(有文件名就可以了不需要具体的安装路径),以便下一版推出时随软件一起发布。
注意的是:黑名单软件的文件列表应指仅是恶意软件的主程序,dll等,不要包含正常软件所需要的辅助文件。

作者: emca    时间: 2005-6-27 23:58
标题: [sysshield]系统安全盾
路径最好要考虑进去。如果恶意程序弄个与系统文件相同的名字但路径不同,是否会被删除?还是系统文件也被误删除?这个得慎重考虑。
恶意程序的黑名单程序随后我整理一些提供。
另外,还可以考虑试图将含有某些特定字符串的文件名视为恶意文件,如含有数字 1 、0 等的程序文件和动态链接库文件。因为绝大多数情况下极少有程序会这样命名,但恶意程序经常冒充,如 expl1rer.exe  rund1132.exe  ntdll.dll ……
作者: wang6071    时间: 2005-6-28 00:18
标题: [sysshield]系统安全盾
[这个贴子最后由wang6071在 2005/06/28 00:51am 第 3 次编辑]
下面引用由emca2005/06/27 11:58pm 发表的内容:
路径最好要考虑进去。如果恶意程序弄个与系统文件相同的名字但路径不同,是否会被删除?还是系统文件也被误删除?这个得慎重考虑。
恶意程序的黑名单程序随后我整理一些提供。
另外,还可以考虑试图将含有某些特 ...
不用考虑路径是因为偶的监测是全系统盘监测(是盘符级,比如你的xp安装到D盘则是D:全盘的监测,目前只提取出windows目录及system目录的新增而已,实际上添加系统盘的其它目录已经非常容易),所以只对比新增的文件名不会误删(新增的一定是系统中没有的)。
我不打算采用定时目录查询方式,这种方式可能会造成造成误删除。而且不如目前这种方式实时和资源占用小(目前的方式是api消息级的,文件未创建完已经知道了)。
至于expl1rer.exe这样的太多了,定义名单搞不过来(当然,已发现的可以定义它几个),变体还是交结杀毒软件去处理吧。或者直接采用现在的傻瓜式新增杀除方法也可以。
如果仅将自动删除定义为windows及system32等系统目录的话,则含有数字1等易混淆的的文件作为删除对象也未尝不可(如果是系统盘及的查就可能会删掉安装的正常程序,比如program files下的含有数字的正常程序。)到底匹配到哪一级大家可以探讨一下。





欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3