<?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[Piyush Kumawat | Security Notes]]></title><description><![CDATA[Piyush Kumawat | Security Notes]]></description><link>https://piyushblogss.hashnode.dev</link><image><url>https://cdn.hashnode.com/res/hashnode/image/upload/v1593680282896/kNC7E8IR4.png</url><title>Piyush Kumawat | Security Notes</title><link>https://piyushblogss.hashnode.dev</link></image><generator>RSS for Node</generator><lastBuildDate>Fri, 18 Sep 2026 16:51:27 GMT</lastBuildDate><atom:link href="https://piyushblogss.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[The Danger of Low-Hanging Fruit: Lessons from HTB Starting Point (Tier 0)]]></title><description><![CDATA[(Note: All techniques discussed here were executed in authorized Hack The Box lab environments for Learning purposes only.)
Before diving into complex exploit chains, a solid Vulnerability Assessment ]]></description><link>https://piyushblogss.hashnode.dev/htb-starting-point-tier-0</link><guid isPermaLink="true">https://piyushblogss.hashnode.dev/htb-starting-point-tier-0</guid><category><![CDATA[cybersecurity]]></category><category><![CDATA[penetration testing]]></category><category><![CDATA[#HackTheBox]]></category><category><![CDATA[Beginner Developers]]></category><category><![CDATA[HTB Machines]]></category><dc:creator><![CDATA[Piyush Kumawat]]></dc:creator><pubDate>Fri, 04 Sep 2026 13:29:58 GMT</pubDate><enclosure url="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/fc6acbcc-71fc-42c6-a9d8-5d79293ed97e.svg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>(Note: All techniques discussed here were executed in authorized Hack The Box lab environments for Learning purposes only.)</em></p>
<p>Before diving into complex exploit chains, a solid Vulnerability Assessment and Penetration Testing (VAPT) methodology requires mastering service enumeration and identifying low-hanging fruit.</p>
<p>Hack The Box's Starting Point (Tier 0) provided a controlled environment to validate how default configurations and legacy protocols routinely expose internal infrastructure. Here is the technical breakdown of the access vectors I exploited, and the necessary remediation for each.</p>
<h2>Mindset : Learning on the Fly</h2>
<p>When I started these machines, I realized that there is never going to be a "perfect time" to begin. There will always be something I haven’t studied yet or a concept that feels completely new to me.</p>
<p>But that shouldn't be a dealbreaker to try and solve a problem. Instead of waiting until I knew everything, I decided to just jump in, try things out, and learn on the go.</p>
<hr />
<h1><a href="https://app.hackthebox.com/machines/Meow">Meow</a>: Telnet</h1>
<p><strong>Difficulty:</strong> Very Easy</p>
<h2>Machine Summary</h2>
<p>Enumeration revealed that the service was not only exposed but permitted administrative access without credentials. Initial access was achieved by exploiting a misconfigured <strong>Telnet Service</strong>, connecting to the service immediately prompted for a username, which accepted the default <code>root</code> account with no password required, which gave access to the files and <code>flag.txt</code> on the Service.</p>
<h2>1. Discovery</h2>
<p>A network scan revealed 1 open port, with the primary attack surface being an exposed <strong>Telnet</strong> service on port <strong>23/tcp</strong>.</p>
<pre><code class="language-bash"># Enumeration
sudo nmap -sV 10.129.41.186
</code></pre>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/2bbfd599-9086-4920-8d6b-77ec2eea1dd1.svg" alt="Nmap scan output showing exposed Telnet port 23 on Meow HTB machine" style="display:block;margin:0 auto" />

<h2>2. Exploitation (Foothold)</h2>
<p>Because the service failed to enforce <strong>Authentication</strong>, I was able to <em>Login as</em> <em><strong>Root User</strong></em> on the Telnet Service <strong>without a Password</strong>.</p>
<pre><code class="language-bash"># Exact command
telnet 10.129.41.186 23
</code></pre>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/349c17b0-e268-40f5-acf0-9588ca5f0001.svg" alt="Terminal output connecting to Telnet and logging in as root without a password on Meow" style="display:block;margin:0 auto" />

<p>The Telnet login already yielded a <code>root</code> shell, so no additional privilege‑escalation commands were required.</p>
<p>Now, Flag was present at the root directory itself.</p>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/f431da7d-e81a-40a3-8e09-46a77ea4b910.svg" alt="Retrieving the root flag.txt on Meow HTB machine" style="display:block;margin:0 auto" />

<h2>3. Remediation</h2>
<p>To secure this, system administrators must implement the following:</p>
<p><strong>Fix 1:</strong> Disable Telnet completely.</p>
<p><strong>Fix 2:</strong> Implement SSH (Port 22) for remote administration, enforce key-based authentication, and disable <code>PermitRootLogin</code> in the SSH configuration.</p>
<hr />
<h1><a href="https://app.hackthebox.com/machines/Fawn">Fawn</a>: FTP</h1>
<p><strong>Difficulty:</strong> Very Easy</p>
<h2>Machine Summary</h2>
<p>Enumeration revealed that Port 21 used for <strong>FTP (File Transfer Protocol)</strong> is open. Initial access was achieved by exploiting a misconfigured FTP, that allowed anonymous login, which directly exposed the <code>flag.txt</code>.</p>
<h2>1. Discovery</h2>
<p>A network scan revealed 1 open port, with the primary attack surface being an exposed <strong>FTP service</strong> on port <strong>21/tcp</strong>.</p>
<pre><code class="language-bash"># Enumeration
sudo nmap -sV 10.129.41.176
</code></pre>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/969a6ed8-c50b-4c04-bf1c-dc18bbb20584.svg" alt="Nmap service scan showing open FTP port 21 on Fawn HTB machine" style="display:block;margin:0 auto" />

<h2>2. Exploitation (Foothold)</h2>
<p>Because the service failed to enforce <strong>Login Authentication</strong>, I was able to <strong>Login</strong> to <strong>FTP service</strong> on the machine.</p>
<pre><code class="language-bash"># Command
ftp 10.129.41.176
</code></pre>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/08fc6d36-2c85-4334-9035-6c5bbedb8c1f.svg" alt="Authenticating to FTP service using anonymous user and blank password on Fawn" style="display:block;margin:0 auto" />

<p>I authenticated using the username <code>anonymous</code> and a blank password, which granted access to the internal directory structure.</p>
<p>After logging into FTP, I was able to access the files on the machine, followed by downloading the <code>flag.txt</code> with <code>get</code> command to my local machine.</p>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/0af06f25-74d6-43a7-9034-f3f38ca70986.svg" alt="Downloading flag.txt from anonymous FTP session on Fawn HTB machine" style="display:block;margin:0 auto" />

<h2>3. Remediation</h2>
<p>To secure FTP Service, system administrators must implement the following:</p>
<p><strong>Fix 1:</strong> Modify the FTP server configuration (e.g., <code>vsftpd.conf</code>) to set <code>anonymous_enable=NO</code>.</p>
<p><strong>Fix 2:</strong> Transition to SFTP to ensure data is encrypted in transit.</p>
<hr />
<h1><a href="https://app.hackthebox.com/machines/Dancing">Dancing</a>: SMB</h1>
<p><strong>OS:</strong> Windows | <strong>Difficulty:</strong> Easy</p>
<h2>Machine Summary</h2>
<p>The critical flaw here was a failure to implement Role-Based Access Control (RBAC) in SMB (Server Message Block), allowing guest access to internal shares. Initial access was achieved by exploiting a <strong>misconfigured SMB</strong> using <code>smbclient</code>, by enumerating through internal Shares and getting access to a custom share <code>Workshares</code> that permitted unauthenticated connections, allowing me to navigate the directory and exfiltrate files.</p>
<h2>1. Discovery</h2>
<p>A network scan revealed 4 open ports, with the primary attack surface being an exposed <strong>SMB</strong> service on <strong>port 445</strong>.</p>
<pre><code class="language-bash"># Enumeration
sudo nmap -sV 10.129.41.222
</code></pre>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/cf7c4b83-06af-42de-8a68-2ba1f0abac92.svg" alt=" Nmap scan results showing open SMB port 445 on Windows Dancing HTB machine" style="display:block;margin:0 auto" />

<h2>2. Exploitation (Foothold)</h2>
<p>Using <code>smbclient</code>, I initiated a null session to list available shares. This revealed a custom share named <code>WorkShares</code> that permitted unauthenticated connections, because the service failed to enforce <strong>authentication</strong>, I was able to <em>Access the Directories and Files</em> on the Share.</p>
<pre><code class="language-bash"># Command
smbclient -L //10.129.41.222
</code></pre>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/5dbd4993-12d7-4b3d-b11c-5cca6333d041.svg" alt="Enumerating SMB shares via smbclient null session revealing WorkShares on Dancing" style="display:block;margin:0 auto" />

<p>After getting the access to Files and Directories, I Enumerated through available files and got the <code>flag.txt</code> in one of the Directories. Lastly, Downloaded the file by <code>get</code> command to the Local Machine.</p>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/42c9cabd-291b-4524-9450-a6b555b8b229.svg" alt="Accessing WorkShares directory and downloading flag.txt via smbclient on Dancing" style="display:block;margin:0 auto" />

<h2>3. Remediation</h2>
<p>To secure SMB service, system administrators must implement the following:</p>
<p><strong>Fix 1:</strong> Disable anonymous and guest access in the SMB configuration.</p>
<p><strong>Fix 2:</strong> Enforce strict permissions ensuring only authenticated users can mount internal shares.</p>
<hr />
<h1><a href="https://app.hackthebox.com/machines/Redeemer">Redeemer</a>: Redis</h1>
<p><strong>Difficulty:</strong> Easy</p>
<h2>Machine Summary</h2>
<p>Enumeration revealed the port <strong>6379</strong> for the <em>Redis Service</em> to be open. Initial access was achieved by using <code>redis-cli</code> tool, and then got info about database and keys, followed by finding <code>flag</code> as a key:value pair. Lastly retrieved the flag using <code>get</code>.</p>
<h2>1. Discovery</h2>
<p>A network scan revealed 1 open port, with the primary attack surface being an exposed <strong>Redis Database</strong> service on <strong>port 6379</strong>.</p>
<pre><code class="language-bash"># Enumeration
sudo nmap -p- -sV 10.129.78.26
</code></pre>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/f50925f2-5f6c-4b03-8016-3cce45f61e74.svg" alt="Full port Nmap scan revealing exposed Redis database on port 6379 on Redeemer" style="display:block;margin:0 auto" />

<h2>2. Exploitation (Foothold)</h2>
<p>Because the service failed to enforce <strong>Password Authentication</strong>, I was able to connect using command line tool <code>redis-cli</code> without needing to know a password.</p>
<pre><code class="language-bash"># Command
redis-cli -h 10.129.78.26
</code></pre>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/97f38c15-5907-423c-9186-a274af5cf0e2.svg" alt="Connecting to unauthenticated Redis instance with redis-cli and running INFO command on Redeemer" style="display:block;margin:0 auto" />

<p>Once connected, database enumeration via the <code>INFO</code> command gave information regarding the redis version and others, but an important information was in <code>Keyspace</code> section, it told that there is only <strong>1 database with 4 keys</strong> <code>db0:keys=4</code>. (As shown in the above screenshot, some of the content that was not significant for our concern was snipped out)</p>
<p>After knowing there is only 1 database with id <code>db0</code>, I used <code>select</code> command to query on that database and then enumerated the keys with command <code>keys *</code>.</p>
<img src="https://cdn.hashnode.com/uploads/covers/6a77577aa9d058fa08d2e284/2db297e1-1f29-4ff6-8426-3ea0fc0bee6d.svg" alt="Selecting database 0, enumerating keys, and retrieving flag value using GET in Redis on Redeemer" style="display:block;margin:0 auto" />

<p>Key Enumeration revealed <code>flag</code> key, then I retrieved the value stored in the flag key using the <code>get</code> command.</p>
<h2>3. Remediation</h2>
<p>To secure this infrastructure, system administrators must implement the following:</p>
<p><strong>Fix 1:</strong> Bind Redis to <code>localhost</code> (127.0.0.1) in <code>redis.conf</code> instead of all interfaces (<code>0.0.0.0</code>).</p>
<p><strong>Fix 2:</strong> Configure the <code>requirepass</code> directive to enforce a strong authentication password.</p>
<hr />
<h2>Final Takeaways &amp; Reflections</h2>
<h3>What Surprised Me the Most</h3>
<p>Before starting these machines, I assumed I would have to think deeply to figure out usernames or break past tough barriers. What surprised me most was how predictable everything actually was. Gaining access didn't require complicated exploits—it came down to basic defaults: logging in as <code>root</code> with no password, using <code>anonymous</code>, or hitting an open database with zero authentication.</p>
<p>From a defensive perspective, the lesson is clear:</p>
<ul>
<li><p><strong>Never rely on default configurations:</strong> Always enforce strong passwords and proper authorization, even on internal services.</p>
</li>
<li><p><strong>Secure according to the service:</strong> Critical data stores like Redis should never face the public internet—they should be restricted and bound to <code>localhost</code>.</p>
</li>
</ul>
<h3>Looking at Solutions &amp; Adjusting My Approach</h3>
<p>Working through this also brought me face-to-face with tools I had never used before, like <code>redis-cli</code>. Instead of backing off, I jumped in with curiosity to see how it worked.</p>
<p>At some points, I won’t deny that I needed to look at the solution. But when I did, it wasn't just to get the flag—it showed me what I was thinking versus what the right approach actually was, and how to adjust my thought process next time.</p>
<p>Documenting this first experience of trying something new has been a great learning curve in itself. It proved to me that you don't need to know everything before you start—you just need to be willing to learn as you go.</p>
]]></content:encoded></item></channel></rss>