利用PROCESS HERPADERPING免杀上线

  • A+
所属分类:安全文章

利用PROCESS HERPADERPING免杀上线


△△△点击上方“蓝字”关注我们了解更多精彩




0x00 前言

我又来分享一个免杀的姿势了,还是静态免杀。




0x01 项目介绍

进程Herpaderping是一种image被映射之后修改磁盘上的内容来隐藏进程意图的方法。

作者的网站:https://jxy-s.github.io/herpaderping工具项目地址:https://github.com/jxy-s/herpaderping





0x02 原理简介

引用原文的话术,进行翻译了下,看官大概大概看看吧:

安全产品通过在Windows内核(PsSetCreateProcessNotifyRoutineEx)中注册回调来监挺进程创建操作。这个内核回调是在插入初始线程时调用的,而不是在创建进程对象时调用的。

有些产品使用写时扫描方法,其中包括对文件写入的监视。比如记录已写入的文件,推迟实际检查,直到 IRP_MJ_CLEANUP 发生(例如,文件句柄关闭)。利用write->map->modify->execute->close的行为将破坏完全依赖IRP_MJ_CLEANUP检查的写入扫描。

 

 

像我这种菜鸡看到这里有点懵逼,接着往下看看行为是怎么样的吧。

 

 

绕过流程如下:

1、将目标二进制文件写入磁盘,保持句柄打开

2、将文件映射为image section

3、使用节句柄创建进程对象

4、使用相同的目标文件句柄,隐藏磁盘上的文件

5、在进程中创建初始线程(此时,内核中的进程创建回调将启动。磁盘上的内容与image的内容不匹配。此时检查文件将导致错误的属性)

6、关闭句柄,触发IRP_MJ_CLEANUP,此时安全产品开始检查文件(因为我们已经隐藏了正在执行的内容,所以此时的检查将导致错误的属性)

 

对应的流程图大家可以看看作者原文的介绍,大概长这样:

利用PROCESS HERPADERPING免杀上线


 

个人水平有限,担心误人子弟,就不写自己对原理的见解了,往下看看如何使用这个工具吧。






0x03 初步使用

项目是用C++写的,作者没有给我们编译好,所以我们需要动动手编译一下

利用PROCESS HERPADERPING免杀上线


 

下载代码:

git clone https://github.com/jxy-s/herpaderping.gitcd .herpaderpinggit submodule update --init --recursiveMSBuild .herpaderping.sln


温馨提示:编译的时候用vs2019,别的版本都不行,会提示无法打开xxx文件


编译成功后,会在herpaderpingbuildDebug.x64目录下生成一个ProcessHerpaderping.exe的应用程序

 

简单的介绍下怎么使用,有三个必须的参数:恶意文件名,重新写入的文件名,需要伪造的程序名

利用PROCESS HERPADERPING免杀上线


 

 

此时我们的恶意程序就已经以miansha666.txt的进程名运行

利用PROCESS HERPADERPING免杀上线

利用PROCESS HERPADERPING免杀上线

利用PROCESS HERPADERPING免杀上线


 

 

 

 

写入的文件签名会与你伪造的程序一致

 

此时脑海里闪过,我TM文件都到电脑上了,直接运行不就行了

赶紧想想别的利用姿势,比如http?

试试看

利用PROCESS HERPADERPING免杀上线

 

告辞,打扰了

利用PROCESS HERPADERPING免杀上线


 

怎么办呢,只能看下源码怎么加载的文件了,说干就干,来自菜鸡最后一点的倔强

 

先是在main.cpp里找到这样一段代码

利用PROCESS HERPADERPING免杀上线


 

感觉应该是执行入口没错了,跟进看看

然后在herpaderp.hpp里看了这个,CreateFileW()函数

利用PROCESS HERPADERPING免杀上线


看不懂,但是完全不慌,凭借我面向搜索引擎编程的经验,找到了这个函数的介绍

利用PROCESS HERPADERPING免杀上线


 

第一反应,共享文件

虚拟机开一个共享

利用PROCESS HERPADERPING免杀上线


用CS生成一个默认的EXE木马丢进去

利用PROCESS HERPADERPING免杀上线

利用PROCESS HERPADERPING免杀上线


 

 

 

 

接下来就是见证奇迹的时候,给爷连!!!!

利用PROCESS HERPADERPING免杀上线利用PROCESS HERPADERPING免杀上线


 

真香


利用PROCESS HERPADERPING免杀上线


不过利用的时候有版本要求,其他版本能不能行,就自己测试吧

利用PROCESS HERPADERPING免杀上线


 

这时候想,如果结束掉进程再查杀会是怎么样的

利用PROCESS HERPADERPING免杀上线


MD5算一下我们写入的文件,发现运行时和结束进程之后MD5一样的

利用PROCESS HERPADERPING免杀上线


 

去我们的虚拟机里看看一开始生成的那个CS木马,发现MD5不一样

利用PROCESS HERPADERPING免杀上线


 

再去看看lsass的MD5是多少

利用PROCESS HERPADERPING免杀上线


 

看来不一样,此时飘过一个想法,工具可以做签名伪造,我先在本地运行,用生成的那个木马去别的机器执行,会不会也可以运行,也可以达到免杀的效果,试试看

图我就不截了,最后测试的结果发现不行,但是换个角度想,如果一些经验不足的一线应急人员拿着这个样本去跑沙箱是安全,看到签名是微软的,会不会放松警惕忽略过去了呢

利用PROCESS HERPADERPING免杀上线







0x04 如何防御
我不说,私聊我就告诉你

利用PROCESS HERPADERPING免杀上线




0x05 总结

站在巨人的肩膀上很舒服,保持求知欲,希望也能成为别人的肩膀。



END



如您有任何问题、建议、需求请后台留言NOVASEC公众号!


感谢大哥们的对NOVASEC的支持点赞和关注

加入我们与萌新一起成长吧!


利用PROCESS HERPADERPING免杀上线


如有任何问题、建议、合作、投稿请加NOVASEC-MOYU,以方便及时回复。



本文始发于微信公众号(NOVASEC):利用PROCESS HERPADERPING免杀上线

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: