<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>writeups &amp;mdash; drsh0&#39;s llog</title>
    <link>https://drsh0.writeas.com/tag:writeups</link>
    <description>my learning log; notes on cybersec activities, ctfs, and ill-equipped cyber adventures. Consume responsibly.</description>
    <pubDate>Sun, 26 Apr 2026 19:21:27 +0000</pubDate>
    <image>
      <url>https://i.snap.as/v7Oo2ci6.png</url>
      <title>writeups &amp;mdash; drsh0&#39;s llog</title>
      <link>https://drsh0.writeas.com/tag:writeups</link>
    </image>
    <item>
      <title>TryHackMe | Advent of Cyber 2019</title>
      <link>https://drsh0.writeas.com/tryhackme-advent-of-cyber-2019?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[Link: https://tryhackme.com/room/25daysofchristmas&#xA;&#xA;  Get started with Cyber Security in 25 Days - Learn the basics by doing a new, beginner friendly security challenge every day leading up to Christmas&#xA;&#xA;Day 1&#xA;cookies that have fixed values are bad as it allows attackers to guess the pattern and values. &#xA;a new cookie can be created from Firefox dev tools   storage   cookies   add new&#xA;&#xA;Day 2&#xA;check source pages&#xA;dir searching&#xA;github search for website&#xA;&#xA;Day 3&#xA;for pcaps, the best thing to do is search for interesting activities e.g. telnet and ssh&#xA;follow stream to export to txt&#xA;johntheripper can work on /etc/shadow without needeing /etc/passwd. &#xA;&#xA;Day 4&#xA;to find text within all files: grep -Ril &#34;text&#34;&#xA;    to grep for all IP addresses: grep -E -o &#34;([0-9]{1,3}[\.]){3}[0-9]{1,3}&#34; file.txt&#xA;It&#39;s wise to search for .bak files in case some world readable backups exist :&#xA;find / -name .bak 2  /dev/null&#xA;&#xA;Day 5&#xA;&#xA;OSINT required creative google searches, social media, and the use of waybackmachine. &#xA;&#xA;Day 6&#xA;Tools used:&#xA;    wireshark-gtk&#xA;    fcrackzip&#xA;    steghide&#xA;&#xA;Day 7&#xA;strange protocols running on weird ports are worth trying out via http.&#xA;&#xA;Day 8&#xA;if binaries such as find are running as another user you can usually use exec to execute something with that binary e.g.:&#xA;&#xA;find /home/igor -name flag1.txt  -exec cat /home/igor/flag1.txt \;&#xA;&#xA;commonly used command to list all suid binaries:&#xA;&#xA;find / -user root -perm -4000 -exec ls -ldb {} \; 2  /dev/null&#xA;&#xA;Day 10: Metasploit&#xA;After a quick nmap scan, there seems to be a tomcat server running on port 80.&#xA;Version enumeration reveals that it may be prone to the struts2 vuln. &#xA;Let&#39;s use the struts2contenttypeognl exploit via MSF and configure hosts, ports, and path (path = &#34;&#34;). &#xA;exploit successful! Use meterpreter shell to exploit further and find a way to break out of the docker container. &#xA;SSH creds are available --  this is how we break out. &#xA;&#xA;Day 11: Network Exploitation&#xA;nmap -A $IP -oA filename&#xA;We can see the following services open: ftp, nfs, mysql&#xA;Anonymous login is allowed on FTP. Use ftp to login and retrieve file and credentials. &#xA;&#xA;NFS&#xA;showmount -e $IP to check if NFS is present and directory path.&#xA;cd /tmp &amp;&amp; mkdir thm-nfs-11&#xA;sudo mount $IP:/opt/files thm-nfs-11&#xA;thm-nfs-11 contains a file with the flag. &#xA;&#xA;MySQL&#xA;I&#39;ll be using mycli to connect to the msql database.&#xA;mycli -h $IP -P 3306 -u root&#xA;show databases&#xA;use data&#xA;show tables&#xA;SELECT * FROM &#39;USERS&#39;&#xA;Creds are now retrieved from the table. &#xA;&#xA;Day 12&#xA;&#xA;1) md5sum&#xA;2) gpg --decrypt note1.txt.gpg with supplied passphrase&#xA;3a) Decrypt private RSA key first with supplied passphrase openssl rsa -in private.key -out test.key&#xA;3b) Then use  openssl rsautl -decrypt -inkey test.key -in note2encrypted.txt -out note2_decrypted.txt to obtain decrypted note. &#xA;&#xA;Day 14: AWS S3 Buckets&#xA;Buckets can be accessed via bucketname.s3.amazonaws.com or bucketname.region-name.amazonaws.com&#xA;Bucket contents can be accessed via bucketname.region-name.amazonaws.com/file-name&#xA;&#xA;Day 15: Local File Inclusion&#xA;Webservers will often pull files from local locations to display on a webpage. &#xA;It&#39;s best to have a look at the HTTP requests and start crafting potential LFI that way. &#xA;Be sure to encode the / using %2F. &#xA;Example payload: http://host/get-file/%2fetc%2fpasswd&#xA;&#xA;#writeups #ctf #tryhackme&#xA;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>Link: <a href="https://tryhackme.com/room/25daysofchristmas" rel="nofollow">https://tryhackme.com/room/25daysofchristmas</a></p>

<blockquote><p>Get started with Cyber Security in 25 Days – Learn the basics by doing a new, beginner friendly security challenge every day leading up to Christmas</p></blockquote>

<h2 id="day-1" id="day-1">Day 1</h2>
<ul><li>cookies that have fixed values are bad as it allows attackers to guess the pattern and values.</li>
<li>a new cookie can be created from Firefox dev tools &gt; storage &gt; cookies &gt; add new</li></ul>

<h2 id="day-2" id="day-2">Day 2</h2>
<ul><li>check source pages</li>
<li>dir searching</li>
<li>github search for website</li></ul>

<h2 id="day-3" id="day-3">Day 3</h2>
<ul><li>for pcaps, the best thing to do is search for interesting activities e.g. telnet and ssh</li>
<li>follow stream to export to txt</li>
<li>johntheripper can work on <code>/etc/shadow</code> without needeing <code>/etc/passwd</code>.</li></ul>

<h2 id="day-4" id="day-4">Day 4</h2>
<ul><li>to find text within all files: <code>grep -Ril &#34;text&#34;</code>
<ul><li>to grep for all IP addresses: <code>grep -E -o &#34;([0-9]{1,3}[\.]){3}[0-9]{1,3}&#34; file.txt</code></li></ul></li>
<li>It&#39;s wise to search for *.bak files in case some world readable backups exist :
<code>find / -name *.bak 2&gt;/dev/null</code></li></ul>

<h2 id="day-5" id="day-5">Day 5</h2>
<ul><li>OSINT required creative google searches, social media, and the use of waybackmachine.</li></ul>

<h2 id="day-6" id="day-6">Day 6</h2>
<ul><li>Tools used:
<ul><li>wireshark-gtk</li>
<li>fcrackzip</li>
<li>steghide</li></ul></li></ul>

<h2 id="day-7" id="day-7">Day 7</h2>
<ul><li>strange protocols running on weird ports are worth trying out via http.</li></ul>

<h2 id="day-8" id="day-8">Day 8</h2>
<ul><li>if binaries such as <code>find</code> are running as another user you can usually use <code>exec</code> to execute something with that binary e.g.:</li></ul>

<pre><code>find /home/igor -name flag1.txt  -exec cat /home/igor/flag1.txt \;
</code></pre>
<ul><li>commonly used command to list all suid binaries:</li></ul>

<pre><code>find / -user root -perm -4000 -exec ls -ldb {} \; 2&gt;/dev/null
</code></pre>

<h2 id="day-10-metasploit" id="day-10-metasploit">Day 10: Metasploit</h2>
<ul><li>After a quick nmap scan, there seems to be a tomcat server running on port 80.</li>
<li>Version enumeration reveals that it may be prone to the <a href="https://www.secjuice.com/apache-struts2-cve-2018-11776/" rel="nofollow">struts2 vuln</a>.</li>
<li>Let&#39;s use the <code>struts2_content_type_ognl</code> exploit via MSF and configure hosts, ports, and path (path = “”).</li>
<li>exploit successful! Use meterpreter shell to exploit further and find a way to break out of the docker container.</li>
<li>SSH creds are available —&gt; this is how we break out.</li></ul>

<h2 id="day-11-network-exploitation" id="day-11-network-exploitation">Day 11: Network Exploitation</h2>
<ul><li><code>nmap -A $IP -oA &lt;filename&gt;</code></li>
<li>We can see the following services open: ftp, nfs, mysql</li>
<li>Anonymous login is allowed on FTP. Use <code>ftp</code> to login and retrieve file and credentials.</li></ul>

<h4 id="nfs" id="nfs">NFS</h4>
<ul><li><code>showmount -e $IP</code> to check if NFS is present and directory path.</li>
<li><code>cd /tmp &amp;&amp; mkdir thm-nfs-11</code></li>
<li><code>sudo mount $IP:/opt/files thm-nfs-11</code></li>
<li>thm-nfs-11 contains a file with the flag.</li></ul>

<h4 id="mysql" id="mysql">MySQL</h4>
<ul><li>I&#39;ll be using <a href="https://github.com/dbcli/mycli" rel="nofollow"><code>mycli</code></a> to connect to the msql database.</li>
<li><code>mycli -h $IP -P 3306 -u root</code></li>
<li><code>show databases</code></li>
<li><code>use data</code></li>
<li><code>show tables</code></li>
<li><code>SELECT * FROM &#39;USERS&#39;</code></li>
<li>Creds are now retrieved from the table.</li></ul>

<h2 id="day-12" id="day-12">Day 12</h2>

<p>1) <code>md5sum</code>
2) <code>gpg --decrypt note1.txt.gpg</code> with supplied passphrase
3a) Decrypt private RSA key first with supplied passphrase <code>openssl rsa -in private.key -out test.key</code>
3b) Then use <code>openssl rsautl -decrypt -inkey test.key -in note2_encrypted.txt -out note2_decrypted.txt</code> to obtain decrypted note.</p>

<h2 id="day-14-aws-s3-buckets" id="day-14-aws-s3-buckets">Day 14: AWS S3 Buckets</h2>
<ul><li>Buckets can be accessed via <code>bucketname.s3.amazonaws.com</code> or <code>bucketname.region-name.amazonaws.com</code></li>
<li>Bucket contents can be accessed via <code>bucketname.region-name.amazonaws.com/file-name</code></li></ul>

<h2 id="day-15-local-file-inclusion" id="day-15-local-file-inclusion">Day 15: Local File Inclusion</h2>
<ul><li>Webservers will often pull files from local locations to display on a webpage.</li>
<li>It&#39;s best to have a look at the HTTP requests and start crafting potential LFI that way.</li>
<li>Be sure to encode the <code>/</code> using <code>%2F</code>.</li>
<li>Example payload: <code>http://host/get-file/%2fetc%2fpasswd</code></li></ul>

<p><a href="https://drsh0.writeas.com/tag:writeups" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">writeups</span></a> <a href="https://drsh0.writeas.com/tag:ctf" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">ctf</span></a> <a href="https://drsh0.writeas.com/tag:tryhackme" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">tryhackme</span></a></p>
]]></content:encoded>
      <guid>https://drsh0.writeas.com/tryhackme-advent-of-cyber-2019</guid>
      <pubDate>Sun, 08 Dec 2019 23:40:33 +0000</pubDate>
    </item>
  </channel>
</rss>