12558网页游戏私服论坛

 找回密码
 立即注册
游戏开服表 申请开服
游戏名称 游戏描述 开服状态 游戏福利 运营商 游戏链接
攻城掠地-仿官 全新玩法,觉醒武将,觉醒技能 每周新区 经典复古版本,长久稳定 进入游戏
巅峰新版攻 攻城掠地公益服 攻城掠地SF 新兵种、新武将(兵种) 进入游戏
攻城掠地公 散人玩家的天堂 新开 进入游戏
改版攻城掠 上线即可国战PK 稳定新区 全新改版,功能强大 进入游戏
少年江山 高福利高爆率 刚开一秒 江湖水落潜蛟龙 进入游戏
太古封魔录 开服送10亿钻石 福利多多 不用充钱也可升级 进入游戏
神魔之道 签到送元宝 稳定开新区 送豪华签到奖励 进入游戏
神奇三国 统帅三军,招揽名将 免费玩新区 激情国战,征战四方 进入游戏
龙符 三日豪礼领到爽 天天开新区 助你征战无双 进入游戏
王者之师 免费领豪华奖励 免费玩新区 6元送6888元宝 进入游戏
查看: 276|回复: 0

修改ProcessMonitor过TMD壳反监测(1)

[复制链接]

303

主题

303

帖子

616

积分

实习版主

Rank: 7Rank: 7Rank: 7

积分
616
发表于 2020-2-28 10:48:42 | 显示全部楼层 |阅读模式
       了解病毒分析的人对下边三个程序的图标一定很熟悉吧!
       没错,这就是微软旗下SysInternal全家桶中的AutoRuns, ProcessMonitor(简称ProcMon)和ProcessExplorer(简称ProcExp)。
       听前辈们讲,这几款软件在早期非常流行,很多玩儿病毒的人的工具箱里必定有这几款神器。
      


       在我刚开始接触病毒的时候,朋友们教我的就是如何用自启动监视器(AutoRuns),注册表监视器(RegMon),文件监视器(FileMon)等一系列SysyInternal的工具来监视目标程序。后来,注册表和文件监视器这两个工具双剑合璧,成为了ProcessMonitor,变得更厉害了,我还开心了一阵子。
       不过呢,所谓树大招风,人怕出名猪怕壮,一些工具一旦被很多病毒分析人员使用,病毒作者就开始设法去Anti这些工具。很典型的就是加了ThemIDA这个壳的一些样本。反沙箱,反虚拟机,反OllyDbg,反SysInternal全家桶等功能应有尽有。


       最近遇到了加了Themida壳的程序,有时候开着ProcessMonitor/ProcessExplorer运行的,样本就老是给弹框或者直接退出了。我就想在网上找找相关的方法搞定这个问题。说来也怪,可能沙箱,虚拟机算是刚需,在网上能找到不少防止反虚拟机和沙箱的方法,但是防止反ProcessMonitor的还真没找到(也可能是他们自己写了新的)。于是我打算拯救一下他们,看能不能再焕发一下第二春?!



Ⅰ. 样本如何Anti-ProcessMonitor?
      通过对最近遇到的的程序监控API,发现它们一般反Anti-ProcessMonitor的方法有如下3个。
              1. Find process;
              2. Find window name;
              3. Find window class.
      我们的目标就是bypass这三种检测。      对付第一个比较简单。ProcessMonitor的程序名一般是ProcMon.exe, 直接改名就好。
      第二个也还好,改窗口名也有很多工具可以改。但是如果能一劳永逸,那自己是极好的。
      第三个则真是需要改程序内容了。   
      花了一个多小时时间,终于把ProcessMonitor和ProcessExplorer给改完了。正好有如下这个小程序(熟悉吗?爱盘里面的查壳工具ExeinfoPE:http://down.52pojie.cn/Tools/PEtools/ExeinfoPE.zip ),如果我开着正常的ProcessMonitor,打开它会弹出如下的一个对话框。那就用它做测试吧!
Ⅱ. 修改 ProcessMonitor程序     下边我就说下具体的修改过程(其实很简单,思路就按照上面的检测方法去反制,我们这里是修改窗口名和窗口类名):         1. 用OllyDbg打开Procmon.exe(下载的最新版,https://technet.microsoft.com/en-us/sysinternals/processmonitor.aspx);
         2. Ctrl+N进入导入表,然后找到RegisterClassW函数的调用地址,如下图,就可以看到PROCMON_WINDOW_CLASS(窗口类名)这个字符串了;

         3. 然后就可以根据PROCMON_WINDOW_CLASS的上下文Pattern去找这个字符串,然后用UltraEdit或者其他工具改为你想要的字符串,我这里是把它改为PRoCMoN_WIND0W_CLASS了;

        4. 需要注意的是你会找到两个,不要吃惊,大胆改掉它吧,因为这个文件里还嵌入了一个64位的版本,ProcMon不仅是注册表和文件监控二合一,现在更是64位和32位二合一了,详情我会下边讲;
        5. 按照上面2-4的步骤,找到最后一个CreateWindowExW,顺藤摸瓜就找到了窗口标题,同样改掉他们就完了。


           最终我的私人定制版ProcessMonitor的窗口标题是这样的,如下小图(不知道为什么,上传到论坛上的图添加到文章时显得特别小,如果有知道怎么调整,请不吝赐教)。具体修改的地方可以参考下边的PE差异对比图。           
Ⅲ. ProcessMonitor的32/64位版本一体化           我之前在工作机上用过64位的ProcessMonitor,但是没发现过什么问题。这次看到有两套字符串,那就随便看看,结果看到了“MZ”,于是猜测在64位机器上面,应该会释放出来,只是之前没有注意到。果不其然,它在%temp%下释放了一个64位的版本出来,名字是原来的名字+64,我的这个就是“Pr0cmon64.exe”。如果按照我的方法把两套字符串都修改了,那么释放出来的64位版本也是能Bypass的。而且,我的工作机是64位的,那么我就可以把它直接复制到我的工具箱,省得它每次还要再释放文件,启动速度也会快一些。——————————————————————————————————————————   
      同样的方法也可以用在其他SysInternal的工具上。当然,工具也可以使用别的,比如,对于ProcessMonitor, IDA看一眼就明白了,可以花更少时间搞定这个,不过我当时以为可能会比较复杂,才使用的OllyDBG。有兴趣的可以试试用IDA搞定ProcessMonitor和其他的SysInternal全家桶产品。 下图是我对ProcessExplorer修改的对比图。
     需要提醒大家的是,改过后,SHA1会跟原文件不一致,导致证书失效,UAC提示的时候就没有厂商名称神马的了。
——敬请期待下集———————————————————————————————————                还需要提醒大家一点的是,新版本的TMD壳还是能检测到ProcessMonitor的,因为它还有别的路子去找到ProcessMonitor,只是用API监控发现不出来。       扣字儿真是比扣代码还累啊,因为第一次在论坛发帖,花了很长时间才写了这么短一篇,鉴于马上12点了,我就就此打住,下次写怎么Bypass比较新的版本TMD的检测,大家表骂我卖关子,真的是因为明天还要继续忙,可能还要加班。   
——非常抱歉,下集已经没有了—————————————————————————————          非常不想食盐的,但是谁让自己懒呢。一方面,Boss们同意用火绒的工具,感觉用着还挺好的,所以就没有继续改进的动力了。进一步说,底层的更改还是蛮难的,可能还要请其他同事帮忙,而我这人不太愿意求人,所以就放弃了。求不拍砖。   
····························································
应一些同学的要求,把我修改好的放上来。密码是52Pojie
PorcMon/ProcExp
ProcMon ProcExp.zip
2.02 MB, 下载次数: 531, 下载积分: 吾爱币 -1 CB

密码52Pojie

来源:http://www.12558.net
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
楼主热帖
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|12558网页游戏私服论坛 |网站地图

GMT+8, 2024-5-14 18:07 , Processed in 0.140625 second(s), 31 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表