wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
阅读:2203回复:8

关于进程隐藏的问题

楼主#
更多 发布于:2005-02-02 22:39
上次看到关于进程隐藏的问题,我曾经写过一个程序通过修改内核进程来隐藏进程,在2K/XP下没问题了。
后来看到了ROOTKIT上的KLISTER,通过枚举线程调度连表来查看进程觉得很不错,可惜他只能用于2K。
那XP/2003下该如何呢??后来看老外说可以挂钩SWAPCONTEXT来获得调度的线程,据说是个不错的方法,于是
做了个例子,比较郁闷的是那些PROCESS OFFSET PID等各个OS下都不同,只能硬编码,把各个调度的线程的进程信息
保存下来,这样只要线程被调度就可以查看出来,奇怪的是在2K下有问题,我发现在2K下的PsSetCreateProcessNotifyRoutine
的PCREATE_PROCESS_NOTIFY_ROUTINE CALLBACK函数传来的ProcessId是错误的,导致2K下不能正常显示,而在
XP/2003下则没问题,比较郁闷,不过基本上应该可以检测显示那些隐藏的进程,大家可以测试看看。
通过INSTALLER把MYKLISTER的驱动加载,然后运行KLISTER来显示进程,IDT可以用来显示IDT表,HIDEPROC是我写的进程隐藏程序。
可以在2K/XP下不被发现,但可以被我的KLISTER显示,大家可以测试看看。
附件名称/大小 下载次数 最后更新
2005-02-02_klistBin.rar (198KB)  162
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
aasa2
驱动中牛
驱动中牛
  • 注册日期2004-04-01
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分525分
  • 威望339点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-02-03 08:12
不错
技术交流:aasa2@21cn.com QQ群:10863699
fslife
驱动大牛
驱动大牛
  • 注册日期2004-06-07
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望49点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-02-03 09:23
使用了一下KLISTER,感觉很不错,隐藏的进程一览无余。
可喜看不到里面,呵呵
在交流中学习。。。
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
地板#
发布于:2005-02-03 10:25
你也可以用DBGVIEW来查看不断进行切换的进程及线程......
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
bmyyyud
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2010-01-21
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望130点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-02-03 16:39
上次看到关于进程隐藏的问题,我曾经写过一个程序通过修改内核进程来隐藏进程,在2K/XP下没问题了。
后来看到了ROOTKIT上的KLISTER,通过枚举线程调度连表来查看进程觉得很不错,可惜他只能用于2K。
那XP/2003下该如何呢??后来看老外说可以挂钩SWAPCONTEXT来获得调度的线程,据说是个不错的方法,于是
做了个例子,比较郁闷的是那些PROCESS OFFSET PID等各个OS下都不同,只能硬编码,把各个调度的线程的进程信息
保存下来,这样只要线程被调度就可以查看出来,奇怪的是在2K下有问题,我发现在2K下的PsSetCreateProcessNotifyRoutine
的PCREATE_PROCESS_NOTIFY_ROUTINE CALLBACK函数传来的ProcessId是错误的,导致2K下不能正常显示,而在
XP/2003下则没问题,比较郁闷,不过基本上应该可以检测显示那些隐藏的进程,大家可以测试看看。
通过INSTALLER把MYKLISTER的驱动加载,然后运行KLISTER来显示进程,IDT可以用来显示IDT表,HIDEPROC是我写的进程隐藏程序。
可以在2K/XP下不被发现,但可以被我的KLISTER显示,大家可以测试看看。
 

没有源码?可以讨论一下,既然挂钩SWAPCONTEXT,为什么要用PsSetCreateProcessNotifyRoutine,PsSetCreateProcessNotifyRoutine干什么?
如果以你的矛戳你的盾,又如何?即用你的隐藏进程方法隐藏,你的显示进程能否看见?
滚滚长江东逝水 浪花淘尽英雄 是非成败转头空 青山依旧在 几度夕阳红 白发渔樵江渚上 惯看秋月春风 一壶浊酒喜相逢 古今多少事 尽付笑谈中
fslife
驱动大牛
驱动大牛
  • 注册日期2004-06-07
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望49点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2005-02-03 16:53
wowocock已经说了,他的隐藏(HIDEPROC)自己是可以用它的察看(KLISTER)看到的,呵呵。
在交流中学习。。。
bmyyyud
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2010-01-21
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望130点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2005-02-04 10:55
上次看到关于进程隐藏的问题,我曾经写过一个程序通过修改内核进程来隐藏进程,在2K/XP下没问题了。
后来看到了ROOTKIT上的KLISTER,通过枚举线程调度连表来查看进程觉得很不错,可惜他只能用于2K。
那XP/2003下该如何呢??后来看老外说可以挂钩SWAPCONTEXT来获得调度的线程,据说是个不错的方法,于是
做了个例子,比较郁闷的是那些PROCESS OFFSET PID等各个OS下都不同,只能硬编码,把各个调度的线程的进程信息
保存下来,这样只要线程被调度就可以查看出来,奇怪的是在2K下有问题,我发现在2K下的PsSetCreateProcessNotifyRoutine
的PCREATE_PROCESS_NOTIFY_ROUTINE CALLBACK函数传来的ProcessId是错误的,导致2K下不能正常显示,而在
XP/2003下则没问题,比较郁闷,不过基本上应该可以检测显示那些隐藏的进程,大家可以测试看看。
通过INSTALLER把MYKLISTER的驱动加载,然后运行KLISTER来显示进程,IDT可以用来显示IDT表,HIDEPROC是我写的进程隐藏程序。
可以在2K/XP下不被发现,但可以被我的KLISTER显示,大家可以测试看看。
 

既然用到了硬编码,也就虱子多了不怕痒了,我的解决方案是,由于在fs:124处存有当前线程指针,我用硬件调试寄存器设置一个在此处的写粘着调试点,我在这里做着板凳等着,得到线程指针后在转换为进程指针。这样如何?
滚滚长江东逝水 浪花淘尽英雄 是非成败转头空 青山依旧在 几度夕阳红 白发渔樵江渚上 惯看秋月春风 一壶浊酒喜相逢 古今多少事 尽付笑谈中
bmyyyud
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2010-01-21
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望130点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2005-02-08 11:37
如何?
滚滚长江东逝水 浪花淘尽英雄 是非成败转头空 青山依旧在 几度夕阳红 白发渔樵江渚上 惯看秋月春风 一壶浊酒喜相逢 古今多少事 尽付笑谈中
bisonal23
驱动牛犊
驱动牛犊
  • 注册日期2005-01-11
  • 最后登录2009-09-01
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望40点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2005-03-09 16:28
wowocock已经说了,他的隐藏(HIDEPROC)自己是可以用它的察看(KLISTER)看到的,呵呵。


wowocock,可以把你那个HIDEPROC的源码给大家共享一下吗?谢谢
游客

返回顶部