内核模块一加载计算机就死机,如何调试

ajige 2011-07-02 01:10:06
自己写了一个防火墙的模块,insmod 之后 电脑就挂了。。
请问如何处理这种情况。。
...全文
248 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
汗晕倒 2011-07-06
  • 打赏
  • 举报
回复
用虚拟机,然后用超级终端看打印。
LS,lz那是死机不是内核有问题了。~
学海琼鲸 2011-07-05
  • 打赏
  • 举报
回复
用光盘进拯救系统,强制重装内核吧。
宇宙微尘 2011-07-04
  • 打赏
  • 举报
回复
做实验还是用虚拟机的好。
翔云123456 2011-07-03
  • 打赏
  • 举报
回复
模块可能修改内核变量,导致死机
你可以参考netfilter
yanook 2011-07-03
  • 打赏
  • 举报
回复
电脑就挂了是指什么?shell没反应?还是?请具体描述一下,最好把关键代码段贴上来。也可以通过添加printk来简单定位,或者通过kgb,kgdb调试,kgdb需要目标机和调试机用串口相连。
luomoweilan 2011-07-03
  • 打赏
  • 举报
回复
可以使用虚拟机。
一:SSDT表的hook检测和恢复 ~!~~~ 二:IDT表的hook检测和恢复 ~~~~~~(idt多处理器的恢复没处理,自己机器是单核的,没得搞,不过多核的列举可以) 三:系统加载驱动模块的检测 通过使用一个全局hash表(以DRIVEROBJECT为对象)来使用以下的方法来存储得到的结果,最终显示出来 1.常规的ZwQuerySystemInformation来列举 2通过打开驱动对象目录来列举 3搜索内核空间匹配驱动的特征来列举(这个功能里面我自己的主机一运行就死机,别的机器都没事,手动设置热键来蓝屏都不行,没dump没法分析,哎,郁闷) 4从本驱动的Modulelist开始遍历来列举驱动 四:进程的列举和进程所加载的dll检测 采用以下方法来列举进程: 1ZwQuerySystemInformation参数SystemProcessesAndThreadsInformation来枚举 2进程EPROCESS 结构的Activelist遍历来枚举 3通过解析句柄表来枚举进程 4通过Handletablelisthead枚举进程 5进程创建时都会向csrss来注册,从这个进程里面句柄表来枚举进程 6通过自身进程的HANDLETABLE来枚举进程 7通过EPROCESS的SessionProcessLinks来枚举进程 8通过EPROCESS ---VM---WorkingSetExpansionLinks获取进程 9暴力搜索内存MmSystemRangeStart以上查找PROCESS对象 进程操作: 进程的唤醒和暂停通过获取PsSuspendProcess和PsResumeProcess来操作的 进程结束通过进程空间清0和插入apc。 采用以下方法查找DLL: 1遍历VAD来查找dll 2挂靠到对应的进程查找InLoadOrderLinks来枚举dll 3暴力搜索对应进程空间查找pe特征来枚举dll DLL的操作: Dll的卸载是通过MmUnmapViewOfSection和MmmapViewOfSection(从sdt表中相应函数搜索到的)来实现的(本来想直接清0 dll空间,有时行有时不行)(只要将这个进程的ntdll卸载了,进程就结束了,一个好的杀进程的办法撒,绿色环保无污染),注入dll使用的是插入apc实现的。(注入的dll必须是realse版的。Debug版会出现***错误,全局dll注入貌似也是)插入apc效果不是很好,要有线程有告警状态才执行。 五:线程信息的检测 遍历ThreadList来枚举线程 线程的暂停和唤醒都是通过反汇编获取PsResumeThread和PsSuspendThread直接从r3传来ETHREAD来操作的,通过插入APC来结束线程 六:shadow sdt表的hook检测与恢复 没有采用pdb来解决函数名问题,直接写入xp和03的shandow表函数名(主要是自己的网不稳定,连windbg有时都连不上微软) 七:系统所有的过滤驱动的检测 查看各device下是否挂接有驱动之类的,可直接卸载 八:系统常用回调历程的检测和清除 只检查了PsSetLoadImageNotifyRoutine PsSetCreateThreadNotifyRoutine PsSetCreateProcessNotifyRoutine CmRegisterCallback这几个,至于那个什么shutdown回调不知道是啥玩意,就没搞了,有知道的顺便告诉我下撒,谢谢 九:文件系统fat和ntfs的分发函数检测 直接反汇编fat和ntfs的DriverEntry得到对应的填充分发的偏移,然后和当前已经运行的文件系统的分发相比是否被hook,并附带恢复 十:文件查看功能 自己解析ntfs和fat的结构,来实现列举文件和直接写磁盘删除。附带有普通的删除和发生IRP来删除。不过这里面有点问题,ntfs删除有时把目录给搞坏了,大家凑合着吧, Ntfs网上删除这些操作的代码不多,就是sudami大大的利用ntfs-3g来实现的,看了下,太多了,充满了结构。然后自己对照着系统删除文件时目录的变化来自己实现的。只处理了$BITMAP对应的位清除,父目录的对应文件的索引项的覆盖,删除文件对应的filerecord清0. 另外偷懒时间都没处理,呵呵,y的,一个破时间都都搞好几个字节移来移去的。 十一:常用内核模块钩子的检测和恢复 这里只检测了主要的内核模块nkrnlpa**.exe的.win32k.sys,hal.dll,比对它们的原始文件从而查找eat inline hook,iat hook ,和inline hook。Inline是从TEXT段开始一段位置开始比较的。(有点慢貌似,等待显示扫描完成就好了) 十二:应用层进程所加载dll的钩子 应用层钩子检测和内核模块钩子检测原理一样,不过为了能读写别的进程的空间,并没有使用openprocess去打开进程,而是通过KiattachProcess挂靠到当前进程,然后通过在r0直接读写进程空间的。
软件介绍 Wtool(WT)是一款系统辅助工具,使用本工具可以让你系统安全状况一目了然,并有带有修复功能,因为WTool无需加载驱动,所以使用本工具不太可能照成 系统不稳定故障如(蓝屏、死机等),如果出现此状况,可能是您使用其他工具造成的。 主要功能 [进程管理] 1.目前 Wtool 通过系统底层方式枚举进程,可以轻易的将系统中所有进程(包括隐藏的进程)显示出来; 2.Wtool 提供三种方式来结束进程,分为:普通结束、强制结束、驱动结束; 3.如果遇到无法终止的进程, 可以右键弹出菜单 ->结束进程 -> 添加到系统重启后自动删除文件, 这样文件将在下次计算机启动时被删除. 4.如果您是电脑系统专家级,Wtool可以右键 ->在下方显示进程模块窗口,可以查看进程加载的模块,启动的线程和载入的窗口信息; [内核模块] 1.本功能为暴力枚举出系统已加载内核模块,蓝色为未知驱动,红色为危险的驱动; [内核线程] 1.枚举了系统中自动启动了的驱动线程,可以对内核线程进行(暂停、恢复); [启动项] 1.枚举系统中所有开机启动项; [网络连接] 1.显示系统中所有程序中连接网络情况,可以对程序禁止连接网络; [注册表] 1.如果您无法运行电脑自带的注册表编辑器,WT提供自带的注册表编辑器,可以轻易的修改注册表所有项及子项; [文件管理] 1.默认以Windows默认方式显示磁盘中的所有文件(包括隐藏的文件),可以对文件打开、强制删除、重命名等操作; [修复系统] 1.显示所有IE插件,Bho插件和Activex插件都可以一一枚举出来,可以轻易的强制清除恶意插件; 2.枚举出系统中所有已安装的输入法,某些WG或木马使用输入法来注入后如果有残留,可以右键 -> 删除IMG和文件来清除输入法; 3.检测系统中文件关联情况,红色为危险项; 4.这里只介绍几个主打功能,其它不一一介绍了; [限制修复] 1.可以检测并修复一些木马禁用了系统中的重要功能;
本工具是一款系统辅助工具,使用本工具可以帮你揪出系统中的病毒和木马,彻底保护您的计算机安全,因为本工具无需加载驱动,所以使用本工具不太可能造成 系统不稳定故障如(蓝屏、死机等),如果出现此状况,可能是您使用其他工具造成的。 目前支持的系统为 WinXP/2003/vista/server2008/Win7/Win8/ 32和64位均支持。 如果您对系统只有初面了解, 建议您还是不要使用, 即使要使用, 也不要胡乱操作. 主要功能介绍: [进程管理] 1.目前本工具 通过系统底层方式枚举进程,可以轻易的将系统中所有进程(包括隐藏的进程)显示出来; 2.本工具 提供三种方式来结束进程,分为:普通结束、强制结束、驱动结束; 3.如果遇到无法终止的进程, 可以右键弹出菜单 ->结束进程 -> 添加到系统重启后自动删除文件, 这样文件将在下次计算机启动时被删除. 4.如果您是电脑系统专家级,本工具可以右键 ->在下方显示进程模块窗口,可以查看进程加载的模块,启动的线程和载入的窗口信息; [内核模块] 1.本功能为暴力枚举出系统已加载内核模块,蓝色为未知驱动,红色为危险的驱动; [内核线程] 1.枚举了系统中自动启动了的驱动线程,可以对内核线程进行(暂停、恢复); [启动项] 1.枚举系统中所有开机启动项; [网络连接] 1.显示系统中所有程序中连接网络情况,可以对程序禁止连接网络; [注册表] 1.如果您无法运行电脑自带的注册表编辑器,本工具提供自带的注册表编辑器,可以轻易的修改注册表所有项及子项; [文件管理] 1.默认以Windows默认方式显示磁盘中的所有文件(包括隐藏的文件),可以对文件打开、强制删除、重命名等操作; [修复系统] 1.显示所有IE插件,Bho插件和Activex插件都可以一一枚举出来,可以轻易的强制清除恶意插件; 2.枚举出系统中所有已安装的输入法,某些WG或木马使用输入法来注入后如果有残留,可以右键 -> 删除IMG和文件来清除输入法; 3.检测系统中文件关联情况,红色为危险项; 4.这里只介绍几个主打功能,其它不一一介绍了; [限制修复] 1.可以检测并修复一些木马禁用了系统中的重要功能; 其它功能不多介绍,赶紧体验吧。

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧