前些天听到团队在问有没有exe转换成shellcode的工具,而后拿来作免杀,而后我就突发奇想的一个念头。那既然找不到脚本为啥不本身去开发一个呢!!!git
这个开发起来其实比较简单,由于shellcode的本质其实就16进制的机器码,在当时看到某个shellcode编程开发的视频的时候。其实就是用反编译exe 而后来提取机器码再加上个\x 而后就完成了 ,那其实用脚原本实现也是同样的,可是中途遇到不少的问题,好比用readlines()函数去读取的时候出现了一些编码的报错,而后就去百度了一下,使用了read()的函数进行读取 完美解决github
再而后就是直接所有进行hex编码是不行的,好比10-14 这些数值直接编译的话是为0xe这样格式的,而在shellcode里面的格式是\x00 这样的因此说这样直接拿去执行确定会报错,因此还须要作些处理,加个0。在shellcode当中\x00是属于空字节,也就是0的16进制编码,在shellcode运行的时候,这些空字节会影响shellcode的运行,因此我在这里直接就对空字节作了处理。shell
把github地址贴上来给大佬们:编程
脚本比较简单,而是突发奇想的一个念头,在开发的过程当中遇到的一些问题大部分都一些编码格式的问题,还得进行一系列的类型转换,这是比较难受的一个事情。
工具