对于瑞星驱动的改进建议!!!

瑞星常说 在ring0 层的 权限都一样 ,因而 没有 加强 自保!!!

ring0就像司令部,若 敌人进入了    司令部也就完了 (系统被kill),试问 那这样 就不在司令部中安排保卫了吗???


病毒进入了 ring0  搞破坏 ,瑞星就看着不管了吗???  不在ring0  做点文章了吗???


若防不住 让病毒 进入ring0  就眼睁睁的看着恶软做坏事吗???


还是做一点 ring0吧!!!


以下是改进的建议:::


一、对进程 ravmond的改进!!!


1、建议ravmond 增加AdjustTokenPrivileges  权限 ---  控制访问令牌!!!


2、建议ravmond 增加进程钩子kernel32!LoadLibraryExW!!!


二、对自保问题的建议:::


1、inline 方面:::


      虽然inline 容易引起 蓝屏 ,但可以先在 实验室中测试 并优化  达到一定的稳定程度 再放出来 升级!!!你像 江民2008刚做出来是 不是很稳定,但随着数年过去 ,江民没有那么娇气了 ---建议参考!!!


  挂接:::

  a、  ObOpenObjectByPointer                  防止打开其进程
  b、  KeInsertQueueApc                    防止插APC终止其进程
  c、  RtlImageNtHeader                    防止别人打开指定的PE模块



  d、  ObReferenceObjectByHandle    防止通过handle得到Object
  e、  PsLookupProcessByProcessId      防止通过ID得到Object
  f、        zwopenprocess                              来获取进程句柄




        因为系统直接在内部调用过PspTerminateThreadByPointer的函数有4个:
                NtTerminateProcess、 NtTerminateThread、
PspTerminateProcess [未导出]  PsTerminateSystemThread [已导出],所以inline 上述函数!!!


2、ssdt 方面:::


ntmapviewofsection ----------将目标文件的内容映射到目标进程的用户空间


3、shadown 方面:::


NtUserGetForegroundWindow      得到当前顶层窗口
NtUserBuildHwndList                    枚举所有顶层窗口
NtUserQueryWindow                  获取句柄对应的进程PID
NtUserSetParent                  改变某个子窗口的父窗
NtUserSetWindowLong                    改变窗口属性
NtUserShowWindow                      改变窗口显示状态
NtUserDestroyWindow                          销毁窗口
NtUserCallHwndParamLock            禁用、启用窗口



发现瑞星对 窗口的保护(如 主程序)很不到位啊!!!请完善 shadow 上的挂钩!!!




4、保护ntoskrnl.exe文件!!!


通过调用ZwCreateFileNtLockFile方式锁定ntoskrnl.exe文件,阻止为允许的程序 读取ntoskrnl.exe文件挂钩!!!


询问用户  或 筛选的策略 来实现 最大化 保护!!!


自动 判断程序的威胁 来 决定是否允许 读取ntoskrnl.exe文件(如 卡巴的行为判断)













用户系统信息:Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.3 (KHTML, like Gecko) Chrome/6.0.472.33 Safari/534.3 SE 2.X MetaSr 1.0