一个简单寻找无文件落地后门与内存免杀shellcode的工具

枫少@KillBoy
枫少@KillBoy
管理员
220
文章
0
粉丝
资源分享538,1615字数 369阅读1分13秒阅读模式
AI智能摘要
你是否想过,那些躲过杀软的无文件木马和内存免杀shellcode,其实藏得并不深?一款名为DuckMemoryScan的新工具,仅用一天编写,却能精准揪出潜伏在系统内存中的恶意代码。它通过检测VirtualAlloc异常内存、PE头特征与线程行为,快速发现HWBP挂钩、免杀后门、可疑驱动与无文件落地木马。原理不神秘,但效果惊人,尤其擅长识别Metasploit与CobaltStrike的无文件攻击。开源免费,编译即用,红蓝对抗、安全排查的实用利器。
— AI 生成的文章内容摘要

DuckMemoryScan

一个简单寻找无文件落地后门的工具,花了1天编写

一个简单寻找无文件落地后门与内存免杀shellcode的工具

功能列表

1. HWBP hook检测 检测线程中所有疑似被hwb挂钩

2. 内存免杀shellcode检测(metasploit,Cobaltstrike完全检测)

3. 可疑进程检测(主要针对有逃避性质的进程[如过期签名与多各可执行区段])

4. 无文件落地木马检测(检测所有已知内存加载木马)

5. 简易rootkit检测(检测证书过期/拦截读取/证书无效的驱动)

免杀木马检测原理

所有所谓的内存免杀后门大部分基于"VirtualAlloc"函数申请内存 之后通过各种莫名其妙的xor甚至是aes加密去混淆shellcode达到"免杀"效果. 本工具通过线程堆栈回溯方法(StackWalkEx函数)遍历线程,寻找系统中在VirtualAlloc区域执行代码的区域,从而揪出"免杀木马" 当然也会存在误报,多常见于加壳程序也会申请VirtualAlloc分配内存.

无文件落地木马检测原理:

所有无文件落地木马都是一个标准PE文件被映射到内存中,主要特征如下:

1. 内存区段有M.Z标志

2. 线程指向一个NOIMAGE内存 本工具将会通过第一种特征检测出所有"无文件落地木马"

使用方式

编译 运行 得到信息列表

github地址:https://github.com/huoji120/DuckMemoryScan

https://www.freebuf.com/sectool/264237.html

 
枫少@KillBoy
评论  53  访客  52  作者  1
    • 煞气生
      煞气生 0

      这个工具思路挺巧,VirtualAlloc回溯找shellcode,之前还真没想到过。

        • 夜影纱
          夜影纱 0

          @ 煞气生 是的,从线程栈回溯找执行流,这思路挺有意思,绕过了不少混淆。

          • 傍晚的散步
            傍晚的散步 1

            @ 煞气生 VirtualAlloc回溯这招确实没想到,学废了(不是)

          • 百里挑一
            百里挑一 0

            有人试过在Win11上跑吗?会不会有兼容性问题?

              • 砚边云
                砚边云 0

                @ 百里挑一 我Win11 22H2试了,能跑,但有个驱动检测功能报错了,可能兼容性还要调。

              • 星陨之歌
                星陨之歌 1

                误报率怎么样?加壳的程序会不会报一大堆?

                • 别逼我笑
                  别逼我笑 0

                  之前分析样本时手动找这些特征累死了,有工具能扫一遍确实方便。

                  • 人形充电宝
                    人形充电宝 0

                    对于HWBP检测那块,能区分是安全软件挂钩还是恶意挂钩吗?

                    • 黑鸦骑士
                      黑鸦骑士 1

                      github上star不多,是刚开源吗?

                      • 超新星闪光
                        超新星闪光 0

                        内存扫描类的工具之前用过别的,老是蓝屏,这个稳定性如何?

                          • 青丘小鹿
                            青丘小鹿 1

                            @ 超新星闪光 稳定性还可以,我跑了几次没蓝屏,可能跟系统环境有关。

                            • 夜色如谜
                              夜色如谜 0

                              @ 超新星闪光 Win10 22H2跑了一圈,没蓝屏,比之前那个MemScan稳点

                            • 雾锁山头
                              雾锁山头 0

                              原理部分讲得挺清楚,比有些文章光甩个工具强。

                              • 墨海扁舟
                                墨海扁舟 0

                                看介绍功能挺全,下班了回去搭环境试试看。

                                • FrozenFjord
                                  FrozenFjord 1

                                  freebuf那篇文章好像更详细点,可以配合着看。

                                  • 幽灵吟游
                                    幽灵吟游 1

                                    有人实际测过误报率吗?担心加壳程序误报太多影响判断。

                                    • 枯藤老妖
                                      枯藤老妖 0

                                      这工具对CobaltStrike的检测效果咋样?最近样本里遇到不少。

                                      • 星阑人静
                                        星阑人静 0

                                        之前手动分析内存镜像找shellcode太费劲了,有工具自动化确实能省不少事。

                                        • JungleEcho
                                          JungleEcho 0

                                          原理讲得挺明白,比光给个下载链接那种文章强多了。

                                          • 夜雾低语
                                            夜雾低语 0

                                            github链接是不是挂了?我这打不开。

                                            • 幽默风趣
                                              幽默风趣 0

                                              对于检测驱动那块,如果驱动有合法签名但行为可疑,能识别出来吗?

                                              • 幻光祭司
                                                幻光祭司 0

                                                感觉这类工具主要还是给分析人员用,普通用户可能用不上。

                                                • 醉卧星河
                                                  醉卧星河 0

                                                  下班了回去虚拟机里跑跑看,希望别把测试机搞崩了。

                                                    • 狐狸
                                                      狐狸 1

                                                      @ 醉卧星河 刚在测试机跑完,干干净净啥也没报,是我姿势不对?

                                                    • 心随流水
                                                      心随流水 1

                                                      看freebuf文章下面评论说在Server系统上有点问题,楼主遇到过吗?

                                                      • 甘露煮雪
                                                        甘露煮雪 0

                                                        工具思路不错,但实际对抗中攻击者可能换其他API,感觉检测方法得持续更新才行。

                                                        • 海月心
                                                          海月心 0

                                                          这工具对加壳程序误报多不多啊?刚试了几个商业软件全报了🤔

                                                          • 碧波潭
                                                            碧波潭 0

                                                            HWBP检测能过滤掉调试器吗?比如x64dbg这类正常工具也会触发吧

                                                            • 淘气猴小乐
                                                              淘气猴小乐 0

                                                              试了下CS的stageless payload,确实扫出来了,有点东西

                                                              • 断线风筝
                                                                断线风筝 0

                                                                M.Z标志检测是不是容易被绕过?改个内存头不就完了

                                                                • 狂风不倒客
                                                                  狂风不倒客 1

                                                                  原理看着靠谱,但实际用起来感觉阈值得调,不然全是干扰项

                                                                  • 奶茶续命仙
                                                                    奶茶续命仙 1

                                                                    有人测过对Ghidra或者IDA附加进程会不会误判成恶意?

                                                                    • 冽雪
                                                                      冽雪 0

                                                                      驱动检测那块要是能加个行为分析就更顶了,光看签名太单薄

                                                                      • 七夕牛郎
                                                                        七夕牛郎 0

                                                                        功能挺全,算是好帮手。

                                                                        • VelvetTunnel
                                                                          VelvetTunnel 1

                                                                          HWBP检测思路新颖,能把调试器的挂钩也揪出来,值得一试。

                                                                          • Storm暴
                                                                            Storm暴 1

                                                                            看了源码后发现VirtualAlloc回溯的实现蛮巧妙的,尤其是对xor混淆的识别,感觉对抗免杀挺有帮助的,期待后面还能继续优化。

                                                                            • 死亡回响
                                                                              死亡回响 0

                                                                              别忘了配合Process Explorer一起看句柄。

                                                                              • 奶味小桃
                                                                                奶味小桃 0

                                                                                如果想降低误报,可以先把已知加壳的签名加入白名单,这样扫描时会少报一些。

                                                                                • 浮生旅
                                                                                  浮生旅 0

                                                                                  这个工具在Win11上跑会不会崩?

                                                                                  • 夜之幽灵
                                                                                    夜之幽灵 0

                                                                                    检测驱动时能区分合法签名但行为可疑的情况吗?

                                                                                    • 墨香绵长
                                                                                      墨香绵长 0

                                                                                      误报率其实还行,没见到大批商业软件被误报。

                                                                                      • 搞笑熊猫
                                                                                        搞笑熊猫 1

                                                                                        前几天在分析样本时手动找shellcode,真是累死,直接用这工具省了不少功夫。

                                                                                        • 腐骨之灵
                                                                                          腐骨之灵 0

                                                                                          我之前也踩过类似的坑,误报把正常进程标记成恶意,后来加了路径白名单才解决。

                                                                                          • CometGemini
                                                                                            CometGemini 0

                                                                                            蓝屏警告又来了,别忘了先备份。

                                                                                            • 江南烟雨
                                                                                              江南烟雨 1

                                                                                              有人说在服务器上跑会卡死,大家注意下 🤔

                                                                                              • 二五眼
                                                                                                二五眼 0

                                                                                                看评论里有人提到在Docker容器里跑会报错,估计是缺少权限导致的。

                                                                                                • 颤音
                                                                                                  颤音 0

                                                                                                  感觉还行。

                                                                                                  • 风声掠影
                                                                                                    风声掠影 1

                                                                                                    误报问题确实头疼,加白名单算是个办法吧

                                                                                                    • QuickQuill
                                                                                                      QuickQuill 1

                                                                                                      误报能自己调吗?

                                                                                                        • DesertWayfarer
                                                                                                          DesertWayfarer 1

                                                                                                          @ QuickQuill 同问,有误报过滤选项吗?

                                                                                                        • 星际矿工
                                                                                                          星际矿工 1

                                                                                                          误报能手动排除吗?

                                                                                                          • 四海一家
                                                                                                            四海一家 1

                                                                                                            误报多不多啊?

                                                                                                              • 枫少@KillBoy
                                                                                                                枫少@KillBoy

                                                                                                                @ 四海一家 加壳的程序可能会误报,得手动排查下。

                                                                                                            匿名

                                                                                                            发表评论

                                                                                                            匿名网友

                                                                                                            拖动滑块以完成验证