Skip to content

Rat5ak/EXPOSE-Write-up

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

CTF Challenge Write-Up: Expose Challenge Information

Challenge Name: Expose
Category: Red Teaming
Difficulty Level: Easy

Introduction

The "Expose" challenge is designed to test red teaming skills, focusing on the risks associated with exposing unnecessary services on a machine. Participants were required to start a Virtual Machine (VM) and use various tools provided in the AttackBox to identify vulnerabilities and capture flags. Tools Used

Nmap: Network scanning tool used for initial reconnaissance.
FTP Client: Used for connecting to the FTP server.
Gobuster: Utilized for directory enumeration.
Web Browser: Used for exploring discovered web directories.
Burp Suite: Used for capturing and analyzing web requests.
sqlmap: Used for automated SQL injection testing.

Detailed Solution Initial Analysis

The first step taken was to run a comprehensive Nmap scan:

sudo nmap -sV -O -p- -A -sC 10.10.47.35

This scan was intended to identify open ports, running services, the operating system, and other valuable information about the target machine. Nmap Scan Results:

Start Time: 01:32 EST
Total Scan Duration: Approximately 534.80 seconds
Target IP: 10.10.47.35
Open Ports and Services:
    21/tcp: FTP service, vsftpd 2.0.8 or later, with anonymous FTP login allowed.
    22/tcp: SSH service, OpenSSH 8.2p1 Ubuntu 4ubuntu0.7.
    53/tcp: Domain service, ISC BIND 9.16.1 (Ubuntu Linux).
    1337/tcp: HTTP service, Apache httpd 2.4.41 (Ubuntu), with a title "EXPOSED".
    1883/tcp: MQTT protocol, mosquitto version 1.6.9.
OS Detection: Inconclusive. Linux OS suspected based on service information.
Network Distance: 4 hops

Methodology Step 1: Initial Reconnaissance with Nmap

Initiated to gather as much information as possible about the target system.

Step 2: Exploring the FTP Server

Connected to the FTP server at port 21 as an anonymous user.
Findings: No files were found in the FTP server upon the anonymous login.

Step 3: Directory Enumeration with Gobuster

Ran Gobuster for directory enumeration on the HTTP service at port 1337.
Gobuster Results: Discovered directories such as /.htpasswd, /.htaccess, /admin, /admin_101, /javascript, /phpmyadmin, and /server-status.

Step 4: Exploring Web Directories

/admin Directory: Found an admin portal with no functionality on login attempts.
/admin_101 Directory: Encountered a similar admin portal with a pre-filled username hacker@root.thm. Login attempts with this username resulted in an 'error' message, indicating its validity.

Step 5: SQL Injection Analysis with Burp Suite and sqlmap

Captured the POST request on the /admin_101 login page.
Analyzed using sqlmap, revealing vulnerabilities in the email parameter.
Identified the back-end DBMS as MySQL version 5.6 or higher.
Extracted data from the expose database, including user credentials and config table information.
Cracked password easytohack from the config table hash.

Step 6: Accessing Restricted URLs

/file1010111/index.php: Logged in using easytohack. Found a message suggesting further investigation into hidden elements or parameter fuzzing.
/upload-cv00101011/index.php: Prompted for a password. The provided hint was "the name of a machine user starting with letter 'z'".

Step 7: Investigating Hidden Elements, Parameter Fuzzing, System File Access, and Exploiting File Upload Vulnerability

Explored file upload features, discovering restrictions to PNG or JPG files.
Successfully uploaded a modified PHP reverse shell named revshell.phpD.jpg using Burp Suite.
Gained basic shell access as www-data user through a Netcat listener on port 4444.
Accessed SSH credentials for the user zeamkish and successfully logged in via SSH.
Retrieved the user flag: THM{USER_FLAG_1231_EXPOSE}.

Step 8: Privilege Escalation and Capturing the Root Flag

Discovered that nano had the SUID bit set.
Edited the /etc/shadow file to change the root password.
Logged in as root using the new password and accessed the root directory.
Captured the root flag: THM{ROOT_EXPOSED_1001}.

Challenges and Learnings

Reconnaissance: Key in establishing the landscape of the challenge.
Tool Mastery: Demonstrated the value of various tools in different stages of the challenge.
Adaptability and Persistence: Essential in navigating through obstacles.
Privilege Escalation Techniques: Critical in understanding Unix permissions and SUID binaries.

Flag

User Flag: THM{USER_FLAG_1231_EXPOSE}
Root Flag: THM{ROOT_EXPOSED_1001}

Conclusion

The "Expose" CTF challenge provided a comprehensive and educational experience in red teaming. It offered insights into network scanning, web exploitation, SQL injection, privilege escalation, and more. Successfully capturing both the user and root flags underscored a well-rounded understanding of various penetration testing methodologies and techniques.

About

First write up, fairly trash no ,png but whatever cuz.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors