<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>TryHackMe on Drew Arpino (Stumblesec)</title>
        <link>https://stumblesec.com/categories/tryhackme/</link>
        <description>Recent content in TryHackMe on Drew Arpino (Stumblesec)</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en-us</language>
        <lastBuildDate>Mon, 02 Mar 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://stumblesec.com/categories/tryhackme/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>TryHackMe  —  Monday Monitor Challenge Room Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/</link>
            <pubDate>Mon, 02 Mar 2026 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/ac8d3265c9513d3eba7443eb8b3db88d_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Monday Monitor Challenge Room Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackme-monday-monitor-challenge-room-walkthrough&#34;&gt;TryHackMe: Monday Monitor Challenge Room Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;wazuh-siem-forensics-investigating-persistence-credential-dumping-and-exfiltration-with-atomic-redteam&#34;&gt;Wazuh SIEM Forensics: Investigating Persistence, Credential Dumping, and Exfiltration with Atomic Red Team.&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;ac8d3265c9513d3eba7443eb8b3db88d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;400&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/ac8d3265c9513d3eba7443eb8b3db88d_MD5.png&#34; width=&#34;400&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/mondaymonitor&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/mondaymonitor&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Welcome to my weekly walkthrough! If you’ve stumbled across this blog while looking for a detailed guide to the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/mondaymonitor&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Monday Monitor&lt;/strong&gt;&lt;/a&gt; blue team challenge from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;, you’re in the right place. This room is all about the investigative side of cyber defense, blending endpoint logging, analyzing SIEM events, with a sprinkle of adversary emulation to keep things interesting.&lt;/p&gt;&#xA;&lt;p&gt;In this challenge, we’re stepping into the role of a cyber sleuth brought in to help Swiftspend Finance level up their security program. Several controlled tests were executed across the environment, and it’s our job to work through the evidence, validate detections, and piece together the full attack chain. Fortunately, we’re given access to their &lt;a class=&#34;link&#34; href=&#34;https://wazuh.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Wazuh&lt;/strong&gt;&lt;/a&gt; SIEM dashboard that’s ingesting &lt;strong&gt;Sysmon&lt;/strong&gt; data from the endpoint. That gives us a rich dataset of process activity, command lines, network connections, and behavioral signals to work with.&lt;/p&gt;&#xA;&lt;p&gt;We’ll be using &lt;em&gt;Wazuh&lt;/em&gt;’s security events module, saved searches, field filtering, and a bit of intuition to uncover everything from initial access to credential dumping and exfiltration. Along the way, tools like &lt;em&gt;CyberChef&lt;/em&gt; help us decode suspicious payloads, and references to &lt;em&gt;MITRE ATT&amp;amp;CK&lt;/em&gt; anchor our analysis in real‑world tactics, techniques, and procedures.&lt;/p&gt;&#xA;&lt;p&gt;I’ll walk through each step clearly, and by the end you’ll have a solid sense of how to approach similar detection‑driven investigations using &lt;em&gt;Wazuh&lt;/em&gt;. Sounds like fun, right? Let’s go!&lt;/p&gt;&#xA;&lt;p&gt;And, hey, if you find this walkthrough helpful — whether it levels up your skills, gets you over a stumbling block, or just serves as a handy reference — &lt;strong&gt;please consider following me to get more content like this&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Thanks for reading and going on this investigation with me!&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Swiftspend Finance, the coolest fintech company in town, is on a mission to level up its cyber security game to keep those digital adversaries at bay and ensure their customers stay safe and sound.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Led by the tech-savvy Senior Security Engineer John Sterling, Swiftspend’s latest project is about beefing up their endpoint monitoring using Wazuh and Sysmon. They’ve been running some tests to see how well their cyber guardians can sniff out trouble. And guess what? You’re the cyber sleuth they’ve called in to crack the code!&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The tests were run on Apr 29, 2024, between 12:00:00 and 20:00:00. As you dive into the logs, you’ll look for any suspicious process shenanigans or weird network connections, you name it! Your mission? Unravel the mysteries within the logs and dish out some epic insights to fine-tune Swiftspend’s defences.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;question-1-initial-access-was-established-using-a-downloaded-file-what-is-the-file-name-saved-on-thehost&#34;&gt;Question 1: Initial access was established using a downloaded file. What is the file name saved on the host?&#xA;&lt;/h3&gt;&lt;p&gt;For this room, we’re all about &lt;a class=&#34;link&#34; href=&#34;https://wazuh.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Wazuh&lt;/strong&gt;&lt;/a&gt;, the open source security information event management (SIEM) platform. Swiftspend Finance recently paired &lt;strong&gt;Sysmon&lt;/strong&gt; on the endpoint with &lt;em&gt;Wazuh&lt;/em&gt; for centralized security monitoring. Let’s get into these logs and see what we can find.&lt;/p&gt;&#xA;&lt;p&gt;To get started, launch the provided virtual machine and connect to the &lt;em&gt;Wazuh&lt;/em&gt; dashboard in your web browser using the URL from the challenge. Once you’re logged in, navigate to the &lt;em&gt;Security events&lt;/em&gt; module by selecting its icon on the dashboard.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8cae1e11bfb18c811b1f1c0f9c3a58a9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/8cae1e11bfb18c811b1f1c0f9c3a58a9_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: Navigating to the Security events&lt;/p&gt;&#xA;&lt;p&gt;Next, load the saved query &lt;code&gt;Monday_Monitor&lt;/code&gt; to pull up the relevant logs for this challenge.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6df32e959a1d760f39246816c027739b_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;321px&#34; data-flex-grow=&#34;133&#34; height=&#34;495&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/6df32e959a1d760f39246816c027739b_MD5.png&#34; width=&#34;663&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: Loading the Monday_Monitor saved query&lt;/p&gt;&#xA;&lt;p&gt;Once the query loads, we need to set the correct time window for when the security engineering team ran the tests. According to the challenge scenario:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The tests were run on Apr 29, 2024, between 12:00:00 and 20:00:00.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;After clicking the &lt;em&gt;Show dates&lt;/em&gt; button, set the time range options to &lt;em&gt;Absolute&lt;/em&gt; and select the correct start and end timestamps.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d0d308d271ec36b3178b61e66fae6bb2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/d0d308d271ec36b3178b61e66fae6bb2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: Setting the date/time&lt;/p&gt;&#xA;&lt;p&gt;With the groundwork complete, we can finally start digging into data that falls within the scope of the test.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7d89d4f95d1b0b10bc7733752762080d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/7d89d4f95d1b0b10bc7733752762080d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: Setup completed&lt;/p&gt;&#xA;&lt;p&gt;To answer &lt;strong&gt;Question 1&lt;/strong&gt;, we need to identify the downloaded file used for initial access. Since this is a controlled red team test conducted by Swiftspend’s Security Engineering team, and not a typical scenario where a user accidentally downloads and executing a malicious file, our first move is to explore the built‑in detection rules.&lt;/p&gt;&#xA;&lt;p&gt;Click the &lt;em&gt;+ Add Filter&lt;/em&gt; button beneath the search bar. For filtering, set the field to &lt;code&gt;rule.description&lt;/code&gt; with the operator &lt;code&gt;is&lt;/code&gt;. In the value dropdown, look through what detection rules triggered during the test. Here, the &lt;em&gt;Microsoft Office Product Spawning PowerShell&lt;/em&gt; rule stands out as a likely indicator that a malicious document might have established the initial access.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;556ffaede31f5e0820d4c60684276ff7_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;380px&#34; data-flex-grow=&#34;158&#34; height=&#34;390&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/556ffaede31f5e0820d4c60684276ff7_MD5.png&#34; width=&#34;618&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: Filtering Microsoft Office Product Spawning Windows shell rule.descriptions&lt;/p&gt;&#xA;&lt;p&gt;Before we dig further, let’s make the results easier to read. From the available fields on the left, add &lt;code&gt;data.win.eventdata.commandLine&lt;/code&gt; to the selected fields. This lets us view process command lines without expanding individual records. With this in place, we can focus on events where Office spawned PowerShell and quickly see what each command executed.&lt;/p&gt;&#xA;&lt;p&gt;Now we’ve got the right query, the right timing, the correct rule filter, and the process command line displayed. The last step is to identify download activity that reveals the file name. To do that, search for &lt;code&gt;HTTP&lt;/code&gt; in the search box.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4a2c5ad8166009cef8d18d2024bec917_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;719px&#34; data-flex-grow=&#34;299&#34; height=&#34;267&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/4a2c5ad8166009cef8d18d2024bec917_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: Searching for HTTP events to identify the downloaded file used for initial access&lt;/p&gt;&#xA;&lt;p&gt;Perfect. This narrows the results down to two hits showing that &lt;code&gt;powershell.exe&lt;/code&gt; downloaded &lt;code&gt;SwiftSpend_Financial_Expenses.xlsm&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;75975c99201c34bb63a6d50ce6fe5ddd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2258px&#34; data-flex-grow=&#34;941&#34; height=&#34;85&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/75975c99201c34bb63a6d50ce6fe5ddd_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;questions-2-3&#34;&gt;Questions 2 &amp;amp; 3:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-full-command-run-to-create-a-scheduled-task&#34;&gt;What is the full command run to create a scheduled task?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-time-is-the-scheduled-task-meant-torun&#34;&gt;What time is the scheduled task meant to run?&#xA;&lt;/h4&gt;&lt;p&gt;Our next tasks are to identify scheduled task creation and determine when that task is scheduled to run. This is important because creating a scheduled task is a common persistence technique, and spotting these entries in &lt;em&gt;Wazuh&lt;/em&gt; gives us a strong signal that the test is attempting to plant something on the host. Let’s get to work!&lt;/p&gt;&#xA;&lt;p&gt;First, Clear the &lt;code&gt;rule.description&lt;/code&gt; filter we added in &lt;strong&gt;Question 1&lt;/strong&gt;. To keep things simple, use the search field to look for &lt;code&gt;schtasks.exe&lt;/code&gt;, the command‑line tool used to &lt;em&gt;“&lt;/em&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows/win32/taskschd/schtasks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;create, delete, query, change, run, and end scheduled tasks on a local or remote computer&lt;/em&gt;&lt;/a&gt;&lt;em&gt;”&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;This search returns four results, and in the command line we can clearly see that &lt;code&gt;schtasks.exe&lt;/code&gt; is being used to create a new scheduled task. Copying that full line gives us the answer to &lt;strong&gt;Question 2&lt;/strong&gt;:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c261e7a0b32ae877ace019faf17727ba_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/c261e7a0b32ae877ace019faf17727ba_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: Identifying schtasks.exe activity&lt;/p&gt;&#xA;&lt;p&gt;&amp;quot;cmd.exe&amp;quot; /c &amp;quot;reg add HKCU\SOFTWARE\ATOMIC-T1053.005 /v test /t REG_SZ /d cGluZyB3d3cueW91YXJldnVsbmVyYWJsZS50aG0= /f &amp;amp; schtasks.exe /Create /F /TN &amp;quot;ATOMIC-T1053.005&amp;quot; /TR &amp;quot;cmd /c start /min \&amp;quot;\&amp;quot; powershell.exe -Command IEX([System.Text.Encoding]::ASCII.GetString([System.Convert]::FromBase64String((Get-ItemProperty -Path HKCU:\\SOFTWARE\\ATOMIC-T1053.005).test)))&amp;quot; /sc daily /st 12:34&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;And conveniently nestled within this same command is the answer to &lt;strong&gt;Question 3&lt;/strong&gt;. The &lt;code&gt;/st&lt;/code&gt; argument specifies the scheduled time, and here it’s set to: 12:34.&lt;/p&gt;&#xA;&lt;p&gt;This command line also hints at the tooling behind the test: &lt;strong&gt;Atomic Red Team&lt;/strong&gt;. We can see the test path &lt;code&gt;ATOMIC-T1053.005&lt;/code&gt;, which maps to the MITRE ATT&amp;amp;CK technique &lt;a class=&#34;link&#34; href=&#34;https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1053.005/T1053.005.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;T1053.005 Scheduled Task/Job: Scheduled Task&lt;/em&gt;&lt;/a&gt;. Atomic tests like this are often used to validate detections, which fits perfectly with Swiftspend’s testing scenario.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;27dfd6dc4bcaa4f44581857b01cf13d1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1523px&#34; data-flex-grow=&#34;634&#34; height=&#34;126&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/27dfd6dc4bcaa4f44581857b01cf13d1_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-what-wasencoded&#34;&gt;Question 4: What was encoded?&#xA;&lt;/h3&gt;&lt;p&gt;Next up, we need to figure out the contents of the encoded string we saw in the previous command. In addition to creating a scheduled task, the command also adds a registry value named &lt;code&gt;test&lt;/code&gt; under the key &lt;code&gt;HKCU\SOFTWARE\ATOMIC-T1053.005&lt;/code&gt;. That value is stored as a &lt;code&gt;REG_SZ&lt;/code&gt; string:&lt;/p&gt;&#xA;&lt;p&gt;cGluZyB3d3cueW91YXJldnVsbmVyYWJsZS50aG0=&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;688c94f7764d0299938048deb59bb555_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;468px&#34; data-flex-grow=&#34;195&#34; height=&#34;385&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/688c94f7764d0299938048deb59bb555_MD5.png&#34; width=&#34;751&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: Identifying a Base64 encoded string in the command line&lt;/p&gt;&#xA;&lt;p&gt;Later in the command, we see &lt;em&gt;PowerShell&lt;/em&gt; calling &lt;code&gt;FromBase64String&lt;/code&gt;, which tells us the value stored in the registry is Base64 encoded. So now we have the encoded string and the method used to decode it. All we need to do is decode the Base64 manually to uncover the actual payload.&lt;/p&gt;&#xA;&lt;p&gt;One easy option is to copy the encoded string and paste it into &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;CyberChef&lt;/strong&gt;&lt;/a&gt;, the popular web‑based data manipulation tool. Once the string is in the input field, apply the &lt;em&gt;From Base64&lt;/em&gt; operation, and let &lt;em&gt;CyberChef&lt;/em&gt; do its thing.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;84d7aeba40f12434ce16f074c8afae00_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/84d7aeba40f12434ce16f074c8afae00_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;CyberChef: Decoding the Base64 encoded string&lt;/p&gt;&#xA;&lt;p&gt;Voila! The decoded value reveals a simple &lt;code&gt;ping&lt;/code&gt; command pointed at an external website, likely used as a heartbeat to test whether the host has outbound network connectivity: A nice find tucked away in the registry.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3dd90f7b38553955b9f6fd77ca758313_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/3dd90f7b38553955b9f6fd77ca758313_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-password-was-set-for-the-new-useraccount&#34;&gt;Question 5: What password was set for the new user account?&#xA;&lt;/h3&gt;&lt;p&gt;Moving right along, we’re now looking for evidence of a user account being created or modified, specifically, the password that was set for that account. No problem!&lt;/p&gt;&#xA;&lt;p&gt;From the earlier questions, we already know the &lt;em&gt;Atomic Red Team&lt;/em&gt; tests are relying on &lt;em&gt;PowerShell&lt;/em&gt; to execute their activities. Let’s follow that thread and switch our filter from &lt;code&gt;schtasks.exe&lt;/code&gt; to &lt;code&gt;powershell.exe&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;With this filter applied, we get a higher‑level view of all commands executed by &lt;em&gt;PowerShell&lt;/em&gt; in the &lt;code&gt;data.win.eventdata.commandLine&lt;/code&gt; field. While this is valuable context, we don’t need everything just yet. We only need the entry where a user account’s password is set.&lt;/p&gt;&#xA;&lt;p&gt;Scroll through the results and you’ll stumble across a line showing &lt;em&gt;PowerShell&lt;/em&gt; spawning the classic &lt;code&gt;[net user](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/net-user)&lt;/code&gt; command to modify Windows user accounts.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8ba454aa50d4a94f1ecd470b624a845d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1129px&#34; data-flex-grow=&#34;470&#34; height=&#34;170&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/8ba454aa50d4a94f1ecd470b624a845d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: Identifying modification of the guest account&lt;/p&gt;&#xA;&lt;p&gt;In this case, we see the &lt;code&gt;guest&lt;/code&gt; account being updated, and its password is set to: &lt;strong&gt;I_AM_M0NIT0R1NG&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0f74ba349a92cc41d6cb665f11c7a1c2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/0f74ba349a92cc41d6cb665f11c7a1c2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-what-is-the-name-of-theexe-that-was-used-to-dump-credentials&#34;&gt;Question 6: What is the name of the .exe that was used to dump credentials?&#xA;&lt;/h3&gt;&lt;p&gt;To answer &lt;strong&gt;Question 6&lt;/strong&gt;, we need to identify the executable used to dump credentials on the device. With the &lt;code&gt;powershell.exe&lt;/code&gt; filter still applied from the last question, you might’ve noticed several suspicious entries mixed in with the command output. A couple of minutes after the modification of the &lt;code&gt;guest&lt;/code&gt; account, we stumble across something especially interesting: a command that references an output file named &lt;code&gt;lsass.dmp&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;cc37f762c3958ba5010323afef20aef8_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/cc37f762c3958ba5010323afef20aef8_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: Identifying OS Credential Dumping activity&lt;/p&gt;&#xA;&lt;p&gt;Before we dive into the executable itself, let’s review why &lt;em&gt;LSASS&lt;/em&gt; is such a high‑value target. According to Microsoft Learn, &lt;strong&gt;LSASS&lt;/strong&gt;, or the &lt;em&gt;Local Security Authority Subsystem Service:&lt;/em&gt;&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Stores credentials in memory on behalf of users with active Windows sessions. The stored credentials let users seamlessly access network resources, such as file shares, Exchange Server mailboxes, and SharePoint sites, without reentering their credentials for each remote service.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;LSASS can store credentials in multiple forms, including:&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Reversibly encrypted plaintext.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Kerberos tickets (ticket-granting tickets (TGTs), service tickets).&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;NT hash.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;LAN Manager (LM) hash.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Reexamining the command in the logs, we see that the Atomic Red Team test executed an executable named: &lt;strong&gt;memotech.exe&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;This binary is responsible for generating the &lt;code&gt;lsass.dmp&lt;/code&gt; file. And if the command line hasn’t already given it away, &lt;em&gt;memotech.exe&lt;/em&gt; looks a whole lot like a disguised version of &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Mimikatz&lt;/strong&gt;&lt;/a&gt;, an infamous credential dumping tool frequently used in both red team simulations and real‑world attacks.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;df785ff5eb3e52a9022ee5a638201d08_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/df785ff5eb3e52a9022ee5a638201d08_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-7-data-was-exfiltrated-from-the-host-what-was-the-flag-that-was-part-of-thedata&#34;&gt;Question 7: Data was exfiltrated from the host. What was the flag that was part of the data?&#xA;&lt;/h3&gt;&lt;p&gt;Our final challenge is to identify the command used for data exfiltration and locate the classic TryHackMe flag hidden inside the exfiltrated content. We’ll keep the &lt;code&gt;powershell.exe&lt;/code&gt; filter applied from the previous questions so we can stay focused on the Atomic Red Team activity.&lt;/p&gt;&#xA;&lt;p&gt;Scrolling through the remaining entries in the testing data, we’re looking for a command that clearly suggests data exfiltration. We stumble into it as a newer result in the logs. The main giveaway (aside from the flag itself) is the structure of the command. It includes a URL for &lt;strong&gt;Pastebin&lt;/strong&gt;, a commonly abused text‑sharing site attackers use to store exfiltrated data (&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1567/003/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;MITRE ATT&amp;amp;CK T1567.003.&lt;/em&gt;&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;aac19e6734ea69a8dd9f8489af759c58_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/aac19e6734ea69a8dd9f8489af759c58_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wazuh: The content of the data exfiltration command&lt;/p&gt;&#xA;&lt;p&gt;Reading through the full command, we find the outbound request that sends content directly to Pastebin. Embedded inside that transmitted data is the TryHackMe flag we’re looking for.&lt;/p&gt;&#xA;&lt;p&gt;With that, we’ve wrapped up our investigation into the security engineering team’s Atomic Red Team tests. Nice work crossing the finish line!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a604bf283d709dbecd6f8ecfa4c46821_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/a604bf283d709dbecd6f8ecfa4c46821_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;img alt=&#34;34bf51a60e8e464510ad3de85ce6826e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;410px&#34; data-flex-grow=&#34;170&#34; height=&#34;468&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/34bf51a60e8e464510ad3de85ce6826e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;How fun was that! A big thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for another awesome challenge.&lt;/p&gt;&#xA;&lt;p&gt;This walkthrough was a great example of how endpoint visibility can make or break an investigation. By combining &lt;strong&gt;Wazuh&lt;/strong&gt; and &lt;strong&gt;Sysmon&lt;/strong&gt;, we were able to trace an entire attack simulation chain from initial access to persistence, credential dumping, and data exfiltration. It highlighted endpoint monitoring and visibility is such a critical part of any defensive strategy.&lt;/p&gt;&#xA;&lt;p&gt;As we moved through each question, we didn’t just follow the attacker’s activity. We also built a deeper understanding of how &lt;em&gt;Wazuh&lt;/em&gt; presents data, how filtering and field selection guide analysis, and how small artifacts like encoded registry entries or scheduled task configurations can reveal much bigger things happening behind the scenes. Challenges like this are rewarding because each step builds naturally into the next, and the investigation feels both logical and engaging.&lt;/p&gt;&#xA;&lt;p&gt;I chose this week’s challenge because even though I’m familiar with other SIEM platforms, I’d never actually used &lt;em&gt;Wazuh&lt;/em&gt;. This was a great chance to learn the platform by testing it against an attack simulation and seeing how it handles real adversary techniques. It’s always satisfying when a controlled test lines up neatly with real‑world tradecraft, and &lt;em&gt;Atomic Red Team&lt;/em&gt; makes that possible in such a clean and structured way. All in all, it was solid exposure to some new tooling and a good opportunity to get hands‑on time investigating activity inside a new SIEM environment.&lt;/p&gt;&#xA;&lt;p&gt;Thanks for your support and partnering on this investigation. If you found this walkthrough helpful — please give it a clap and consider following me! Your feedback is invaluable, and it pumps me up to support your security journey. Remember, cybersecurity is a team sport, and we’re in this together!&lt;/p&gt;&#xA;&lt;p&gt;Until next week’s challenge — stay curious and be safe out there!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;897587ce48e9f9feb186cdd21a12ccdd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;250&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-monday-monitor-challenge-room-walkthrough/897587ce48e9f9feb186cdd21a12ccdd_MD5.png&#34; width=&#34;250&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/mondaymonitor&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/mondaymonitor&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Wazuh:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://wazuh.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://wazuh.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn — Schtasks.exe:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows/win32/taskschd/schtasks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/windows/win32/taskschd/schtasks&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Atomic Red Team GitHub:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/Indexes/Indexes-Markdown/index.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/Indexes/Indexes-Markdown/index.md&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;CyberChef:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://gchq.github.io/CyberChef/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn — net user:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/net-user&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/net-user&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — OS Credential Dumping: LSASS Memory (T1003.001):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1003/001/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1003/001/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — Mimikatz (S0002):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/software/S0002/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — Exfiltration Over Web Service: Exfiltration to Text Storage Sites (T1567.003):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1567/003/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1567/003/&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Tempest Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/</link>
            <pubDate>Mon, 22 Dec 2025 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/174daaca62aa60ade6294200a18379e9_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Tempest Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackme--tempest--challenge-walkthrough&#34;&gt;TryHackMe | Tempest | Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;an-endpoint-forensic-investigation-challenge-using-sysmonview-evtxecmd-brim--cyberchef&#34;&gt;An Endpoint Forensic Investigation Challenge Using SysmonView, EvtxECmd, Brim, &amp;amp; CyberChef.&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;174daaca62aa60ade6294200a18379e9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;427&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/174daaca62aa60ade6294200a18379e9_MD5.png&#34; width=&#34;427&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/tempestincident&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/tempestincident&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Think you’ve got what it takes to tame the Tempest?&lt;/p&gt;&#xA;&lt;p&gt;If so, you’ve stumbled on the right blog! Welcome to my weekly walkthrough — a comprehensive (but &lt;strong&gt;spoiler-free&lt;/strong&gt;) guide to the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/tempestincident&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Tempest&lt;/strong&gt;&lt;/a&gt; challenge from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt; This room is the first of the capstone challenges for their SOC Level 1 learning path.&lt;/p&gt;&#xA;&lt;p&gt;For this challenge, we’re putting on our incident response hats and putting our skills to the test. The Tempest workstation has been compromised, and it’s up to us to calm the storm. We’re given three artifacts to dig into and piece together what happened.&lt;/p&gt;&#xA;&lt;p&gt;This is a sprawling, in-depth case that will push us to think creatively and challenge our skills in endpoint and network analysis. We’ll pivot between tools and reconstruct the full attack chain — from analyzing malware execution all the way through network discovery, command and control, privilege escalation, and persistence.&lt;/p&gt;&#xA;&lt;p&gt;For the analysis, we’ll use a mix of &lt;strong&gt;SysmonView&lt;/strong&gt;, &lt;strong&gt;Eric Zimmerman’s EvtxECmd and Timeline Explorer&lt;/strong&gt;, &lt;strong&gt;Brim&lt;/strong&gt;, &lt;strong&gt;CyberChef&lt;/strong&gt;, and even &lt;strong&gt;VirusTotal&lt;/strong&gt; to validate our findings.&lt;/p&gt;&#xA;&lt;p&gt;I’ll walk through each step clearly, and by the end, you’ll have a solid understanding of how to approach similar investigations in the wild. I don’t want to ruin any of the fun, so this walkthrough will not contain spoilers — but please use it as a reference and enjoy! Now, let’s get into it.&lt;/p&gt;&#xA;&lt;p&gt;And if you find this walkthrough helpful — whether it levels-up your skills, gets you over a stumbling block, or just gives you a clearer view of the blue team side of incident response — please give it a clap and consider following me for more content like this.&lt;/p&gt;&#xA;&lt;p&gt;Thanks for reading and going on this investigation with me!&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;This room aims to introduce the process of analysing endpoint and network logs from a compromised asset. Given the artefacts, we will aim to uncover the incident from the Tempest machine. In this scenario, you will be tasked to be one of the Incident Responders that will focus on handling and analysing the captured artefacts of a compromised machine.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;task-3-preparationtools-and-artifacts&#34;&gt;Task 3: Preparation — Tools and Artifacts&#xA;&lt;/h3&gt;&lt;h4 id=&#34;questions-1-2-3&#34;&gt;Questions 1, 2, &amp;amp; 3:&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-sha256-hash-of-the-capturepcapng-file&#34;&gt;What is the SHA256 hash of the capture.pcapng file?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-sha256-hash-of-the-sysmonevtx-file&#34;&gt;What is the SHA256 hash of the sysmon.evtx file?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-sha256-hash-of-the-windowsevtx-file&#34;&gt;What is the SHA256 hash of the windows.evtx file?&#xA;&lt;/h4&gt;&lt;p&gt;Following the theory from &lt;strong&gt;Tasks 1 &amp;amp; 2&lt;/strong&gt;, which are not covered in this blog, we can now get started and leap into action. Our first set of questions is to determine the unique &lt;strong&gt;SHA256 hash&lt;/strong&gt; of each artifact that we’ll use throughout the rest of the investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e78db284fefa84abbeff2b6650ed72a5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;834px&#34; data-flex-grow=&#34;347&#34; height=&#34;230&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/e78db284fefa84abbeff2b6650ed72a5_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;To perform this task, we can leverage the &lt;code&gt;Get-FileHash&lt;/code&gt; cmdlet in &lt;strong&gt;PowerShell&lt;/strong&gt;. From the &lt;em&gt;Incident Files&lt;/em&gt; directory, run the command below:&lt;/p&gt;&#xA;&lt;p&gt;Get-FileHash *&lt;/p&gt;&#xA;&lt;p&gt;This will compute the hash for all files in the directory using the default algorithm, which is &lt;strong&gt;SHA256&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a767ff9451fcd89fd3f2b095ed54417d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1103px&#34; data-flex-grow=&#34;459&#34; height=&#34;174&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/a767ff9451fcd89fd3f2b095ed54417d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell: Getting the file hashes&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;40f561cfdf8fd36fdb35e12eaa361024_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;969px&#34; data-flex-grow=&#34;404&#34; height=&#34;198&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/40f561cfdf8fd36fdb35e12eaa361024_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;task-4-initial-accessmalicious-document&#34;&gt;Task 4: Initial Access — Malicious Document&#xA;&lt;/h3&gt;&lt;p&gt;Now we’re getting to work! The first true challenge starts here in &lt;strong&gt;Task 4&lt;/strong&gt;. For this task, our job is to assess a malicious document used to compromise the &lt;em&gt;Tempest&lt;/em&gt; device. From the available artifacts, we’ll select the &lt;strong&gt;Sysmon&lt;/strong&gt; event logs. Since this is a capstone challenge for the SOC Level 1 analyst track, I’ll assume you’re already familiar with &lt;em&gt;Sysmon&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The fun part is that instead of relying solely on the Windows Event Viewer, we’ll work a little smarter by leveraging &lt;strong&gt;SysmonView&lt;/strong&gt;, a third-party utility designed for visualizing &lt;em&gt;Sysmon&lt;/em&gt; event logs in XML format.&lt;/p&gt;&#xA;&lt;p&gt;But first, we’ll need to convert all the events contained within &lt;code&gt;Sysmon.evtx&lt;/code&gt; to XML for parsing. To do this, open the &lt;code&gt;Sysmon.evtx&lt;/code&gt; file in Event Viewer. Then, press &lt;em&gt;Save All Events As…&lt;/em&gt;, change the file format to XML, and save.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;26de9e8ccf3ccfceb34efb9bd161ce98_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;568px&#34; data-flex-grow=&#34;236&#34; height=&#34;338&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/26de9e8ccf3ccfceb34efb9bd161ce98_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Event Viewer: Exporting Sysmon logs as XML&lt;/p&gt;&#xA;&lt;p&gt;Now, we can pivot and open &lt;em&gt;SysmonView&lt;/em&gt;, which is conveniently pinned to the taskbar of the analysis environment. Once it’s open, press &lt;em&gt;File &amp;gt; Import Sysmon XML Events&lt;/em&gt;, and load up the events so we can get started.&lt;/p&gt;&#xA;&lt;h4 id=&#34;investigation-guide&#34;&gt;Investigation Guide:&#xA;&lt;/h4&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;To aid with the investigation, you may refer to the cheatsheet crafted by the team applicable to this scenario:&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Start with the events generated by Sysmon.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;EvtxEcmd, Timeline Explorer, and SysmonView can interpret Sysmon logs.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Follow the child processes of WinWord.exe.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Use filters such as ParentProcessID or ProcessID to correlate the relationship of each process.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;We can focus on Sysmon events such as Process Creation (Event ID 1) and DNS Queries (Event ID 22) to correlate the activity generated by the malicious document.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h4 id=&#34;question-1-the-user-of-this-machine-was-compromised-by-a-malicious-document-what-is-the-file-name-of-the-document&#34;&gt;Question 1: The user of this machine was compromised by a malicious document. What is the file name of the document?&#xA;&lt;/h4&gt;&lt;p&gt;The first artifact we need to hunt for is the malicious document itself. A good place to start is filtering the logs for &lt;strong&gt;Sysmon Event ID 11&lt;/strong&gt;, which corresponds to &lt;em&gt;File Creation&lt;/em&gt; events. Using &lt;strong&gt;SysmonView&lt;/strong&gt;, select the &lt;em&gt;All Events View&lt;/em&gt; tab at the bottom, then drag the &lt;em&gt;Event Type&lt;/em&gt; column to the filter bar and expand &lt;em&gt;Event Type: File Created&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;This displays all the &lt;em&gt;File Creation&lt;/em&gt; events in a neat table. Scroll down to the oldest results to start building a timeline.&lt;/p&gt;&#xA;&lt;p&gt;Once we expand the early events, we’ll find the evidence we need: the creation of a document file from &lt;code&gt;chrome.exe&lt;/code&gt;. Checking the target file name will reveal the file name and path, suggesting it was downloaded from a website.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1730717cefb79f60b89ea6a0b52b49c4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;578px&#34; data-flex-grow=&#34;240&#34; height=&#34;332&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/1730717cefb79f60b89ea6a0b52b49c4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Identifying the malicious document&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;281f0dc57924dfde7bf1680b98426f89_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2400px&#34; data-flex-grow=&#34;1000&#34; height=&#34;80&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/281f0dc57924dfde7bf1680b98426f89_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;questions-2-3&#34;&gt;Questions 2 &amp;amp; 3:&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-name-of-the-compromised-user-andmachine&#34;&gt;What is the name of the compromised user and machine?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-pid-of-the-microsoft-word-process-that-opened-the-malicious-document&#34;&gt;What is the PID of the Microsoft Word process that opened the malicious document?&#xA;&lt;/h4&gt;&lt;p&gt;Next, we’ll need to collect some information about the environment, including the machine name, compromised user, and the process ID (PID) of the malicious document.&lt;/p&gt;&#xA;&lt;p&gt;One approach to getting this information in one go is to remove the &lt;em&gt;Event Type&lt;/em&gt; filter and search for the document’s name in the search box at the top. This filters the &lt;em&gt;Sysmon&lt;/em&gt; events related to this specific file name. This leads us to a &lt;strong&gt;Process Create (Event ID 1)&lt;/strong&gt; for &lt;code&gt;WINWORD.EXE&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2e5b4f0eb5302b1f9e63479057bc2187_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;732px&#34; data-flex-grow=&#34;305&#34; height=&#34;262&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/2e5b4f0eb5302b1f9e63479057bc2187_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Identifying the Microsoft Word PID&lt;/p&gt;&#xA;&lt;p&gt;As a bonus, by identifying this event, we also get all the metadata we need to answer both &lt;strong&gt;Questions 2 &amp;amp; 3&lt;/strong&gt;!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5537eb1a8df841b2d449669eb910bdaa_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1222px&#34; data-flex-grow=&#34;509&#34; height=&#34;157&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/5537eb1a8df841b2d449669eb910bdaa_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-4-based-on-sysmon-logs-what-is-the-ipv4-address-resolved-by-the-malicious-domain-used-in-the-previous-question&#34;&gt;Question 4: Based on Sysmon logs, what is the IPv4 address resolved by the malicious domain used in the previous question?&#xA;&lt;/h4&gt;&lt;p&gt;The wording of &lt;strong&gt;Question 4&lt;/strong&gt; is a little confusing since there wasn’t any domain reference in &lt;strong&gt;Question 3&lt;/strong&gt; that I found. It’s all good — we can infer what we’re looking for: the IP address of a malicious domain contacted by &lt;code&gt;WINWORD.EXE&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;For this, jump to the &lt;em&gt;Process View&lt;/em&gt; tab in &lt;strong&gt;SysmonView&lt;/strong&gt; and scroll down the process list to select &lt;code&gt;WINWORD.EXE&lt;/code&gt;. Then click the image path in the box below, and finally click both session GUIDs. This gives us a clean diagram of the relationships between events tied to the process—very neat!&lt;/p&gt;&#xA;&lt;p&gt;Scrolling through the events, we’ll stumble across a suspicious-looking domain in the DNS query, along with a corresponding destination IP address. Correlating the suspicious domain with the IP address is good, but through additional threat intelligence or process of elimination, we can also determine that this IP is malicious. We’ll see more of that later!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;01abfff4965165b38e91348dfcdc1e1f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;394px&#34; data-flex-grow=&#34;164&#34; height=&#34;487&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/01abfff4965165b38e91348dfcdc1e1f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Identifying the malicious IP address&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8fefd8778002a90624ce1484ef3337bb_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/8fefd8778002a90624ce1484ef3337bb_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-5-what-is-the-base64-encoded-string-in-the-malicious-payload-executed-by-the-document&#34;&gt;Question 5: What is the base64 encoded string in the malicious payload executed by the document?&#xA;&lt;/h4&gt;&lt;p&gt;Now &lt;strong&gt;Question 5&lt;/strong&gt; is a little tricky because you might notice our visualization doesn’t show any child process like PowerShell that would give us a clue. Not to worry — we’ll try a different approach and bust out some of &lt;strong&gt;Eric Zimmerman’s tools&lt;/strong&gt;: &lt;strong&gt;EvtxECmd&lt;/strong&gt; and &lt;strong&gt;Timeline Explorer&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The idea is to use &lt;em&gt;EvtxECmd&lt;/em&gt; to parse the &lt;code&gt;Sysmon.evtx&lt;/code&gt; file and produce a CSV file that we can load into &lt;em&gt;Timeline Explorer&lt;/em&gt; to view and filter the data. This makes it easier to examine the relationship between the Microsoft Word process and any child processes spawned by the malware. Fortunately, both tools are already built into our environment and can be found in the following directories:&lt;/p&gt;&#xA;&lt;p&gt;C:\Tools\EvtxECmd\EvtxECmd.exe&#xA;C:\Tools\TimelineExplorer\TimelineExplorer.exe&lt;/p&gt;&#xA;&lt;p&gt;First, open PowerShell and run the command below to execute &lt;em&gt;EvtxECmd&lt;/em&gt; and output the results to CSV:&lt;/p&gt;&#xA;&lt;p&gt;C:\Tools\EvtxECmd\EvtxECmd.exe -f &amp;ldquo;C:\Users\user\Desktop\Incident Files\sysmon.evtx&amp;rdquo; &amp;ndash;csv &amp;ldquo;C:\Users\user\Desktop\Incident Files&amp;rdquo; &amp;ndash;csvf Sysmon.csv&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;20ebd3f515fdc3792a49d1314fd8996d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;530px&#34; data-flex-grow=&#34;220&#34; height=&#34;362&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/20ebd3f515fdc3792a49d1314fd8996d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell: Executing EvtxECmd&lt;/p&gt;&#xA;&lt;p&gt;Now comes the fun part. Open &lt;em&gt;Timeline Explorer&lt;/em&gt; and load the new CSV file. We’ll need to do a few things here:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Filter on the &lt;code&gt;EventID&lt;/code&gt; column for &lt;code&gt;1&lt;/code&gt; (process creation)&lt;/li&gt;&#xA;&lt;li&gt;Enter the &lt;strong&gt;parent process ID&lt;/strong&gt; of &lt;code&gt;WINWORD.EXE&lt;/code&gt; (496) into the &lt;code&gt;PayloadData5&lt;/code&gt; field to show any child processes we didn’t see in &lt;em&gt;SysmonView&lt;/em&gt;&lt;/li&gt;&#xA;&lt;li&gt;Check the &lt;code&gt;Executable Info&lt;/code&gt; column for the first event chronologically&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;13517724552e111557353aceee6e7799_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;510px&#34; data-flex-grow=&#34;212&#34; height=&#34;376&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/13517724552e111557353aceee6e7799_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Timeline Explorer: Finding the encoded string&lt;/p&gt;&#xA;&lt;p&gt;See the encoded blob following the &lt;code&gt;FromBase64String&lt;/code&gt; function? That’s what we need to answer &lt;strong&gt;Question 5&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;But we can take it a step further and decode it using something like &lt;strong&gt;CyberChef&lt;/strong&gt;, which we’ll do for demonstration purposes. Within &lt;em&gt;CyberChef&lt;/em&gt;, paste the encoded string into the input window. Then, add the &lt;em&gt;From Base64&lt;/em&gt; operation to the recipe.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;bb697a61fa1894642616c99c6709fe65_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;351px&#34; data-flex-grow=&#34;146&#34; height=&#34;547&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/bb697a61fa1894642616c99c6709fe65_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;CyberChef: Decoding the string&lt;/p&gt;&#xA;&lt;p&gt;In the output, we’ll get some extremely helpful clues that we’ll use in &lt;strong&gt;Task 5&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;35830e37ff316fd82c9a5cacbaf02829_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2493px&#34; data-flex-grow=&#34;1038&#34; height=&#34;77&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/35830e37ff316fd82c9a5cacbaf02829_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-6-what-is-the-cve-number-of-the-exploit-used-by-the-attacker-to-achieve-a-remote-code-execution&#34;&gt;Question 6: What is the CVE number of the exploit used by the attacker to achieve a remote code execution?&#xA;&lt;/h4&gt;&lt;p&gt;Head back to the &lt;em&gt;Timeline Explorer&lt;/em&gt; view and look closely — do you see anything unusual? The process executing the code is the &lt;strong&gt;Microsoft Support Diagnostic Tool&lt;/strong&gt; (&lt;code&gt;MSDT.exe&lt;/code&gt;), a legitimate diagnostic utility. Very strange.&lt;/p&gt;&#xA;&lt;p&gt;Now that we have some of the puzzle pieces, let’s put them together. Let’s take to Google and see if there’s a known vulnerability where &lt;em&gt;MSDT&lt;/em&gt; is called from Word to execute code.&lt;/p&gt;&#xA;&lt;p&gt;We’ll immediately identify the following &lt;a class=&#34;link&#34; href=&#34;https://msrc.microsoft.com/update-guide/vulnerability/CVE-2022-30190&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;CVE&lt;/a&gt; from Microsoft:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;A remote code execution vulnerability exists when MSDT is called using the URL protocol from a calling application such as Word. An attacker who successfully exploits this vulnerability can run arbitrary code with the privileges of the calling application. The attacker can then install programs, view, change, or delete data, or create new accounts in the context allowed by the user’s rights.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Bingo! We’ve stumbled across exploitation of the famous &lt;strong&gt;“Follina” vulnerability&lt;/strong&gt;, tracked as &lt;strong&gt;CVE-2022–&lt;Redacted&gt;&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;150f513bfd61381e6ebacae93d861ed9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2086px&#34; data-flex-grow=&#34;869&#34; height=&#34;92&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/150f513bfd61381e6ebacae93d861ed9_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;task-5-initial-accessstage-2-execution&#34;&gt;Task 5: Initial Access — Stage 2 execution&#xA;&lt;/h3&gt;&lt;h4 id=&#34;investigation-guide-1&#34;&gt;Investigation Guide:&#xA;&lt;/h4&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The Autostart execution reflects explorer.exe as its parent process ID.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Child processes of explorer.exe within the event timeframe could be significant.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Process Creation (Event ID 1) and File Creation (Event ID 11) succeeding the document execution are worth checking.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h4 id=&#34;question-1-the-malicious-execution-of-the-payload-wrote-a-file-on-the-system-what-is-the-full-target-path-of-thepayload&#34;&gt;Question 1: The malicious execution of the payload wrote a file on the system. What is the full target path of the payload?&#xA;&lt;/h4&gt;&lt;p&gt;From the Base64 command we found in &lt;strong&gt;Task 4, Question 5&lt;/strong&gt;, we can start to get an idea of where the file was written:&lt;/p&gt;&#xA;&lt;p&gt;$app=[Environment]::GetFolderPath(&amp;lsquo;ApplicationData&amp;rsquo;);cd &amp;ldquo;$app\Microsoft\Windows\Start Menu\Programs\Startup&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;To understand the full path, we just need to first identify where the &lt;code&gt;$app&lt;/code&gt; variable is pointing and then append the rest of the path that we see in the &lt;code&gt;cd&lt;/code&gt; command. One approach is to declare the variable in &lt;em&gt;PowerShell&lt;/em&gt; within the analysis environment to see what happens, and then transpose the path into the victim’s environment—check out what I mean below:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;200e2ece3295f5912073a1b989e80f16_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1900px&#34; data-flex-grow=&#34;792&#34; height=&#34;101&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/200e2ece3295f5912073a1b989e80f16_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell: Testing the $app variable&lt;/p&gt;&#xA;&lt;p&gt;The &lt;code&gt;$app&lt;/code&gt; variable resolves to the &lt;em&gt;ApplicationData&lt;/em&gt; folder for our user account. So, we need to change the username to the victim account name we identified in &lt;strong&gt;Task 4, Question 2&lt;/strong&gt; and put it all together to get our answer:&lt;/p&gt;&#xA;&lt;p&gt;C:\Users&amp;lt;REDACTED&amp;gt;\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup&lt;/p&gt;&#xA;&lt;p&gt;Dropping the payload into this folder means the executable will run each time the victim user logs in, since it’s placed in the &lt;em&gt;Startup&lt;/em&gt; directory. This is a common way a threat actor establishes persistence on a system.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;32818b739bd49cc553a6858c17847109_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/32818b739bd49cc553a6858c17847109_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-2-the-implanted-payload-executes-once-the-user-logs-into-the-machine-what-is-the-executed-command-upon-a-successful-login-of-the-compromised-user&#34;&gt;Question 2: The implanted payload executes once the user logs into the machine. What is the executed command upon a successful login of the compromised user?&#xA;&lt;/h4&gt;&lt;p&gt;Now that we’ve discovered where the payload is executed from, let’s dig in and figure out what it does. Focusing on the next steps of the investigation guide, we know the time of the file write was &lt;strong&gt;17:13:35&lt;/strong&gt;, and we need to look at events with &lt;code&gt;explorer.exe&lt;/code&gt; as a parent.&lt;/p&gt;&#xA;&lt;p&gt;Let’s jump back to &lt;em&gt;SysmonView&lt;/em&gt; and visualize this with a handy diagram of all the events. Click the &lt;em&gt;Hierarchy&lt;/em&gt; tab at the bottom of the window. Then, press &lt;em&gt;Generate Diagram&lt;/em&gt; to spit out an incredibly helpful visual of the process relationships, which makes it a ton easier to identify child processes of &lt;code&gt;explorer.exe&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;26c5beac47b806163816b509dc29779d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;507px&#34; data-flex-grow=&#34;211&#34; height=&#34;378&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/26c5beac47b806163816b509dc29779d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Identifying suspicious PowerShell process&lt;/p&gt;&#xA;&lt;p&gt;One of the child processes is &lt;code&gt;powershell.exe&lt;/code&gt;, which is interesting, especially in the context of command execution. Let’s take a quick peek by opening the &lt;em&gt;PowerShell&lt;/em&gt; box.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5dbae82b8a76c68d5d53172f7217e7ae_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;880px&#34; data-flex-grow=&#34;366&#34; height=&#34;218&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/5dbae82b8a76c68d5d53172f7217e7ae_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: ProcessCreate Event Details for Powershell.exe&lt;/p&gt;&#xA;&lt;p&gt;Inside, we’ll discover exactly what we need — the process command line of the payload. This tells us exactly what it does: download another binary, or second stage.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c53e45e5eb70ce17fa85aae97b4e9f59_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2064px&#34; data-flex-grow=&#34;860&#34; height=&#34;93&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/c53e45e5eb70ce17fa85aae97b4e9f59_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-3-based-on-sysmon-logs-what-is-the-sha256-hash-of-the-malicious-binary-downloaded-for-stage-2-execution&#34;&gt;Question 3: Based on Sysmon logs, what is the SHA256 hash of the malicious binary downloaded for stage 2 execution?&#xA;&lt;/h4&gt;&lt;p&gt;If we take a closer look at the command from the last question, we’ll discover that &lt;code&gt;certutil&lt;/code&gt; was abused to download another &lt;code&gt;.exe&lt;/code&gt; file via PowerShell. Let’s dig into it more.&lt;/p&gt;&#xA;&lt;p&gt;Close the window and review the diagram. Find the child process below &lt;code&gt;powershell.exe&lt;/code&gt; on the diagram—that’s our Stage 2.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6b3d040bee9c300389f8ac8f07879692_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;507px&#34; data-flex-grow=&#34;211&#34; height=&#34;378&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/6b3d040bee9c300389f8ac8f07879692_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Identifying the Stage 2 binary&lt;/p&gt;&#xA;&lt;p&gt;Double-click it to open the details and grab the file hash for our list of indicators.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f2378359885fb60f4ffa0a9dac3b9ee5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;365px&#34; data-flex-grow=&#34;152&#34; height=&#34;526&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/f2378359885fb60f4ffa0a9dac3b9ee5_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: ProcessCreate Event Details for the Stage 2 binary&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;332c24f67acedb9c64cdfc041d355f1e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/332c24f67acedb9c64cdfc041d355f1e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-4-the-stage-2-payload-downloaded-establishes-a-connection-to-a-c2-server-what-is-the-domain-and-port-used-by-the-attacker&#34;&gt;Question 4: The stage 2 payload downloaded establishes a connection to a c2 server. What is the domain and port used by the attacker?&#xA;&lt;/h4&gt;&lt;p&gt;With the name of the executable, an easy way to identify the command-and-control (C2) server is to step back to the &lt;em&gt;Process View&lt;/em&gt; tab. Recall that we can search for the name of the second-stage binary and easily view its related network connections to the C2 server as captured by &lt;em&gt;Sysmon&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;From the relationships mapped here, we can infer that the DNS query event and TCP connections to port &lt;code&gt;80&lt;/code&gt; represent a pair:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ddcbb189140a43af74349848304f2da7_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;288px&#34; data-flex-grow=&#34;120&#34; height=&#34;665&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/ddcbb189140a43af74349848304f2da7_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Process View of the Stage 2 binary&lt;/p&gt;&#xA;&lt;p&gt;This provides us with the domain, IP address, and port used for command and control by the second stage. These will be incredibly valuable artifacts for the network traffic analysis in &lt;strong&gt;Task 6&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6785e4730053ca00579bd06a7c0adcd4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2064px&#34; data-flex-grow=&#34;860&#34; height=&#34;93&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/6785e4730053ca00579bd06a7c0adcd4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;task-6-initial-accessmalicious-documenttraffic&#34;&gt;Task 6: Initial Access — Malicious Document Traffic&#xA;&lt;/h3&gt;&lt;h4 id=&#34;investigation-guide-2&#34;&gt;Investigation Guide:&#xA;&lt;/h4&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Since we have discovered network-related artefacts, we may again refer to our cheatsheet, which focuses on Network Log Analysis:&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;We can now use &lt;strong&gt;Brim and Wireshark&lt;/strong&gt; to investigate the packet capture**.**&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Find network events related to the harvested domains and IP addresses.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Sample Brim filter that you can use for this investigation: &lt;code&gt;__path==&amp;quot;http&amp;quot; &amp;quot;&amp;lt;malicious domain&amp;gt;&amp;quot;&lt;/code&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Now that we’ve gotten a better idea of what the malicious document is, which vulnerability it exploits, what the second stage is, and what C2 infrastructure it connects with, it’s time to dig further into the network traffic. For this, we’ll make a detour and pivot to a second artifact: &lt;code&gt;capture.pcap&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;This is a network packet capture file that we can use to go deep into investigating the communication between the malware and the command-and-control server.&lt;/p&gt;&#xA;&lt;p&gt;To start, we’ll use &lt;strong&gt;Brim&lt;/strong&gt; (now called &lt;em&gt;Zui&lt;/em&gt;) to process and visualize the packet data with some awesome built-in queries.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9f6ce1f21b503dcf6748ec6614a62ba4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;569px&#34; data-flex-grow=&#34;237&#34; height=&#34;337&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/9f6ce1f21b503dcf6748ec6614a62ba4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim Overview&lt;/p&gt;&#xA;&lt;p&gt;Go ahead and open up &lt;strong&gt;Brim&lt;/strong&gt;, which is already installed in the analysis environment, and drop the &lt;code&gt;capture.pcap&lt;/code&gt; into the input window. Once it loads, we’ll get started.&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-1-what-is-the-url-of-the-malicious-payload-embedded-in-the-document&#34;&gt;Question 1: What is the URL of the malicious payload embedded in the document?&#xA;&lt;/h4&gt;&lt;p&gt;Now we already know some valuable information, including the malware hosting domain and IP address, the C2 URL, and the C2 IP address.&lt;/p&gt;&#xA;&lt;p&gt;Remember back in &lt;strong&gt;Task 4, Question 4&lt;/strong&gt; we identified an IP address and domain embedded in the malicious document? Because we have most of the information already, this is a logical starting point since we’re looking for network URL information related to the stage-one malicious document.&lt;/p&gt;&#xA;&lt;p&gt;Since we’re looking to identify a URL request, an easy way to do this is to leverage the built-in &lt;strong&gt;Brim&lt;/strong&gt; query &lt;em&gt;HTTP Requests&lt;/em&gt; to determine which URL is being connected to. This will display an easy-to-read table containing the results we need.&lt;/p&gt;&#xA;&lt;p&gt;Scroll down to the section containing the IP address from &lt;strong&gt;Task 4, Question 4&lt;/strong&gt;, and we can see all the requests to this URL. There are a lot of interesting files here, but the one we’re focused on is the first: &lt;code&gt;index.html&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a41548a6008e6af9d31d09a856bc8d58_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;550px&#34; data-flex-grow=&#34;229&#34; height=&#34;349&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/a41548a6008e6af9d31d09a856bc8d58_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying URLs related to the C2 IP address&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;60883b79fba82ccfc7f1eb1fd7248165_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2742px&#34; data-flex-grow=&#34;1142&#34; height=&#34;70&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/60883b79fba82ccfc7f1eb1fd7248165_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-2-what-is-the-encoding-used-by-the-attacker-on-the-c2-connection&#34;&gt;Question 2: What is the encoding used by the attacker on the c2 connection?&#xA;&lt;/h4&gt;&lt;p&gt;Back in &lt;strong&gt;Task 4, Question 5&lt;/strong&gt;, we determined that the attacker used Base64 encoding to obfuscate the payload within the malicious document. Could it be the same encoding for the C2 connection? Let’s check the network traffic to confirm.&lt;/p&gt;&#xA;&lt;p&gt;Within our &lt;em&gt;HTTP Requests&lt;/em&gt; view in &lt;strong&gt;Brim&lt;/strong&gt;, scroll down to the entries with C2 IP address. Notice that the corresponding values in URI column contain long strings? We’ll use one of these to check if they are also Base64 encoded.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;33082c156858dc19c3d45624c65c9fbb_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;551px&#34; data-flex-grow=&#34;229&#34; height=&#34;348&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/33082c156858dc19c3d45624c65c9fbb_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying Base64 strings in the URI&lt;/p&gt;&#xA;&lt;p&gt;Copy any one of these as a test and jump back into &lt;strong&gt;CyberChef&lt;/strong&gt;, once again applying the &lt;em&gt;From Base64&lt;/em&gt; operation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f56cf8c964c857f409958897dc9bb9b6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;496px&#34; data-flex-grow=&#34;206&#34; height=&#34;387&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/f56cf8c964c857f409958897dc9bb9b6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;CyberChef: Decoding a Base64 encoded parameter&lt;/p&gt;&#xA;&lt;p&gt;Confirmed! This shows us that the encoding is indeed Base64 — but more importantly, it might also indicate that some command return data is being exfiltrated via HTTP requests.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b89b0312de4e05047df0ab6b324a1518_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2782px&#34; data-flex-grow=&#34;1159&#34; height=&#34;69&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/b89b0312de4e05047df0ab6b324a1518_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;questions-3-4&#34;&gt;Questions 3 &amp;amp; 4:&#xA;&lt;/h4&gt;&lt;h4 id=&#34;the-malicious-c2-binary-sends-a-payload-using-a-parameter-that-contains-the-executed-command-results-what-is-the-parameter-used-by-thebinary&#34;&gt;The malicious c2 binary sends a payload using a parameter that contains the executed command results. What is the parameter used by the binary?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;the-malicious-c2-binary-connects-to-a-specific-url-to-get-the-command-to-be-executed-what-is-the-url-used-by-thebinary&#34;&gt;The malicious c2 binary connects to a specific URL to get the command to be executed. What is the URL used by the binary?&#xA;&lt;/h4&gt;&lt;p&gt;Now the cool part: by discovering that each of these strings contains the results of the executed commands, we can also identify the parameter that contains those results.&lt;/p&gt;&#xA;&lt;p&gt;Take a look at the URI and notice a common parameter and URL used by the binary. This parameter consistently appears in requests that include Base64-encoded data, strongly suggesting it’s being used to transmit command output back to the attacker — something we already suspected from the previous question.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3bf06ee42202f9d00cc5a7eafcbb6da6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;568px&#34; data-flex-grow=&#34;236&#34; height=&#34;338&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/3bf06ee42202f9d00cc5a7eafcbb6da6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the URL and the Parameter&lt;/p&gt;&#xA;&lt;p&gt;Similarly, the URL path reveals where the binary retrieves its next command to execute. These two pieces, the parameter and the URL, are important indicators for understanding the attacker’s C2.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;dc64c60809eafa66bd0b8f71561ff539_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1443px&#34; data-flex-grow=&#34;601&#34; height=&#34;133&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/dc64c60809eafa66bd0b8f71561ff539_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-5-what-is-the-http-method-used-by-thebinary&#34;&gt;Question 5: What is the HTTP method used by the binary?&#xA;&lt;/h4&gt;&lt;p&gt;To confirm how the binary communicates with the C2 server, check the &lt;code&gt;method&lt;/code&gt; column in the &lt;em&gt;HTTP Requests&lt;/em&gt; view in &lt;strong&gt;Brim&lt;/strong&gt;. This shows whether the request uses &lt;code&gt;GET&lt;/code&gt;, &lt;code&gt;POST&lt;/code&gt;, etc.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5b4e0331d44c00fbfa747f6ac49b140e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;568px&#34; data-flex-grow=&#34;236&#34; height=&#34;338&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/5b4e0331d44c00fbfa747f6ac49b140e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the HTTP method&lt;/p&gt;&#xA;&lt;p&gt;The value in this column reveals the exact HTTP method the attacker used to retrieve commands and send data which is another important detail for understanding how the C2 channel operates.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;07ebe9c27c5c461da8ba78e0fdb7e87d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/07ebe9c27c5c461da8ba78e0fdb7e87d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-6-based-on-the-user-agent-what-programming-language-was-used-by-the-attacker-to-compile-thebinary&#34;&gt;Question 6: Based on the user agent, what programming language was used by the attacker to compile the binary?&#xA;&lt;/h4&gt;&lt;p&gt;To find this clue, we’ll pull back from the &lt;em&gt;HTTP Requests&lt;/em&gt; query and search for the C2 IP in the Brim search box. Since we’re looking for a user agent, include the &lt;code&gt;user_agent&lt;/code&gt; field in the query to surface unique results:&lt;/p&gt;&#xA;&lt;p&gt;167.71.222.162 user_agent&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;519cc54596d861cebf83831666aab772_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;551px&#34; data-flex-grow=&#34;229&#34; height=&#34;348&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/519cc54596d861cebf83831666aab772_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now scroll over to the &lt;code&gt;user_agent&lt;/code&gt; column, and you’ll find another breadcrumb that reveals the programming language used to compile the binary.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b2acde190d8cc8bb840f06dcb34b30b0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2042px&#34; data-flex-grow=&#34;851&#34; height=&#34;94&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/b2acde190d8cc8bb840f06dcb34b30b0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;task-7-discoveryinternal-reconnaissance&#34;&gt;Task 7: Discovery — Internal Reconnaissance&#xA;&lt;/h3&gt;&lt;h4 id=&#34;investigation-guide-3&#34;&gt;Investigation Guide:&#xA;&lt;/h4&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;To continue with the investigation, we may focus on the following information:&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Find network and process events connecting to the malicious domain.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Find network events that contain an encoded command.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;We can use Brim to filter all packets containing the encoded string.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Look for endpoint enumeration commands since the attacker is already inside the machine.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;In addition, we may refer to our cheatsheet for Brim to quickly investigate the encoded traffic with the following filters:&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;To get all HTTP requests related to the malicious C2 traffic: &lt;code&gt;_path==&amp;quot;http&amp;quot; &amp;quot;&amp;lt;replace domain&amp;gt;&amp;quot; id.resp_p==&amp;lt;replace port&amp;gt; | cut ts, host, id.resp_p, uri | sort ts&lt;/code&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h4 id=&#34;question-1-the-attacker-was-able-to-discover-a-sensitive-file-inside-the-machine-of-the-user-what-is-the-password-discovered-on-the-aforementioned-file&#34;&gt;Question 1: The attacker was able to discover a sensitive file inside the machine of the user. What is the password discovered on the aforementioned file?&#xA;&lt;/h4&gt;&lt;p&gt;Remember in the last task how we discovered that the attacker uses the C2 binary to send the results of commands executed on the victim’s system? Now we’ll take a closer look at those commands and their outputs, decode them, and build a complete picture of what was run.&lt;/p&gt;&#xA;&lt;p&gt;We’ll use the handy command provided in the investigation guide and plugin the relevant information we’ve already gathered during our case:&lt;/p&gt;&#xA;&lt;p&gt;_path==&amp;ldquo;http&amp;rdquo; &amp;ldquo;resolvecyber.xyz&amp;rdquo; id.resp_p==80| cut ts, host, id.resp_p, uri | sort ts&lt;/p&gt;&#xA;&lt;p&gt;Once the results load, we’ll see the encoded commands we’re going to work with. Press the &lt;em&gt;Export&lt;/em&gt; button in &lt;strong&gt;Brim&lt;/strong&gt; and save the results as a &lt;code&gt;.csv&lt;/code&gt; file—mine is called &lt;code&gt;results.csv&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;77a3c3dd32f1e1291374f09b13746388_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;598px&#34; data-flex-grow=&#34;249&#34; height=&#34;321&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/77a3c3dd32f1e1291374f09b13746388_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Filtering the C2 results for export&lt;/p&gt;&#xA;&lt;p&gt;Next, we need a quick way to decode the Base64 strings following the &lt;code&gt;q&lt;/code&gt; parameter. While we could copy and paste each one into &lt;strong&gt;CyberChef&lt;/strong&gt;, let’s automate this with a &lt;em&gt;PowerShell&lt;/em&gt; script.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Full disclosure:&lt;/strong&gt; GenAI was a big help here since regex still feels like black magic to me. But I say keep with the times and leverage the modern tools at our disposal as long as we verify the output is accurate.&lt;/p&gt;&#xA;&lt;p&gt;Get-Content .\results.csv | ForEach-Object {&#xA;if ($_ -match &amp;lsquo;q=([^,]+)&amp;rsquo;) {&#xA;$encoded = $matches[1]&#xA;$decoded = [System.Text.Encoding]::UTF8.GetString(&#xA;[System.Convert]::FromBase64String($encoded)&#xA;)&#xA;$decoded&#xA;}&#xA;}&lt;/p&gt;&#xA;&lt;p&gt;Here’s what the script does:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Reads the &lt;code&gt;results.csv&lt;/code&gt; file&lt;/li&gt;&#xA;&lt;li&gt;Matches &lt;code&gt;q=&lt;/code&gt; followed by the encoded string (&lt;strong&gt;Task 6, Question 3&lt;/strong&gt;)&lt;/li&gt;&#xA;&lt;li&gt;Extracts the Base64 string and decodes it into readable text&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Open &lt;strong&gt;Notepad&lt;/strong&gt; and save this as a &lt;code&gt;.ps1&lt;/code&gt; script (I called mine &lt;code&gt;decode.ps1&lt;/code&gt;) and run it. The output gives us incredible insight into the attacker’s actions—and right at the top, you’ll find the password we’re looking for in the &lt;code&gt;$pass&lt;/code&gt; variable.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;48d01de69277ea82909c6dbd8e5b8e66_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;406px&#34; data-flex-grow=&#34;169&#34; height=&#34;472&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/48d01de69277ea82909c6dbd8e5b8e66_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell: Running the decode.ps1 script&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7219b096a2a9b9c642b353f2b7d46622_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2493px&#34; data-flex-grow=&#34;1038&#34; height=&#34;77&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/7219b096a2a9b9c642b353f2b7d46622_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-2-the-attacker-then-enumerated-the-list-of-listening-ports-inside-the-machine-what-is-the-listening-port-that-could-provide-a-remote-shell-inside-themachine&#34;&gt;Question 2: The attacker then enumerated the list of listening ports inside the machine. What is the listening port that could provide a remote shell inside the machine?&#xA;&lt;/h4&gt;&lt;p&gt;Let’s keep reviewing the output of the script to learn more about the attacker’s reconnaissance activity. We can see that they used &lt;code&gt;netstat&lt;/code&gt; to enumerate the listening ports.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d5c48ec690ad356a18fc353f33eee69d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;278px&#34; data-flex-grow=&#34;115&#34; height=&#34;690&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/d5c48ec690ad356a18fc353f33eee69d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell: Identifying a listening remote access port&lt;/p&gt;&#xA;&lt;p&gt;When we review the open ports listed, a quick lookup on the &lt;a class=&#34;link&#34; href=&#34;https://www.speedguide.net/ports.php&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Speedguide.net Ports Database&lt;/strong&gt;&lt;/a&gt; helps us identify their purpose. One port stands out because it’s associated with &lt;strong&gt;Windows Remote Management (WinRM)&lt;/strong&gt;. This service can allow remote shell via PowerShell remoting when it’s enabled and authenticated, which makes it a juicy target for attackers.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;576e5002c627349708d3fee8ff4c62b2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2630px&#34; data-flex-grow=&#34;1095&#34; height=&#34;73&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/576e5002c627349708d3fee8ff4c62b2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-3-4&#34;&gt;Question 3 &amp;amp; 4:&#xA;&lt;/h4&gt;&lt;h4 id=&#34;the-attacker-then-established-a-reverse-socks-proxy-to-access-the-internal-services-hosted-inside-the-machine-what-is-the-command-executed-by-the-attacker-to-establish-the-connection&#34;&gt;The attacker then established a reverse socks proxy to access the internal services hosted inside the machine. What is the command executed by the attacker to establish the connection?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-sha256-hash-of-the-binary-used-by-the-attacker-to-establish-the-reverse-socks-proxy-connection&#34;&gt;What is the SHA256 hash of the binary used by the attacker to establish the reverse socks proxy connection?&#xA;&lt;/h4&gt;&lt;p&gt;Arriving at the bottom of the script during our review, we notice something interesting: the attacker downloads another binary named &lt;code&gt;ch.exe&lt;/code&gt; using PowerShell &lt;code&gt;Invoke-WebRequest&lt;/code&gt; (&lt;code&gt;iwr&lt;/code&gt;) from the URL we identified earlier when analyzing the malicious document traffic.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;56d3953f363d8f4f88b09490fa53758b_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1846px&#34; data-flex-grow=&#34;769&#34; height=&#34;104&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/56d3953f363d8f4f88b09490fa53758b_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell: Identifying another suspicious binary&lt;/p&gt;&#xA;&lt;p&gt;Switching back to &lt;em&gt;SysmonView&lt;/em&gt;, we can pivot to the &lt;strong&gt;Process view&lt;/strong&gt; tab and select &lt;code&gt;ch.exe&lt;/code&gt;. From there, we’ll look for the related &lt;em&gt;process creation event&lt;/em&gt;. This event will reveal two critical pieces of evidence to answer &lt;strong&gt;Question 3 &amp;amp; 4&lt;/strong&gt;:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;The full command line used to establish the reverse SOCKS proxy connection&lt;/li&gt;&#xA;&lt;li&gt;The SHA256 hash of the binary itself&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;75422995fb059807da16678a9ea9120e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;439px&#34; data-flex-grow=&#34;183&#34; height=&#34;437&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/75422995fb059807da16678a9ea9120e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Using the process view to identify the proxy connection stand up&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c9f092802d9ec8fe3285b3e8ea35b700_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1032px&#34; data-flex-grow=&#34;430&#34; height=&#34;186&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/c9f092802d9ec8fe3285b3e8ea35b700_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-5-what-is-the-name-of-the-tool-used-by-the-attacker-based-on-the-sha256-hash-provide-the-answer-in-lowercase&#34;&gt;Question 5: What is the name of the tool used by the attacker based on the SHA256 hash? Provide the answer in lowercase.&#xA;&lt;/h4&gt;&lt;p&gt;Now that we have the SHA256 hash of the tool used to establish the proxy, let’s pivot to some external threat intelligence to see if we can identify the specific utility. In this case, we’ll use the &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;VirusTotal&lt;/strong&gt;&lt;/a&gt; platform.&lt;/p&gt;&#xA;&lt;p&gt;Navigate to &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;VirusTotal&lt;/em&gt;&lt;/a&gt; and submit the hash of &lt;code&gt;ch.exe&lt;/code&gt; to check if it’s been seen before and gather additional intelligence. Right away, you’ll notice that the sample has been observed previously, with most anti-malware vendors detecting it as malicious. For the purposes of &lt;strong&gt;Question 5&lt;/strong&gt;, focus on the &lt;em&gt;family label&lt;/em&gt; provided by VirusTotal, it’s the key to identifying the tool.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7af3acee6de781e1f1e9967d1c456a5e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;831px&#34; data-flex-grow=&#34;346&#34; height=&#34;231&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/7af3acee6de781e1f1e9967d1c456a5e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/8a99353662ccae117d2bb22efd8c43d7169060450be413af763e8ad7522d2451&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/8a99353662ccae117d2bb22efd8c43d7169060450be413af763e8ad7522d2451&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;This particular utility is designed for TCP/UDP tunneling over HTTP, a technique attackers often abuse to create covert channels and bypass network restrictions. This aligns perfectly with the behavior we observed earlier when the attacker stood up a reverse SOCKS proxy.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;afc83761c688a2cf12f1a14719de843e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/afc83761c688a2cf12f1a14719de843e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-6-the-attacker-then-used-the-harvested-credentials-from-the-machine-based-on-the-succeeding-process-after-the-execution-of-the-socks-proxy-what-service-did-the-attacker-use-to-authenticate&#34;&gt;Question 6: The attacker then used the harvested credentials from the machine. Based on the succeeding process after the execution of the socks proxy, what service did the attacker use to authenticate?&#xA;&lt;/h4&gt;&lt;p&gt;Jumping back over to the &lt;em&gt;SysmonView&lt;/em&gt; &lt;em&gt;Hierarchy map&lt;/em&gt;, something stands out: remember in &lt;strong&gt;Question 2&lt;/strong&gt; we identified a port associated with a specific service that could be used for a remote shell? We’ll actually stumble across the process name &lt;code&gt;wsmprovhost.exe&lt;/code&gt; for that same service right in the graph, along with another suspicious file and a chain of process creations. Interesting!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;be6d47cffd94119c9217eb962ec79a46_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;386px&#34; data-flex-grow=&#34;160&#34; height=&#34;497&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/be6d47cffd94119c9217eb962ec79a46_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Using the hierarchy view to identify the authenticated service&lt;/p&gt;&#xA;&lt;p&gt;This indicates that the remote management service was abused by the adversary and may have been used for further actions like lateral movement. For now, this evidence is enough to conclude that this service was the one authenticated to by the attacker.&lt;/p&gt;&#xA;&lt;p&gt;Stick with this view since we’ll be focused on examining these binaries in the next task.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;94229db4f26ac0c4abbffe568c17b72e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1699px&#34; data-flex-grow=&#34;707&#34; height=&#34;113&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/94229db4f26ac0c4abbffe568c17b72e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;task-8-privilege-escalationexploiting-privileges&#34;&gt;Task 8: Privilege Escalation — Exploiting Privileges&#xA;&lt;/h3&gt;&lt;h4 id=&#34;investigation-guide-4&#34;&gt;Investigation Guide:&#xA;&lt;/h4&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;With this, we can focus on the following network and endpoint events:&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Look for events executed after the successful execution of the reverse socks proxy tool.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Look for potential privilege escalation attempts, as the attacker has already established a persistent low-privilege access.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h4 id=&#34;question-1-after-discovering-the-privileges-of-the-current-user-the-attacker-then-downloaded-another-binary-to-be-used-for-privilege-escalation-what-is-the-name-and-the-sha256-hash-of-thebinary&#34;&gt;Question 1: After discovering the privileges of the current user, the attacker then downloaded another binary to be used for privilege escalation. What is the name and the SHA256 hash of the binary?&#xA;&lt;/h4&gt;&lt;p&gt;Now that we’ve confirmed the attacker authenticated using &lt;code&gt;wsmprovhost.exe&lt;/code&gt;, let’s turn our attention to the next child process creation event highlighted in the diagram.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d6215ea842adbcbb80aae6dd42a3823f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;386px&#34; data-flex-grow=&#34;160&#34; height=&#34;497&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/d6215ea842adbcbb80aae6dd42a3823f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Identifying the privilege escalation binary&lt;/p&gt;&#xA;&lt;p&gt;Double-click the event to grab the SHA256 hash of the binary. This will give us the two pieces of evidence we need:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;The executable name&lt;/li&gt;&#xA;&lt;li&gt;The SHA256 hash&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;902d4a35236d5af1ea6a6950c1bccf7d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;333px&#34; data-flex-grow=&#34;139&#34; height=&#34;575&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/902d4a35236d5af1ea6a6950c1bccf7d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: ProcessCreate Event Details of the privilege escalation binary&lt;/p&gt;&#xA;&lt;p&gt;To submit the answer, combine the executable name and file hash. Identifying this binary and its hash not only answers the question but also provides us with another IOC for our list for hunting.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;57c9dae1b8087cf7120e83241d934524_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1714px&#34; data-flex-grow=&#34;714&#34; height=&#34;112&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/57c9dae1b8087cf7120e83241d934524_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-2-based-on-the-sha256-hash-of-the-binary-what-is-the-name-of-the-toolused&#34;&gt;Question 2: Based on the SHA256 hash of the binary, what is the name of the tool used?&#xA;&lt;/h4&gt;&lt;p&gt;Now that we have the file hash in hand, we’ll once again turn to VirusTotal to enrich our findings and learn more about what this tool is. Submit the hash and review the results.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2d046dcafb5c78e76fbc8383c5867a42_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;537px&#34; data-flex-grow=&#34;224&#34; height=&#34;357&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/2d046dcafb5c78e76fbc8383c5867a42_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;VirusTotal: &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/8524fbc0d73e711e69d60c64f1f1b7bef35c986705880643dd4d5e17779e586d/detection&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/8524fbc0d73e711e69d60c64f1f1b7bef35c986705880643dd4d5e17779e586d/detection&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;This time, the analysis provides more than just detection verdicts, but also includes helpful code insights and threat/family labels. These labels tell us what kind of tool this binary actually is, based on vendor and community analysis and can help add valuable context to the investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;13f858a28b0d01c5e19932ec6e4d7035_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2000px&#34; data-flex-grow=&#34;833&#34; height=&#34;96&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/13f858a28b0d01c5e19932ec6e4d7035_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-3-the-tool-exploits-a-specific-privilege-owned-by-the-user-what-is-the-name-of-the-privilege&#34;&gt;Question 3: The tool exploits a specific privilege owned by the user. What is the name of the privilege?&#xA;&lt;/h4&gt;&lt;p&gt;After reviewing the VirusTotal results, we have a better idea of what this tool does and what the impact is — but we’re missing a critical detail: the specific user privilege that enables this exploit.&lt;/p&gt;&#xA;&lt;p&gt;Since we know the name of the tool, we can do a targeted Google search to see if other security researchers have documented its behavior. Take your pick!&lt;/p&gt;&#xA;&lt;p&gt;For my context, I stumbled across a fantastic blog post from &lt;strong&gt;itm4n&lt;/strong&gt;, the author of the tool, explaining how it works in great detail:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://itm4n.github.io/printspoofer-abusing-impersonate-privileges/&#34;  title=&#34;https://itm4n.github.io/printspoofer-abusing-impersonate-privileges/&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;PrintSpoofer - Abusing Impersonation Privileges on Windows 10 and Server 2019&lt;/strong&gt;&#xA;_Over the last few years, tools such as RottenPotato, RottenPotatoNG or Juicy Potato have made the exploitation of…_itm4n.github.io&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://itm4n.github.io/printspoofer-abusing-impersonate-privileges/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;From the blog, we quickly learn that this exploit abuses powerful impersonation privileges. These privileges allow a process to run code or even create a new process in the context of another user. For example:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;These two privileges are very powerful indeed. They allow you to run code or even create a new process in the context of another user. To do so, you can call &lt;code&gt;CreateProcessWithToken()&lt;/code&gt; if you have &lt;code&gt;**&amp;lt;REDACTED&amp;gt;**&lt;/code&gt; or &lt;code&gt;CreateProcessAsUser()&lt;/code&gt; if you have &lt;code&gt;SeAssignPrimaryTokenPrivilege&lt;/code&gt;.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Understanding these privileges is important because they enable attackers to escalate from a standard user to SYSTEM-level access, which is obviously not great.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;456181bd916c7cfca2a0f2c39a938676_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2630px&#34; data-flex-grow=&#34;1095&#34; height=&#34;73&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/456181bd916c7cfca2a0f2c39a938676_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-4-then-the-attacker-executed-the-tool-with-another-binary-to-establish-a-c2-connection-what-is-the-name-of-thebinary&#34;&gt;Question 4: Then, the attacker executed the tool with another binary to establish a c2 connection. What is the name of the binary?&#xA;&lt;/h4&gt;&lt;p&gt;Moving right along, it’s time to look at the next &lt;em&gt;process creation event&lt;/em&gt; for the second tool used to establish a new C2 channel. This event is highlighted in the diagram and gives us exactly what we need to answer &lt;strong&gt;Question 4&lt;/strong&gt; — the name of the binary.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6bd2af26c2dc6fbb10aa849ccfb073b2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;386px&#34; data-flex-grow=&#34;160&#34; height=&#34;497&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/6bd2af26c2dc6fbb10aa849ccfb073b2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Identifying the second C2 binary&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ad85cc144af3406941c3e5751025afae_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/ad85cc144af3406941c3e5751025afae_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-5-the-binary-connects-to-a-different-port-from-the-first-c2-connection-what-is-the-portused&#34;&gt;Question 5: The binary connects to a different port from the first c2 connection. What is the port used?&#xA;&lt;/h4&gt;&lt;p&gt;You might have already guessed, but to determine the network connections used by the “final” binary to establish the second C2 connection, we’ll go back to the &lt;strong&gt;Process view&lt;/strong&gt; tab and search for the executable name. Once we do that, we can easily identify the related &lt;em&gt;network connection events&lt;/em&gt;, which will show us the domain, IP address, and the second port.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f9e2cb8ab08ef7d154b30fd1246af783_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;184px&#34; data-flex-grow=&#34;76&#34; height=&#34;1041&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/f9e2cb8ab08ef7d154b30fd1246af783_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Using the process view tab to identify network connections&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6cde0392c93539216777eac2b16cdee8_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2400px&#34; data-flex-grow=&#34;1000&#34; height=&#34;80&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/6cde0392c93539216777eac2b16cdee8_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;task-9-actions-on-objectivefully-owned-machine&#34;&gt;Task 9: Actions on Objective — Fully-owned Machine&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Investigation Guide:&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Now, the attacker has gained administrative privileges inside the machine. Find all persistence techniques used by the attacker.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;In addition, the unusual executions are related to the malicious C2 binary used during privilege escalation.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Investigation Guide&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Now, we can rely on our cheatsheet to investigate events after a successful privilege escalation:&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Useful Brim filter to get all HTTP requests related to the malicious C2 traffic : &lt;code&gt;_path==&amp;quot;http&amp;quot; &amp;quot;&amp;lt;replace domain&amp;gt;&amp;quot; id.resp_p==&amp;lt;replace port&amp;gt; | cut ts, host, id.resp_p, uri | sort ts&lt;/code&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The attacker gained SYSTEM privileges; now, the user context for each malicious execution blends with &lt;strong&gt;NT Authority\System.&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;All child events of the new malicious binary used for C2 are worth checking.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h4 id=&#34;question-1-upon-achieving-system-access-the-attacker-then-created-two-users-what-are-the-accountnames&#34;&gt;Question 1: Upon achieving SYSTEM access, the attacker then created two users. What are the account names?&#xA;&lt;/h4&gt;&lt;p&gt;Now we’re in the final phase of the investigation and the stakes are high. The adversary has achieved SYSTEM-level privileges, and we need to identify actions taken on the victim’s system.&lt;/p&gt;&#xA;&lt;p&gt;Our first task is to jump back over to &lt;strong&gt;Brim&lt;/strong&gt; and collect new evidence based on the port we identified in &lt;strong&gt;Task 8, Question 5&lt;/strong&gt;. Assuming the attacker’s C2 tactics, techniques, and procedures are consistent, we’ll repeat the same analysis process we used in &lt;strong&gt;Task 7, Question 1&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Back in Brim, update the query to filter for the new port:&lt;/p&gt;&#xA;&lt;p&gt;_path==&amp;ldquo;http&amp;rdquo; &amp;ldquo;resolvecyber.xyz&amp;rdquo; id.resp_p==8080 | cut ts, host, id.resp_p, uri | sort ts&lt;/p&gt;&#xA;&lt;p&gt;Export the results again to &lt;code&gt;.csv&lt;/code&gt;. This time, save the export as &lt;code&gt;results2.csv&lt;/code&gt;—which means we’ll need to make a small modification to the &lt;code&gt;decode.ps1&lt;/code&gt; script we created earlier to account for the new file name.&lt;/p&gt;&#xA;&lt;p&gt;Open the script in PowerShell ISE, update the file name to &lt;code&gt;results2.csv&lt;/code&gt;, and run it directly in PowerShell ISE. This will perform the same parsing and decoding operations as before, allowing us to examine the contents of the URL parameters to determine what the attackers did after elevating to SYSTEM privileges.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c11a45f4e6177f7bdbd1ff73b2a514ea_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1246px&#34; data-flex-grow=&#34;519&#34; height=&#34;154&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/c11a45f4e6177f7bdbd1ff73b2a514ea_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell ISE: Modifying the decode.ps1 script&lt;/p&gt;&#xA;&lt;p&gt;Open the script in PowerShell ISE, update the file name to &lt;code&gt;results2.csv&lt;/code&gt;, and run it directly in PowerShell ISE. This will perform the same parsing and decoding operations as before, allowing us to examine the contents of the URL parameters to determine what the attackers did after elevating to SYSTEM privileges. Let’s look for any commands indicating user creation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;74052bf94ce639262c39333057502a98_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;505px&#34; data-flex-grow=&#34;210&#34; height=&#34;380&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/74052bf94ce639262c39333057502a98_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell ISE: Identifying user account additions&lt;/p&gt;&#xA;&lt;p&gt;Toward the bottom of the output, we’ll find evidence that the attacker leveraged &lt;code&gt;[net user](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/net-user)&lt;/code&gt; commands to create two accounts. This is exactly what we need to answer &lt;strong&gt;Question 1&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4ee702acbd4b367af3cfce92d6470b3f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1864px&#34; data-flex-grow=&#34;776&#34; height=&#34;103&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/4ee702acbd4b367af3cfce92d6470b3f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-2-prior-to-the-successful-creation-of-the-accounts-the-attacker-executed-commands-that-failed-in-the-creation-attempt-what-is-the-missing-option-that-made-the-attemptfail&#34;&gt;Question 2: Prior to the successful creation of the accounts, the attacker executed commands that failed in the creation attempt. What is the missing option that made the attempt fail?&#xA;&lt;/h4&gt;&lt;p&gt;Jumping back up to the top of our script output, we’ll also find evidence that the first attempt at running these commands failed because they were missing a crucial option. Compare the version that failed with the successful ones we found in the previous question to determine the missing option.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5c3bf120783c597f0703d4737fcf0c28_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;333px&#34; data-flex-grow=&#34;139&#34; height=&#34;575&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/5c3bf120783c597f0703d4737fcf0c28_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell ISE: Identifying failed user account additions&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a488e7ba0f84a8ff35df8a2659ca3a27_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/a488e7ba0f84a8ff35df8a2659ca3a27_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-3-based-on-windows-event-logs-the-accounts-were-successfully-created-what-is-the-event-id-that-indicates-the-account-creation-activity&#34;&gt;Question 3: Based on windows event logs, the accounts were successfully created. What is the event ID that indicates the account creation activity?&#xA;&lt;/h4&gt;&lt;p&gt;While we could pivot to the third artifact, &lt;code&gt;windows.evtx&lt;/code&gt;, and manually identify the account creation event, we have another option: leverage Microsoft’s documentation to confirm the standard event ID associated with this activity.&lt;/p&gt;&#xA;&lt;p&gt;According to Microsoft Learn, this is part of the Windows Security Auditing framework and is logged whenever an account is successfully created. I’ll put the link below for further reading.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4720&#34;  title=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4720&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;&lt;REDACTED&gt; A user account was created. - Windows 10&lt;/strong&gt;&#xA;_Describes security event &lt;REDACTED&gt; A user account was created. This event is generated a user object is created._learn.microsoft.com&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4720&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8acddfd4da1d92d78f1552394bce6624_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2430px&#34; data-flex-grow=&#34;1012&#34; height=&#34;79&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/8acddfd4da1d92d78f1552394bce6624_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-4-the-attacker-added-one-of-the-accounts-in-the-local-administrators-group-what-is-the-command-used-by-the-attacker&#34;&gt;Question 4: The attacker added one of the accounts in the local administrator’s group. What is the command used by the attacker?&#xA;&lt;/h4&gt;&lt;p&gt;Back to the command analysis in &lt;strong&gt;PowerShell ISE&lt;/strong&gt;, we’re searching for an event where the attacker added one of the newly created user accounts to the local administrators group for further privilege escalation and persistence.&lt;/p&gt;&#xA;&lt;p&gt;Toward the bottom of the output, we’ll find evidence of this action using the &lt;code&gt;net localgroup&lt;/code&gt; command. This is an old classic technique attackers use to grant elevated privileges to accounts they create/control.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;20677355b9dfbf50b832845223144af3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;605px&#34; data-flex-grow=&#34;252&#34; height=&#34;317&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/20677355b9dfbf50b832845223144af3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell ISE: Identifying additions to the local administrators group&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;98a11d6a07c2ed6404de2652b6a1ec58_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2630px&#34; data-flex-grow=&#34;1095&#34; height=&#34;73&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/98a11d6a07c2ed6404de2652b6a1ec58_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-5-based-on-windows-event-logs-the-account-was-successfully-added-to-a-sensitive-group-what-is-the-event-id-that-indicates-the-addition-to-a-sensitive-localgroup&#34;&gt;Question 5: Based on windows event logs, the account was successfully added to a sensitive group. What is the event ID that indicates the addition to a sensitive local group?&#xA;&lt;/h4&gt;&lt;p&gt;Once again, rather than manually analyzing the &lt;code&gt;windows.evtx&lt;/code&gt; artifact, we’ll lean on Microsoft’s documentation to confirm the standard event ID for this activity. According to Microsoft Learn, this event is logged whenever a user is added to a local group, including sensitive groups like &lt;em&gt;Administrators&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4732&#34;  title=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4732&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;&lt;REDACTED&gt; A member was added to a security-enabled local group. - Windows 10&lt;/strong&gt;&#xA;_Describes security event &lt;REDACTED&gt; A member was added to a security-enabled local group._learn.microsoft.com&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4732&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;613933ea4c1fb91731bb4bf305f46f70_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/613933ea4c1fb91731bb4bf305f46f70_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;question-6-after-the-account-creation-the-attacker-executed-a-technique-to-establish-persistent-administrative-access-what-is-the-command-executed-by-the-attacker-to-achievethis&#34;&gt;Question 6: After the account creation, the attacker executed a technique to establish persistent administrative access. What is the command executed by the attacker to achieve this?&#xA;&lt;/h4&gt;&lt;p&gt;At long last, we’ve made it to the end of the Tempest incident investigation. Our final task is to identify the persistence technique deployed by the attacker.&lt;/p&gt;&#xA;&lt;p&gt;In the command output, we’ll find evidence that the attacker created a service using &lt;code&gt;sc.exe&lt;/code&gt; and set it to auto-start. This service executes the &lt;code&gt;final.exe&lt;/code&gt; binary we identified back in &lt;strong&gt;Task 8, Question 5&lt;/strong&gt;. Another “oldie but goodie” technique that ensures the attacker’s code runs automatically whenever the system starts.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;28bd1f5bda932ac08d05e86e7f84a0a5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;780px&#34; data-flex-grow=&#34;325&#34; height=&#34;246&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/28bd1f5bda932ac08d05e86e7f84a0a5_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell ISE: Identifying suspicious service creation&lt;/p&gt;&#xA;&lt;p&gt;But that’s only half the answer — we need the full command line. No problem! Let’s have one last hoorah with &lt;strong&gt;SysmonView&lt;/strong&gt;. Using either the hierarchical view or the process view, locate &lt;code&gt;sc.exe&lt;/code&gt;, double-click it, and check out the full command line.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9ebf7aee93b94e0a41992e7d54db1466_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;236px&#34; data-flex-grow=&#34;98&#34; height=&#34;813&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/9ebf7aee93b94e0a41992e7d54db1466_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;SysmonView: Identifying the full commandline of the suspicious service creation&lt;/p&gt;&#xA;&lt;p&gt;Bingo! Now we have the complete command from the Sysmon event log and have fully identified this persistence technique. Take a deep breath — we’ve closed out this investigation. Great job!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9a08be5c95c11ff5ebb3b95729efecb1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1794px&#34; data-flex-grow=&#34;747&#34; height=&#34;107&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/9a08be5c95c11ff5ebb3b95729efecb1_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;img alt=&#34;aac0c25f8f3e9de41689a91ebede3b1d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;445px&#34; data-flex-grow=&#34;185&#34; height=&#34;431&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/aac0c25f8f3e9de41689a91ebede3b1d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Whew! That was a long one — but we made it to the end. A big thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for putting together such a thorough and challenging capstone.&lt;/p&gt;&#xA;&lt;p&gt;This challenge was a fantastic way to wrap up the SOC Level 1 learning path. It tied together so many concepts covered in the content and offered a realistic example of an incident response engagement. Along the way, we not only followed the attacker’s trail but also learned how to better utilize our tools in the field.&lt;/p&gt;&#xA;&lt;p&gt;I chose this week’s challenge to start closing out the SOC Level 1 path and get some hands-on practice with &lt;strong&gt;SysmonView&lt;/strong&gt;, which I hadn’t used before. It didn’t disappoint! It made analyzing those ever-valuable Sysmon event logs so much faster than manual review alone. And because this challenge was so lengthy, it was incredibly rewarding — each question flowed logically into the next, making the investigation feel linear and cohesive. Awesome stuff!&lt;/p&gt;&#xA;&lt;p&gt;Thanks for your support and partnering on this investigation. If you found this walkthrough helpful, don’t forget to &lt;strong&gt;give it a clap&lt;/strong&gt; and &lt;strong&gt;consider following me&lt;/strong&gt;! Your feedback really is invaluable, and it pumps me up to support your security journey. Remember, Cybersecurity is a team sport and we’re in this together!&lt;/p&gt;&#xA;&lt;p&gt;If you liked my style and plan to continue the SOC Level 1 learning path, stick around and check out my walkthrough of the next capstone challenge:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/&#34; &gt;&lt;strong&gt;TryHackMe - Boogeyman 1 Challenge Walkthrough&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Until next time — stay curious and be safe out there!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;897587ce48e9f9feb186cdd21a12ccdd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;250&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-tempest-challenge-walkthrough/897587ce48e9f9feb186cdd21a12ccdd_MD5.png&#34; width=&#34;250&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/tempestincident&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/tempestincident&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Eric Zimmerman’s Tools:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://ericzimmerman.github.io/#!index.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://ericzimmerman.github.io/#!index.md&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;CyberChef:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://gchq.github.io/CyberChef/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MSRC — CVE-2022–30190:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://msrc.microsoft.com/update-guide/vulnerability/CVE-2022-30190&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://msrc.microsoft.com/update-guide/vulnerability/CVE-2022-30190&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Speedguide.net — Ports Database:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.speedguide.net/ports.php&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.speedguide.net/ports.php&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal — ch.exe:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/8a99353662ccae117d2bb22efd8c43d7169060450be413af763e8ad7522d2451&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/8a99353662ccae117d2bb22efd8c43d7169060450be413af763e8ad7522d2451&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal — spf.exe:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/8524fbc0d73e711e69d60c64f1f1b7bef35c986705880643dd4d5e17779e586d/detection&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/8524fbc0d73e711e69d60c64f1f1b7bef35c986705880643dd4d5e17779e586d/detection&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;itm4n’s blog: PrintSpoofer — Abusing Impersonation Privileges on Windows 10 and Server 2019:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://itm4n.github.io/printspoofer-abusing-impersonate-privileges/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://itm4n.github.io/printspoofer-abusing-impersonate-privileges/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn — net user:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/net-user&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/net-user&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn — 4720(S): A user account was created:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4720&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4720&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn — 4732(S): A member was added to a security-enabled local group:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4732&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4732&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Warzone 2 Room Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/</link>
            <pubDate>Sun, 19 Oct 2025 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/5ffddce88b37c3ca1e78c641dcfee3fd_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Warzone 2 Room Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmewarzone-2-room-walkthrough&#34;&gt;TryHackMe — Warzone 2 Room Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;a-second-network-packet-capture-investigation-using-brimzui-network-miner-and-virustotal&#34;&gt;A Second Network Packet Capture Investigation Using Brim/Zui, Network Miner, and VirusTotal.&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;5ffddce88b37c3ca1e78c641dcfee3fd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;320&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/5ffddce88b37c3ca1e78c641dcfee3fd_MD5.png&#34; width=&#34;320&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/warzonetwo&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/warzonetwo&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Welcome to my weekly walkthrough! If you’ve stumbled across this blog while looking for a detailed guide to the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/warzonetwo&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Warzone 2&lt;/strong&gt;&lt;/a&gt; room from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;, you’re in the right place. This challenge is the second in a series of fantastic rooms aimed at introducing you to forensic network packet analysis using some lesser-known tools.&lt;/p&gt;&#xA;&lt;p&gt;If you want to follow along in order, you can start with the &lt;strong&gt;Warzone 1&lt;/strong&gt; room first:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/&#34; &gt;&lt;strong&gt;TryHackMe — Warzone 1 Room Walkthrough&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h4&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;You work as a Tier 1 Security Analyst L1 for a Managed Security Service Provider (MSSP). Again, you’re tasked with monitoring network alerts.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;An alert triggered: &lt;strong&gt;Misc activity&lt;/strong&gt;, &lt;strong&gt;A Network Trojan Was Detected&lt;/strong&gt;, and &lt;strong&gt;Potential Corporate Privacy Violation&lt;/strong&gt;.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The case was assigned to you. Inspect the PCAP and retrieve the artifacts to confirm this alert is a true positive.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;In this challenge, we’re stepping back into the shoes of a Security Analyst at an MSSP, monitoring network traffic alerts for one of your customers when suddenly, an alert fires from their IDS/IPS. We’re given a network packet capture file, a PCAP, and need to quickly determine if this is a true positive by analyzing the artifacts within the traffic.&lt;/p&gt;&#xA;&lt;p&gt;Now that you’ve already got some experience, you might guess what’s in our toolkit for this investigation. We’ll be busting out &lt;a class=&#34;link&#34; href=&#34;https://zui.brimdata.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Brim&lt;/strong&gt;&lt;/a&gt; again to process, search, and analyze the PCAP, and then pivoting to &lt;a class=&#34;link&#34; href=&#34;https://www.netresec.com/?page=NetworkMiner&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Network Miner&lt;/strong&gt;&lt;/a&gt; for a file analysis. We’ll also enrich our findings by consulting &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;VirusTotal&lt;/strong&gt;&lt;/a&gt; to add context to any indicators of compromise (IOCs) we discover.&lt;/p&gt;&#xA;&lt;p&gt;I’ll walk through each step clearly, and avoid spoiling the answer. By the end, you’ll have a solid understanding of how to approach similar investigations in the wild. Sounds like fun, right? Let’s get into it!&lt;/p&gt;&#xA;&lt;p&gt;And if you find this walkthrough helpful — whether it levels-up your skills, gets you over a stumbling block, or just gives you a clearer view of the blue team — please give it a clap and consider following me for more content like this.&lt;/p&gt;&#xA;&lt;p&gt;Thanks for reading and going on this investigation with me!&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;question-1-what-was-the-alert-signature-fora-network-trojan-was-detected&#34;&gt;Question 1: What was the alert signature for &lt;strong&gt;A Network Trojan was Detected&lt;/strong&gt;?&#xA;&lt;/h3&gt;&lt;p&gt;Once in our analysis environment, let’s get acquainted with our toolset so we can start forming a plan. You’ll find everything we need in the &lt;code&gt;Tools&lt;/code&gt; folder on the Desktop.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;bd8c075de519e4927b81833eaf017f6f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;290px&#34; data-flex-grow=&#34;121&#34; height=&#34;578&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/bd8c075de519e4927b81833eaf017f6f_MD5.png&#34; width=&#34;700&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Contents of the Tools Folder&lt;/p&gt;&#xA;&lt;p&gt;To answer &lt;strong&gt;Question 1&lt;/strong&gt;, we’re searching for an alert signature. So, our first stop will be to use &lt;strong&gt;Brim&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;https://www.brimdata.io/blog/brim-app-will-be-zui/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;now called &lt;strong&gt;Zui&lt;/strong&gt;&lt;/a&gt;) because it has the ability to use &lt;a class=&#34;link&#34; href=&#34;https://zui.brimdata.io/docs/features/Packet-Captures#local-suricata-rules-folder&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Suricata&lt;/strong&gt;&lt;/a&gt; intrusion detection rules to help quickly identify threats or malicious traffic within the packet capture.&lt;/p&gt;&#xA;&lt;p&gt;Go ahead and launch it — and speaking of packet captures, once &lt;em&gt;Brim&lt;/em&gt; is open, load the challenge file &lt;code&gt;Zone2.pcap&lt;/code&gt; , and wait for it to process the capture file.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c8fb4ad5c82c5a72ed56a3e172e0ed8c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/c8fb4ad5c82c5a72ed56a3e172e0ed8c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Loading Zone2.pcap&lt;/p&gt;&#xA;&lt;p&gt;Once the file is loaded, let’s get an overview of the &lt;em&gt;Suricata&lt;/em&gt; rule hits detected in the network traffic. Select the &lt;code&gt;Zone2.pcap&lt;/code&gt; file, click &lt;em&gt;Suricata Alerts by Category&lt;/em&gt; under the &lt;em&gt;Queries&lt;/em&gt; header, and review the displayed alert categories.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;26a94106cfff67b5ec8ed5315cbc73f3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/26a94106cfff67b5ec8ed5315cbc73f3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Overview of Suricata Alerts by Category&lt;/p&gt;&#xA;&lt;p&gt;We’re going to focus on &lt;em&gt;a Network Trojan was detected&lt;/em&gt; since that’s what the question is asking about. Our next step is to find the &lt;em&gt;alert signature&lt;/em&gt; for this category.&lt;/p&gt;&#xA;&lt;p&gt;To do this, right-click the &lt;em&gt;a Network Trojan was detected&lt;/em&gt; row and select &lt;em&gt;New search with this value&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b5fe2d4b7af3bbf52a230b29461c72c0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/b5fe2d4b7af3bbf52a230b29461c72c0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Selecting New search with the &lt;em&gt;a Network Trojan was detected&lt;/em&gt; value.&lt;/p&gt;&#xA;&lt;p&gt;This selection adjusts the query to display packets matching the &lt;em&gt;Suricata&lt;/em&gt; rule — and more importantly, it reveals the details we need to answer &lt;strong&gt;Question 1&lt;/strong&gt; under the &lt;code&gt;alert.signature&lt;/code&gt; column.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d568d5c213f6958dd58b828f468e5e8e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/d568d5c213f6958dd58b828f468e5e8e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the alert signature&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;97901290934066f07db31a1c555c723d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/97901290934066f07db31a1c555c723d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-what-was-the-alert-signature-forpotential-corporate-privacy-violation&#34;&gt;Question 2: What was the alert signature for &lt;strong&gt;Potential Corporate Privacy Violation&lt;/strong&gt;?&#xA;&lt;/h3&gt;&lt;p&gt;Our next task is to determine the alert signature for a second alert category: &lt;em&gt;Potential Corporate Privacy Violation&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;For this, we’ll simply perform the same process we used in &lt;strong&gt;Question 1&lt;/strong&gt; — select &lt;em&gt;New search with this value&lt;/em&gt; for the &lt;em&gt;Potential Corporate Privacy Violation&lt;/em&gt; category.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;28114d8aacc3b82a11c849ef125f22b6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/28114d8aacc3b82a11c849ef125f22b6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Selecting New search with the &lt;em&gt;a&lt;/em&gt; Potential Corporate Privacy Violation value.&lt;/p&gt;&#xA;&lt;p&gt;This time, we’ll see a different &lt;code&gt;alert.signature&lt;/code&gt; value compared to &lt;strong&gt;Question 1&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;501f2efc5ed4157759c8e5a453a55c53_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/501f2efc5ed4157759c8e5a453a55c53_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the alert signature.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3c620ff82d215602bbf28594f98a6406_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2630px&#34; data-flex-grow=&#34;1095&#34; height=&#34;73&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/3c620ff82d215602bbf28594f98a6406_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-what-was-the-ip-to-trigger-either-alert-enter-your-answer-in-adefangedformat&#34;&gt;Question 3: What was the IP to trigger either alert? Enter your answer in a &lt;strong&gt;defanged&lt;/strong&gt; format.&#xA;&lt;/h3&gt;&lt;p&gt;Answering &lt;strong&gt;Question 3&lt;/strong&gt; requires us to determine the IP address that triggered either alert. The wording is a bit confusing, but we’re looking for the source IP address (&lt;code&gt;src_ip&lt;/code&gt;) associated with the HTTP file download. Either alert will display the same information.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;44693b3d8fdaa55b516c832a39d0ada6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/44693b3d8fdaa55b516c832a39d0ada6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the source IP of the alert&lt;/p&gt;&#xA;&lt;p&gt;Before we can submit the answer, we need to &lt;em&gt;defang&lt;/em&gt; the IP address. This is a common practice to ensure that malicious IPs and URLs aren’t accidentally clicked or activated. While this is easy to do manually, let’s work a little smarter and use &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;CyberChef&lt;/strong&gt;&lt;/a&gt; for the task.&lt;/p&gt;&#xA;&lt;p&gt;The offline version of &lt;em&gt;CyberChef&lt;/em&gt; is included in the &lt;code&gt;Tools&lt;/code&gt; folder, but the &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;online&lt;/a&gt; version works just as well. To defang the source IP address:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Open &lt;em&gt;CyberChef.&lt;/em&gt;&lt;/li&gt;&#xA;&lt;li&gt;Select the &lt;em&gt;Defang IP Addresses&lt;/em&gt; operation.&lt;/li&gt;&#xA;&lt;li&gt;Paste the source IP address into the &lt;em&gt;Input&lt;/em&gt; field.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;And voilà — we have the defanged IP address.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9020186d64426a2c0e707e34f3392d33_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2630px&#34; data-flex-grow=&#34;1095&#34; height=&#34;73&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/9020186d64426a2c0e707e34f3392d33_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-provide-the-full-uri-for-the-malicious-downloaded-file-in-your-answerdefangtheuri&#34;&gt;Question 4: Provide the full URI for the malicious downloaded file. In your answer, &lt;strong&gt;defang&lt;/strong&gt; the URI.&#xA;&lt;/h3&gt;&lt;p&gt;Now that we’ve identified a suspicious IP address, we can pivot our search and focus on that address. To do this, simply open a new tab in &lt;strong&gt;Brim&lt;/strong&gt; and enter the IP address to view the results.&lt;/p&gt;&#xA;&lt;p&gt;Without any additional filtering, you’ll see that the first result with the &lt;em&gt;notice&lt;/em&gt; label contains the full URL of a downloaded &lt;code&gt;.cab&lt;/code&gt; file.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;bc86d2fc303f02625b5d2bd8cb952469_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/bc86d2fc303f02625b5d2bd8cb952469_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Finding the URL of the malicious download&lt;/p&gt;&#xA;&lt;p&gt;Once again, before we submit the answer, we’ll need to hop into &lt;em&gt;CyberChef&lt;/em&gt; to defang the URL.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8008982e8e5f9520f5371d03d550732a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;496px&#34; data-flex-grow=&#34;206&#34; height=&#34;387&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/8008982e8e5f9520f5371d03d550732a_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;CyberChef: Defanging the URL of the malicious download&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;28b2b0f0c748cd505f214450bb9869e4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/28b2b0f0c748cd505f214450bb9869e4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-is-the-name-of-the-payload-within-the-cabfile&#34;&gt;Question 5: What is the name of the payload within the cab file?&#xA;&lt;/h3&gt;&lt;p&gt;To answer &lt;strong&gt;Question 5&lt;/strong&gt;, we’ll turn our attention to examining the malicious &lt;code&gt;.cab&lt;/code&gt; file we identified in the last question. For this job, we’re going to make a quick detour in our tooling and swap over to &lt;a class=&#34;link&#34; href=&#34;https://www.netresec.com/?page=NetworkMiner&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Network Miner&lt;/strong&gt;&lt;/a&gt;, also contained in the &lt;code&gt;Tools&lt;/code&gt; folder on the Desktop.&lt;/p&gt;&#xA;&lt;p&gt;Open up &lt;em&gt;Network Miner&lt;/em&gt; and load the &lt;code&gt;Zone2.pcap&lt;/code&gt;. This is where &lt;em&gt;Network Miner&lt;/em&gt; shines — it can easily parse, identify, and categorize various elements within the network traffic streams, including reassembling files. This will make determining the contents of the &lt;code&gt;.cab&lt;/code&gt; file much easier.&lt;/p&gt;&#xA;&lt;p&gt;Let’s put this into practice and select the &lt;em&gt;Files&lt;/em&gt; tab. The top entry filename might look familiar — this is the &lt;code&gt;.cab&lt;/code&gt; file we’re looking for.&lt;/p&gt;&#xA;&lt;p&gt;Now, a quick note on &lt;code&gt;.cab&lt;/code&gt; files: they’re short for &lt;em&gt;cabinet files&lt;/em&gt;, a native Windows archive format used to compress and bundle files, often for software installation. That makes them a perfect disguise for attackers trying to sneak payloads past defenses. If you stumble across one in a network capture, it may be worth a closer look.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7b63b1c1301ded12702367983ba93ab9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/7b63b1c1301ded12702367983ba93ab9_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Network Miner: Grabbing the file hash of the malicious file&lt;/p&gt;&#xA;&lt;p&gt;Rather than do any analysis directly on the file, we’ll pivot out to &lt;strong&gt;VirusTotal&lt;/strong&gt; to check if this sample has been submitted to the platform before. For this, we’ll need the hash of the &lt;code&gt;.cab&lt;/code&gt; file, which we can get by double-clicking the entry in &lt;em&gt;Network Miner&lt;/em&gt; and copying the &lt;code&gt;SHA256&lt;/code&gt; hash.&lt;/p&gt;&#xA;&lt;p&gt;Now that we have the file hash, use your web browser outside of the TryHackMe VM (since it doesn’t have direct internet access) and navigate to &lt;a class=&#34;link&#34; href=&#34;https://virustotal.com.&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://virustotal.com.&lt;/a&gt; Submit the copied file hash into the search box to see the results.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;17e098127465415d7ac67994c2a6b5e7_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;901px&#34; data-flex-grow=&#34;375&#34; height=&#34;213&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/17e098127465415d7ac67994c2a6b5e7_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/3769a84dbe7ba74ad7b0b355a864483d3562888a67806082ff094a56ce73bf7e&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/3769a84dbe7ba74ad7b0b355a864483d3562888a67806082ff094a56ce73bf7e&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Immediately, we’ll see that nearly all vendors on the platform have marked this file as malicious. But what we’re interested in is the &lt;em&gt;file name&lt;/em&gt; field below the hash — this tells us the payload name within the &lt;code&gt;.cab&lt;/code&gt; file and is what we’ll need to answer &lt;strong&gt;Question 5&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1dc1f72dec0a757234b6cfc8d5c56e2d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2630px&#34; data-flex-grow=&#34;1095&#34; height=&#34;73&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/1dc1f72dec0a757234b6cfc8d5c56e2d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-what-is-the-user-agent-associated-with-this-networktraffic&#34;&gt;Question 6: What is the user-agent associated with this network traffic?&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Question 6&lt;/strong&gt; requires us to determine the &lt;em&gt;user-agent&lt;/em&gt; string associated with the network traffic. In legitimate use cases, these strings help identify the client browser or application connecting to a resource over HTTP. They can sometimes give us clues about the origin of a request, but unfortunately, they’re also easily spoofed, so we’ll treat them as hints, not hard evidence.&lt;/p&gt;&#xA;&lt;p&gt;We can perform this task in either &lt;em&gt;Network Miner&lt;/em&gt; or &lt;em&gt;Brim&lt;/em&gt;. For the purposes of this walkthrough, I’ll demonstrate using &lt;em&gt;Brim&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Since we already have the search open for the source IP of the malicious traffic, we’ve got a head start. Remember how I mentioned &lt;em&gt;user-agent&lt;/em&gt; strings apply to HTTP traffic? Focus on the row labeled &lt;code&gt;http&lt;/code&gt; — this is where we’ll find the &lt;code&gt;user_agent&lt;/code&gt; string.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a9424b8ff1ff0dbdfde30cc369a1392a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/a9424b8ff1ff0dbdfde30cc369a1392a_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This long string tells us a bit about the browser and operating system the victim used to retrieve the malicious &lt;code&gt;.cab&lt;/code&gt; file. While deeper analysis is out of scope for this challenge, it’s a fun side activity to plug the string into a &lt;em&gt;User Agent Lookup&lt;/em&gt; tool and see what you can learn. For example:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2cfd7ab48701797f9c6ea96f4a500d00_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;371px&#34; data-flex-grow=&#34;154&#34; height=&#34;517&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/2cfd7ab48701797f9c6ea96f4a500d00_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.whatismyip.net/tools/user-agent-lookup.php&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.whatismyip.net/tools/user-agent-lookup.php&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c31a9565a26180711fac68ce4a35ce96_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2742px&#34; data-flex-grow=&#34;1142&#34; height=&#34;70&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/c31a9565a26180711fac68ce4a35ce96_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-7-what-other-domains-do-you-see-in-the-network-traffic-that-are-labelled-as-malicious-by-virustotal-enter-the-domainsdefangedand-in-alphabetical-order-format-domain&#34;&gt;Question 7: What other domains do you see in the network traffic that are labelled as malicious by VirusTotal? Enter the domains &lt;strong&gt;defanged&lt;/strong&gt; and in alphabetical order. (&lt;strong&gt;format: domain[.]zzz,domain[.]zzz&lt;/strong&gt;)&#xA;&lt;/h3&gt;&lt;p&gt;Now that we’ve gotten some additional context about the request, it’s time to return to our hunt for suspicious domains. This process combines the data in &lt;strong&gt;Brim&lt;/strong&gt; with threat intelligence from &lt;strong&gt;VirusTotal&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;First, we’ll leverage &lt;em&gt;Brim’s&lt;/em&gt; &lt;em&gt;Unique DNS Queries&lt;/em&gt; page to determine all of the DNS requests in the traffic. You’ll find this query under the &lt;em&gt;Queries&lt;/em&gt; menu.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;27107f359d2999010dd871cbb04599f2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/27107f359d2999010dd871cbb04599f2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Viewing Unique DNS Queries&lt;/p&gt;&#xA;&lt;p&gt;This will list out all of the DNS requests. Yikes — there are quite a few domains.&lt;/p&gt;&#xA;&lt;p&gt;So, let’s head back to our &lt;em&gt;VirusTotal&lt;/em&gt; search for the &lt;code&gt;.cab&lt;/code&gt; file hash. Press the &lt;em&gt;Relations&lt;/em&gt; tab and turn your attention to the &lt;em&gt;Contacted Domains&lt;/em&gt; section. Here, we’ll find several domains contacted by this binary, complete with their own detection ratings.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;cb989670e08ece43020ed52862d3e902_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/cb989670e08ece43020ed52862d3e902_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;VirusTotal: Contacted Domains under Relations tab&lt;/p&gt;&#xA;&lt;p&gt;Focusing on the ones flagged as malicious, we can correlate them with the results back in &lt;em&gt;Brim&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Notice a problem? We’ve got more than two entries matching — but the question only wants two.&lt;/p&gt;&#xA;&lt;p&gt;No problem! Let’s filter this down further by using the &lt;em&gt;Suricata Alerts by Source and Destination&lt;/em&gt; tab. We’ve already analyzed the two labeled &lt;em&gt;Potentially Bad Traffic&lt;/em&gt; and &lt;em&gt;A Network Trojan was detected&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;12ef4fb1cd60542712fa5806f0d39b67_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/12ef4fb1cd60542712fa5806f0d39b67_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Filtering by Misc activity alert&lt;/p&gt;&#xA;&lt;p&gt;Instead, we’ll check the one with the alert field labeled &lt;em&gt;Misc activity&lt;/em&gt; and perform a new search.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;314b2891ddc37a1ea2b62f81ef0b9db4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/314b2891ddc37a1ea2b62f81ef0b9db4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the malicious domains&lt;/p&gt;&#xA;&lt;p&gt;This returns results for the IP associated with &lt;em&gt;Misc activity&lt;/em&gt;, where we can find two domains that were also present in the DNS queries and flagged as malicious on &lt;em&gt;VirusTotal&lt;/em&gt;. Correlating the results from these three views gives us high confidence in answering &lt;strong&gt;Question 7&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Now all we need to do is defang them in &lt;strong&gt;CyberChef&lt;/strong&gt; again and put them in alphabetical order.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b30c8eca29aff56e30a4d37e192fed87_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2109px&#34; data-flex-grow=&#34;879&#34; height=&#34;91&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/b30c8eca29aff56e30a4d37e192fed87_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-8-there-are-ip-addresses-flagged-asnot-suspicious-traffic-what-are-the-ip-addresses-enter-your-answer-in-numerical-order-anddefanged-format-ipaddripaddr&#34;&gt;Question 8: There are IP addresses flagged as &lt;strong&gt;Not Suspicious Traffic&lt;/strong&gt;. What are the IP addresses? Enter your answer in numerical order and &lt;strong&gt;defanged&lt;/strong&gt;. (&lt;strong&gt;format: IPADDR,IPADDR&lt;/strong&gt;)&#xA;&lt;/h3&gt;&lt;p&gt;Back to the &lt;em&gt;Suricata Alerts by Source and Destination&lt;/em&gt; tab. &lt;strong&gt;Question 8&lt;/strong&gt; asks us to analyze the alert tag &lt;em&gt;Not Suspicious Traffic&lt;/em&gt;. Fortunately, the information is readily available, and we can quickly identify the IP addresses associated with this tag.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8cb9a225628778126ec110ed1a43dc06_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/8cb9a225628778126ec110ed1a43dc06_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying IP addresses with the “Not Suspicious Traffic” tag.&lt;/p&gt;&#xA;&lt;p&gt;As before, once we’ve located the IPs, we’ll head over to &lt;strong&gt;CyberChef&lt;/strong&gt;. Paste the IPs into the input window in numerical order, apply the &lt;em&gt;Defang IP Address&lt;/em&gt; operation, and you’ll have them formatted correctly for submission.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;637caed0ddee5c885d04220310e25c68_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/637caed0ddee5c885d04220310e25c68_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-9-for-the-first-ip-address-flagged-asnot-suspicious-traffic-according-to-virustotal-there-are-several-domains-associated-with-this-one-ip-address-that-was-flagged-as-malicious-what-were-the-domains-you-spotted-in-the-network-traffic-associated-with-this-ip-address-enter-your-answer-in-adefangedformat-enter-your-answer-in-alphabetical-order-in-a-defanged-format-format-domain&#34;&gt;Question 9: For the first IP address flagged as &lt;strong&gt;Not Suspicious Traffic&lt;/strong&gt;. According to VirusTotal, there are several domains associated with this one IP address that was flagged as malicious. What were the domains you spotted in the network traffic associated with this IP address? Enter your answer in a &lt;strong&gt;defanged&lt;/strong&gt; format. Enter your answer in alphabetical order, in a defanged format. (&lt;strong&gt;format: domain[.]zzz,domain[.]zzz,etc&lt;/strong&gt;)&#xA;&lt;/h3&gt;&lt;p&gt;Let’s dig into some analysis of the IP addresses marked as &lt;em&gt;Not Suspicious Traffic&lt;/em&gt; from the previous question and validate the results.&lt;/p&gt;&#xA;&lt;p&gt;We’ll start by searching for the first IP — the one beginning with &lt;code&gt;64&lt;/code&gt;. This will show us all associated log entries, but it’s a bit unwieldy to sort through. To make things easier, we can apply some filtering and focus on entries with a &lt;code&gt;server_name&lt;/code&gt; tag, which helps us narrow down any associated domain names.&lt;/p&gt;&#xA;&lt;p&gt;&lt;IP Address&gt;|server_name&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e4506638d4836d0a1da9c57c2f1ccffa_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/e4506638d4836d0a1da9c57c2f1ccffa_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Surfacing domain names associated with an IP address&lt;/p&gt;&#xA;&lt;p&gt;This gives us three distinct domains associated with this IP address in the PCAP.&lt;/p&gt;&#xA;&lt;p&gt;Let’s jump back over to &lt;strong&gt;VirusTotal&lt;/strong&gt; and search the IP address, navigating to the &lt;em&gt;Relations&lt;/em&gt; tab. Take a look at the &lt;em&gt;Passive DNS Replication&lt;/em&gt; area — notice anything interesting?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6be28455036833c8fa6dc9f4e7bc0cdf_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;592px&#34; data-flex-grow=&#34;246&#34; height=&#34;324&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/6be28455036833c8fa6dc9f4e7bc0cdf_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;VirusTotal: Correlating domain names with threat intelligence&lt;/p&gt;&#xA;&lt;p&gt;All three domains we surfaced in &lt;em&gt;Brim&lt;/em&gt; also appear in the &lt;em&gt;VirusTotal&lt;/em&gt; entry, complete with indicators of malicious activity. It turns out this IP is more suspicious than we originally believed.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c2054f622aa5e54b0ee3c20129bb18a4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1828px&#34; data-flex-grow=&#34;761&#34; height=&#34;105&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/c2054f622aa5e54b0ee3c20129bb18a4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-10-now-for-the-second-ip-marked-asnot-suspicious-traffic-what-was-the-domain-you-spotted-in-the-network-traffic-associated-with-this-ip-address-enter-your-answer-in-adefangedformat-format-domain&#34;&gt;Question 10: Now for the second IP marked as &lt;strong&gt;Not Suspicious Traffic&lt;/strong&gt;. What was the domain you spotted in the network traffic associated with this IP address? Enter your answer in a &lt;strong&gt;defanged&lt;/strong&gt; format. (&lt;strong&gt;format: domain[.]zzz&lt;/strong&gt;)&#xA;&lt;/h3&gt;&lt;p&gt;We’ve made it to the last question! Our final objective is to analyze the second IP we found in &lt;strong&gt;Question 8&lt;/strong&gt; labeled &lt;em&gt;Not Suspicious Traffic&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d2d336a6c1f90af35756e7c8ac22364b_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/d2d336a6c1f90af35756e7c8ac22364b_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: The second IP address labeled “Not Suspicious Traffic”&lt;/p&gt;&#xA;&lt;p&gt;Then, we’ll perform the same steps we did for &lt;strong&gt;Question 9&lt;/strong&gt; — search the IP address and filter the entries for the &lt;code&gt;server_name&lt;/code&gt; tag. Once we have the results, there’s only a single domain listed. That’s the one we need to wrap up this investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;79182f85d3bb8f92358549565752e5be_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/79182f85d3bb8f92358549565752e5be_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Surfacing domain names associated with a second IP address&lt;/p&gt;&#xA;&lt;p&gt;Before you defang the answer, if you’re curious, you can check this result on &lt;strong&gt;VirusTotal&lt;/strong&gt; as well. At the time of this writing, this domain does indeed appear to be &lt;em&gt;not suspicious&lt;/em&gt;. That’s a good reminder to always cross-check your results to make a more informed determination about a threat.&lt;/p&gt;&#xA;&lt;p&gt;It also serves as a reminder that indicators of compromise, like domains, are easy for a threat actor to change. Timely threat intelligence can make all the difference!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b7d41a23efa12667a24359837dfaaf39_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2157px&#34; data-flex-grow=&#34;898&#34; height=&#34;89&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/b7d41a23efa12667a24359837dfaaf39_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;img alt=&#34;74af35e58f08ec849200a4a5d78e1ce8_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;460px&#34; data-flex-grow=&#34;191&#34; height=&#34;417&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/74af35e58f08ec849200a4a5d78e1ce8_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;How fun was that! A big thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for the part two of this fun and realistic challenge.&lt;/p&gt;&#xA;&lt;p&gt;By once again analyzing the PCAP file containing suspicious network traffic using &lt;em&gt;Brim&lt;/em&gt; and &lt;em&gt;Network Miner&lt;/em&gt;, and enriching our findings with &lt;em&gt;VirusTotal&lt;/em&gt;, we successfully identified several malicious IP addresses and domains associated with a threat actor. Then we determined what files were downloaded from the malicious infrastructure and learned more about the threat. Putting all the evidence together, we can confirm the alert as a true positive and move on to the containment phase.&lt;/p&gt;&#xA;&lt;p&gt;I chose this weekly challenge to spend more hands-on time with &lt;em&gt;Brim/Zui&lt;/em&gt; and the awesome &lt;em&gt;Suricata&lt;/em&gt; rules built in. I also really appreciate the immense capabilities of &lt;em&gt;Network Miner&lt;/em&gt; — I’m always impressed by how easy it is to use, and how much depth it offers particularly for quick file analysis and reassembly. In the real world, I’ve used both tools numerous times to visualize data in a PCAP and uncover information that was time-consuming and difficult to find using other tools. It’s absolutely worth keeping in the kit.&lt;/p&gt;&#xA;&lt;p&gt;Thanks for your support and partnering on this investigation. If you found this walkthrough helpful, don’t forget to &lt;strong&gt;give it a clap&lt;/strong&gt;! Your feedback really is invaluable, and it pumps me up to support your security journey. Remember, Cybersecurity is a team sport and we’re in this together!&lt;/p&gt;&#xA;&lt;p&gt;It’s a Warzone out there, stay curious and be safe!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;897587ce48e9f9feb186cdd21a12ccdd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;250&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/897587ce48e9f9feb186cdd21a12ccdd_MD5.png&#34; width=&#34;250&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/warzonetwo&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/warzonetwo&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Brim/ZUI:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://zui.brimdata.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://zui.brimdata.io/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Network Miner:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.netresec.com/?page=NetworkMiner&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.netresec.com/?page=NetworkMiner&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;CyberChef:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://gchq.github.io/CyberChef/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;WhatIsMyIP — User Agent Lookup:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.whatismyip.net/tools/user-agent-lookup.php&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.whatismyip.net/tools/user-agent-lookup.php&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Traverse Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/</link>
            <pubDate>Sun, 24 Aug 2025 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/41bfc0c461309f526e8057c27cbe947a_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Traverse Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmetraverse-challenge-walkthrough&#34;&gt;TryHackMe — Traverse Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;investigating-and-restoring-a-compromised-web-application-using-a-web-browser-owasp-zap-andpostman&#34;&gt;Investigating and Restoring a Compromised Web Application Using a Web Browser, OWASP ZAP, and Postman&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;41bfc0c461309f526e8057c27cbe947a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;329px&#34; data-flex-grow=&#34;137&#34; height=&#34;420&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/41bfc0c461309f526e8057c27cbe947a_MD5.png&#34; width=&#34;576&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/traverse&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/traverse&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Welcome to my weekly walkthrough! If you’ve &lt;em&gt;stumbled&lt;/em&gt; across this blog searching for a comprehensive guide to the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/traverse&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Traverse&lt;/strong&gt;&lt;/a&gt; challenge from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;, you’re in the right spot. This challenge is a fantastic deep dive into investigating a compromised web application — let’s check out the scenario below.&lt;/p&gt;&#xA;&lt;h4 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h4&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Bob is a security engineer at a firm and works closely with the software/DevOps team to develop a tourism web application. Once the website was moved from QA to Production, the team noticed that the website was getting hacked daily and wanted to know the exact reason. Bob consulted the blue team as well but has yet to be successful. Therefore, he finally enrolled in the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/module/software-security&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Software Security&lt;/strong&gt;&lt;/a&gt; pathway at THM to learn if he was doing something wrong.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;It sounds like we’ve got our work cut out for us to get Bob and his team back on track. But unlike Bob, we’ve already completed the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/module/software-security&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Software Security&lt;/strong&gt;&lt;/a&gt; pathway — and this challenge is one of its capstones, tying together all the key concepts. That means we’re well equipped to tackle this challenge. We’ll explore topics like the &lt;em&gt;OWASP Top 10&lt;/em&gt;, &lt;em&gt;SSDLC&lt;/em&gt;, &lt;em&gt;Dynamic Application Security Testing&lt;/em&gt;, and more.&lt;/p&gt;&#xA;&lt;p&gt;To accomplish this, we’ll leverage our knowledge of web applications and use tools like &lt;strong&gt;OWASP ZAP&lt;/strong&gt; and &lt;strong&gt;Postman&lt;/strong&gt; to complete our objectives. Sounds like fun, right? Let’s get into it!&lt;/p&gt;&#xA;&lt;p&gt;In the spirit of learning, this write-up is &lt;strong&gt;spoiler-free_._&lt;/strong&gt; But, if you find this walkthrough helpful — whether it levels-up your skills, gets you over a stumbling block, or serves as a handy reference — please give it a clap and consider following me for more content like this.&lt;/p&gt;&#xA;&lt;p&gt;Thanks for reading and going on this investigation with me!&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;question-1-what-type-of-encoding-is-used-by-the-hackers-to-obfuscate-the-javascript-file&#34;&gt;Question 1: What type of encoding is used by the hackers to obfuscate the JavaScript file?&#xA;&lt;/h3&gt;&lt;p&gt;Let’s kick off this investigation by spinning up the challenge virtual machine and launching your &lt;strong&gt;TryHackMe AttackBox&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Our first task is to determine what encoding is used to obfuscate the JavaScript file. To do this, open the &lt;strong&gt;Firefox&lt;/strong&gt; browser from the &lt;em&gt;AttackBox&lt;/em&gt; and navigate to the URL for the challenge. Once the page loads, we’ll see that the website has been defaced with a message from the attacker — uh oh!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f5b5a9a62dd0461f74b6c88ad0d1f357_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;478px&#34; data-flex-grow=&#34;199&#34; height=&#34;401&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/f5b5a9a62dd0461f74b6c88ad0d1f357_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: Navigating to the defaced web site&lt;/p&gt;&#xA;&lt;p&gt;For our purposes, we’ll need to leverage the browser’s &lt;strong&gt;Developer Tools&lt;/strong&gt; to identify any JavaScript files loaded by the website and see if we can find anything suspicious. First, press &lt;code&gt;F12&lt;/code&gt; to load up the developer tools.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3c3eeb4a51a4c4806b219fd4a6315a0b_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;284px&#34; data-flex-grow=&#34;118&#34; height=&#34;675&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/3c3eeb4a51a4c4806b219fd4a6315a0b_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: Using developer tools to identify JavaScript loaded by the page&lt;/p&gt;&#xA;&lt;p&gt;On the &lt;em&gt;Inspector&lt;/em&gt; tab, we’ll discover two commented JavaScript files, but the one we’re interested in is &lt;code&gt;custom.min.js&lt;/code&gt;, indicated by the comment &amp;ldquo;THIS IS CUSTOM JS FILE.&amp;ldquo;Let’s flip over to the &lt;em&gt;Network&lt;/em&gt; tab of the developer tools. Select the &lt;code&gt;JS&lt;/code&gt; filter to help us quickly locate the two scripts. Then, select the &lt;code&gt;custom.min.js&lt;/code&gt; file and click the &lt;em&gt;Response&lt;/em&gt; tab.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0d508bd9e8e6bff9deed065571ce691c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;284px&#34; data-flex-grow=&#34;118&#34; height=&#34;674&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/0d508bd9e8e6bff9deed065571ce691c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: Identifying the encoded JavaScript payload&lt;/p&gt;&#xA;&lt;p&gt;Within the response payload, we can see a suspicious comment likely left by the attacker. Right below it, we see that the payload is obfuscated. Based on the format, we can determine the encoding.&lt;/p&gt;&#xA;&lt;p&gt;Since this walkthrough doesn’t contain spoilers, you’ll have to figure out which common encoding method is used on your own. We’ll confirm this in &lt;strong&gt;Question 2&lt;/strong&gt; once we start decoding operations.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;607e2d5d3ce46c68adba0daf212f6344_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/607e2d5d3ce46c68adba0daf212f6344_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-what-is-the-flag-value-after-deobfuscating-thefile&#34;&gt;Question 2: What is the flag value after deobfuscating the file?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we’ve identified the encoded payload, our next objective is to decode it and uncover the flag hidden within. We can accomplish this by leveraging &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;CyberChef&lt;/strong&gt;&lt;/a&gt;, which is conveniently bookmarked in the &lt;em&gt;AttackBox’s&lt;/em&gt; &lt;em&gt;Firefox&lt;/em&gt; browser.&lt;/p&gt;&#xA;&lt;p&gt;After opening &lt;em&gt;CyberChef&lt;/em&gt;, paste the encoded payload into the input window. Since we already know the type of encoding from &lt;strong&gt;Question 1&lt;/strong&gt;, we’ll need to add the &lt;em&gt;“From [Redacted]”&lt;/em&gt; operation to the recipe.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;934d89e0132acea4e96d1c5a3bddb062_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;284px&#34; data-flex-grow=&#34;118&#34; height=&#34;676&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/934d89e0132acea4e96d1c5a3bddb062_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;CyberChef: Decoding the JavaScript payload&lt;/p&gt;&#xA;&lt;p&gt;Once the operation completes, look for a function resembling &lt;code&gt;(&amp;quot;Flag: &amp;quot;+n+&amp;quot; &amp;quot;+e+&amp;quot; &amp;quot;+o+&amp;quot; &amp;quot;+i)&lt;/code&gt;. This is our clue. All we need to do now is refer to the variables &lt;code&gt;n&lt;/code&gt;, &lt;code&gt;e&lt;/code&gt;, &lt;code&gt;o&lt;/code&gt;, and &lt;code&gt;i&lt;/code&gt;. Each one is assigned a dictionary word. When we combine them, we get the flag — and a hint to continue our investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;503c34034af4ba0f9f4e04dc9ef74df9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2493px&#34; data-flex-grow=&#34;1038&#34; height=&#34;77&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/503c34034af4ba0f9f4e04dc9ef74df9_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-logging-is-an-important-aspect-what-is-the-name-of-the-file-containing-emaildumps&#34;&gt;Question 3: Logging is an important aspect. What is the name of the file containing email dumps?&#xA;&lt;/h3&gt;&lt;p&gt;To answer &lt;strong&gt;Question 3&lt;/strong&gt;, we need to map any additional URLs on the compromised web application — specifically any resource that could contain email dumps.&lt;/p&gt;&#xA;&lt;p&gt;For this challenge, we’ll leverage the &lt;strong&gt;Spider&lt;/strong&gt; capabilities of the &lt;strong&gt;OWASP ZAP&lt;/strong&gt; tool**,** which was covered in the &lt;em&gt;Dynamic Application Security Testing&lt;/em&gt; room of the &lt;em&gt;Software Security&lt;/em&gt; module. For context, according to the &lt;em&gt;ZAP&lt;/em&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.zaproxy.org/docs/desktop/addons/spider/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;documentation&lt;/a&gt;, the &lt;em&gt;Spider&lt;/em&gt; is:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;A tool that is used to automatically discover new resources (URLs) on a particular Site. It begins with a list of URLs to visit, called the seeds, which depends on how the Spider is started. The Spider then visits these URLs, it identifies all the hyperlinks in the page and adds them to the list of URLs to visit and the process continues recursively as long as new resources are found.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;So, the idea is that by leveraging the &lt;em&gt;Spider&lt;/em&gt;, we can automatically discover new resources and not have to manually hunt through the browser — awesome! Let’s try it out.&lt;/p&gt;&#xA;&lt;p&gt;First, press the &lt;em&gt;Tools&lt;/em&gt; menu and select &lt;em&gt;Spider&lt;/em&gt;. Once the &lt;em&gt;Spider’s Scope&lt;/em&gt; window opens, add your Challenge Machine IP to the &lt;code&gt;starting point&lt;/code&gt; field, tick the &lt;code&gt;recurse&lt;/code&gt; option, and press &lt;code&gt;Start Scan&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;50b29509981f2563e45f65c91dbe2cae_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;251px&#34; data-flex-grow=&#34;104&#34; height=&#34;763&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/50b29509981f2563e45f65c91dbe2cae_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;ZAP: Configuring the Spider&lt;/p&gt;&#xA;&lt;p&gt;Once the enumeration finishes, we’ll be able to see all the discovered resources in the left-hand column. Since we’re looking specifically for logs, expand the &lt;code&gt;logs&lt;/code&gt; node. Notice the &lt;code&gt;.txt&lt;/code&gt; file? This is the file containing the email dumps that we’re searching for.&lt;/p&gt;&#xA;&lt;p&gt;By using &lt;em&gt;ZAP’s Spider&lt;/em&gt; capability, we’ve quickly identified this file.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8b2cf4933c890f5b4f428264c39c5dba_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;367px&#34; data-flex-grow=&#34;152&#34; height=&#34;523&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/8b2cf4933c890f5b4f428264c39c5dba_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;ZAP: Reviewing the Spider results&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;31202c577021390f9e54b450d13200c8_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/31202c577021390f9e54b450d13200c8_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-the-logs-folder-contains-email-logs-and-has-a-message-for-the-software-team-lead-what-is-the-name-of-the-directory-that-bob-hascreated&#34;&gt;Question 4: The logs folder contains email logs and has a message for the software team lead. What is the name of the directory that Bob has created?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we’ve discovered the URL of the email logs, we can right-click the entry from &lt;em&gt;ZAP&lt;/em&gt; and select &lt;em&gt;“Open URL in Browser.”&lt;/em&gt; This will open the resource in your web browser so we can read the contents.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7017e7d44e220be403666a0bd1587e85_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;601px&#34; data-flex-grow=&#34;250&#34; height=&#34;319&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/7017e7d44e220be403666a0bd1587e85_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: The contents of email_dump.txt&lt;/p&gt;&#xA;&lt;p&gt;Inside &lt;code&gt;email_dump.txt&lt;/code&gt;, we’ll find a message from Bob sent to Mark, the software team lead. It contains a clue pointing to the location of a directory Bob created. He mentions: &amp;ldquo;I named the API folder under the name of the first phase of the SSDLC.&amp;ldquo;So, what is the first phase of the &lt;em&gt;SSDLC&lt;/em&gt;? This was covered in the &lt;em&gt;SSDLC&lt;/em&gt; room of the &lt;em&gt;TryHackMe Software Security&lt;/em&gt; module. We just need to refer back to the &lt;em&gt;Phases of Secure Software Development Life Cycle&lt;/em&gt; diagram to determine the name of the folder Bob created, containing the API documentation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;fe0f0669a802123ac7146bca23a2f042_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;422px&#34; data-flex-grow=&#34;176&#34; height=&#34;409&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/fe0f0669a802123ac7146bca23a2f042_MD5.png&#34; width=&#34;720&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/securesdlc&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/securesdlc&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;117aeaa28956ab29ef79c405fa1e760a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/117aeaa28956ab29ef79c405fa1e760a_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-is-the-key-file-for-opening-the-directory-that-bob-has-created-formark&#34;&gt;Question 5: What is the key file for opening the directory that Bob has created for Mark?&#xA;&lt;/h3&gt;&lt;p&gt;Another handy clue that Bob left for Mark in his email is the key to accessing the page contents — thanks, Bob!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0abbb27eae39fd8f1ac67fe8931415c9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;601px&#34; data-flex-grow=&#34;250&#34; height=&#34;319&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/0abbb27eae39fd8f1ac67fe8931415c9_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: Identifying the password in email_dump.txt&lt;/p&gt;&#xA;&lt;p&gt;Our next task is to use this password to access the API documentation. Let’s check it out!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;064fd8789144952531a49cf69d190a51_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2618px&#34; data-flex-grow=&#34;1090&#34; height=&#34;66&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/064fd8789144952531a49cf69d190a51_MD5.png&#34; width=&#34;720&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-what-is-the-email-address-for-id-5-using-the-leaked-api-endpoint&#34;&gt;Question 6: What is the email address for ID 5 using the leaked API endpoint?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we’ve identified the URL and key to access the API documentation in the last two questions, let’s navigate to it in the browser:&lt;/p&gt;&#xA;&lt;p&gt;http://&lt;YOUR CHALLENGE IP&gt;/&amp;lt;QUESTION 4 ANSWER&amp;gt;&lt;/p&gt;&#xA;&lt;p&gt;Upon accessing the page, we’ll be challenged for a password — this is where we can use the credential we found in &lt;strong&gt;Question 5&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2216923b725ba145f08b8ec5e77c97b3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;269px&#34; data-flex-grow=&#34;112&#34; height=&#34;712&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/2216923b725ba145f08b8ec5e77c97b3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: Accessing the API Documentation&lt;/p&gt;&#xA;&lt;p&gt;Now that we’ve accessed the page, we can check out the &lt;strong&gt;API documentation&lt;/strong&gt;, which gives us detailed instructions on how to query specific customers by ID — awesome!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b0ba142c3788f74c894c0674ca94fe57_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;284px&#34; data-flex-grow=&#34;118&#34; height=&#34;675&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/b0ba142c3788f74c894c0674ca94fe57_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: Accessing the API documentation&lt;/p&gt;&#xA;&lt;p&gt;So, we have &lt;em&gt;API documentation&lt;/em&gt;, but how do we actually query these customer IDs? For this task, we’ll switch to the application &lt;a class=&#34;link&#34; href=&#34;https://www.postman.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Postman&lt;/strong&gt;&lt;/a&gt;, an all-in-one API platform. &lt;em&gt;Postman&lt;/em&gt; is pre-installed on the &lt;em&gt;THM AttackBox&lt;/em&gt;, with a shortcut located in &lt;code&gt;/root/Desktop/Tools/Web&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Go ahead and open &lt;em&gt;Postman&lt;/em&gt;. Here’s how we’ll build our query using Bob’s &lt;em&gt;API documentation&lt;/em&gt; as a reference:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Set the HTTP Method to &lt;code&gt;GET&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Input the URL of your challenge machine:&#xA;&lt;code&gt;http://&amp;lt;YOUR CHALLENGE IP&amp;gt;/api&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Set the Query Parameters:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;KEY = customer_id&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;VALUE = 5&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;ol start=&#34;4&#34;&gt;&#xA;&lt;li&gt;Press &lt;code&gt;Send&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4287d2c6ad9282453d6df5beaac3988b_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;459px&#34; data-flex-grow=&#34;191&#34; height=&#34;418&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/4287d2c6ad9282453d6df5beaac3988b_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Postman: Building the API query&lt;/p&gt;&#xA;&lt;p&gt;This will create a request that matches the requirements of the &lt;em&gt;API documentation&lt;/em&gt; and allows us to query the web app for a customer ID of 5. Press &lt;code&gt;Send&lt;/code&gt; to send the request.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;646aa8906bad14c40ed2732b6156a196_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;262px&#34; data-flex-grow=&#34;109&#34; height=&#34;731&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/646aa8906bad14c40ed2732b6156a196_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Postman: Identifying the email address of user ID 5&lt;/p&gt;&#xA;&lt;p&gt;This will return the data for the user with ID 5, John, including his email address, which we need to answer &lt;strong&gt;Question 6&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1a3af6eb030241b6d9d0e67581fd0886_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2430px&#34; data-flex-grow=&#34;1012&#34; height=&#34;79&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/1a3af6eb030241b6d9d0e67581fd0886_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;questions-7-8&#34;&gt;Questions 7 &amp;amp; 8:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-id-for-the-user-with-admin-privileges&#34;&gt;What is the ID for the user with admin privileges?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-endpoint-for-logging-in-as-the-admin-mention-the-last-endpoint-instead-of-the-url-for-example-if-the-answer-is-url-is-tryhackmecomadminjust-writeadmin&#34;&gt;What is the endpoint for logging in as the admin? Mention the last endpoint instead of the URL. For example, if the answer is URL is tryhackme.com/admin — Just write /admin.&#xA;&lt;/h4&gt;&lt;p&gt;To answer &lt;strong&gt;Questions 7 &amp;amp; 8&lt;/strong&gt;, we’ll need to first identify a user with the &lt;em&gt;admin&lt;/em&gt; role, and then locate the login endpoint used to access administrative functions. We already know that John (a regular user) is ID &lt;code&gt;5&lt;/code&gt;, so we’ll start by changing the query &lt;code&gt;VALUE&lt;/code&gt; and checking lower numbers like &lt;code&gt;1&lt;/code&gt;, &lt;code&gt;2&lt;/code&gt;, &lt;code&gt;3&lt;/code&gt;, &lt;code&gt;4&lt;/code&gt;, etc.&lt;/p&gt;&#xA;&lt;p&gt;Eventually, our manual enumeration efforts pay off and we stumble upon the ID related to the &lt;em&gt;admin&lt;/em&gt; role.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5c3a202a9fbe372c914f15c404373ecd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;262px&#34; data-flex-grow=&#34;109&#34; height=&#34;731&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/5c3a202a9fbe372c914f15c404373ecd_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Postman: Identifying the admin user&lt;/p&gt;&#xA;&lt;p&gt;Not only did we discover the &lt;em&gt;admin&lt;/em&gt; user with our query, but we also uncovered the login endpoint used to access the administrative functions of the web app.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;07605ffc6c4d052f4c6b092f7cbe39a0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;262px&#34; data-flex-grow=&#34;109&#34; height=&#34;731&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/07605ffc6c4d052f4c6b092f7cbe39a0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;These are good reminders of how easily sensitive information can be disclosed without proper access controls. Lock it down!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3977715a19e9eb116801d6b7dd9bcfaa_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2493px&#34; data-flex-grow=&#34;1038&#34; height=&#34;77&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/3977715a19e9eb116801d6b7dd9bcfaa_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;85c11d46d1c6addd4aa1d5747dc0ec08_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2823px&#34; data-flex-grow=&#34;1176&#34; height=&#34;68&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/85c11d46d1c6addd4aa1d5747dc0ec08_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;questions-9-10&#34;&gt;Questions 9 &amp;amp; 10:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;the-attacker-uploaded-a-web-shell-and-renamed-a-file-used-for-managing-the-server-can-you-find-the-name-of-the-web-shell-that-the-attacker-has-uploaded&#34;&gt;The attacker uploaded a web shell and renamed a file used for managing the server. Can you find the name of the web shell that the attacker has uploaded?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-name-of-the-file-renamed-by-the-attacker-for-managing-the-webserver&#34;&gt;What is the name of the file renamed by the attacker for managing the web server?&#xA;&lt;/h4&gt;&lt;p&gt;For our next two tasks, we’re going to leverage the exposed credentials and login endpoint we found in &lt;strong&gt;Questions 7 &amp;amp; 8&lt;/strong&gt; to access the admin page through the browser.&lt;/p&gt;&#xA;&lt;p&gt;Use your browser to connect to the endpoint and input the credentials when prompted.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;bd6a6302418586b3d1c3fd62728e1103_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;270px&#34; data-flex-grow=&#34;112&#34; height=&#34;710&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/bd6a6302418586b3d1c3fd62728e1103_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: Accessing the admin login endpoint&lt;/p&gt;&#xA;&lt;p&gt;Once we’ve gained access to the &lt;em&gt;Admin Page&lt;/em&gt;, we’ll see that we have the ability to execute commands on the underlying server. For example, we have the &lt;em&gt;Current Directory&lt;/em&gt; and &lt;em&gt;System Owner&lt;/em&gt; commands. Executing each of them seems to trigger different system-level commands: &lt;code&gt;pwd&lt;/code&gt; lists the current directory, and &lt;code&gt;whoami&lt;/code&gt; lists the current user.&lt;/p&gt;&#xA;&lt;p&gt;But what if there’s a way to execute additional commands from this same admin page?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c21d2fd8e28c2a9493c07da5c1a851f5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;353px&#34; data-flex-grow=&#34;147&#34; height=&#34;543&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/c21d2fd8e28c2a9493c07da5c1a851f5_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: The Admin Page command execution interface&lt;/p&gt;&#xA;&lt;p&gt;Let’s press &lt;code&gt;F12&lt;/code&gt; to open the browser’s developer tools again. This time, we’ll inspect the command input field. Notice anything interesting?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;489dde78bcfd746a06f34299596770ea_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;284px&#34; data-flex-grow=&#34;118&#34; height=&#34;676&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/489dde78bcfd746a06f34299596770ea_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: Inspecting the command execution elements&lt;/p&gt;&#xA;&lt;p&gt;We can see that our theory was correct. The two available commands are simply executing &lt;code&gt;whoami&lt;/code&gt; and &lt;code&gt;pwd&lt;/code&gt; on the web server’s operating system. Let’s test if this field is vulnerable to command injection by adding an additional command.&lt;/p&gt;&#xA;&lt;p&gt;To do this, right-click the &lt;code&gt;&amp;lt;select name=&amp;quot;commands&amp;quot;&amp;gt;&lt;/code&gt; tag and edit the HTML to add another command to list the contents of the current directory. For this example, we’ll use &lt;code&gt;ls -la&lt;/code&gt; — who knows, maybe we’ll find the web shell.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;56e397c7fe2423009d2709a8d4ba96a4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;698px&#34; data-flex-grow=&#34;290&#34; height=&#34;275&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/56e397c7fe2423009d2709a8d4ba96a4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: HTML Manipulation&lt;/p&gt;&#xA;&lt;p&gt;Now that we’ve edited the HTML on the client side, let’s execute our new &lt;em&gt;List Contents&lt;/em&gt; command.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a658d71aa42d43c145d49f28fab6cfec_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;480px&#34; data-flex-grow=&#34;200&#34; height=&#34;400&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/a658d71aa42d43c145d49f28fab6cfec_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Bingo! By executing this command, we’ve successfully revealed the web server’s directory contents and uncovered some very valuable information, including the two file names we need to answer &lt;strong&gt;Questions 9 &amp;amp; 10&lt;/strong&gt;. This confirms that the web application is vulnerable to command injection.&lt;/p&gt;&#xA;&lt;p&gt;For additional context on this technique, check out the OWASP Top 10:2021 page. Here’s a quote from the &lt;em&gt;TryHackMe OWASP Top 10–2021&lt;/em&gt; room:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://owasp.org/Top10/A03_2021-Injection/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;OWASP Top 10: 2021 — A04 — Command Injection:&lt;/strong&gt;&lt;/a&gt; This occurs when user input is passed to system commands. As a result, an attacker can execute arbitrary system commands on application servers, potentially allowing them to access users’ systems.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6ca8c68ec49c0927523a35821c7cde4b_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1352px&#34; data-flex-grow=&#34;563&#34; height=&#34;142&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/6ca8c68ec49c0927523a35821c7cde4b_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-11-can-you-use-the-file-manager-to-restore-the-original-website-by-removing-the-finally-hacked-message-what-is-the-flag-value-after-restoring-the-mainwebsite&#34;&gt;Question 11: Can you use the file manager to restore the original website by removing the “&lt;strong&gt;FINALLY HACKED&lt;/strong&gt;” message? What is the flag value after restoring the main website?&#xA;&lt;/h3&gt;&lt;p&gt;We’ve made it to our final objective — restoring the website to its original state before the hack. The cool part is that this task builds directly off the information we uncovered in &lt;strong&gt;Question 10&lt;/strong&gt; — specifically, the filename of the original file manager for this web app.&lt;/p&gt;&#xA;&lt;p&gt;Navigate to the renamed URL from &lt;strong&gt;Question 10&lt;/strong&gt; to access the file manager. We’ll also need the password, which we also discovered after listing the web server contents with our &lt;code&gt;ls -la&lt;/code&gt; command. This will allow us to log in and begin restoring the site.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d9d6ba2a0bf44a31c25ec6344f9b2b8e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;466px&#34; data-flex-grow=&#34;194&#34; height=&#34;412&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/d9d6ba2a0bf44a31c25ec6344f9b2b8e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Browser: The Admin File Manager login page&lt;/p&gt;&#xA;&lt;p&gt;Once inside the file manager, locate and open the &lt;code&gt;index.php&lt;/code&gt; file with the &lt;em&gt;Edit&lt;/em&gt; action.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0d34f2a56dd7793b6e2a94a138c9a14d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;381px&#34; data-flex-grow=&#34;159&#34; height=&#34;503&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/0d34f2a56dd7793b6e2a94a138c9a14d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;File Manager: Identifying the index.php file&lt;/p&gt;&#xA;&lt;p&gt;Inside the editor, we’ll see the message header &lt;em&gt;“FINALLY HACKED.”&lt;/em&gt; Looking further down the PHP code, there’s a condition: if the &lt;code&gt;$message&lt;/code&gt; variable does not equal &amp;ldquo;FINALLY HACKED&amp;rdquo;, the final flag will be displayed.&lt;/p&gt;&#xA;&lt;p&gt;Let’s go ahead and remove the &lt;code&gt;$message&lt;/code&gt; variable, save the file, and reload the web app’s home page.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4aa1a1b7a2f894f2ebb39e27f90f268d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;354px&#34; data-flex-grow=&#34;147&#34; height=&#34;541&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/4aa1a1b7a2f894f2ebb39e27f90f268d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;With the defacement removed, we’re rewarded with the final flag on the restored website. Great job! Now let’s wrap up this challenge.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;113be3531ec53d0efd08b82731a7b2ba_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;481px&#34; data-flex-grow=&#34;200&#34; height=&#34;399&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/113be3531ec53d0efd08b82731a7b2ba_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c07e4be5cdbd2343250d68d5cf19cb92_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2341px&#34; data-flex-grow=&#34;975&#34; height=&#34;82&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/c07e4be5cdbd2343250d68d5cf19cb92_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;img alt=&#34;a41c2bbe00089ffbc13a26c8d89b6545_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;406px&#34; data-flex-grow=&#34;169&#34; height=&#34;472&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/a41c2bbe00089ffbc13a26c8d89b6545_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;How fun was that! A big thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for another awesome challenge.&lt;/p&gt;&#xA;&lt;p&gt;This challenge was a great capstone for the &lt;em&gt;Software Security&lt;/em&gt; module and tied together so many concepts covered in the content. It offered a realistic example of how layered vulnerabilities like exposed credentials, weak access controls, and command injection can compound into full web server compromise.&lt;/p&gt;&#xA;&lt;p&gt;As we moved through the investigation, we not only followed the attacker’s trail but also restored the integrity of the web application. Of course, this is only a short-term fix, and Bob definitely has his work cut out for him to get this app properly locked down.&lt;/p&gt;&#xA;&lt;p&gt;I chose this week’s challenge to start wrapping up the &lt;em&gt;Security Engineer&lt;/em&gt; path and get some hands-on practice investigating compromised web applications while testing my knowledge of the &lt;em&gt;Software Security&lt;/em&gt; modules. It was a rewarding experience as each question segued perfectly into the next, and the investigation felt linear and logical. As an added bonus, I’ve been using &lt;em&gt;Postman&lt;/em&gt; more in my day job, so getting extra reps in was a real plus. Great stuff!&lt;/p&gt;&#xA;&lt;p&gt;Thanks for your support and partnering on this investigation. If you found this walkthrough helpful, don’t forget to &lt;strong&gt;give it a clap&lt;/strong&gt;! Your feedback really is invaluable, and it pumps me up to support your security journey. Remember, Cybersecurity is a team sport and we’re in this together!&lt;/p&gt;&#xA;&lt;p&gt;Until next week’s challenge — stay curious and be safe out there!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;897587ce48e9f9feb186cdd21a12ccdd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;250&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-traverse-challenge-walkthrough/897587ce48e9f9feb186cdd21a12ccdd_MD5.png&#34; width=&#34;250&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/traverse&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/traverse&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;CyberChef:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://gchq.github.io/CyberChef/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;ZAP Proxy Documentation — Spider:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.zaproxy.org/docs/desktop/addons/spider/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.zaproxy.org/docs/desktop/addons/spider/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Postman:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.postman.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.postman.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;OWASP Top 10 — A03 — Injection:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://owasp.org/Top10/A03_2021-Injection/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://owasp.org/Top10/A03_2021-Injection/&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Warzone 1 Room Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/</link>
            <pubDate>Sun, 01 Jun 2025 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/Warzone.png&#34; alt=&#34;Featured image of post TryHackMe  —  Warzone 1 Room Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmewarzone-1-room-walkthrough&#34;&gt;TryHackMe — Warzone 1 Room Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;a-network-packet-capture-investigation-using-brimzui-wireshark-and-virustotal&#34;&gt;A Network Packet Capture Investigation Using Brim/Zui, Wireshark, and VirusTotal.&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;320&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/Warzone.png&#34; width=&#34;320&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/warzoneone&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/warzoneone&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Welcome to my weekly walkthrough! If you’ve &lt;em&gt;stumbled&lt;/em&gt; across this blog searching for a comprehensive guide to the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/warzoneone&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Warzone 1&lt;/strong&gt;&lt;/a&gt; room from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;, you’re in the right place. This challenge is a fantastic introduction to forensic network packet analysis — let’s check out the scenario below.&lt;/p&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;You work as a Tier 1 Security Analyst L1 for a Managed Security Service Provider (MSSP). Today you’re tasked with monitoring network alerts.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;A few minutes into your shift, you get your first network case: &lt;strong&gt;Potentially Bad Traffic&lt;/strong&gt; and &lt;strong&gt;Malware Command and Control Activity detected&lt;/strong&gt;. Your race against the clock starts. Inspect the PCAP and retrieve the artifacts to confirm this alert is a true positive.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;In this challenge, we’re stepping into the shoes of a Security Analyst at an MSSP, monitoring network traffic alerts for one of our customers when suddenly, an alert fires from their IDS/IPS — Uh-Oh! We collect a network packet capture file, or PCAP, and need to quickly determine if this is a true positive alert by analyzing the artifacts within the traffic.&lt;/p&gt;&#xA;&lt;p&gt;Okay, deep breaths — what’s in our toolkit for this investigation? We’ll be busting out a couple of essential network packet analysis tools including &lt;a class=&#34;link&#34; href=&#34;https://zui.brimdata.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Brim&lt;/strong&gt;&lt;/a&gt; (now called &lt;em&gt;ZUI&lt;/em&gt;) to process, search, and analyze the PCAP, and then pivoting to &lt;a class=&#34;link&#34; href=&#34;https://www.wireshark.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Wireshark&lt;/strong&gt;&lt;/a&gt; for deep packet inspection. We’ll also enrich our findings by consulting &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;VirusTotal&lt;/strong&gt;&lt;/a&gt; to add context to any indicators of compromise (IOCs) we discover.&lt;/p&gt;&#xA;&lt;p&gt;Sounds like fun, right? Let’s get into it!&lt;/p&gt;&#xA;&lt;p&gt;In the spirit of learning, this walkthrough will be &lt;strong&gt;spoiler-free.&lt;/strong&gt; But if you find it helpful — whether it levels-up your skills, gets you over a &lt;em&gt;stumbling&lt;/em&gt; block, or serves as a handy reference — please give it a clap and consider following me for more content like this.&lt;/p&gt;&#xA;&lt;p&gt;Thanks for reading and going on this investigation with me!&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;question-1-what-was-the-alert-signature-formalware-command-and-control-activity-detected&#34;&gt;Question 1: What was the alert signature for &lt;strong&gt;Malware Command and Control Activity Detected&lt;/strong&gt;?&#xA;&lt;/h3&gt;&lt;p&gt;Once in our analysis environment, let’s get acquainted with our toolset so we can start forming a plan. You’ll find everything we need in the &lt;code&gt;Tools&lt;/code&gt; folder on the Desktop.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;cde47a6cc5979cf36820b96dd172a404_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;290px&#34; data-flex-grow=&#34;121&#34; height=&#34;661&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/cde47a6cc5979cf36820b96dd172a404_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Contents of the Tools folder&lt;/p&gt;&#xA;&lt;p&gt;To answer &lt;strong&gt;Question 1&lt;/strong&gt;, we’re searching for an alert signature. So, our first stop will be to use &lt;strong&gt;Brim&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;https://www.brimdata.io/blog/brim-app-will-be-zui/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;now called &lt;strong&gt;Zui&lt;/strong&gt;&lt;/a&gt;) because it has the ability to use &lt;a class=&#34;link&#34; href=&#34;https://zui.brimdata.io/docs/features/Packet-Captures#local-suricata-rules-folder&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Suricata&lt;/strong&gt;&lt;/a&gt; intrusion detection rules to help quickly identify threats or malicious traffic within the packet capture.&lt;/p&gt;&#xA;&lt;p&gt;Go ahead and launch it — and speaking of packet captures, once &lt;em&gt;Brim&lt;/em&gt; is open, load the challenge file &lt;code&gt;Zone1.pcap&lt;/code&gt; , and wait for it to process the capture file.&lt;/p&gt;&#xA;&lt;p&gt;Once the file is loaded, let’s get an overview of the &lt;em&gt;Suricata&lt;/em&gt; rule hits detected in the network traffic. Select the &lt;code&gt;Zone1.pcap&lt;/code&gt; file, click &lt;em&gt;Suricata Alerts by Category&lt;/em&gt; under the &lt;em&gt;Queries&lt;/em&gt; header, and review the displayed alert categories.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;54513492fc79a0483d89f552f4326121_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;362px&#34; data-flex-grow=&#34;150&#34; height=&#34;530&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/54513492fc79a0483d89f552f4326121_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Overview of Suricata Alerts by Category&lt;/p&gt;&#xA;&lt;p&gt;We’re going to focus on &lt;em&gt;Malware Command and Control Activity Detected&lt;/em&gt; since that’s what the question is asking about. Our next step is to find the &lt;em&gt;alert signature&lt;/em&gt; for this category.&lt;/p&gt;&#xA;&lt;p&gt;To do this, right-click the &lt;em&gt;Malware Command and Control Activity Detected&lt;/em&gt; row and select &lt;em&gt;New search with this value&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;60f3aeac614c62d9df7affa6b5c76510_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;349px&#34; data-flex-grow=&#34;145&#34; height=&#34;549&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/60f3aeac614c62d9df7affa6b5c76510_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Selecting &lt;em&gt;New search with the Malware Command and Control value.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;This selection adjusts the query to display packets matching the &lt;em&gt;Suricata&lt;/em&gt; rule — and more importantly, it reveals the details we need to answer &lt;strong&gt;Question 1&lt;/strong&gt; under the &lt;code&gt;alert.signature&lt;/code&gt; column.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f78586d56891108eedd7d3aa30847c9c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;619px&#34; data-flex-grow=&#34;258&#34; height=&#34;310&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/f78586d56891108eedd7d3aa30847c9c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the alert signature.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f1fec1b24b58693bfdc34753e2c7d947_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/f1fec1b24b58693bfdc34753e2c7d947_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-what-is-the-source-ip-address-enter-your-answer-in-adefangedformat&#34;&gt;Question 2: What is the source IP address? Enter your answer in a &lt;strong&gt;defanged&lt;/strong&gt; format.&#xA;&lt;/h3&gt;&lt;p&gt;To answer &lt;strong&gt;Question 2&lt;/strong&gt;, we need to determine the source IP address of the malware traffic. Fortunately, we can continue working in the same view we used in &lt;strong&gt;Question 1&lt;/strong&gt;, this time focusing on the &lt;code&gt;src_ip&lt;/code&gt; column, which contains — you guessed it, the source IP address.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;491c74518b3f6ea63479ef6f2d81cbe5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;619px&#34; data-flex-grow=&#34;258&#34; height=&#34;310&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/491c74518b3f6ea63479ef6f2d81cbe5_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the source IP address of the malicious traffic&lt;/p&gt;&#xA;&lt;p&gt;But before we can submit the answer, we need to &lt;em&gt;defang&lt;/em&gt; the IP address. This is a common practice to ensure that malicious IPs and URLs aren’t accidentally clicked. While this is easy to do manually, let’s work a little smarter and use &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;CyberChef&lt;/strong&gt;&lt;/a&gt; for the task.&lt;/p&gt;&#xA;&lt;p&gt;The offline version of &lt;em&gt;CyberChef&lt;/em&gt; is included in the &lt;code&gt;Tools&lt;/code&gt; folder, but the &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;online&lt;/a&gt; version works just as well. To defang the source IP address:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Open &lt;em&gt;CyberChef.&lt;/em&gt;&lt;/li&gt;&#xA;&lt;li&gt;Select the &lt;em&gt;Defang IP Addresses&lt;/em&gt; operation.&lt;/li&gt;&#xA;&lt;li&gt;Paste the source IP address into the &lt;em&gt;Input&lt;/em&gt; field.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;And voilà — we have the defanged IP address.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c04b1082f020fdd650a32a3fbf5db813_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;242px&#34; data-flex-grow=&#34;100&#34; height=&#34;713&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/c04b1082f020fdd650a32a3fbf5db813_MD5.png&#34; width=&#34;719&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;CyberChef: Defanging an IP address&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c0e4ee168651203df89bc103bdaa59fc_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2782px&#34; data-flex-grow=&#34;1159&#34; height=&#34;69&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/c0e4ee168651203df89bc103bdaa59fc_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-what-ip-address-was-the-destination-ip-in-the-alert-enter-your-answer-in-adefangedformat&#34;&gt;Question 3: What IP address was the destination IP in the alert? Enter your answer in a &lt;strong&gt;defanged&lt;/strong&gt; format.&#xA;&lt;/h3&gt;&lt;p&gt;To answer Question 3, we need to identify and defang the destination IP address of the malicious traffic. This process is exactly the same as in Question 2, except this time we’ll focus on the &lt;code&gt;dest_ip&lt;/code&gt; column.&lt;/p&gt;&#xA;&lt;p&gt;Once you’ve located the destination IP, open CyberChef, select the &lt;em&gt;Defang IP Addresses&lt;/em&gt; operation, and paste the IP into the &lt;em&gt;Input&lt;/em&gt; field to generate the defanged version.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1d38799f88f80a71563358fdf6347b8c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;619px&#34; data-flex-grow=&#34;258&#34; height=&#34;310&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/1d38799f88f80a71563358fdf6347b8c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the destination IP address of the malicious traffic&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;59f52c5f52dfaab14a9c5200e45571af_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/59f52c5f52dfaab14a9c5200e45571af_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-still-in-virustotal-undercommunity-what-threat-group-is-attributed-to-this-ipaddress&#34;&gt;Question 4: Still in VirusTotal, under &lt;strong&gt;Community&lt;/strong&gt;, what threat group is attributed to this IP address?&#xA;&lt;/h3&gt;&lt;p&gt;The phrasing for &lt;strong&gt;Question 4&lt;/strong&gt; is a bit misleading. To uncover what threat group is attributed to the destination IP address we found in &lt;strong&gt;Question 3&lt;/strong&gt;, we need to pivot out to &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;VirusTotal&lt;/strong&gt;&lt;/a&gt;, an online threat analysis and sharing platform, to look up more information from the community.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;272212ca6e8c9fb8dc154fd6eeeb3e04_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;583px&#34; data-flex-grow=&#34;243&#34; height=&#34;329&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/272212ca6e8c9fb8dc154fd6eeeb3e04_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Performing a VirusTotal lookup&lt;/p&gt;&#xA;&lt;p&gt;In a real-world scenario, some versions of &lt;em&gt;Brim&lt;/em&gt; support right-click context menu integrations that allow you to pivot directly to &lt;em&gt;VirusTotal&lt;/em&gt; for IP lookups. Since the THM analysis environment doesn’t have open web access, we can’t get to &lt;em&gt;VirusTotal&lt;/em&gt; this way. Instead, we’ll copy the destination IP and navigate to &lt;em&gt;VirusTotal&lt;/em&gt; in another web browser. Then, paste the IP into the search field.&lt;/p&gt;&#xA;&lt;p&gt;Once we’ve input the IP address, we’ll see that several providers flag it as malicious. Let’s turn to the &lt;em&gt;Community&lt;/em&gt; tab to see if we can learn anything about the threat group attributed to this IP.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;abfaa0a39740ea130ff5c8a159d2b409_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;711px&#34; data-flex-grow=&#34;296&#34; height=&#34;270&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/abfaa0a39740ea130ff5c8a159d2b409_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;VirusTotal: Searching the malicious destination IP address&lt;/p&gt;&#xA;&lt;p&gt;We’ll find that several community graphs include this IP address, and some mention a specific threat actor. Look for the tag with the &lt;code&gt;TA&lt;/code&gt; prefix—this is the group we’re looking for. If you want more information about this threat group, check out the corresponding entry on &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt;&lt;/a&gt;: &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/groups/G0092/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;https://attack.mitre.org/groups/G0092/&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;470eccefcc7ea5afc7bde4a1a9d0756e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2823px&#34; data-flex-grow=&#34;1176&#34; height=&#34;68&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/470eccefcc7ea5afc7bde4a1a9d0756e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-is-the-malwarefamily&#34;&gt;Question 5: What is the malware family?&#xA;&lt;/h3&gt;&lt;p&gt;To answer Question 5, we now need to identify the name of the malware leveraged by the threat group. You may have already noticed the malware name in the &lt;code&gt;alert.signature&lt;/code&gt; field from the &lt;em&gt;Suricata&lt;/em&gt; alert in &lt;em&gt;Brim&lt;/em&gt;, but we can cross-reference this by reviewing and confirming the &lt;em&gt;VirusTotal&lt;/em&gt; community graph tags—nice!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;83a16058a3dcb151d4de97e01aa9fd12_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;711px&#34; data-flex-grow=&#34;296&#34; height=&#34;270&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/83a16058a3dcb151d4de97e01aa9fd12_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;VirusTotal: Identifying the malware family&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;df0a484cbbce823bc3909ded4e81d276_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/df0a484cbbce823bc3909ded4e81d276_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-do-a-search-in-virustotal-for-the-domain-from-question-4-what-was-the-majority-file-type-listed-undercommunicating-files&#34;&gt;Question 6: Do a search in VirusTotal for the domain from question 4. What was the majority file type listed under &lt;strong&gt;Communicating Files&lt;/strong&gt;?&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Question 6&lt;/strong&gt; is a bit confusing, since it seems like there is a missing step in the challenge. So far, we haven’t located a domain — only an IP address. That’s okay, though, we’ll adapt and try another approach.&lt;/p&gt;&#xA;&lt;p&gt;Within our &lt;em&gt;VirusTotal&lt;/em&gt; search page for the malicious IP address, navigate to the &lt;em&gt;Relations&lt;/em&gt; tab and look at the &lt;em&gt;Communicating Files&lt;/em&gt; section.&lt;/p&gt;&#xA;&lt;p&gt;The question is tricky because the majority file type is &lt;code&gt;Win32 EXE&lt;/code&gt;, but the expected answer format seems to match another communicating file type — this is the one we’re looking for. Not the most precise way of answering this, but it got the job done!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6cb36754c5299f57be423a8fcc7fde74_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;267px&#34; data-flex-grow=&#34;111&#34; height=&#34;717&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/6cb36754c5299f57be423a8fcc7fde74_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;VirusTotal: Identifying communicating file types&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6824fb66e8c76fb892fdbe2802d1518f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/6824fb66e8c76fb892fdbe2802d1518f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-7-inspect-the-web-traffic-for-the-flagged-ip-address-what-is-theuser-agentin-thetraffic&#34;&gt;Question 7: Inspect the web traffic for the flagged IP address; what is the &lt;strong&gt;user-agent&lt;/strong&gt; in the traffic?&#xA;&lt;/h3&gt;&lt;p&gt;Okay, let’s return to &lt;em&gt;Brim&lt;/em&gt;. Our next task is to search for the malicious destination IP we’ve been examining. To do this, enter the IP address into the search box and press &lt;code&gt;ENTER&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;There’s a lot of information to sift through, but let’s focus on the first three events — they contain all the data we’ll need.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3553322ec99895883aac554c8433ed34_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1465px&#34; data-flex-grow=&#34;610&#34; height=&#34;131&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/3553322ec99895883aac554c8433ed34_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying a suspicious user agent in the traffic&lt;/p&gt;&#xA;&lt;p&gt;Notice the second alert type for &lt;em&gt;Suspicious User-Agent (REBOL)&lt;/em&gt;? Take a closer look at the following &lt;code&gt;http&lt;/code&gt; event (the third entry)—we’ll find that this packet contains the suspicious &lt;code&gt;user_agent&lt;/code&gt; string.&lt;/p&gt;&#xA;&lt;p&gt;For reference, user agent strings are used to identify the client connecting to a web server and can help determine more information about the source of the traffic.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;fa1bc712532dd75ed5186fa3926ad95e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/fa1bc712532dd75ed5186fa3926ad95e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-8-retrace-the-attack-there-were-multiple-ip-addresses-associated-with-this-attack-what-were-two-other-ip-addresses-enter-the-ip-addresseddefangedand-in-numerical-order-format-ipaddripaddr&#34;&gt;Question 8: Retrace the attack; there were multiple IP addresses associated with this attack. What were two other IP addresses? Enter the IP addressed &lt;strong&gt;defanged&lt;/strong&gt; and in numerical order. (&lt;strong&gt;format: IPADDR,IPADDR&lt;/strong&gt;)&#xA;&lt;/h3&gt;&lt;p&gt;For our next task, we’ll need to identify additional IP addresses associated with the attack, defang them, and submit them in numerical order. No problem!&lt;/p&gt;&#xA;&lt;p&gt;The first step is to leverage Brim’s built-in &lt;em&gt;HTTP Requests&lt;/em&gt; query from the &lt;em&gt;Queries&lt;/em&gt; pane on the left-hand side of the window. This will filter individual http requests. From there, we’ll focus on the &lt;code&gt;id.resp_h&lt;/code&gt; column, which represents the IP address of the external server that responded to each request. While the majority of the traffic is directed to the IP address we previously identified, a closer look toward the bottom of the list reveals a few new entries for us to analyze.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ed29248fd7f867649646c856e895f81d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;533px&#34; data-flex-grow=&#34;222&#34; height=&#34;360&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/ed29248fd7f867649646c856e895f81d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the additional IOCs&lt;/p&gt;&#xA;&lt;p&gt;Searching each of these IPs on &lt;em&gt;VirusTotal&lt;/em&gt;, and checking the &lt;em&gt;Community&lt;/em&gt; tab again, we’ll discover that some of them are linked to the same malware family we identified back in &lt;strong&gt;Question 5&lt;/strong&gt;. Give it a try! If you get stuck, I’ve included some spoiler links below.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/ip-address/185.10.68.235/community&#34;  title=&#34;https://www.virustotal.com/gui/ip-address/185.10.68.235/community&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;&lt;em&gt;VirusTotal&lt;/em&gt;&lt;/strong&gt;&#xA;VirusTotalwww.virustotal.com&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/ip-address/185.10.68.235/community&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/ip-address/192.36.27.92/community&#34;  title=&#34;https://www.virustotal.com/gui/ip-address/192.36.27.92/community&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;&lt;em&gt;VirusTotal&lt;/em&gt;&lt;/strong&gt;&#xA;VirusTotalwww.virustotal.com&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/ip-address/192.36.27.92/community&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once we’ve confirmed the related IPs, we can jump over to &lt;em&gt;CyberChef&lt;/em&gt; to defang them. Just remember when submitting your answer, the IPs must be in numerical order, with the lowest value first.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;304b2ce8135da6c089038094b8f4e9f3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2232px&#34; data-flex-grow=&#34;930&#34; height=&#34;86&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/304b2ce8135da6c089038094b8f4e9f3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-9-what-were-the-file-names-of-the-downloaded-files-enter-the-answer-in-the-order-to-the-ip-addresses-from-the-previous-question-format-filexyzfilexyz&#34;&gt;Question 9: What were the file names of the downloaded files? Enter the answer in the order to the IP addresses from the previous question. (&lt;strong&gt;format: file.xyz,file.xyz&lt;/strong&gt;)&#xA;&lt;/h3&gt;&lt;p&gt;Keeping with our currently filtered &lt;em&gt;HTTP Requests&lt;/em&gt; view in &lt;em&gt;Brim&lt;/em&gt;, we can already identify the URI associated with the downloaded MSI file from the second IP address — jot this down, since it’ll be the second one listed in the answer format.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e345e9e8f1145cdb2e647d754586fe69_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;596px&#34; data-flex-grow=&#34;248&#34; height=&#34;322&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/e345e9e8f1145cdb2e647d754586fe69_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the file downloaded from the second IP address&lt;/p&gt;&#xA;&lt;p&gt;To identify the “first” file, let’s pivot to another built-in Brim query: the &lt;em&gt;File Activity&lt;/em&gt; query. This gives us a broader view of file-related events and helps us spot another MSI file downloaded from the first IP address we found in &lt;strong&gt;Question 8&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5312508427388c8be874490337aa41e6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;569px&#34; data-flex-grow=&#34;237&#34; height=&#34;337&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/5312508427388c8be874490337aa41e6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Identifying the downloaded file from the first IP address&lt;/p&gt;&#xA;&lt;p&gt;Now that we’ve located both files, we can combine them to form our answer — just make sure to list them in the same order as the IPs from the previous question.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f0934415a8ec633364b2c9b2dc01b4c3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2630px&#34; data-flex-grow=&#34;1095&#34; height=&#34;73&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/f0934415a8ec633364b2c9b2dc01b4c3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-10-inspect-the-traffic-for-the-first-downloaded-file-from-the-previous-question-two-files-will-be-saved-to-the-same-directory-what-is-the-full-file-path-of-the-directory-and-the-name-of-the-two-files-format-cpathfilexyzcpathfilexyz&#34;&gt;Question 10: Inspect the traffic for the first downloaded file from the previous question. Two files will be saved to the same directory. What is the full file path of the directory and the name of the two files? (&lt;strong&gt;format: C:\path\file.xyz,C:\path\file.xyz&lt;/strong&gt;)&#xA;&lt;/h3&gt;&lt;p&gt;Now that we’ve identified two suspicious downloaded files, we need to determine where the artifacts were saved on disk. The question tells us there are two additional files saved in the same directory — but how do we discover this?&lt;/p&gt;&#xA;&lt;p&gt;For this task, stick with our current &lt;em&gt;Brim&lt;/em&gt; filter, then click the &lt;em&gt;Packets&lt;/em&gt; button just above the search box to open the associated &lt;em&gt;pcap&lt;/em&gt; in &lt;a class=&#34;link&#34; href=&#34;https://www.wireshark.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Wireshark&lt;/strong&gt;&lt;/a&gt;. This will load the packets related to the file download from the &lt;em&gt;first&lt;/em&gt; IP address — the one listed first in the answer to &lt;strong&gt;Question 9&lt;/strong&gt;. Our goal is to review the TCP stream and look for clues about the download path and any other files written to the same location.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ddd0995ccac4020835347c2a9e8fa33d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1500px&#34; data-flex-grow=&#34;625&#34; height=&#34;128&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/ddd0995ccac4020835347c2a9e8fa33d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Pivoting from Brim to Wireshark&lt;/p&gt;&#xA;&lt;p&gt;Once &lt;em&gt;Wireshark&lt;/em&gt; is open, right-click the first packet in the list and select &lt;em&gt;Follow &amp;gt; TCP Stream&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ff559ec2053a57723d55f002f83b173d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;708px&#34; data-flex-grow=&#34;295&#34; height=&#34;271&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/ff559ec2053a57723d55f002f83b173d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wireshark: Opening the TCP Stream&lt;/p&gt;&#xA;&lt;p&gt;While there’s a lot of data to sift through, we can work a little smarter by using the find box to search for the common Windows drive letter &lt;code&gt;C:\&lt;/code&gt;. This quickly reveals a file path.&lt;/p&gt;&#xA;&lt;p&gt;Looking just next to that path, we’ll also spot a second &lt;code&gt;.exe&lt;/code&gt; file. Since the question specifies that both files are saved in the same directory as the downloaded file, we can reasonably conclude these are the two files we’re after.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c1d7be64303154c997b8c60b175be574_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;323px&#34; data-flex-grow=&#34;134&#34; height=&#34;593&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/c1d7be64303154c997b8c60b175be574_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wireshark: Identifying&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;29d7d52d508f9a7b6f759cc98cf52425_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2258px&#34; data-flex-grow=&#34;941&#34; height=&#34;85&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/29d7d52d508f9a7b6f759cc98cf52425_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-11-now-do-the-same-and-inspect-the-traffic-from-the-second-downloaded-file-two-files-will-be-saved-to-the-same-directory-what-is-the-full-file-path-of-the-directory-and-the-name-of-the-two-files-format-cpathfilexyzcpathfilexyz&#34;&gt;Question 11: Now do the same and inspect the traffic from the second downloaded file. Two files will be saved to the same directory. What is the full file path of the directory and the name of the two files? (&lt;strong&gt;format: C:\path\file.xyz,C:\path\file.xyz&lt;/strong&gt;)&#xA;&lt;/h3&gt;&lt;p&gt;For our last task, we’ll repeat the same process, this time inspecting the TCP stream for the MSI file downloaded from the &lt;em&gt;second&lt;/em&gt; IP address we identified in &lt;strong&gt;Question 9&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Start by using &lt;em&gt;Brim&lt;/em&gt; to search for the second file name. Once you have the result, click the &lt;em&gt;Packets&lt;/em&gt; button to open the capture in &lt;em&gt;Wireshark&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;df90ca19459bd40a3ebca90d38ceb5e6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;690px&#34; data-flex-grow=&#34;287&#34; height=&#34;278&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/df90ca19459bd40a3ebca90d38ceb5e6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Brim: Searching the 2nd MSI file name&lt;/p&gt;&#xA;&lt;p&gt;As before, right-click the first packet in the list and select &lt;em&gt;Follow &amp;gt; TCP Stream&lt;/em&gt; to view the assembled data.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e51623db3ebe71fe8c337103a1c9972f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;984px&#34; data-flex-grow=&#34;410&#34; height=&#34;195&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/e51623db3ebe71fe8c337103a1c9972f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wireshark: Opening the TCP Stream&lt;/p&gt;&#xA;&lt;p&gt;With the stream open, use the find box to search for the &lt;code&gt;C:\&lt;/code&gt; drive letter again. This will help us quickly identify the full file path and the names of the two additional files stored in the same directory.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;037ed4b860e9438f223ca04d07e742b3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;323px&#34; data-flex-grow=&#34;134&#34; height=&#34;593&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/037ed4b860e9438f223ca04d07e742b3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now that we’ve identified the directories associated with both suspicious downloads, let’s submit our answers and wrap up this challenge!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;39967ad68755b767313a7b60476692db_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2181px&#34; data-flex-grow=&#34;909&#34; height=&#34;88&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/39967ad68755b767313a7b60476692db_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;img alt=&#34;819272e8507a3e4dbb58e2cc6f48bdc6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;425px&#34; data-flex-grow=&#34;177&#34; height=&#34;451&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/819272e8507a3e4dbb58e2cc6f48bdc6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Done and done! By analyzing the PCAP file containing the suspicious network traffic using &lt;em&gt;Brim&lt;/em&gt; and &lt;em&gt;Wireshark&lt;/em&gt;, and enriching our findings with &lt;em&gt;VirusTotal&lt;/em&gt;, we successfully identified several malicious IP addresses associated with a threat actor. Then we determined what files were downloaded from the malicious infrastructure and where they were saved on disk. Putting all of the evidence together, we can confirm the alert as a true positive and move on to the containment phase.&lt;/p&gt;&#xA;&lt;p&gt;Now that we’ve uncovered the nature of the alert and completed our objectives, let’s close out this walkthrough of &lt;strong&gt;Warzone 1&lt;/strong&gt;!&lt;/p&gt;&#xA;&lt;p&gt;A big thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for another thrilling and realistic challenge. I chose this weekly challenge to spend more hands-on time with &lt;em&gt;Brim/ZUI&lt;/em&gt; and the awesome Suricata rules built in. While &lt;em&gt;Brim/ZUI&lt;/em&gt; doesn’t quite have the ubiquity of &lt;em&gt;Wireshark&lt;/em&gt;, it’s an extremely impressive tool that’s beneficial to learn and get some practice with. In the real world, I’ve used this tool numerous times to visualize data in a PCAP and uncover information that was time-consuming and difficult to find using other tools — it’s worth keeping in the kit. Awesome stuff!&lt;/p&gt;&#xA;&lt;p&gt;Thanks for your support and partnering on this investigation. If you found this walkthrough helpful, don’t forget to &lt;strong&gt;give it a clap&lt;/strong&gt;! Your feedback really is invaluable, and it pumps me up to support your security journey. Remember, Cybersecurity is a team sport and we’re in this together!&lt;/p&gt;&#xA;&lt;p&gt;If you liked this challenge and want to take on the second challenge, &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/warzonetwo&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Warzone 2&lt;/strong&gt;&lt;/a&gt;, I’ve got you covered with another walkthrough if you want to continue our investigation together.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-warzone-2-room-walkthrough/&#34; &gt;&lt;strong&gt;TryHackMe | Warzone 2 | Room Walkthrough&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Until next week’s challenge — stay curious and be safe out there!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;07670987b1c64247f60a1576b9626235_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;250&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-warzone-1-room-walkthrough/07670987b1c64247f60a1576b9626235_MD5.png&#34; width=&#34;250&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/warzoneone&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/warzoneone&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Wireshark:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.wireshark.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.wireshark.org/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Brim/ZUI:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://zui.brimdata.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://zui.brimdata.io/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Brim Data — &lt;em&gt;“We’re renaming Brim to Zui”:&lt;/em&gt;&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.brimdata.io/blog/brim-app-will-be-zui/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.brimdata.io/blog/brim-app-will-be-zui/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;ZUI Docs — “&lt;em&gt;Packet Captures”:&lt;/em&gt;&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://zui.brimdata.io/docs/features/Packet-Captures#local-suricata-rules-folder&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://zui.brimdata.io/docs/features/Packet-Captures#local-suricata-rules-folder&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;CyberChef:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://gchq.github.io/CyberChef/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal — Malicious Destination IP:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/ip-address/169.239.128.11&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/ip-address/169.239.128.11&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — TA505 (GA0092):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/groups/G0092/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/groups/G0092/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal — Additional Malicious IP 1/2:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/ip-address/185.10.68.235/community&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/ip-address/185.10.68.235/community&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal — Additional Malicious IP 2/2:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/ip-address/192.36.27.92/community&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/ip-address/192.36.27.92/community&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Investigating Windows Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/</link>
            <pubDate>Sun, 30 Mar 2025 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/30c68864a88586684d8601e229909247_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Investigating Windows Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmeinvestigating-windows-challenge-walkthrough&#34;&gt;TryHackMe — Investigating Windows Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;a-windows-endpoint-forensic-investigation-using-event-viewer-powershell-and-virustotal&#34;&gt;A Windows endpoint forensic investigation using Event Viewer, PowerShell, and VirusTotal&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;30c68864a88586684d8601e229909247_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;400&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/30c68864a88586684d8601e229909247_MD5.png&#34; width=&#34;400&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/investigatingwindows&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/investigatingwindows&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;If you’ve stumbled across this blog searching for a comprehensive walkthrough of the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/investigatingwindows&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Investigating Windows&lt;/strong&gt;&lt;/a&gt; challenge from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;, you’re in the right place. &lt;strong&gt;Welcome to my weekly walkthrough!&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/investigatingwindows&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Investigating Windows&lt;/strong&gt;&lt;/a&gt; is the first in a series of rooms within TryHackMe’s &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/module/investigations&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Investigating Windows module&lt;/a&gt;, and completing all three earns you a fancy badge on the platform. In the spirit of learning, this walk through will avoid spoilers. Since this is a &lt;em&gt;FREE&lt;/em&gt; room, anyone can test their skills with &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/investigatingwindows&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Investigating Windows&lt;/strong&gt;&lt;/a&gt;, perform the investigation along with me, and find the answers on their own as an entry point to Windows forensics.&lt;/p&gt;&#xA;&lt;p&gt;In this scenario, we’re turned loose to investigate a compromised Windows endpoint and need to sleuth out how the attack unfolded. The tricky part? We’ll have no tools available to us, so we’ll hunt for the artifacts manually using the Windows Event Logs, Task Scheduler, Registry, and File Explorer. This is a great “back to basics” jumping-off point into digital forensics and incident response (DFIR) in the Windows world, with something interesting for all skill levels.&lt;/p&gt;&#xA;&lt;p&gt;As we collect evidence, we’ll enrich our findings using &lt;strong&gt;MITRE ATT&amp;amp;CK, Microsoft Learn,&lt;/strong&gt; and &lt;strong&gt;VirusTotal&lt;/strong&gt; to add additional context and learn more about the attacker’s tactics and techniques. Sounds like fun, right? Let’s get into it!&lt;/p&gt;&#xA;&lt;p&gt;And if you find this walkthrough helpful — whether it levels-up your skills, gets you over a stumbling block, or serves as a handy reference — please give it a clap and consider following me for more content like this.&lt;/p&gt;&#xA;&lt;p&gt;Thanks for reading and going on this investigation with me!&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;A windows machine has been hacked, its your job to go investigate this windows machine and find clues to what the hacker might have done.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;This is a challenge that is exactly what is says on the tin, there are a few challenges around investigating a windows machine that has been previously compromised.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;question-1-whats-the-version-and-year-of-the-windowsmachine&#34;&gt;Question 1: Whats the version and year of the windows machine?&#xA;&lt;/h3&gt;&lt;p&gt;To kick off our investigation, we need to identify the operating system details of the compromised device. Specifically, we need to determine the Windows version. One approach is to use the &lt;code&gt;winver&lt;/code&gt; command. This can be executed from the “Run” box, or the Command Prompt.&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Using the Run dialog box:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Press &lt;code&gt;Win + R&lt;/code&gt; to open the Run dialog box.&lt;/li&gt;&#xA;&lt;li&gt;Type &lt;code&gt;winver&lt;/code&gt; and press &lt;code&gt;Enter&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Using the Command Prompt:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Open the Command Prompt by typing &lt;code&gt;cmd&lt;/code&gt; in the search bar and pressing &lt;code&gt;Enter&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;li&gt;Type &lt;code&gt;winver&lt;/code&gt; and press &lt;code&gt;Enter&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;The resulting output will display the below information, where we can collect the Windows version information for the environment.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;98835ddec28b08e675c94530f6dfb092_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;270px&#34; data-flex-grow=&#34;112&#34; height=&#34;405&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/98835ddec28b08e675c94530f6dfb092_MD5.png&#34; width=&#34;457&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Winver Output&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9bddd7171cd6459de9c0fd3adab87284_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1939px&#34; data-flex-grow=&#34;808&#34; height=&#34;99&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/9bddd7171cd6459de9c0fd3adab87284_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-which-user-logged-inlast&#34;&gt;Question 2: Which user logged in last?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we’ve identified the operating system version, we need to audit the logon activity for the system. For this walkthrough, we’ll use the &lt;strong&gt;Windows Event Log&lt;/strong&gt; to query successful logon events, specifically filtering &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4624&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Event ID&lt;/strong&gt;&lt;/a&gt; &lt;strong&gt;4624 — “An account was successfully logged on.”&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;To do this:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Open Event Viewer:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Press the Windows Start button and type “Event Viewer.”&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;ol start=&#34;2&#34;&gt;&#xA;&lt;li&gt;Navigate to Security Logs:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;In the Event Viewer, expand “Windows Logs” and select “Security”.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;ol start=&#34;3&#34;&gt;&#xA;&lt;li&gt;Filter for Logon Events:&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;In the “Actions” pane on the right, click “Filter Current Log”.&lt;/li&gt;&#xA;&lt;li&gt;In the “Event IDs” field, enter “4624&amp;quot; and click &amp;ldquo;OK&amp;rdquo;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d6350e6c62745017bb376b48343e9c80_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;556px&#34; data-flex-grow=&#34;231&#34; height=&#34;345&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/d6350e6c62745017bb376b48343e9c80_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Filtering the Security Log for Event ID 4624&lt;/p&gt;&#xA;&lt;p&gt;Now, the filtered log will display all successful logon events (Event ID 4624). Since the log is also capturing our &lt;code&gt;Administrator&lt;/code&gt; login activity, scroll past the events for the current date to the previously logged date, &lt;em&gt;1/29/2021,&lt;/em&gt; to find the user logon activity before our session.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1b657ac5f21c3f08df360e6e122b3e52_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;574px&#34; data-flex-grow=&#34;239&#34; height=&#34;334&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/1b657ac5f21c3f08df360e6e122b3e52_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Identifying the last user logon session&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e5eabda9923b68b5324c82f07c811244_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1959px&#34; data-flex-grow=&#34;816&#34; height=&#34;98&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/e5eabda9923b68b5324c82f07c811244_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-when-did-john-log-onto-the-systemlast&#34;&gt;Question 3: When did John log onto the system last?&#xA;&lt;/h3&gt;&lt;p&gt;Continuing to use our current filtering, we’ll use the “Find” function to locate the username &lt;code&gt;John&lt;/code&gt; within the logs and determine the last date this user logged in to the system.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a658768af3312a3df15906dbd4d138f7_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;559px&#34; data-flex-grow=&#34;233&#34; height=&#34;343&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/a658768af3312a3df15906dbd4d138f7_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Identifying logon activity for the user John&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b6f00f2a17f182497386e03ea59ce6f4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1560px&#34; data-flex-grow=&#34;650&#34; height=&#34;123&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/b6f00f2a17f182497386e03ea59ce6f4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-what-ip-does-the-system-connect-to-when-it-firststarts&#34;&gt;Question 4: What IP does the system connect to when it first starts?&#xA;&lt;/h3&gt;&lt;p&gt;Now, let’s pivot away from the Windows Event Log and start to look for common persistence methods used by threat actors. The key to answering &lt;strong&gt;Question 4&lt;/strong&gt; is finding the IP address that the system connects to after it &lt;strong&gt;first starts.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;With that in mind, we’ll check the Windows Registry Run Keys / Startup Folder (&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1547/001/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;MITRE ATT&amp;amp;CK ID T1547.001&lt;/a&gt;). These methods allow a binary to execute on user login, creating persistence for the adversary.&lt;/p&gt;&#xA;&lt;p&gt;According to MITRE ATT&amp;amp;CK, the relevant run keys can be found in the following locations:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;First, launch the &lt;strong&gt;Registry Editor&lt;/strong&gt;:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7a0f92822f7d11a0cfbeea88385d7094_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;140px&#34; data-flex-grow=&#34;58&#34; height=&#34;513&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/7a0f92822f7d11a0cfbeea88385d7094_MD5.png&#34; width=&#34;300&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Then, navigate to the keys referenced by MITRE ATT&amp;amp;CK. While examining &lt;code&gt;HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run&lt;/code&gt;, you may notice the string &lt;code&gt;UpdateSvc&lt;/code&gt;. This string indicates a suspicious command connecting to an additional IP address.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;205a75fde6b6d8f574d451d8c44b85f7_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;556px&#34; data-flex-grow=&#34;231&#34; height=&#34;345&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/205a75fde6b6d8f574d451d8c44b85f7_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Identifying a suspicious run key in the registry&lt;/p&gt;&#xA;&lt;p&gt;By analyzing these often-abused registry keys, we’ve found a method of persistence used by the threat actor and an IP address, or indicator of compromise (IOC).&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1c9e367fea030450d5d210213f62c32c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2021px&#34; data-flex-grow=&#34;842&#34; height=&#34;95&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/1c9e367fea030450d5d210213f62c32c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-two-accounts-had-administrative-privileges-other-than-the-administrator-user&#34;&gt;Question 5: What two accounts had administrative privileges (other than the Administrator user)?&#xA;&lt;/h3&gt;&lt;p&gt;Next, we’ll need to determine which other accounts have local administrative permission on the system. To find out, we’ll query the local administrators group with &lt;strong&gt;PowerShell&lt;/strong&gt; by executing the command below.&lt;/p&gt;&#xA;&lt;p&gt;net localgroup administrators&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6d6635a3d4e5f38a5be76bfef4a61250_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;680px&#34; data-flex-grow=&#34;283&#34; height=&#34;282&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/6d6635a3d4e5f38a5be76bfef4a61250_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;After running the command, we’ll discover that three accounts are members of this group including the &lt;code&gt;Administrator&lt;/code&gt; account that we’re using.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3c037ca6e1768933bff4d8c167ee7a98_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1523px&#34; data-flex-grow=&#34;634&#34; height=&#34;126&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/3c037ca6e1768933bff4d8c167ee7a98_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-78&#34;&gt;Question 6, 7, 8:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;whats-the-name-of-the-scheduled-task-that-is-malicious&#34;&gt;Whats the name of the scheduled task that is malicious.&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-file-was-the-task-trying-to-rundaily&#34;&gt;What file was the task trying to run daily?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-port-did-this-file-listen-locallyfor&#34;&gt;What port did this file listen locally for?&#xA;&lt;/h4&gt;&lt;p&gt;The next step in our investigation is to search for a malicious &lt;strong&gt;scheduled task.&lt;/strong&gt; By abusing the Windows Task Scheduler, a threat actor could create persistence by setting a malicious file to run at a specific time (&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1053/005/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;T1053.005&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;For this walkthrough, we’ll search for the malicious task using the command line tool &lt;code&gt;schtasks&lt;/code&gt;, but the GUI Task Scheduler will work just as well if you prefer to explore it.&lt;/p&gt;&#xA;&lt;p&gt;From PowerShell, use the &lt;code&gt;[schtasks](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/schtasks)&lt;/code&gt; command to query the task scheduler library. We’ll see a couple of suspicious entries listed.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e9696331f10a91a11f911874c1139b70_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;681px&#34; data-flex-grow=&#34;283&#34; height=&#34;205&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/e9696331f10a91a11f911874c1139b70_MD5.png&#34; width=&#34;582&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Using schtasks to list tasks&lt;/p&gt;&#xA;&lt;p&gt;To get more information about each task, use the following syntax:&lt;/p&gt;&#xA;&lt;p&gt;schtasks /query /FO LIST /V /TN &amp;ldquo;&lt;TASK NAME&gt;&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Several tasks may look suspicious. For example, check the &lt;code&gt;Clean file system&lt;/code&gt; task. Notice that its action is launch a PowerShell (.ps1) script, scheduled to run daily.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b91953bdac1ce688e5d0118e9d3fc9a5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;400px&#34; data-flex-grow=&#34;166&#34; height=&#34;426&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/b91953bdac1ce688e5d0118e9d3fc9a5_MD5.png&#34; width=&#34;711&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Using schtasks to query a task&lt;/p&gt;&#xA;&lt;p&gt;Since we’re searching for a persistence technique and this specific task launches a file with a listening port, it matches the criteria of &lt;strong&gt;Questions 6,7, &amp;amp; 8.&lt;/strong&gt; This is the malicious task we are searching for.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6aabdbe7923ca023ffe77e50fca70ea1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;685px&#34; data-flex-grow=&#34;285&#34; height=&#34;280&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/6aabdbe7923ca023ffe77e50fca70ea1_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-9-when-did-jenny-lastlogon&#34;&gt;Question 9: When did Jenny last logon?&#xA;&lt;/h3&gt;&lt;p&gt;Now let’s return to gathering information about the other users on the system. We’ll pivot back to our PowerShell console to do this. Instead of querying a group like we did back in &lt;strong&gt;Question 5&lt;/strong&gt;, we’ll query the &lt;code&gt;Jenny&lt;/code&gt; user account directly to find the &lt;code&gt;Last logon&lt;/code&gt; field.&lt;/p&gt;&#xA;&lt;p&gt;To query the last logon time for &lt;code&gt;Jenny&lt;/code&gt;, use the following command:&lt;/p&gt;&#xA;&lt;p&gt;net user jenny&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4838182178257e6fbdc4dd7c3883a13d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;324px&#34; data-flex-grow=&#34;135&#34; height=&#34;390&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/4838182178257e6fbdc4dd7c3883a13d_MD5.png&#34; width=&#34;528&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Identifying the “Last logon” for the user Jenny&lt;/p&gt;&#xA;&lt;p&gt;By executing this command, we’ve figured out when &lt;code&gt;Jenny&lt;/code&gt; last logged on to the system — nice!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;68801179c4e2d9b990639c9a5ca346f2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1882px&#34; data-flex-grow=&#34;784&#34; height=&#34;102&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/68801179c4e2d9b990639c9a5ca346f2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-10-at-what-date-did-the-compromise-takeplace&#34;&gt;Question 10: At what date did the compromise take place?&#xA;&lt;/h3&gt;&lt;p&gt;Based on the scheduled task trigger date, we can start to create a rough timeline of when the attack occurred. To take this a step further, let’s closely examine the directory storing the &lt;code&gt;.ps1&lt;/code&gt; file for the malicious task we found in &lt;strong&gt;Question 7&lt;/strong&gt;: &lt;code&gt;C:\TMP&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;Inside this directory, we’ll see a number of suspicious tools. All these files were staged in this folder on a specific date, which helps us pinpoint the date of compromise.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5011b9c7cc52ce7a79d48dc22a9fe43d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;452px&#34; data-flex-grow=&#34;188&#34; height=&#34;424&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/5011b9c7cc52ce7a79d48dc22a9fe43d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This information is crucial for understanding the timeline of the attack and properly scoping our investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1ffc861a04e04902d5b03dcc7d9a2101_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1352px&#34; data-flex-grow=&#34;563&#34; height=&#34;142&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/1ffc861a04e04902d5b03dcc7d9a2101_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-11-during-the-compromise-at-what-time-did-windows-first-assign-special-privileges-to-a-newlogon&#34;&gt;Question 11: During the compromise, at what time did Windows first assign special privileges to a new logon?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we have scoped the date of the attack, we can start to narrow down our searches. To uncover the answer to &lt;strong&gt;Question 11&lt;/strong&gt;, let’s return to the Windows Event Viewer searching for &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4672&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Event ID 4672&lt;/strong&gt;&lt;/a&gt;, or “special privileges assigned to a new logon.”&lt;/p&gt;&#xA;&lt;p&gt;According to &lt;strong&gt;Microsoft Learn&lt;/strong&gt;, this event “&lt;em&gt;generates for new account logons if any of the following sensitive privileges are assigned to the new logon session.&lt;/em&gt;”&lt;/p&gt;&#xA;&lt;p&gt;To find these events, perform the following steps in the Event Viewer:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Select “Windows Logs” &amp;gt; “Security”.&lt;/li&gt;&#xA;&lt;li&gt;Press “Filter Current Log…” in the right column.&lt;/li&gt;&#xA;&lt;li&gt;Click the drop-down menu for “Logged” and select “Custom Range”.&lt;/li&gt;&#xA;&lt;li&gt;In the “From” and “To” boxes, select “Events On” and select the date of the attack. Use the time ranges from &lt;em&gt;12:00:00 AM&lt;/em&gt; to &lt;em&gt;11:59:00 PM&lt;/em&gt; to display all events for the date, then press OK.&lt;/li&gt;&#xA;&lt;li&gt;Type “4672&amp;quot; in the Event ID field, then press OK.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;49fb252a5931f96b8f0e9578de7d7d5a_MD5.gif&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;248px&#34; data-flex-grow=&#34;103&#34; height=&#34;1847&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/49fb252a5931f96b8f0e9578de7d7d5a_MD5.gif&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/49fb252a5931f96b8f0e9578de7d7d5a_MD5_hu_c42ff3e4dfbe383d.gif 800w, https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/49fb252a5931f96b8f0e9578de7d7d5a_MD5_hu_46ddf46edd92ce15.gif 1600w, https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/49fb252a5931f96b8f0e9578de7d7d5a_MD5.gif 1910w&#34; width=&#34;1910&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Filtering the Event Viewer for Event ID 4672 on the date of the attack&lt;/p&gt;&#xA;&lt;p&gt;Based on the question, your immediate instinct might be to look at the first event in the list, but &lt;em&gt;spoiler&lt;/em&gt; that is incorrect. Let’s take a quick look at the question hint to narrow this down a bit.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0b8428ba244415136a55ba1294c65a39_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;560px&#34; data-flex-grow=&#34;233&#34; height=&#34;110&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/0b8428ba244415136a55ba1294c65a39_MD5.png&#34; width=&#34;257&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Armed with the clue, we can now locate the correct event and corresponding time stamp, determining when Windows first assigned special privileges to a new logon during the compromise.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0024f2c56b1a9fe191a3829b79dba2c2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;387px&#34; data-flex-grow=&#34;161&#34; height=&#34;496&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/0024f2c56b1a9fe191a3829b79dba2c2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b92b2d9ae49adf45ea3e98b361f0ad86_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1939px&#34; data-flex-grow=&#34;808&#34; height=&#34;99&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/b92b2d9ae49adf45ea3e98b361f0ad86_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-12-what-tool-was-used-to-get-windows-passwords&#34;&gt;Question 12: What tool was used to get Windows passwords?&#xA;&lt;/h3&gt;&lt;p&gt;You may have noticed throughout our investigation that a command prompt window keeps popping up randomly, right? You may have also seen another suspicious task in Task Scheduler or an alarming executable in the staging folder &lt;code&gt;C:\TMP&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;If not, let’s take a closer look at the window where we’ll observe a familiar file path: &lt;code&gt;C:\TMP\mim.exe&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;fb81f2c75d443ed881a555e252668d7f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;454px&#34; data-flex-grow=&#34;189&#34; height=&#34;422&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/fb81f2c75d443ed881a555e252668d7f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;To determine the nature of this file, we can collect the file hash and check it against external threat services. Use the following PowerShell command to gather the file hash:&lt;/p&gt;&#xA;&lt;p&gt;get-filehash C:\TMP\mim.exe&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0ada22a3ad60ad9587e2ab612020d40b_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1156px&#34; data-flex-grow=&#34;481&#34; height=&#34;166&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/0ada22a3ad60ad9587e2ab612020d40b_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Then, we can take this hash and submit it to a service like &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;VirusTotal&lt;/strong&gt;&lt;/a&gt; to evaluate the sample.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;46faccdb94376afd05d974f9b5dc103c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;845px&#34; data-flex-grow=&#34;352&#34; height=&#34;227&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/46faccdb94376afd05d974f9b5dc103c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/f8f1c210a8c863efc0f6b8ac3553030a14a702ce8cf573cb5e9cd58f70c7c622&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/f8f1c210a8c863efc0f6b8ac3553030a14a702ce8cf573cb5e9cd58f70c7c622&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;After confirming that the file is malicious, check the “Family labels” to determine what tool the sample is. If you’d prefer a simpler approach, another option is to open the tool&amp;rsquo;s output text file, &lt;code&gt;mim-out&lt;/code&gt; from the directory. This will reveal which tool created the output and allows us to see what password hashes were exposed.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c10fa11ba77d4065951f728b51062621_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;721px&#34; data-flex-grow=&#34;300&#34; height=&#34;266&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/c10fa11ba77d4065951f728b51062621_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/software/S0002/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;By following these steps, we’ve identified the tool used to dump the Windows credentials and gathered more information about the attack.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6da9007aeeaadb181b71f154cc6a5a55_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/6da9007aeeaadb181b71f154cc6a5a55_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-13-what-was-the-attackers-external-control-and-command-serversip&#34;&gt;Question 13: What was the attackers external control and command servers IP?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we understand what method the attacker used for &lt;strong&gt;credential access,&lt;/strong&gt; we’ll need to learn more about their infrastructure and discover the IP of their command and control server. I’ll admit that I spent far too much time digging through the scripts, event logs, and other artifacts on the system, so I’ll give you the short version of what worked.&lt;/p&gt;&#xA;&lt;p&gt;Since the victim device does not have a live internet connection, we’ll have to rely on artifacts on the system to piece together this information. One place we can check is the Windows &lt;code&gt;hosts&lt;/code&gt; file, which performs manual IP address to hostname mappings, even overriding a DNS server. The file can be located at:&lt;/p&gt;&#xA;&lt;p&gt;C:\Windows\System32\drivers\etc\hosts&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9bdaf95863d3a1d36a8afc08e9850a51_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;267px&#34; data-flex-grow=&#34;111&#34; height=&#34;718&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/9bdaf95863d3a1d36a8afc08e9850a51_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;After examining the &lt;code&gt;hosts&lt;/code&gt; file, we notice some strange entries, indicating that the attacker attempted to prevent the victim’s device from navigating to VirusTotal (whoops!), updating Sophos anti-malware products, and reaching Microsoft Update. Something sticks out here though. Most of these entries are for the local loopback IP address or a private IP address, but two entries are mapped to a public IP address. This anomaly is enough to warrant further investigation.&lt;/p&gt;&#xA;&lt;p&gt;For the purposes of this walkthrough, we’ve found the answer — the public IP addresses in the &lt;code&gt;hosts&lt;/code&gt; file likely belongs to the attacker’s command and control infrastructure.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;90c58e5170be4af69e3253e845a6464f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/90c58e5170be4af69e3253e845a6464f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-14-what-was-the-extension-name-of-the-shell-uploaded-via-the-serverswebsite&#34;&gt;Question 14: What was the extension name of the shell uploaded via the servers website?&#xA;&lt;/h3&gt;&lt;p&gt;To discover the answer to &lt;strong&gt;Question 14&lt;/strong&gt;, let’s focus on a clue in the question itself: “shell uploaded via the servers website.” This tells us that the compromised device is also acting as a web server. In Windows, the &lt;strong&gt;IIS&lt;/strong&gt; service typically stores the web server assets in the folder &lt;code&gt;C:\inetpub\wwwroot&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;By examining this directory on the compromised system, we’ll discover three potentially malicious files.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8ed62c071e996bc255d737512008b004_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1072px&#34; data-flex-grow=&#34;446&#34; height=&#34;179&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/8ed62c071e996bc255d737512008b004_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Capturing the file hashes, we’ll pivot back over to VirusTotal to gather some additional intelligence to determine if we’ve identified &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1505/003/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;WebShells&lt;/strong&gt; (T1505.003)&lt;/a&gt; uploaded by the attacker for persistence.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9b801724f94d78077231b134c41a69dd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;478px&#34; data-flex-grow=&#34;199&#34; height=&#34;401&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/9b801724f94d78077231b134c41a69dd_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7c650709259e6b3a167e19c6cbbb14df_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1254px&#34; data-flex-grow=&#34;522&#34; height=&#34;153&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/7c650709259e6b3a167e19c6cbbb14df_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/322e0bd2c20a01039fc235ba426d9d32b4960655609d0199066f828fb4904be4/detection&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/322e0bd2c20a01039fc235ba426d9d32b4960655609d0199066f828fb4904be4/detection&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1e14ed807bb04151db81a9aee6d3d1a6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1641px&#34; data-flex-grow=&#34;683&#34; height=&#34;117&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/1e14ed807bb04151db81a9aee6d3d1a6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/85053b9b54db5ff616b40521670080139459655ac6162bdb839fcfb9574166ca&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/85053b9b54db5ff616b40521670080139459655ac6162bdb839fcfb9574166ca&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Using VirusTotal, we can analyze the file hashes to confirm if these files are indeed malicious WebShells. The file extension of the shell uploaded via the server’s website will be revealed through this analysis.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;acb48dc3538842e0a78b265d6b386b10_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1900px&#34; data-flex-grow=&#34;792&#34; height=&#34;101&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/acb48dc3538842e0a78b265d6b386b10_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-15-what-was-the-last-port-the-attackeropened&#34;&gt;Question 15: What was the last port the attacker opened?&#xA;&lt;/h3&gt;&lt;p&gt;To determine the last port the attacker opened, we’ll turn our focus to searching for activity related to network ports. Specifically, we’ll assess the &lt;strong&gt;Windows Firewall&lt;/strong&gt; rules to check if the attacker made any modifications to grant access through the firewall.&lt;/p&gt;&#xA;&lt;p&gt;Instead of blindly reviewing the firewall rules, let’s work a little smarter by auditing the event log again to check for any changes during the time of the attack.&lt;/p&gt;&#xA;&lt;p&gt;To find Windows Firewall rule changes in the event log, follow these steps:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Navigate to Event Viewer &amp;gt; Applications and Services Logs &amp;gt; Microsoft &amp;gt; Windows &amp;gt; Windows Firewall with Advanced Security &amp;gt; Firewall.&lt;/li&gt;&#xA;&lt;li&gt;Filter for “Events On” the date of the attack so that we can review the changes.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;While there many events captured, most look benign and expected for a Windows system — except one that sticks out due to the rule name and the user account that modified the rule.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;65c169b1a9c31482dfc14f64ad9433e3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;524px&#34; data-flex-grow=&#34;218&#34; height=&#34;366&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/65c169b1a9c31482dfc14f64ad9433e3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Identifying a new Windows Firewall rule with the Event Viewer&lt;/p&gt;&#xA;&lt;p&gt;Next, let’s locate this rule in &lt;strong&gt;Windows Firewall with Advanced Security&lt;/strong&gt; options by navigating to &lt;strong&gt;Inbound Rules.&lt;/strong&gt; This console can be accessed by pressing the Windows “start” button and typing in “firewall.”&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d35ecabc7d0b308123445f6a05c166b8_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;534px&#34; data-flex-grow=&#34;222&#34; height=&#34;359&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/d35ecabc7d0b308123445f6a05c166b8_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Validating the new firewall rule in the Windows Firewall interface&lt;/p&gt;&#xA;&lt;p&gt;Once we’ve located the rule that we discovered in the event logs, we can check the local port that was opened on the firewall by the attacker and identify the last port they opened.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;847f84d0b0c1e339c541e678382928a1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1920px&#34; data-flex-grow=&#34;800&#34; height=&#34;100&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/847f84d0b0c1e339c541e678382928a1_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-16-check-for-dns-poisoning-what-site-was-targeted&#34;&gt;Question 16: Check for DNS poisoning, what site was targeted?&#xA;&lt;/h3&gt;&lt;p&gt;We’ve made it to the last question for our investigation — great job! Fortunately, we’ve already stumbled across the answer for &lt;strong&gt;Question 16&lt;/strong&gt; during our analysis of the hosts file back in &lt;strong&gt;Question 13&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The answer we’re looking for is the host name entry associated with the command and control IP address we discovered. This entry indicates the site targeted by DNS poisoning.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9bdaf95863d3a1d36a8afc08e9850a51_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;267px&#34; data-flex-grow=&#34;111&#34; height=&#34;718&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/9bdaf95863d3a1d36a8afc08e9850a51_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;By reviewing the &lt;code&gt;hosts&lt;/code&gt; file again, we can confirm the targeted site and understand how the attacker manipulated DNS settings to redirect traffic to their command and control server. Now let’s wrap up this investigation!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;842b547e28e70e864874ce62deb97cbb_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2086px&#34; data-flex-grow=&#34;869&#34; height=&#34;92&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/842b547e28e70e864874ce62deb97cbb_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;Mission accomplished! Throughout this investigation, we combed through the Windows Event Logs to determine what users accessed the system and correlated event data during the timeframe of the attack. Using Registry Editor and Task Scheduler, we discovered the attacker’s methods of persistence and found evidence of payloads executing on logon and at scheduled intervals. Finally, we uncovered further evidence of the attack in the Windows Hosts File and File Explorer which we enriched using threat intelligence from VirusTotal.&lt;/p&gt;&#xA;&lt;p&gt;Now that we have scoped the attack and completed our objectives, let’s close out this walkthrough of the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/investigatingwindows&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Investigating Windows&lt;/strong&gt;&lt;/a&gt;!&lt;/p&gt;&#xA;&lt;p&gt;A big thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;, for the fun and realistic challenge! This was an excellent opportunity for me to practice hands-on-keyboard analysis of a Windows environment to manually perform the investigation. It was a great lesson in the fundamentals of DFIR and promoted a creative analysis of the available artifacts to discover the answers to the questions. Awesome stuff!&lt;/p&gt;&#xA;&lt;p&gt;Thanks for your support and partnering on this investigation. If you found this walkthrough helpful, don’t forget to &lt;strong&gt;give it a clap&lt;/strong&gt;! Your feedback really is invaluable and it pumps me up to support your security journey. Cybersecurity is a team sport and we’re in this together!&lt;/p&gt;&#xA;&lt;p&gt;Until next week’s challenge — stay curious and be safe out there!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;07670987b1c64247f60a1576b9626235_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;250&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-investigating-windows-challenge-walkthrough/07670987b1c64247f60a1576b9626235_MD5.png&#34; width=&#34;250&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;-Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/investigatingwindows&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/investigatingwindows&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;-MITRE ATT&amp;amp;CK — Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder (T1547.001):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1547/001/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1105/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;-MITRE ATT&amp;amp;CK — Scheduled Task/Job: Scheduled Task (T1053.005):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1053/005/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1053/005/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;-Microsoft Learn — schtasks commands:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/schtasks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/schtasks&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;-Microsoft Learn — 4624(S): An account was successfully logged on:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4624&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4624&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;-VirusTotal — f8f1c210a8c863efc0f6b8ac3553030a14a702ce8cf573cb5e9cd58f70c7c622:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/f8f1c210a8c863efc0f6b8ac3553030a14a702ce8cf573cb5e9cd58f70c7c622&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/f8f1c210a8c863efc0f6b8ac3553030a14a702ce8cf573cb5e9cd58f70c7c622&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;-MITRE ATT&amp;amp;CK — Mimikatz (S0002):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/software/S0002/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;-MITRE ATT&amp;amp;CK — Server Software Component: Web Shell (T1505.003):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1505/003/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1505/003/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;-VirusTotal — 322e0bd2c20a01039fc235ba426d9d32b4960655609d0199066f828fb4904be:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/322e0bd2c20a01039fc235ba426d9d32b4960655609d0199066f828fb4904be4&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/322e0bd2c20a01039fc235ba426d9d32b4960655609d0199066f828fb4904be4&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;-VirusTotal — 85053b9b54db5ff616b40521670080139459655ac6162bdb839fcfb9574166ca:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/85053b9b54db5ff616b40521670080139459655ac6162bdb839fcfb9574166ca&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/85053b9b54db5ff616b40521670080139459655ac6162bdb839fcfb9574166ca&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Boogeyman 3 Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/</link>
            <pubDate>Mon, 06 Jan 2025 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/e114acf88621796ddca1c9ca24721f93_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Boogeyman 3 Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmeboogeyman-3-challenge-walkthrough&#34;&gt;TryHackMe — Boogeyman 3 Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;a-domain-forensic-investigation-usingkibana&#34;&gt;A Domain Forensic Investigation using Kibana&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;e114acf88621796ddca1c9ca24721f93_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;374px&#34; data-flex-grow=&#34;155&#34; height=&#34;513&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/e114acf88621796ddca1c9ca24721f93_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/boogeyman3&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Have you feared the return of the &lt;em&gt;Boogeyman&lt;/em&gt;?&lt;/p&gt;&#xA;&lt;p&gt;If not, you’ve stumbled on the right blog! Welcome to my weekly walkthrough. This is a comprehensive walkthrough of the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Boogeyman 3&lt;/strong&gt;&lt;/a&gt; challenge from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;, the third in a series of capstone challenges for their SOC Level 1 learning path. This challenge is a &lt;strong&gt;digital forensics and incident response (&lt;em&gt;DFIR&lt;/em&gt;)&lt;/strong&gt; engagement for the final showdown with a fictional threat actor called the &lt;em&gt;Boogeyman.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you want to catch up on how we got here, check out my walkthroughs of &lt;a class=&#34;link&#34; href=&#34;https://stumblesec.medium.com/tryhackme-boogeyman-1-challenge-walkthrough-23e927086317&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Boogeyman 1&lt;/strong&gt;&lt;/a&gt; &lt;strong&gt;&amp;amp;&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://stumblesec.medium.com/tryhackme-boogeyman-2-challenge-walkthrough-07c3d8fa4aa0&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Boogeyman 2&lt;/strong&gt;&lt;/a&gt; first.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/&#34; &gt;&lt;strong&gt;TryHackMe — Boogeyman 1 Challenge Walkthrough&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/&#34; &gt;&lt;strong&gt;TryHackMe — Boogeyman 2 Challenge Walkthrough&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;To unmask the &lt;em&gt;Boogeyman&lt;/em&gt; this time_,_ we’re all about hunting through logs within &lt;em&gt;Kibana,&lt;/em&gt; part of the &lt;em&gt;Elastic Stack,&lt;/em&gt; to figure out how the latest attack unfolded against an organization compromised by this persistent, shadowy threat actor. Doesn’t sound so scary, right?&lt;/p&gt;&#xA;&lt;p&gt;Now let’s grab our flashlights and shine a light on the &lt;em&gt;Boogeyman’s&lt;/em&gt; latest tactics, techniques, and procedures. I don’t want to ruin any of the surprises, so this walkthrough is spoiler-free, but please use it as a reference and enjoy! Thanks for reading along!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/boogeyman3&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;&lt;em&gt;Due to the previous attacks of Boogeyman, Quick Logistics LLC hired a managed security service provider to handle its Security Operations Center. Little did they know, the Boogeyman was still lurking and waiting for the right moment to return.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;In this room, you will be tasked to analyse the new tactics, techniques, and procedures (TTPs) of the threat group named Boogeyman.&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;Without tripping any security defences of Quick Logistics LLC, the Boogeyman was able to compromise one of the employees and stayed in the dark, waiting for the right moment to continue the attack. Using this initial email access, the threat actors attempted to expand the impact by targeting the CEO, Evan Hutchinson.&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;question-1-what-is-the-pid-of-the-process-that-executed-the-initial-stage-1payload&#34;&gt;Question 1: What is the PID of the process that executed the initial stage 1 payload?&#xA;&lt;/h3&gt;&lt;p&gt;First things first. After starting the lab environment, enter the &lt;em&gt;Elastic&lt;/em&gt; web console and navigate to the &lt;em&gt;Analytics&lt;/em&gt; &amp;gt; &lt;em&gt;Discover&lt;/em&gt; module. This dashboard is where we’ll be exploring the logs within the &lt;code&gt;winlogbeat&lt;/code&gt; index_._&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b912b3faafc86cc29e84acb0810df5dc_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;328px&#34; data-flex-grow=&#34;136&#34; height=&#34;584&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/b912b3faafc86cc29e84acb0810df5dc_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once we get into our dashboard, we’ll have to adjust the time filters to view the logged events during the time of the incident. Fortunately, the security team reported to us that “&lt;em&gt;the incident occurred between&lt;/em&gt; &lt;strong&gt;&lt;em&gt;August 29 and August 30, 2023&lt;/em&gt;&lt;/strong&gt;” so we can narrow the scope by modifying the dates in the time selection field.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3ebaad8e27ab71f313874b313d50338d_MD5.gif&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;407px&#34; data-flex-grow=&#34;169&#34; height=&#34;1124&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/3ebaad8e27ab71f313874b313d50338d_MD5.gif&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/3ebaad8e27ab71f313874b313d50338d_MD5_hu_b6b0b4a94e22973a.gif 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/3ebaad8e27ab71f313874b313d50338d_MD5_hu_75531342c926add4.gif 1600w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/3ebaad8e27ab71f313874b313d50338d_MD5.gif 1908w&#34; width=&#34;1908&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;We’ll filter the first date/time, selecting &lt;strong&gt;Absolute&lt;/strong&gt; and setting the start date to &lt;em&gt;August 29th, 2023,&lt;/em&gt; at &lt;em&gt;0:00&lt;/em&gt; and the end date of &lt;em&gt;August 30th, 2023,&lt;/em&gt; at &lt;em&gt;23:30&lt;/em&gt;. This selection gives us all the logs ingested during the incident.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5d191b354322e7536d37f550d9b686a6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;741px&#34; data-flex-grow=&#34;308&#34; height=&#34;259&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/5d191b354322e7536d37f550d9b686a6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now that we have the time period set, where do we start? Well, remember from the scenario that the initial access method was a spear phishing email that had an attachment executed by the CEO, Evan Hutchinson. The security team discovered that the attachment was an &lt;strong&gt;ISO&lt;/strong&gt; file containing a “PDF” file — &lt;strong&gt;ProjectFinancialSummary_Q3.pdf.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;We saw from the triage that &lt;strong&gt;Windows Explorer&lt;/strong&gt; displayed this is an &lt;strong&gt;HTML application (HTA)&lt;/strong&gt;, not a &lt;strong&gt;PDF&lt;/strong&gt;. So, we’re potentially looking for malicious &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1218/005/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Mshta&lt;/strong&gt;&lt;/a&gt; code execution activity. But let’s start broadly and simply search for the file name by entering it into the search bar at the top of the window.&lt;/p&gt;&#xA;&lt;p&gt;This will produce 4 events for us to review. Let’s start with the first event with the oldest time stamp. As we suspected, we see our parent file spawning &lt;strong&gt;mshta.exe&lt;/strong&gt; to handle the file along with the corresponding &lt;code&gt;ProcessId&lt;/code&gt; that we’ll need to answer &lt;strong&gt;Question 1.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;704c4d70e5c721dfc3469ea4727bcd05_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;288px&#34; data-flex-grow=&#34;120&#34; height=&#34;998&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/704c4d70e5c721dfc3469ea4727bcd05_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/704c4d70e5c721dfc3469ea4727bcd05_MD5_hu_1732de7c532ae714.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/704c4d70e5c721dfc3469ea4727bcd05_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Before we submit our answer, note the hostname, host IP address, and username of the CEO’s compromised workstation. This will help us stay organized as we follow the attack.&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;WKSTN-0051&lt;/code&gt; / &lt;code&gt;10.10.155.159&lt;/code&gt; / &lt;code&gt;evan.hutchinson&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ecc63140910c05811f68554f6e008d2c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2526px&#34; data-flex-grow=&#34;1052&#34; height=&#34;76&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/ecc63140910c05811f68554f6e008d2c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-the-stage-1-payload-attempted-to-implant-a-file-to-another-location-what-is-the-full-command-line-value-of-this-execution&#34;&gt;Question 2: The stage 1 payload attempted to implant a file to another location. What is the full command-line value of this execution?&#xA;&lt;/h3&gt;&lt;p&gt;Now, let’s focus on the next event in the list. We see evidence of &lt;code&gt;[xcopy](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/xcopy)&lt;/code&gt; activity which can be used to move files around the system.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8a8605cea112e1c2ffbe159155dd56de_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;741px&#34; data-flex-grow=&#34;308&#34; height=&#34;259&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/8a8605cea112e1c2ffbe159155dd56de_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Since we’re interested in the full command to understand what file was copied and to which destination, let’s make some adjustments to our dashboard and toggle some columns within our table instead of expanding the event. This will allow us to see the full &lt;code&gt;process.command_line&lt;/code&gt; field easily and have a cleaner view moving forward.&lt;/p&gt;&#xA;&lt;p&gt;To do this, search the &lt;strong&gt;Available fields column&lt;/strong&gt; on the left-hand side and press the &lt;strong&gt;+&lt;/strong&gt; button to add the &lt;code&gt;process.command_line&lt;/code&gt; field as a column.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;00d17fdffa38e384c66737b10c4b9078_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;693px&#34; data-flex-grow=&#34;288&#34; height=&#34;277&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/00d17fdffa38e384c66737b10c4b9078_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;You’ll notice in the screenshots below that I also added the &lt;code&gt;process.parent.executable&lt;/code&gt; and &lt;code&gt;host.hostname&lt;/code&gt; fields as columns too, making it far easier to see the sequence of events at a glance.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8382d1b365eb33bb6772062c808e431a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;844px&#34; data-flex-grow=&#34;351&#34; height=&#34;341&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/8382d1b365eb33bb6772062c808e431a_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/8382d1b365eb33bb6772062c808e431a_MD5_hu_36ca2db14c008d48.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/8382d1b365eb33bb6772062c808e431a_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now, revisiting the second event with this view, we’ll see the full command-line value for the &lt;code&gt;[xcopy](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/xcopy)&lt;/code&gt; activity, revealing that the attacker moved a file from the &lt;strong&gt;ISO&lt;/strong&gt; to a temporary directory on &lt;code&gt;WKSTN-0051&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1fd84243d28021a23e7a602e11e29857_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2526px&#34; data-flex-grow=&#34;1052&#34; height=&#34;76&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/1fd84243d28021a23e7a602e11e29857_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-the-implanted-file-was-eventually-used-and-executed-by-the-stage-1-payload-what-is-the-full-command-line-value-of-this-execution&#34;&gt;Question 3: The implanted file was eventually used and executed by the stage 1 payload. What is the full command-line value of this execution?&#xA;&lt;/h3&gt;&lt;p&gt;Continuing through the timeline, let’s look at the third event. Analyzing the command line, we see &lt;code&gt;[rundll32](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/rundll32)&lt;/code&gt; executed to register a &lt;strong&gt;DLL&lt;/strong&gt; within the &lt;strong&gt;ISO&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2073622bb62bb4474ea5a9300c33f7ba_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;844px&#34; data-flex-grow=&#34;351&#34; height=&#34;341&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/2073622bb62bb4474ea5a9300c33f7ba_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/2073622bb62bb4474ea5a9300c33f7ba_MD5_hu_5409fe9a0f9c95f4.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/2073622bb62bb4474ea5a9300c33f7ba_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;db50b23a1e7f610226ca3d3b54f1b1d8_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/db50b23a1e7f610226ca3d3b54f1b1d8_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-the-stage-1-payload-established-a-persistence-mechanism-what-is-the-name-of-the-scheduled-task-created-by-the-malicious-script&#34;&gt;Question 4: The stage 1 payload established a persistence mechanism. What is the name of the scheduled task created by the malicious script?&#xA;&lt;/h3&gt;&lt;p&gt;Next, examine the last of the four events. By focusing on the &lt;code&gt;process.command_line&lt;/code&gt; column, we can see that &lt;strong&gt;PowerShell&lt;/strong&gt; is used to create a new &lt;strong&gt;Scheduled Task&lt;/strong&gt; for &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1053/005/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;persistence&lt;/a&gt;. This task executes &lt;code&gt;[rundll32](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/rundll32)&lt;/code&gt; to &lt;strong&gt;register&lt;/strong&gt; the file transferred to &lt;code&gt;WKSTN-0051&lt;/code&gt; via &lt;code&gt;[xcopy](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/xcopy)&lt;/code&gt; from &lt;strong&gt;Question 2.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Examining the &lt;code&gt;Register-ScheduledTask&lt;/code&gt; parameter, we’ll find the name of the task in the command:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a83ebca915b9704394da04c1335fcfb1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;844px&#34; data-flex-grow=&#34;351&#34; height=&#34;341&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/a83ebca915b9704394da04c1335fcfb1_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/a83ebca915b9704394da04c1335fcfb1_MD5_hu_8de98c0b00cf09ee.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/a83ebca915b9704394da04c1335fcfb1_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;476924e57d121b446ebe379dea777631_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2430px&#34; data-flex-grow=&#34;1012&#34; height=&#34;79&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/476924e57d121b446ebe379dea777631_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-the-execution-of-the-implanted-file-inside-the-machine-has-initiated-a-potential-c2-connection-what-is-the-ip-and-port-used-by-this-connection-formatipport&#34;&gt;Question 5: The execution of the implanted file inside the machine has initiated a potential C2 connection. What is the IP and port used by this connection? (format: IP:port)&#xA;&lt;/h3&gt;&lt;p&gt;Since we’re out of events to analyze in the current search, we need to pivot and expand our scope. Since we know from the last question that the attacker is leveraging &lt;strong&gt;PowerShell,&lt;/strong&gt; let’s try narrowing our search for that. Fortunately for us, &lt;strong&gt;Quick Logistics LLC,&lt;/strong&gt; had deployed &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Sysmon&lt;/strong&gt;&lt;/a&gt; on the CEO’s workstation which gives us an advantage.&lt;/p&gt;&#xA;&lt;p&gt;Searching for &lt;strong&gt;PowerShell.exe&lt;/strong&gt; and querying &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon#event-id-3-network-connection&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Sysmon Event ID 3&lt;/strong&gt;&lt;/a&gt; for “t_he network connection event logs TCP/UDP connections on the machine_” might help find some clues leading us to uncover the &lt;strong&gt;command and control (C2)&lt;/strong&gt; connection.&lt;/p&gt;&#xA;&lt;p&gt;First, we’ll input the search.&lt;/p&gt;&#xA;&lt;p&gt;powershell.exe and event.provider : &amp;ldquo;Microsoft-Windows-Sysmon&amp;rdquo; and event.code : &amp;ldquo;3&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9be1ef6b02e44a2bc84b8c328b69603c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;543px&#34; data-flex-grow=&#34;226&#34; height=&#34;530&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/9be1ef6b02e44a2bc84b8c328b69603c_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/9be1ef6b02e44a2bc84b8c328b69603c_MD5_hu_8817c7b7d3509464.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/9be1ef6b02e44a2bc84b8c328b69603c_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Then, enter &lt;code&gt;destination.ip&lt;/code&gt; into the &lt;strong&gt;search field names&lt;/strong&gt; box and click the field name. This will show us the top 5 values across the logs. Notice that there are three IP addresses: One is the CEO’s workstation, another is the IPv6 local loopback, and the top result is an &lt;em&gt;external&lt;/em&gt; IP. The external IP is present in the overwhelming majority of the searched &lt;strong&gt;PowerShell&lt;/strong&gt; logs. It’s suspicious that a compromised workstation would connect to an external IP address over &lt;strong&gt;PowerShell.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;For the second half of the question, we can check the &lt;code&gt;destination.port&lt;/code&gt; field to find the port number. Since there is only one entry, we don’t need to look any further. Now we have both the IP Address and Port of the C2 connection.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e38c4587cee314692f05bb7519a002c6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;270px&#34; data-flex-grow=&#34;112&#34; height=&#34;709&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/e38c4587cee314692f05bb7519a002c6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7ca46a36fd3d0fb7a17eabf567cb46ff_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2742px&#34; data-flex-grow=&#34;1142&#34; height=&#34;70&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/7ca46a36fd3d0fb7a17eabf567cb46ff_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-the-attacker-has-discovered-that-the-current-access-is-a-local-administrator-what-is-the-name-of-the-process-used-by-the-attacker-to-execute-a-uacbypass&#34;&gt;Question 6: The attacker has discovered that the current access is a local administrator. What is the name of the process used by the attacker to execute a UAC bypass?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we’ve identified the C2 server, we need to understand how the attacker escalated privileges and bypassed &lt;strong&gt;user account control (UAC)&lt;/strong&gt;. Recall from &lt;strong&gt;Question 2&lt;/strong&gt; that the stage 1 payload leveraged &lt;strong&gt;xcopy&lt;/strong&gt; to implant a file onto the CEO’s workstation?&lt;/p&gt;&#xA;&lt;p&gt;Let’s search for the implanted file, &lt;strong&gt;review.dat&lt;/strong&gt;, to understand what other actions were performed. Right away we’ll see some discovery activity including &lt;strong&gt;whoami&lt;/strong&gt; and &lt;strong&gt;net.exe&lt;/strong&gt; commands used to enumerate local group membership and the associated permissions. But that’s not what we’re interested in. Notice another odd executable in the list for the &lt;strong&gt;Windows&lt;/strong&gt; &lt;strong&gt;Features on Demand Helper.&lt;/strong&gt; This seems out of place, doesn’t it?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7c53741ca6b2e2723d378ac9c04626ef_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;550px&#34; data-flex-grow=&#34;229&#34; height=&#34;523&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/7c53741ca6b2e2723d378ac9c04626ef_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/7c53741ca6b2e2723d378ac9c04626ef_MD5_hu_8dbc4754cdc9ee25.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/7c53741ca6b2e2723d378ac9c04626ef_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s research on &lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt; to understand if this executable can be abused to bypass &lt;strong&gt;UAC&lt;/strong&gt;. With a quick search, we’ll land on the page for the technique &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1548/002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Abuse Elevation Control Mechanism: Bypass User Account Control (T1548.002)&lt;/strong&gt;&lt;/a&gt; where we find the note below with a reference link:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c089fccc2bd0f98923c00f518e00c406_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2865px&#34; data-flex-grow=&#34;1194&#34; height=&#34;67&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/c089fccc2bd0f98923c00f518e00c406_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;MITRE ATT&amp;amp;CK: &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1548/002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1548/002/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;For additional intelligence, let’s explore the reference link from &lt;a class=&#34;link&#34; href=&#34;https://redcanary.com/blog/threat-intelligence/raspberry-robin/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Red Canary&lt;/strong&gt;&lt;/a&gt; where we’ll learn that the executable can be abused to achieve a &lt;strong&gt;UAC&lt;/strong&gt; bypass:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Processes launched by &lt;code&gt;[REDACTED].exe&lt;/code&gt; run with elevated administrative privileges without requiring a User Account Control prompt.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;This means the attacker abused the legitimate binary to execute processes as an administrator without the user account control dialogue to interfere.&lt;/p&gt;&#xA;&lt;p&gt;Since we have discovered a known method of abusing the &lt;strong&gt;Features on Demand Helper&lt;/strong&gt; binary to bypass &lt;em&gt;UAC&lt;/em&gt; combined with the evidence that this technique was used on compromised device, we’ve found the answer to &lt;strong&gt;Question 6.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;34ef9c3e6010a238a3b7a89df7ee3ebd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/34ef9c3e6010a238a3b7a89df7ee3ebd_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-7-having-a-high-privilege-machine-access-the-attacker-attempted-to-dump-the-credentials-inside-the-machine-what-is-the-github-link-used-by-the-attacker-to-download-a-tool-for-credential-dumping&#34;&gt;Question 7: Having a high privilege machine access, the attacker attempted to dump the credentials inside the machine. What is the GitHub link used by the attacker to download a tool for credential dumping?&#xA;&lt;/h3&gt;&lt;p&gt;Now, we’ll need to discover what tool the attacker downloaded onto the victim’s device from &lt;strong&gt;GitHub.&lt;/strong&gt; Jumping back to the search bar, let’s search for something broad like &lt;strong&gt;github.com,&lt;/strong&gt; then refine our scope, filtering the &lt;code&gt;host.ip&lt;/code&gt; field for the CEO’s workstation (&lt;code&gt;10.10.155.159&lt;/code&gt; / &lt;code&gt;WKSTN-0051&lt;/code&gt;).&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c4ef7451fa7f165a43bae2982d64df62_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;542px&#34; data-flex-grow=&#34;225&#34; height=&#34;531&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/c4ef7451fa7f165a43bae2982d64df62_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/c4ef7451fa7f165a43bae2982d64df62_MD5_hu_55663e3105688fae.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/c4ef7451fa7f165a43bae2982d64df62_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The search reveals that the attacker downloaded the very famous &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1003/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;credential dumping&lt;/strong&gt;&lt;/a&gt; tool, &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Mimikatz&lt;/strong&gt;&lt;/a&gt; — not good! Let’s press forward to determine what the attacker was able to access.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8ba58d4599469a92d4ea678b78b8c622_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2109px&#34; data-flex-grow=&#34;879&#34; height=&#34;91&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/8ba58d4599469a92d4ea678b78b8c622_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-8-after-successfully-dumping-the-credentials-inside-the-machine-the-attacker-used-the-credentials-to-gain-access-to-another-machine-what-is-the-username-and-hash-of-the-new-credential-pair-format-usernamehash&#34;&gt;Question 8: After successfully dumping the credentials inside the machine, the attacker used the credentials to gain access to another machine. What is the username and hash of the new credential pair? (format: username:hash)&#xA;&lt;/h3&gt;&lt;p&gt;Now that we’ve discovered the attacker downloaded &lt;strong&gt;Mimikatz&lt;/strong&gt;, let’s continue analyzing the logs from the CEO’s workstation focusing on the executable name of the tool inside the &lt;strong&gt;mimi.zip&lt;/strong&gt; archive — &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;mimikatz.exe&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;500d043915f76b46caeb6ee3ff4fdef4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;543px&#34; data-flex-grow=&#34;226&#34; height=&#34;530&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/500d043915f76b46caeb6ee3ff4fdef4_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/500d043915f76b46caeb6ee3ff4fdef4_MD5_hu_be50cf7293deb51b.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/500d043915f76b46caeb6ee3ff4fdef4_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Mimikatz activity on WKSTN-0051&lt;/p&gt;&#xA;&lt;p&gt;Here we’ll observe that &lt;strong&gt;Mimikatz&lt;/strong&gt; dumps the credentials for users recently logged-on to the workstation (&lt;code&gt;sekurlsa::logonpasswords)&lt;/code&gt; exposing their password hashes. Next, the attacker performs a &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1550/002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Pass the Hash&lt;/strong&gt;&lt;/a&gt; &lt;strong&gt;(&lt;/strong&gt;&lt;code&gt;sekurlsa::pth&lt;/code&gt; ) using the &lt;strong&gt;NTLM hash&lt;/strong&gt; of one of the exposed administrative users — &lt;code&gt;itadmin&lt;/code&gt; .&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;dc3badc62187ce20a84b3990b83fe890_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2206px&#34; data-flex-grow=&#34;919&#34; height=&#34;87&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/dc3badc62187ce20a84b3990b83fe890_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-9-using-the-new-credentials-the-attacker-attempted-to-enumerate-accessible-file-shares-what-is-the-name-of-the-file-accessed-by-the-attacker-from-a-remoteshare&#34;&gt;Question 9: Using the new credentials, the attacker attempted to enumerate accessible file shares. What is the name of the file accessed by the attacker from a remote share?&#xA;&lt;/h3&gt;&lt;p&gt;So, let’s do a quick recap. We know that the attacker compromised Evan, the CEO’s, workstation with a spear-phishing attachment. Then, the &lt;strong&gt;stage 1&lt;/strong&gt; payload performed a variety of activities to establish a foothold including using &lt;strong&gt;PowerShell&lt;/strong&gt; to create persistence mechanisms, abusing living off the land binaries to elevate privileges, and dumping privileged OS credentials after downloading &lt;strong&gt;Mimikatz&lt;/strong&gt; from &lt;strong&gt;GitHub&lt;/strong&gt;. Now we’ll need to find what file shares the attacker found and accessed.&lt;/p&gt;&#xA;&lt;p&gt;Based on what we know about the attacker’s &lt;strong&gt;tactics, techniques, and procedures (TTPs)&lt;/strong&gt; it’s likely that they would need to download additional tools to perform file sharing enumeration in the environment.&lt;/p&gt;&#xA;&lt;p&gt;Let’s test this theory by first filtering all events from the CEO, Evan’s, device — &lt;code&gt;WKSTN-0051.quicklogistics.org&lt;/code&gt;. Then, we’ll narrow the search further starting with the attacker’s known technique of using &lt;strong&gt;PowerShell&lt;/strong&gt; to download tools from &lt;strong&gt;GitHub&lt;/strong&gt;. For this, we’ll format a query that specifies the CEO’s workstation in the &lt;code&gt;host.name&lt;/code&gt; field and matches all fields for the term &lt;strong&gt;PowerShell&lt;/strong&gt; and a wildcard search for &lt;strong&gt;GitHub&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;host.name : &amp;ldquo;WKSTN-0051.quicklogistics.org&amp;rdquo; and powershell.exe and &lt;em&gt;github&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Right away, there’s something interesting. We’ll see that &lt;strong&gt;PowerShell&lt;/strong&gt; downloaded &lt;code&gt;PowerView.ps1&lt;/code&gt; , a network reconnaissance tool**,** then runs the &lt;code&gt;[Invoke-ShareFinder](https://attack.mitre.org/techniques/T1018/)&lt;/code&gt; cmdlet to discover accessible file shares within the domain.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;17916347a84c49ac3d6896656459da3a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;543px&#34; data-flex-grow=&#34;226&#34; height=&#34;530&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/17916347a84c49ac3d6896656459da3a_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/17916347a84c49ac3d6896656459da3a_MD5_hu_9c878a2f31f6a3ac.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/17916347a84c49ac3d6896656459da3a_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This discovery brings us one step closer by answering the &lt;em&gt;how&lt;/em&gt;, but we still need to determine &lt;em&gt;what&lt;/em&gt; was accessed. Let’s modify the original query, removing the &lt;strong&gt;GitHub&lt;/strong&gt; wildcard, and zoom-out to all &lt;strong&gt;PowerShell&lt;/strong&gt; activities from this workstation.&lt;/p&gt;&#xA;&lt;p&gt;host.name : &amp;ldquo;WKSTN-0051.quicklogistics.org&amp;rdquo; and powershell.exe&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e1f520c69db91097b8b82339cb0df320_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;542px&#34; data-flex-grow=&#34;225&#34; height=&#34;531&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/e1f520c69db91097b8b82339cb0df320_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/e1f520c69db91097b8b82339cb0df320_MD5_hu_531b7f808577213a.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/e1f520c69db91097b8b82339cb0df320_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Bingo! We see that the attacker discovered a file share on &lt;code&gt;WKSTN-1327&lt;/code&gt; hosting an automation script where credentials are potentially stored to enable automation. Then, using the &lt;code&gt;cat&lt;/code&gt; command, the attacker prints the output of this script to the console giving them access to the password within.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;487e63debf3ed8c21f7d29f3f4c9f630_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/487e63debf3ed8c21f7d29f3f4c9f630_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-10-after-getting-the-contents-of-the-remote-file-the-attacker-used-the-new-credentials-to-move-laterally-what-is-the-new-set-of-credentials-discovered-by-the-attacker-format-usernamepassword&#34;&gt;Question 10: After getting the contents of the remote file, the attacker used the new credentials to move laterally. What is the new set of credentials discovered by the attacker? (format: username:password)&#xA;&lt;/h3&gt;&lt;p&gt;Sticking with our current search parameters, scroll up through the newer events in the timeline. Shortly, we’ll stumble upon the series of events below showing that the attacker remotely used the newly discovered credentials for &lt;code&gt;allan.smith&lt;/code&gt; to move laterally, executing code on a second workstation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;712031c60b210134309cd60c01f3d763_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;653px&#34; data-flex-grow=&#34;272&#34; height=&#34;441&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/712031c60b210134309cd60c01f3d763_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/712031c60b210134309cd60c01f3d763_MD5_hu_4ca2b1dce4859c41.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/712031c60b210134309cd60c01f3d763_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;45fd448390554f0ec39e5367a3bc8230_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2258px&#34; data-flex-grow=&#34;941&#34; height=&#34;85&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/45fd448390554f0ec39e5367a3bc8230_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-11-what-is-the-hostname-of-the-attackers-target-machine-for-its-lateral-movementattempt&#34;&gt;Question 11: What is the hostname of the attacker’s target machine for its lateral movement attempt?&#xA;&lt;/h3&gt;&lt;p&gt;From the previous two steps in the analysis, we’ve already determined the hostname and user account targeted for lateral movement. Let’s check our work and move forward with the investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5ab90bdcc49c5296383de358d2727530_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2400px&#34; data-flex-grow=&#34;1000&#34; height=&#34;80&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/5ab90bdcc49c5296383de358d2727530_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-12-using-the-malicious-command-executed-by-the-attacker-from-the-first-machine-to-move-laterally-what-is-the-parent-process-name-of-the-malicious-command-executed-on-the-second-compromised-machine&#34;&gt;Question 12: Using the malicious command executed by the attacker from the first machine to move laterally, what is the parent process name of the malicious command executed on the second compromised machine?&#xA;&lt;/h3&gt;&lt;p&gt;Now we’ll switch our scope to the workstation targeted for lateral movement from the last question. To do this, we’ll zoom out focusing on the &lt;code&gt;Microsoft-Windows-Sysmon&lt;/code&gt; events again and searching &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon#event-id-1-process-creation&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Sysmon Event ID 1&lt;/strong&gt;&lt;/a&gt; or process creation events. Since we are looking for a parent/child process used for lateral movement, let’s start here and see what we find.&lt;/p&gt;&#xA;&lt;p&gt;host.hostname : &amp;ldquo;WKSTN-1327&amp;rdquo; and event.provider : &amp;ldquo;Microsoft-Windows-Sysmon&amp;rdquo; and event.code : &amp;ldquo;1&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;02aed423d4e386315442f59010551d6d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;608px&#34; data-flex-grow=&#34;253&#34; height=&#34;473&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/02aed423d4e386315442f59010551d6d_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/02aed423d4e386315442f59010551d6d_MD5_hu_69157a747409f94a.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/02aed423d4e386315442f59010551d6d_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Excellent! Notice the encoded &lt;strong&gt;PowerShell&lt;/strong&gt; command and that the timestamp follows directly after the use of the credentials from &lt;code&gt;WKSTN-0051&lt;/code&gt; ? The &lt;code&gt;process.parent.executable&lt;/code&gt; of the &lt;strong&gt;PowerShell&lt;/strong&gt; process is what we’ll need to answer &lt;strong&gt;Question 12&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0b8d15df2a3c9769fb1b0a83846f5379_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2064px&#34; data-flex-grow=&#34;860&#34; height=&#34;93&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/0b8d15df2a3c9769fb1b0a83846f5379_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-13-the-attacker-then-dumped-the-hashes-in-this-second-machine-what-is-the-username-and-hash-of-the-newly-dumped-credentials-format-usernamehash&#34;&gt;Question 13: The attacker then dumped the hashes in this second machine. What is the username and hash of the newly dumped credentials? (format: username:hash)&#xA;&lt;/h3&gt;&lt;p&gt;Staying within our current filters, we’ll see that once the attacker is connected, they perform the same patterns of system discovery as on the first workstation, including downloading &lt;strong&gt;Mimikatz&lt;/strong&gt; to dump credentials on the second compromised workstation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;834e287727d29090b361e97cd5132577_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;8727px&#34; data-flex-grow=&#34;3636&#34; height=&#34;22&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/834e287727d29090b361e97cd5132577_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;In addition to exposing the previous credentials we found back in &lt;strong&gt;Question 8&lt;/strong&gt; again, the attacker also discovers another set of administrative credentials, which may include &lt;strong&gt;Domain Admin&lt;/strong&gt; privileges.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;20d13a6695b516387fe1ea70332ec757_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;546px&#34; data-flex-grow=&#34;227&#34; height=&#34;527&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/20d13a6695b516387fe1ea70332ec757_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/20d13a6695b516387fe1ea70332ec757_MD5_hu_9b3508131ad19270.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/20d13a6695b516387fe1ea70332ec757_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1fa8179f81206f2bf5d5729ecec131ac_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/1fa8179f81206f2bf5d5729ecec131ac_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-14-after-gaining-access-to-the-domain-controller-the-attacker-attempted-to-dump-the-hashes-via-a-dcsync-attack-aside-from-the-administrator-account-what-account-did-the-attackerdump&#34;&gt;Question 14: After gaining access to the domain controller, the attacker attempted to dump the hashes via a DCSync attack. Aside from the administrator account, what account did the attacker dump?&#xA;&lt;/h3&gt;&lt;p&gt;Keep scrolling to the newer events following the &lt;code&gt;administrator&lt;/code&gt; account credential dump, we see the attacker performed a &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1550/002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Pass the Hash&lt;/strong&gt;&lt;/a&gt; again using the new domain admin NTLM hash to access environment’s domain controller, following-up with a &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1003/006/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;DCSync&lt;/strong&gt;&lt;/a&gt; attack.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c43806f2d55691f7337c3083a95f9b49_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;543px&#34; data-flex-grow=&#34;226&#34; height=&#34;530&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/c43806f2d55691f7337c3083a95f9b49_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/c43806f2d55691f7337c3083a95f9b49_MD5_hu_16c8f693c98a9373.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/c43806f2d55691f7337c3083a95f9b49_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This gives us a good idea of where to look next. To confirm, let’s adjust our query again focusing on events from &lt;strong&gt;DC01&lt;/strong&gt; to see the full story.&lt;/p&gt;&#xA;&lt;p&gt;host.hostname : &amp;ldquo;DC01&amp;rdquo; and event.provider : &amp;ldquo;Microsoft-Windows-Sysmon&amp;rdquo; and event.code : &amp;ldquo;1&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;08bf341fbb83fa63ef99b105d967ca7d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;542px&#34; data-flex-grow=&#34;225&#34; height=&#34;531&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/08bf341fbb83fa63ef99b105d967ca7d_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/08bf341fbb83fa63ef99b105d967ca7d_MD5_hu_487c31f72bed8590.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/08bf341fbb83fa63ef99b105d967ca7d_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once again, we’ll see familiar TTPs including system/user discovery and downloading &lt;strong&gt;Mimikatz.&lt;/strong&gt; By performing a &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1003/006/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;DCSync&lt;/strong&gt;&lt;/a&gt; attack the attacker accesses the account credentials from the previous question &lt;em&gt;and&lt;/em&gt; another new set of credentials.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;73e0b295301ad3d67253e95e87322ea1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2086px&#34; data-flex-grow=&#34;869&#34; height=&#34;92&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/73e0b295301ad3d67253e95e87322ea1_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-15-after-dumping-the-hashes-the-attacker-attempted-to-download-another-remote-file-to-execute-ransomware-what-is-the-link-used-by-the-attacker-to-download-the-ransomware-binary&#34;&gt;Question 15: After dumping the hashes, the attacker attempted to download another remote file to execute ransomware. What is the link used by the attacker to download the ransomware binary?&#xA;&lt;/h3&gt;&lt;p&gt;Now that the attacker has achieved domain dominance, we can see that a few minutes later, the attacker downloads a ransomware binary from a remote server. This is the URL needed to answer &lt;strong&gt;Question 15&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;42c960d128c26cc0e64fd1481e313a96_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;566px&#34; data-flex-grow=&#34;236&#34; height=&#34;508&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/42c960d128c26cc0e64fd1481e313a96_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/42c960d128c26cc0e64fd1481e313a96_MD5_hu_596742b6b91a7e96.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/42c960d128c26cc0e64fd1481e313a96_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;To be thorough and fully scope the impact of the incident, let’s make a quick adjustment to our filters to understand if the ransomware binary was also executed after download.&lt;/p&gt;&#xA;&lt;p&gt;In the search bar, we’ll enter the name of the executable, &lt;strong&gt;ransomboogey.exe&lt;/strong&gt;. But we also want to understand what user accounts were used for execution and the &lt;code&gt;winlog.event_id&lt;/code&gt; to understand if the file was executed. For this just select the &lt;code&gt;user.name&lt;/code&gt; and &lt;code&gt;winlog.event_id&lt;/code&gt; fields to add them to our dashboard.&lt;/p&gt;&#xA;&lt;p&gt;First, we’ll see that the binary is executed (&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon#event-id-1-process-creation&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Sysmon Event ID 1&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;)&lt;/strong&gt; on &lt;strong&gt;DCO1&lt;/strong&gt; by &lt;strong&gt;Administrator&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5614eda2a3d896c06cb902b4992557ff_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;692px&#34; data-flex-grow=&#34;288&#34; height=&#34;416&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/5614eda2a3d896c06cb902b4992557ff_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/5614eda2a3d896c06cb902b4992557ff_MD5_hu_df86bb193332856d.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/5614eda2a3d896c06cb902b4992557ff_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Shortly after, we see that the ransomware is created (&lt;strong&gt;Sysmon Event ID 11&lt;/strong&gt;), but not executed on the CEO&amp;rsquo;s workstation, &lt;code&gt;WKSTN-0051.&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;186e3120a053a8cc5c3b19dea3625356_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;12800px&#34; data-flex-grow=&#34;5333&#34; height=&#34;15&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/186e3120a053a8cc5c3b19dea3625356_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Finally, we’ll determine that the ransomware binary was executed on &lt;code&gt;WKSTN-1327&lt;/code&gt; by &lt;strong&gt;itadmin.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;486518b72b8ac9411ebf9b8cee2371a6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;9600px&#34; data-flex-grow=&#34;4000&#34; height=&#34;20&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/486518b72b8ac9411ebf9b8cee2371a6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Whew! Now that we have fully answered all the questions and have built a solid understanding of how the latest &lt;em&gt;Boogeyman&lt;/em&gt; attack unfolded, let’s wrap up this investigation!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;228f2bb86b1f419894d48aa5e13ead08_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1979px&#34; data-flex-grow=&#34;824&#34; height=&#34;97&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/228f2bb86b1f419894d48aa5e13ead08_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;The third time’s the charm! We’ve come to the end of our frighteningly fun investigation of &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Boogeyman 3&lt;/strong&gt;&lt;/a&gt;, facing the &lt;em&gt;Boogeyman&lt;/em&gt; for the final time. Using our forensic skills in &lt;strong&gt;ELK&lt;/strong&gt;, we learned that the &lt;em&gt;Boogeyman&lt;/em&gt; infected CEO’s device through a &lt;strong&gt;spear phishing&lt;/strong&gt; email with a malicious attachment. Then, they performed a variety of activities to establish a foothold including leveraging &lt;strong&gt;PowerShell&lt;/strong&gt; to create persistence and command and control, abusing &lt;strong&gt;living off the land binaries&lt;/strong&gt; to elevate privileges, dumping privileged credentials with &lt;strong&gt;Mimikatz&lt;/strong&gt;, performing discovery in the environment, moving laterally, and achieving domain dominance before finally deploying &lt;strong&gt;ransomware&lt;/strong&gt;. While it was a scary incident, we successfully traced the &lt;em&gt;Boogeyman’s&lt;/em&gt; activities and now, let’s wrap this investigation — &lt;strong&gt;Quick Logistics LLC’s&lt;/strong&gt; nightmare is over!&lt;/p&gt;&#xA;&lt;p&gt;A huge thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for the excellent part III of the &lt;em&gt;Boogeyman&lt;/em&gt; series. This challenge was the perfect way to end the year and the awesome &lt;strong&gt;SOC Level 1&lt;/strong&gt; learning path! As usual for this series, I was truly impressed with the details and narrative of this room. This one felt closer to a real-world simulation exercise than others I have completed and it really pushed me to level-up my skills in &lt;strong&gt;Elastic&lt;/strong&gt;. It was really engaging to see how the &lt;em&gt;Boogeyman&lt;/em&gt; changed tactics, techniques, and procedures between the three rooms and the stakes felt real for the fictional organization! Let’s hope we never have to deal with &lt;em&gt;Boogeyman&lt;/em&gt; again.&lt;/p&gt;&#xA;&lt;p&gt;Thanks for the support and going through this investigation with me. Remember, if you found this walkthrough helpful don’t forget to &lt;strong&gt;give it a clap&lt;/strong&gt;! Your feedback really is invaluable and helps fuel my commitment to support your journey in the security community. Cybersecurity is a team sport and we’re in this together!&lt;/p&gt;&#xA;&lt;p&gt;Until next week’s challenge — stay curious and be safe out there!&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK: System Binary Proxy Execution: Mshta (T1218.005):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1218/005/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1218/005/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn — xcopy:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/xcopy&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/xcopy&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn — rundll32:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/rundll32&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/rundll32&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK: Scheduled Task/Job: Scheduled Task (T1053.005):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1053/005/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1053/005/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn — Sysmon:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK: Abuse Elevation Control Mechanism: Bypass User Account Control (T1548.002):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1548/002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1548/002/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK: OS Credential Dumping (T1003):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1003/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1003/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK: Mimikatz (S0002):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/software/S0002/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK: Remote System Discovery (T1018):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1018/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1018/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK: Use Alternate Authentication Material: Pass the Hash (&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1550&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;T1550&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1550/002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1550/002/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK: OS Credential Dumping: DCSync (T1003.006):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1003/006/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1003/006/&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Friday Overtime Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/</link>
            <pubDate>Mon, 09 Dec 2024 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/51fdda019110e68a8a55a3295524706d_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Friday Overtime Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmefriday-overtime-challenge-walkthrough&#34;&gt;TryHackMe — Friday Overtime Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;a-cyber-threat-intelligence-challenge-using-docintel-virus-total-mitre-attck-cyberchef-andgoogle&#34;&gt;A Cyber Threat Intelligence Challenge Using DocIntel, Virus Total, MITRE ATT&amp;amp;CK, CyberChef, and Google&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;51fdda019110e68a8a55a3295524706d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;480&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/51fdda019110e68a8a55a3295524706d_MD5.png&#34; width=&#34;480&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/fridayovertime&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/fridayovertime&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Welcome to my weekly walkthrough!&lt;/strong&gt; If you’ve stumbled across this blog searching for a comprehensive write-up of the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/fridayovertime&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Friday Overtime&lt;/strong&gt;&lt;/a&gt; challenge from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;, you’re in the right place.&lt;/p&gt;&#xA;&lt;p&gt;In this scenario, we’re stepping into the world of &lt;strong&gt;Cyber Threat Intelligence&lt;/strong&gt; to analyze a malware sample submission that we received through the &lt;a class=&#34;link&#34; href=&#34;https://docintel.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;DocIntel&lt;/strong&gt;&lt;/a&gt; threat intelligence platform. Our objective is to gather intelligence on this sample, identify what malware family it’s a part of, understand its functionality, and determine what external destinations it contacts. This information will help us create a detailed report for our fictional customer so that we can head into the weekend. To achieve this, we’ll explore resources like &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;VirusTotal&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;,&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt;&lt;/a&gt;, and external reports from &lt;strong&gt;Google&lt;/strong&gt; to fully grasp the malware’s capabilities.&lt;/p&gt;&#xA;&lt;p&gt;The real value of this challenge comes from the research process and becoming adept at collecting threat intelligence from existing reports. With that in mind, I won’t be revealing the answers to the questions in this writeup. Don’t let that deter you — the approach I took isn’t the only one. You’ve got this. Happy hunting!&lt;/p&gt;&#xA;&lt;p&gt;And hey, if you find this walkthrough helpful — whether it levels-up your skills, gets you over a stumbling block, or serves as a handy reference — please &lt;strong&gt;give it a clap&lt;/strong&gt;! Thanks for reading and going on this investigation with me!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/fridayovertime&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/fridayovertime&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Hello Busy Weekend. . .&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;It’s a Friday evening at PandaProbe Intelligence when a notification appears on your CTI platform. While most are already looking forward to the weekend, you realise you must pull overtime because SwiftSpend Finance has opened a new ticket, raising concerns about potential malware threats. The finance company, known for its meticulous security measures, stumbled upon something suspicious and wanted immediate expert analysis.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;As the only remaining CTI Analyst on shift at PandaProbe Intelligence, you quickly took charge of the situation, realising the gravity of a potential breach at a financial institution. The ticket contained multiple file attachments, presumed to be malware samples.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;With a deep breath, a focused mind, and the longing desire to go home, you began the process of:&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Downloading the malware samples provided in the ticket, ensuring they were contained in a secure environment.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Running the samples through preliminary automated malware analysis tools to get a quick overview.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Deep diving into a manual analysis, understanding the malware’s behaviour, and identifying its communication patterns.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Correlating findings with global threat intelligence databases to identify known signatures or behaviours.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Compiling a comprehensive report with mitigation and recovery steps, ensuring SwiftSpend Finance could swiftly address potential threats.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;question-1-who-shared-the-malwaresamples&#34;&gt;Question 1: Who shared the malware samples?&#xA;&lt;/h3&gt;&lt;p&gt;First thing’s first, let’s login to the &lt;a class=&#34;link&#34; href=&#34;https://docintel.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;DocIntel&lt;/strong&gt;&lt;/a&gt; portal using the credentials supplied in the challenge’s instructions. &lt;strong&gt;DocIntel&lt;/strong&gt; is an open-source threat intelligence platform for information sharing where we’ll find the request ticket and download the included malware samples.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;af7dab83555225612665f50ece8bd2c7_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;502px&#34; data-flex-grow=&#34;209&#34; height=&#34;382&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/af7dab83555225612665f50ece8bd2c7_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;To answer &lt;strong&gt;Question 1&lt;/strong&gt;, we’ll just need to open the ticket, read the request, and check the sign-off signature to find who sent it in.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;123d1550d1703ee784de8d094e3668fc_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;629px&#34; data-flex-grow=&#34;262&#34; height=&#34;305&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/123d1550d1703ee784de8d094e3668fc_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;31c0c5286c0df8da352cab11206b5436_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2742px&#34; data-flex-grow=&#34;1142&#34; height=&#34;70&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/31c0c5286c0df8da352cab11206b5436_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-what-is-the-sha1-hash-of-the-file-prsmdll-inside-sampleszip&#34;&gt;Question 2: What is the SHA1 hash of the file “pRsm.dll” inside samples.zip?&#xA;&lt;/h3&gt;&lt;p&gt;Next, let’s download the attachment, &lt;strong&gt;samples.zip,&lt;/strong&gt; from the files section on the right side of ticket and extract the files within the archive. To do this, we’ll need the password provided in the ticket details. Once the files are extracted, we can get the &lt;strong&gt;SHA1 hash&lt;/strong&gt; of &lt;strong&gt;pRsm.dl&lt;/strong&gt;l directly from the terminal using the below command:&lt;/p&gt;&#xA;&lt;p&gt;sha1sum /home/ericatracy/Downloads/pRsm.dll&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6c0e05651e581006d50e4d128bb93d35_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1066px&#34; data-flex-grow=&#34;444&#34; height=&#34;180&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/6c0e05651e581006d50e4d128bb93d35_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d34d2d3c2bafad501fcdd834b6d32e5d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2742px&#34; data-flex-grow=&#34;1142&#34; height=&#34;70&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/d34d2d3c2bafad501fcdd834b6d32e5d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-which-malware-framework-utilizes-these-dlls-as-add-onmodules&#34;&gt;Question 3: Which malware framework utilizes these DLLs as add-on modules?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we have a file hash to work with, let’s pivot over to &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;VirusTotal&lt;/strong&gt;&lt;/a&gt; and check if this sample has been analyzed on the platform before and see what additional intelligence we can collect about it.&lt;/p&gt;&#xA;&lt;p&gt;Fortunately for us, this sample has been seen before and there are a high number of hits. To answer &lt;strong&gt;Question 3&lt;/strong&gt;, we’ll focus on the &lt;strong&gt;threat / family labels&lt;/strong&gt; to find the answer.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;76559e7f6dbbdcb0e09cfd52f2049ad4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;777px&#34; data-flex-grow=&#34;323&#34; height=&#34;247&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/76559e7f6dbbdcb0e09cfd52f2049ad4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;166fc8cded004c7179118b94fd80d854_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2526px&#34; data-flex-grow=&#34;1052&#34; height=&#34;76&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/166fc8cded004c7179118b94fd80d854_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-which-mitre-attck-technique-is-linked-to-using-prsmdll-in-this-malware-framework&#34;&gt;Question 4: Which MITRE ATT&amp;amp;CK Technique is linked to using pRsm.dll in this malware framework?&#xA;&lt;/h3&gt;&lt;p&gt;If you’re unfamiliar, &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt;&lt;/a&gt; is an expansive knowledge base that documents known adversary tactics, techniques, and procedures as observed in world-world attacks. Since &lt;strong&gt;Question 4&lt;/strong&gt; mentions &lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt;, let’s navigate there and search for the family name we found in the last question to gather more information.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S1146/&#34;  title=&#34;https://attack.mitre.org/software/S1146/&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;MgBot&lt;/strong&gt;&#xA;_MgBot is a modular malware framework exclusively associated with Daggerfly operations since at least 2012. MgBot was…_attack.mitre.org&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S1146/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Since there are so many techniques listed on &lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt; and in &lt;strong&gt;VirusTotal&lt;/strong&gt; for the malware, we’ll need to pivot out to some external research to narrow it down. From the &lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt; page, there are several reference links listed at the bottom.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;12d99428f1a4bef3f6fbfc15276e0ecc_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2021px&#34; data-flex-grow=&#34;842&#34; height=&#34;95&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/12d99428f1a4bef3f6fbfc15276e0ecc_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s select the second link from &lt;a class=&#34;link&#34; href=&#34;https://www.welivesecurity.com/2023/04/26/evasive-panda-apt-group-malware-updates-popular-chinese-software/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;ESET&lt;/strong&gt;&lt;/a&gt; to read more about the malware framework and &lt;strong&gt;pRsm.dll.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.welivesecurity.com/2023/04/26/evasive-panda-apt-group-malware-updates-popular-chinese-software/&#34;  title=&#34;https://www.welivesecurity.com/2023/04/26/evasive-panda-apt-group-malware-updates-popular-chinese-software/&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Evasive Panda APT group delivers malware via updates for popular Chinese software&lt;/strong&gt;&#xA;_ESET Research uncovers a campaign by the APT group known as Evasive Panda targeting an international NGO in China with…_www.welivesecurity.com&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.welivesecurity.com/2023/04/26/evasive-panda-apt-group-malware-updates-popular-chinese-software/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;There’s a treasure trove of excellent research content in this blog but for &lt;strong&gt;Question 4&lt;/strong&gt;, we’re most interested in the documented &lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt; techniques where we’ll learn that &lt;strong&gt;pRsm.dll&lt;/strong&gt; is used to capture audio streams and the corresponding technique ID.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;61d04192043bd1463cc4e1f78cfa9d35_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1837px&#34; data-flex-grow=&#34;765&#34; height=&#34;87&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/61d04192043bd1463cc4e1f78cfa9d35_MD5.png&#34; width=&#34;666&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;From: &lt;a class=&#34;link&#34; href=&#34;https://www.welivesecurity.com/2023/04/26/evasive-panda-apt-group-malware-updates-popular-chinese-software/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.welivesecurity.com/2023/04/26/evasive-panda-apt-group-malware-updates-popular-chinese-software/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0d625f84e9b260d352e373c863254081_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/0d625f84e9b260d352e373c863254081_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-is-the-cyberchef-defanged-url-of-the-malicious-download-location-first-seen-on-20201102&#34;&gt;Question 5: What is the CyberChef defanged URL of the malicious download location first seen on 2020–11–02?&#xA;&lt;/h3&gt;&lt;p&gt;Continuing with our review of the &lt;strong&gt;ESET&lt;/strong&gt; report, we’ll also discover some additional details about the malware including the origin of the malicious download.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;52bddce7fbc31d3249650d818e7d6753_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;248px&#34; data-flex-grow=&#34;103&#34; height=&#34;772&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/52bddce7fbc31d3249650d818e7d6753_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;We’re halfway there! While the URL is already defanged within the report, the key detail is that we need to submit the URL after it’s been defanged with &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;CyberChef&lt;/strong&gt;&lt;/a&gt; specifically — Easy enough!&lt;/p&gt;&#xA;&lt;p&gt;Let’s open &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;CyberChef&lt;/strong&gt;&lt;/a&gt;, input the URL from the &lt;strong&gt;ESET&lt;/strong&gt; report, and apply the &lt;em&gt;Defang URL&lt;/em&gt; option to the recipe to get our newly defanged output.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8b5009d5ffb8d0eb31cb8ac83b0dc8d3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;417px&#34; data-flex-grow=&#34;173&#34; height=&#34;460&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/8b5009d5ffb8d0eb31cb8ac83b0dc8d3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Defanging the Download URL in CyberChef&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;fadf81510cbd36a93e81562d5c1c136d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2430px&#34; data-flex-grow=&#34;1012&#34; height=&#34;79&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/fadf81510cbd36a93e81562d5c1c136d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-what-is-the-cyberchef-defanged-ip-address-of-the-cc-server-first-detected-on-20200914-using-thesemodules&#34;&gt;Question 6: What is the CyberChef defanged IP address of the C&amp;amp;C server first detected on 2020–09–14 using these modules?&#xA;&lt;/h3&gt;&lt;p&gt;We’ll approach &lt;strong&gt;Question 6&lt;/strong&gt; like we did the last one. We’ll find the malware’s command and control (&lt;strong&gt;C&amp;amp;C&lt;/strong&gt;) server addresses listed in the &lt;strong&gt;ESET&lt;/strong&gt; report’s &lt;strong&gt;IOC&lt;/strong&gt; section under &lt;strong&gt;Network.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f52c3bbba16cc64200584f2318d32c21_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;741px&#34; data-flex-grow=&#34;308&#34; height=&#34;259&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/f52c3bbba16cc64200584f2318d32c21_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Pick the &lt;strong&gt;IP address&lt;/strong&gt; that matches the date from the question and jump back over to &lt;strong&gt;CyberChef.&lt;/strong&gt; It can be a little picky, but manually enter the raw IP address into the input box then apply &lt;strong&gt;Defang IP Address&lt;/strong&gt; to the recipe.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;532f024c512f0be476a635a1385cdca9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;611px&#34; data-flex-grow=&#34;254&#34; height=&#34;314&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/532f024c512f0be476a635a1385cdca9_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Defanging C&amp;amp;C IP Address in CyberChef&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4769e465a21dacec36572b0445d4b8a4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/4769e465a21dacec36572b0445d4b8a4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-7-what-is-the-sha1-hash-of-the-spyagent-family-spyware-hosted-on-the-same-ip-targeting-android-devices-on-november-162022&#34;&gt;Question 7: What is the SHA1 hash of the spyagent family spyware hosted on the same IP targeting Android devices on November 16, 2022?&#xA;&lt;/h3&gt;&lt;p&gt;Finally, we’re going to take what we’ve learned during our intelligence collection and expand our scope by searching for any other malware families hosted on the &lt;strong&gt;IP Address&lt;/strong&gt; from &lt;strong&gt;Question 6.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Head back over to &lt;strong&gt;VirusTotal&lt;/strong&gt;. Once we input the IP, navigate to the &lt;strong&gt;Relations &amp;gt; Communicating Files&lt;/strong&gt; tab where we’ll find an &lt;strong&gt;Android type&lt;/strong&gt; file communicating with this IP address.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;459c1a4627e5936640b994182830cdf4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;512px&#34; data-flex-grow=&#34;213&#34; height=&#34;375&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/459c1a4627e5936640b994182830cdf4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;While the date doesn’t match what the question is looking for, let’s click the entry anyway to see if we can find any leads. Looking at the family label, it matches the &lt;strong&gt;spyagent&lt;/strong&gt; tag referenced in the question, so it seems that we’re on the right track.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f983263adf1379105b17b327d19a7cbb_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;817px&#34; data-flex-grow=&#34;340&#34; height=&#34;235&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/f983263adf1379105b17b327d19a7cbb_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s try the &lt;strong&gt;SHA-1&lt;/strong&gt; hash from the &lt;strong&gt;Details&lt;/strong&gt; tab to verify.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;039a647db9f1188aba12c91738cecdbd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;492px&#34; data-flex-grow=&#34;205&#34; height=&#34;390&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/039a647db9f1188aba12c91738cecdbd_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Fantastic! We’ve found the correct sample! Now that we’ve completed &lt;strong&gt;Question 7&lt;/strong&gt;, let’s recap our findings and wrap up this investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ea530a0562acf0546eb3a53270351c2c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2526px&#34; data-flex-grow=&#34;1052&#34; height=&#34;76&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-friday-overtime-challenge-walkthrough/ea530a0562acf0546eb3a53270351c2c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;There we have it — sample analyzed! During our investigation, we calculated the &lt;strong&gt;SHA1&lt;/strong&gt; hash value of a DLL within the sample**.** We then searched &lt;strong&gt;VirusTotal&lt;/strong&gt; for this file hash, which helped us identify the malware family the DLL belongs to. Next, we pivoted to &lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt; to understand the malware’s capabilities and searched for external references, where we discovered a detailed analysis from &lt;strong&gt;ESET&lt;/strong&gt;. With the ESET report in hand, we identified &lt;strong&gt;indicators of compromise&lt;/strong&gt; (IOCs), including the initial access download URL and the command and control IP addresses. All this information equips us with what we’ll need to create a comprehensive report for the requestor. Let’s wrap up this investigation and conclude our &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/fridayovertime&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Friday Overtime&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;A big thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for the engaging challenge. This was a really fun challenge because the scenario felt realistic and led me down a research rabbit hole. It was cool to learn about &lt;strong&gt;DocIntel&lt;/strong&gt; and get a glimpse into the &lt;strong&gt;CTI&lt;/strong&gt; world. I find it extremely rewarding to start with something as simple as a file hash and continue to unravel the mystery by adding more context through threat intelligence with each new piece of information. It never hurts to continuously practice your research skills and leverage any available reporting when collecting intelligence on a threat — this happens all the time in the field!&lt;/p&gt;&#xA;&lt;p&gt;Thanks for the support and going through this investigation with me. Remember, if you found this walkthrough helpful don’t forget to &lt;strong&gt;give it a clap&lt;/strong&gt;! Your feedback really is invaluable and helps keep me motivated to support your journey in the security community. Cybersecurity is a team sport and we’re in this together!&lt;/p&gt;&#xA;&lt;p&gt;Until next week’s challenge — stay curious and be safe out there!&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;DocIntel:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://docintel.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://docintel.org/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — MgBot (S1146):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S1146/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/software/S1146/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;ESET WeLiveSecurity Blog — Evasive Panda APT group delivers malware via updates for popular Chinese software:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.welivesecurity.com/2023/04/26/evasive-panda-apt-group-malware-updates-popular-chinese-software/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.welivesecurity.com/2023/04/26/evasive-panda-apt-group-malware-updates-popular-chinese-software/&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Boogeyman 2 Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/</link>
            <pubDate>Sun, 27 Oct 2024 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/64b3c4319224c18ebb00355859fc4121_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Boogeyman 2 Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmeboogeyman-2-challenge-walkthrough&#34;&gt;TryHackMe — Boogeyman 2 Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;email--endpoint-forensic-investigation-using-olevba-strings--volatility-3&#34;&gt;Email &amp;amp; Endpoint Forensic Investigation using olevba, strings, &amp;amp; Volatility 3&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;64b3c4319224c18ebb00355859fc4121_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;375px&#34; data-flex-grow=&#34;156&#34; height=&#34;393&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/64b3c4319224c18ebb00355859fc4121_MD5.png&#34; width=&#34;615&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/boogeyman2&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Are you still afraid of the Boogeyman?&lt;/p&gt;&#xA;&lt;p&gt;If not, you’ve stumbled on the right blog and welcome to my weekly walkthrough! This blog is a walkthrough of the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Boogeyman 2&lt;/strong&gt;&lt;/a&gt; challenge from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; &lt;strong&gt;which&lt;/strong&gt; is the second in a series of capstone challenges for the &lt;em&gt;SOC Level 1&lt;/em&gt; path. This challenge is a multi-part digital forensics and incident response (&lt;em&gt;DFIR&lt;/em&gt;) investigation focusing on a fictional threat actor called the &lt;em&gt;Boogeyman.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you want to catch up on how we got here, check out my walkthrough of &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman1&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Boogeyman 1&lt;/strong&gt;&lt;/a&gt; first.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/&#34; &gt;&lt;strong&gt;TryHackMe — Boogeyman 1 Challenge Walkthrough&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;In this challenge, we will investigate an email, and an endpoint memory dump collected from a victim compromised by this returning, shadowy threat actor. It is our job as security analysts to determine how the &lt;em&gt;Boogeyman&lt;/em&gt; got in this time. To unmask the &lt;em&gt;Boogeyman&lt;/em&gt;, we’ll utilize a few tools to aid in our investigation including &lt;em&gt;olevba,&lt;/em&gt; part of the &lt;em&gt;oletools&lt;/em&gt; package, and &lt;em&gt;Volatility&lt;/em&gt; for analyzing a memory dump of the compromised workstation.&lt;/p&gt;&#xA;&lt;p&gt;Doesn’t sound so scary, right?&lt;/p&gt;&#xA;&lt;p&gt;Now let’s grab our flashlights and shine a light on the &lt;em&gt;Boogeyman’s&lt;/em&gt; updated tactics, techniques, and procedures. I don’t want to ruin any of the surprises, so this walkthrough is spoiler-free, but please use it as a reference and enjoy! Thanks for reading along!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/boogeyman2&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;After having a severe attack from the Boogeyman, Quick Logistics LLC improved its security defences. However, the Boogeyman returns with new and improved tactics, techniques and procedures.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;In this room, you will be tasked to analyse the new tactics, techniques, and procedures (TTPs) of the threat group named Boogeyman.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Maxine, a Human Resource Specialist working for Quick Logistics LLC, received an application from one of the open positions in the company. Unbeknownst to her, the attached resume was malicious and compromised her workstation.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The security team was able to flag some suspicious commands executed on the workstation of Maxine, which prompted the investigation. Given this, you are tasked to analyse and assess the impact of the compromise.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;question-1-what-email-was-used-to-send-the-phishingemail&#34;&gt;Question 1: What email was used to send the phishing email?&#xA;&lt;/h3&gt;&lt;p&gt;Jumping right into our environment let’s start with the email, “&lt;em&gt;Resume — Application for Junior IT Analyst Role.eml,”&lt;/em&gt; from within the &lt;em&gt;Artefacts&lt;/em&gt; folder.&lt;/p&gt;&#xA;&lt;p&gt;While there are a number of ways that we can approach the header analysis of this message, let’s just open it with the default &lt;em&gt;text editor&lt;/em&gt; and do manual header analysis for the first few questions.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;14a13f024b01c1c840d677fd542af7a0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;613px&#34; data-flex-grow=&#34;255&#34; height=&#34;313&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/14a13f024b01c1c840d677fd542af7a0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;We’ll start out with a simple one; all we’re looking for is the &lt;em&gt;From&lt;/em&gt; field in the email to find the sender’s address. Once we’ve found it, we can answer &lt;strong&gt;Question 1.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e00cd47cba9bec26a5efeba15ec99464_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;662px&#34; data-flex-grow=&#34;275&#34; height=&#34;290&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/e00cd47cba9bec26a5efeba15ec99464_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;aeaaaaff7f8cd0167fb33da948393f7a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/aeaaaaff7f8cd0167fb33da948393f7a_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-what-is-the-email-of-the-victim-employee&#34;&gt;Question 2: What is the email of the victim employee?&#xA;&lt;/h3&gt;&lt;p&gt;By finding the &lt;em&gt;From&lt;/em&gt; field in the email header, we’ve also discovered the &lt;em&gt;To&lt;/em&gt; field right below it which has the victim, Maxine’s, &lt;em&gt;email address&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;898f9e62482ea8ffbef890902d41d7e3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;662px&#34; data-flex-grow=&#34;275&#34; height=&#34;290&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/898f9e62482ea8ffbef890902d41d7e3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ea99d632f710ccc0320decce95b77d68_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2823px&#34; data-flex-grow=&#34;1176&#34; height=&#34;68&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/ea99d632f710ccc0320decce95b77d68_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-what-is-the-name-of-the-attached-malicious-document&#34;&gt;Question 3: What is the name of the attached malicious document?&#xA;&lt;/h3&gt;&lt;p&gt;We can discover the attachment’s filename by simply searching for “attachment” within the text file. This will take us to the &lt;em&gt;Content-Description/Disposition&lt;/em&gt; fields where we can see the name of the attached malicious document.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3b6965f1d59a768aab16f600a5add63f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;927px&#34; data-flex-grow=&#34;386&#34; height=&#34;207&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/3b6965f1d59a768aab16f600a5add63f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;16738586c0bddfe86c90fe17011958b6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/16738586c0bddfe86c90fe17011958b6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-what-is-the-md5-hash-of-the-malicious-attachment&#34;&gt;Question 4: What is the MD5 hash of the malicious attachment?&#xA;&lt;/h3&gt;&lt;p&gt;While we have a couple of ways of approaching this, let’s take the path of least resistance and simply download the attachment by opening the &lt;em&gt;.eml&lt;/em&gt; file with the default email client installed in the analysis environment.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;214838028a3ad44331970840d804a33e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;761px&#34; data-flex-grow=&#34;317&#34; height=&#34;378&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/214838028a3ad44331970840d804a33e_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/214838028a3ad44331970840d804a33e_MD5_hu_2e40a7c0bf3d52d.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/214838028a3ad44331970840d804a33e_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once downloaded, we can use the &lt;em&gt;md5sum&lt;/em&gt; command from the &lt;em&gt;terminal&lt;/em&gt; to compute the &lt;em&gt;MD5 hash&lt;/em&gt; of the attachment.&lt;/p&gt;&#xA;&lt;p&gt;md5sum NAME-OF-ATTACHMENT-Q3.doc&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;780d3660021979775a4a9e38175ba8fc_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2021px&#34; data-flex-grow=&#34;842&#34; height=&#34;95&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/780d3660021979775a4a9e38175ba8fc_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;697355656f5265275641528445d78199_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/697355656f5265275641528445d78199_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-url-is-used-to-download-the-stage-2-payload-based-on-the-documents-macro&#34;&gt;Question 5: What URL is used to download the stage 2 payload based on the document’s macro?&#xA;&lt;/h3&gt;&lt;p&gt;Okay, now it’s time to perform some static analysis of the malicious attachment. Since the question mentions &lt;em&gt;macros&lt;/em&gt; and the attachment type is &lt;em&gt;.doc&lt;/em&gt;, let’s check out the tool mentioned in the tutorial for this challenge— &lt;a class=&#34;link&#34; href=&#34;https://www.decalage.info/en/python/olevba&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;olevba&lt;/em&gt;&lt;/a&gt;&lt;em&gt;,&lt;/em&gt; part of the &lt;em&gt;oletools&lt;/em&gt; suite by Philippe Lagadec (&lt;a class=&#34;link&#34; href=&#34;https://github.com/decalage2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;decalage2&lt;/em&gt;&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;p&gt;According to the project’s &lt;em&gt;GitHub&lt;/em&gt; repository:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;olevba is a script to parse OLE and OpenXML files such as MS Office documents (e.g. Word, Excel), to &lt;strong&gt;detect VBA Macros&lt;/strong&gt;, extract their &lt;strong&gt;source code&lt;/strong&gt; in clear text, &lt;strong&gt;decode malware obfuscation&lt;/strong&gt; (Hex/Base64/StrReverse/Dridex) and detect security-related patterns such as &lt;strong&gt;auto-executable macros&lt;/strong&gt;, &lt;strong&gt;suspicious VBA keywords&lt;/strong&gt; used by malware, and potential &lt;strong&gt;IOCs&lt;/strong&gt; (IP addresses, URLs, executable filenames, etc).&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Sounds useful! Let’s put &lt;em&gt;olevba&lt;/em&gt; to work and parse the attachment to see if it discovers anything that could help us answer &lt;strong&gt;Question 2&lt;/strong&gt; by using the command below:&lt;/p&gt;&#xA;&lt;p&gt;olevba &lt;path-to-malicious-attachment&gt;&lt;/p&gt;&#xA;&lt;p&gt;At the bottom of the output, we’ll find a handy summary of what the tool uncovered. Items marked with &lt;em&gt;IOC&lt;/em&gt; are &lt;em&gt;indicators of compromise&lt;/em&gt;, or items that can potentially help with our investigation like &lt;em&gt;IP Addresses, URLs,&lt;/em&gt; or &lt;em&gt;file names&lt;/em&gt;. Here we’ll see that &lt;em&gt;olevba&lt;/em&gt; extracted a suspicious &lt;em&gt;URL&lt;/em&gt; that might be related to the threat actor…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;fd55de5b010e7c14fddbc26b720d155a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;334px&#34; data-flex-grow=&#34;139&#34; height=&#34;517&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/fd55de5b010e7c14fddbc26b720d155a_MD5.png&#34; width=&#34;720&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;olevba summary table&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4cf0d7a13498edd70f66299bdf128b41_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/4cf0d7a13498edd70f66299bdf128b41_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-what-is-the-name-of-the-process-that-executed-the-newly-downloaded-stage-2payload&#34;&gt;Question 6: What is the name of the process that executed the newly downloaded stage 2 payload?&#xA;&lt;/h3&gt;&lt;p&gt;Now, instead of focusing on the summary results, let’s look a little more closely at the &lt;em&gt;macro&lt;/em&gt; details where the &lt;em&gt;IOC&lt;/em&gt; is located. Scroll back toward the top of the &lt;em&gt;olevba&lt;/em&gt; output right above the summary table and look for the stream ‘&lt;em&gt;Macros/VBA/NewMacros’&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;de06a0c5f20bfbe5ead546f6944f4423_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;359px&#34; data-flex-grow=&#34;149&#34; height=&#34;534&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/de06a0c5f20bfbe5ead546f6944f4423_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Looking at the &lt;em&gt;macro&lt;/em&gt; it seems that once the &lt;em&gt;stage 2 payload&lt;/em&gt; is downloaded from the &lt;em&gt;URL&lt;/em&gt; (&lt;strong&gt;Question 5),&lt;/strong&gt; it is saved as a &lt;em&gt;JavaScript&lt;/em&gt; (&lt;em&gt;.js&lt;/em&gt;) file and then executed with a specific process — this is what we need to answer &lt;strong&gt;Question 6.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;48321ae96d99785b6633e7ae2b32ef3e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/48321ae96d99785b6633e7ae2b32ef3e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-7-what-is-the-full-file-path-of-the-malicious-stage-2payload&#34;&gt;Question 7: What is the full file path of the malicious stage 2 payload?&#xA;&lt;/h3&gt;&lt;p&gt;Because we already found the process that executed the payload in the last question, we also discovered the file path where the &lt;em&gt;JavaScript&lt;/em&gt; payload was executed from.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b011d78879e5bb9420bfc7edeb2ebc36_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2493px&#34; data-flex-grow=&#34;1038&#34; height=&#34;77&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/b011d78879e5bb9420bfc7edeb2ebc36_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-8-what-is-the-pid-of-the-process-that-executed-the-stage-2payload&#34;&gt;Question 8: What is the PID of the process that executed the stage 2 payload?&#xA;&lt;/h3&gt;&lt;p&gt;All right, now we’re going to pivot to performing memory forensics using &lt;em&gt;Volatility 3.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you aren’t familiar with &lt;a class=&#34;link&#34; href=&#34;https://github.com/volatilityfoundation/volatility3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;Volatility&lt;/em&gt;&lt;/a&gt;&lt;em&gt;,&lt;/em&gt; it’s a “&lt;em&gt;widely used framework for extracting digital artifacts from volatile memory (RAM) samples.”&lt;/em&gt; In other words, we can use it to analyze the raw memory dump artifact &lt;em&gt;WKSTN-2961.raw&lt;/em&gt;!&lt;/p&gt;&#xA;&lt;p&gt;But how do we get started looking for the answer to &lt;strong&gt;Question 8?&lt;/strong&gt; A pro tip is to leverage &lt;em&gt;Volatility’s&lt;/em&gt; help function to see what plugins are available:&lt;/p&gt;&#xA;&lt;p&gt;vol.py -h&lt;/p&gt;&#xA;&lt;p&gt;After reviewing the available plugins, we’ll start by getting an overview of all the processes running at the time the memory dump was taken on the victim’s system and see the &lt;em&gt;process IDs&lt;/em&gt; (&lt;em&gt;PID)&lt;/em&gt; listed in the &lt;em&gt;PID&lt;/em&gt; column on the far left.&lt;/p&gt;&#xA;&lt;p&gt;vol -f WKSTN-2961.raw windows.psscan&lt;/p&gt;&#xA;&lt;p&gt;Then, we can search the output manually for the &lt;em&gt;process name&lt;/em&gt; that we found in &lt;strong&gt;Question 6.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1813bc4b0b6faeab44da959a9a96727d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3469px&#34; data-flex-grow=&#34;1445&#34; height=&#34;83&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/1813bc4b0b6faeab44da959a9a96727d_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/1813bc4b0b6faeab44da959a9a96727d_MD5_hu_1500cfc923952e57.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/1813bc4b0b6faeab44da959a9a96727d_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;aaf5be661a31c4d840f345b65c4165f8_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1074px&#34; data-flex-grow=&#34;447&#34; height=&#34;268&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/aaf5be661a31c4d840f345b65c4165f8_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/aaf5be661a31c4d840f345b65c4165f8_MD5_hu_f9689877645b575c.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/aaf5be661a31c4d840f345b65c4165f8_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Alternatively, we can work a little bit smarter and use &lt;em&gt;grep&lt;/em&gt; to show us only the results that match the &lt;em&gt;process name&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;vol -f WKSTN-2961.raw windows.psscan | grep &amp;ldquo;PROCESS-NAME-FROM-QUESTION-6&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c4970c12f3517da4ce8d2eb2c56b6e6a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;7384px&#34; data-flex-grow=&#34;3076&#34; height=&#34;26&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/c4970c12f3517da4ce8d2eb2c56b6e6a_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;It’s your choice! Either way, the &lt;em&gt;PID&lt;/em&gt; column is the answer we need.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;bccca5d6ab65b2dfa0559c311b3395df_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/bccca5d6ab65b2dfa0559c311b3395df_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-9-what-is-the-parent-pid-of-the-process-that-executed-the-stage-2payload&#34;&gt;Question 9: What is the parent PID of the process that executed the stage 2 payload?&#xA;&lt;/h3&gt;&lt;p&gt;Fortunately, by finding the answer to &lt;strong&gt;Question 8&lt;/strong&gt;, we also found the answer to &lt;strong&gt;Question 9&lt;/strong&gt; already. We just need to input the value in the &lt;em&gt;parent process ID (PPID)&lt;/em&gt; column!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8bf7a62af4af3b45ca952d3065051f91_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1074px&#34; data-flex-grow=&#34;447&#34; height=&#34;268&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/8bf7a62af4af3b45ca952d3065051f91_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/8bf7a62af4af3b45ca952d3065051f91_MD5_hu_6d3986324edf3047.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/8bf7a62af4af3b45ca952d3065051f91_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9117339c7456d6b99dc2d2b390697c2f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;7384px&#34; data-flex-grow=&#34;3076&#34; height=&#34;26&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/9117339c7456d6b99dc2d2b390697c2f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;00f91b75aafa4a6545e628f36122ccdd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2430px&#34; data-flex-grow=&#34;1012&#34; height=&#34;79&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/00f91b75aafa4a6545e628f36122ccdd_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-10-what-url-is-used-to-download-the-malicious-binary-executed-by-the-stage-2payload&#34;&gt;Question 10: What URL is used to download the malicious binary executed by the stage 2 payload?&#xA;&lt;/h3&gt;&lt;p&gt;All right, we’ve gotten a good start with &lt;em&gt;Volatility&lt;/em&gt; but to answer &lt;strong&gt;Question 10&lt;/strong&gt; we need to go a step further and see if the processes that executed the &lt;em&gt;stage 2 payload&lt;/em&gt; &lt;strong&gt;(Question 8)&lt;/strong&gt; also has any child processes_._ The idea here is that by looking for processes spawned by the binary that launched the &lt;em&gt;stage 2 payload,&lt;/em&gt; we can analyze the payload and find any additional URLS.&lt;/p&gt;&#xA;&lt;p&gt;To accomplish this, we’ll leverage &lt;em&gt;Volatility’s&lt;/em&gt; &lt;code&gt;[windows.pstree](https://github.com/volatilityfoundation/volatility/wiki/Command-Reference#pstree)&lt;/code&gt; to list the &lt;em&gt;process tree&lt;/em&gt; and view the relationships between the processes. To keep it simple, let’s use &lt;em&gt;grep&lt;/em&gt; again to show us only results with the &lt;em&gt;PID&lt;/em&gt; of the process that executed the &lt;em&gt;stage 2&lt;/em&gt; payload that we found in &lt;strong&gt;Question 8.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;vol -f WKSTN-2961.raw windows.pstree | grep &amp;ldquo;PID-FROM-QUESTION-8&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c2dafd129abfc2a01798da38712f6285_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;4682px&#34; data-flex-grow=&#34;1951&#34; height=&#34;41&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/c2dafd129abfc2a01798da38712f6285_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Okay, there is a child process! Let’s try to determine where this executable came from by dumping the process with &lt;em&gt;Volatility’s&lt;/em&gt; &lt;code&gt;[windows.memmap](https://github.com/volatilityfoundation/volatility/wiki/Command-Reference#memmap)&lt;/code&gt; plugin and searching for new evidence:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7944e1e39b94c1092743e2890ebcca74_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;4383px&#34; data-flex-grow=&#34;1826&#34; height=&#34;34&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/7944e1e39b94c1092743e2890ebcca74_MD5.png&#34; width=&#34;621&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;vol -f WKSTN-2961.raw windows.memmap &amp;ndash;pid &lt;CHILD-PROCESS-PID&gt; &amp;ndash;dump&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;fc5ebf05da12ed1954480d18d77e5cce_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1186px&#34; data-flex-grow=&#34;494&#34; height=&#34;145&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/fc5ebf05da12ed1954480d18d77e5cce_MD5.png&#34; width=&#34;717&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Running this command creates .&lt;em&gt;dmp&lt;/em&gt; file of the process. Then, we can try running &lt;em&gt;strings&lt;/em&gt; command to pull out any artifacts from the process dump. Since we know of the domain (&lt;strong&gt;Question 5)&lt;/strong&gt; that downloaded the &lt;em&gt;2nd stage&lt;/em&gt; payload, let’s start there:&lt;/p&gt;&#xA;&lt;p&gt;strings pid.REDACTED.dmp | grep &amp;ldquo;files.boogeymanisback.lol&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1ee713571e3309cbbf6ef61b91ea9ac1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;6000px&#34; data-flex-grow=&#34;2500&#34; height=&#34;32&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/1ee713571e3309cbbf6ef61b91ea9ac1_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Unfortunately, while we see the &lt;em&gt;domain&lt;/em&gt;, we don’t have a full &lt;em&gt;URL&lt;/em&gt; path to the malicious binary within the process dump. So, why don’t we just try running strings against the complete raw memory dump instead to check the whole thing in one shot?&lt;/p&gt;&#xA;&lt;p&gt;strings WKSTN-2961.raw | grep &amp;ldquo;files.boogeymanisback.lol&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3cb7f9ae83f68a88092f6a4617d861a5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;698px&#34; data-flex-grow=&#34;290&#34; height=&#34;275&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/3cb7f9ae83f68a88092f6a4617d861a5_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;There we go! Now we’ve found a second file from this domain — this is the &lt;em&gt;malicious binary&lt;/em&gt; that we’re looking for.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9905215e171aca607ff27f6c42f23638_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2493px&#34; data-flex-grow=&#34;1038&#34; height=&#34;77&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/9905215e171aca607ff27f6c42f23638_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-11-what-is-the-pid-of-the-malicious-process-used-to-establish-the-c2-connection&#34;&gt;Question 11: What is the PID of the malicious process used to establish the C2 connection?&#xA;&lt;/h3&gt;&lt;p&gt;Although this is a bit out of order, we already found the answer by searching for the child process in the previous question. Now, we just need to input the &lt;em&gt;PID&lt;/em&gt; of the child process we found.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;225dae12a1d626efc1a5c39cd6b28dc0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;4682px&#34; data-flex-grow=&#34;1951&#34; height=&#34;41&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/225dae12a1d626efc1a5c39cd6b28dc0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;48fbf76b77f0ebd44810381590ef3711_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/48fbf76b77f0ebd44810381590ef3711_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-12-what-is-the-full-file-path-of-the-malicious-process-used-to-establish-the-c2-connection&#34;&gt;Question 12: What is the full file path of the malicious process used to establish the C2 connection?&#xA;&lt;/h3&gt;&lt;p&gt;To answer &lt;strong&gt;Question 12&lt;/strong&gt;, we need to find the full file path of the malicious child process. For this task, we can use the &lt;em&gt;Volatility&lt;/em&gt; &lt;code&gt;windows.cmdline&lt;/code&gt; plugin.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;09081b441333a1165562fd881ea32029_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;4140px&#34; data-flex-grow=&#34;1725&#34; height=&#34;40&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/09081b441333a1165562fd881ea32029_MD5.png&#34; width=&#34;690&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This plugin can help us by showing not only the process &lt;em&gt;command line arguments&lt;/em&gt; but also the executable file path of the process.&lt;/p&gt;&#xA;&lt;p&gt;vol -f WKSTN-2961.raw windows.cmdline &amp;ndash;pid PID-FROM-QUESTION-11&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3b1f0d6d31e8c222005117261b81c634_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1828px&#34; data-flex-grow=&#34;761&#34; height=&#34;105&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/3b1f0d6d31e8c222005117261b81c634_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;61be176f1a4583b59bb4750d72c26e12_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2823px&#34; data-flex-grow=&#34;1176&#34; height=&#34;68&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/61be176f1a4583b59bb4750d72c26e12_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-13-what-is-the-ip-address-and-port-of-the-c2-connection-initiated-by-the-malicious-binary-format-ip-addressport&#34;&gt;Question 13: What is the IP address and port of the C2 connection initiated by the malicious binary? (Format: IP address:port)&#xA;&lt;/h3&gt;&lt;p&gt;Now that we know the &lt;em&gt;PID&lt;/em&gt; and &lt;em&gt;file path&lt;/em&gt; of the malicious binary, let’s dive deeper and search for any network connections established by the process, which could lead us to the &lt;em&gt;command and control (C2)&lt;/em&gt; server.&lt;/p&gt;&#xA;&lt;p&gt;We’ll use the &lt;code&gt;[windows.netscan](https://github.com/volatilityfoundation/volatility/wiki/Command-Reference#netscan)&lt;/code&gt; plugin to scan for network artifacts like &lt;em&gt;IP addresses, ports,&lt;/em&gt; and &lt;em&gt;protocols.&lt;/em&gt; Then, we’ll combine it with &lt;em&gt;grep&lt;/em&gt; to filter the relevant results for the malicious process &lt;em&gt;PID&lt;/em&gt; from &lt;strong&gt;Question 11.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;vol -f WKSTN-2961.raw windows.netscan | grep -i &amp;ldquo;PID-FROM-QUESTION-11&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2ac8fd7894045032933e1b4b7f73fbc1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1078px&#34; data-flex-grow=&#34;449&#34; height=&#34;267&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/2ac8fd7894045032933e1b4b7f73fbc1_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/2ac8fd7894045032933e1b4b7f73fbc1_MD5_hu_2ec6683bd3ed63d5.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/2ac8fd7894045032933e1b4b7f73fbc1_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Volatility windows.netscan output for the malicious binary&lt;/p&gt;&#xA;&lt;p&gt;Once we run the command, we’ll see the output table listing the external &lt;em&gt;ForeignAddr&lt;/em&gt; and &lt;em&gt;ForignPort&lt;/em&gt; columns that the malicious binary is connected to. These should be the IP address and port of the &lt;em&gt;C2 connection&lt;/em&gt; we are looking for.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;37fc150962f29bdd4f1da35c45247b92_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2526px&#34; data-flex-grow=&#34;1052&#34; height=&#34;76&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/37fc150962f29bdd4f1da35c45247b92_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-14-what-is-the-full-file-path-of-the-malicious-email-attachment-based-on-the-memorydump&#34;&gt;Question 14: What is the full file path of the malicious email attachment based on the memory dump?&#xA;&lt;/h3&gt;&lt;p&gt;We already identified the name of the &lt;em&gt;malicious attachment&lt;/em&gt; in &lt;strong&gt;Question 3,&lt;/strong&gt; which gets us halfway to our goal. Now, we just need to find the &lt;em&gt;full file path&lt;/em&gt; of the downloaded email on the victim’s system.&lt;/p&gt;&#xA;&lt;p&gt;To accomplish this, we can use &lt;em&gt;Volatility’s&lt;/em&gt; &lt;code&gt;[windows.filescan](https://github.com/volatilityfoundation/volatility/wiki/Command-Reference#filescan)&lt;/code&gt; plugin to search for file objects within the image.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5549fab29117d944a140d7a8e64a43a5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;5052px&#34; data-flex-grow=&#34;2105&#34; height=&#34;38&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/5549fab29117d944a140d7a8e64a43a5_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Using &lt;em&gt;grep&lt;/em&gt; to search the term “&lt;em&gt;Resume,&lt;/em&gt;” we can uncover the path of the malicious CV sent by the &lt;em&gt;Boogeyman&lt;/em&gt; threat actor.&lt;/p&gt;&#xA;&lt;p&gt;vol -f WKSTN-2961.raw windows.filescan | grep &amp;ldquo;Resume&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;da687f275e84174365003bfa23c13e92_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;5052px&#34; data-flex-grow=&#34;2105&#34; height=&#34;57&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/da687f275e84174365003bfa23c13e92_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/da687f275e84174365003bfa23c13e92_MD5_hu_ff53558de1e40531.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/da687f275e84174365003bfa23c13e92_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Although there are two entries, we can see the file path in the image points to the same temporary &lt;em&gt;Microsoft&lt;/em&gt; &lt;em&gt;Outlook&lt;/em&gt; content storage folder.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;37ee4b170a8ddd9166f38c63901ebeb1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/37ee4b170a8ddd9166f38c63901ebeb1_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-15-the-attacker-implanted-a-scheduled-task-right-after-establishing-the-c2-callback-what-is-the-full-command-used-by-the-attacker-to-maintain-persistent-access&#34;&gt;Question 15: The attacker implanted a scheduled task right after establishing the c2 callback. What is the full command used by the attacker to maintain persistent access?&#xA;&lt;/h3&gt;&lt;p&gt;Okay, we’ve made it to the last step. To finally unmask the &lt;em&gt;Boogeyman&lt;/em&gt; this time, we need to analyze the &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1053/005/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;scheduled task&lt;/a&gt; that the threat actor used for &lt;em&gt;persistence&lt;/em&gt; on the victim’s system (&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1053/005/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;MITRE ATT&amp;amp;CK T1053.005&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;)&lt;/p&gt;&#xA;&lt;p&gt;To do this, we’re going to use &lt;strong&gt;&lt;em&gt;strings&lt;/em&gt;&lt;/strong&gt; on the &lt;em&gt;RAW&lt;/em&gt; dump file again but this time we’ll look for &lt;em&gt;Windows Task Scheduler&lt;/em&gt; artifacts. There are two ways that this can be done, let’s take a brief look at what we will search for.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;&lt;em&gt;taskschd&lt;/em&gt;&lt;/strong&gt;&lt;em&gt;:&lt;/em&gt; This is the &lt;em&gt;GUI&lt;/em&gt; version of the &lt;em&gt;Task Scheduler&lt;/em&gt; in &lt;em&gt;Windows&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/schtasks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;&lt;em&gt;schtasks&lt;/em&gt;&lt;/strong&gt;&lt;/a&gt;&lt;em&gt;:&lt;/em&gt; This is the &lt;em&gt;CLI&lt;/em&gt; version of the &lt;em&gt;Task Scheduler&lt;/em&gt; in &lt;em&gt;Windows&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;We’re going to try both and see if we can find any relevant artifacts starting with &lt;em&gt;taskschd&lt;/em&gt;:&lt;/p&gt;&#xA;&lt;p&gt;strings WKSTN-2961.raw | grep -i &amp;ldquo;taskschd&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9f43125bd40884c698d72ee57eec7766_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1523px&#34; data-flex-grow=&#34;634&#34; height=&#34;126&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/9f43125bd40884c698d72ee57eec7766_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;It doesn’t seem like there is anything interesting here. Let’s try &lt;em&gt;schtasks&lt;/em&gt; next:&lt;/p&gt;&#xA;&lt;p&gt;strings WKSTN-2961.raw | grep -i &amp;ldquo;schtasks&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b3e8fa26a0262d14aa2a16b3678ffa59_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;707px&#34; data-flex-grow=&#34;294&#34; height=&#34;407&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/b3e8fa26a0262d14aa2a16b3678ffa59_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/b3e8fa26a0262d14aa2a16b3678ffa59_MD5_hu_9c831689cb4de539.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/b3e8fa26a0262d14aa2a16b3678ffa59_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now we’ve found something interesting, the threat actor has created a new task using &lt;em&gt;schtasks&lt;/em&gt;. This is exactly what we need to answer the last question and wrap up this investigation!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;18faa0ecf4e076c7b0d9095c2f2064ef_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2400px&#34; data-flex-grow=&#34;1000&#34; height=&#34;80&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/18faa0ecf4e076c7b0d9095c2f2064ef_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;Mission accomplished! We have completed our frighteningly fun investigation of &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Boogeyman 2&lt;/strong&gt;&lt;/a&gt;! Using our forensic skills, we discovered that this time the &lt;em&gt;Boogeyman&lt;/em&gt; infected the victim’s device through email with a malicious attachment. Then the threat actor used &lt;em&gt;living-off-the-land binaries&lt;/em&gt; to download a &lt;em&gt;stage 2 payload,&lt;/em&gt; establish command and control, and maintain persistent access using &lt;em&gt;schtasks&lt;/em&gt;. Now, let’s wrap this investigation!&lt;/p&gt;&#xA;&lt;p&gt;A huge thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for the excellent part II of the &lt;em&gt;Boogeyman&lt;/em&gt; series. This challenge is perfect for sharpening our security skills during the spooky Halloween season! I was really impressed with the dimensions of this room, as it had two different scopes and a complete narrative of the &lt;em&gt;Boogeyman’s&lt;/em&gt; return. The detail and flow were much closer to a real-world simulation exercise than others I have completed. It was really engaging to see how the fictional threat actor changed tactics, techniques, and procedures between the two rooms.&lt;/p&gt;&#xA;&lt;p&gt;If you want to brave the next &lt;em&gt;Boogeyman&lt;/em&gt; adventure with me, please check out my walkthrough of the &lt;strong&gt;Boogeyman 3.&lt;/strong&gt; Until the &lt;em&gt;Boogeyman&lt;/em&gt; returns yet again, stay vigilant!&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-3-challenge-walkthrough/&#34; &gt;&lt;strong&gt;TryHackMe — Boogeyman 3 Challenge Walkthrough&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;But if this is the end of our journey together, please consider giving this walkthrough a clap if you found this walkthrough helpful in leveling up your skills or getting you through a tricky question. Your feedback lets me know that I helped you out on your security journey. We’re in this together! Thanks for the support!&lt;/p&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Olevba:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://github.com/decalage2/oletools/wiki/olevba&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://github.com/decalage2/oletools/wiki/olevba&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Volatility Framework:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://github.com/volatilityfoundation/volatility3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://github.com/volatilityfoundation/volatility3&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Volatility Command Reference:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://github.com/volatilityfoundation/volatility/wiki/Command-Reference&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://github.com/volatilityfoundation/volatility/wiki/Command-Reference&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn (schtasks):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/schtasks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;schtasks commands | Microsoft Learn&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — Scheduled Task/Job: Scheduled Task (T1053.005):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1053/005/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1053/005/&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Benign Challenge Room Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/</link>
            <pubDate>Sun, 29 Sep 2024 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/692e9d911921660a108a1add603b2981_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Benign Challenge Room Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmebenign-challenge-room-walkthrough&#34;&gt;TryHackMe — Benign Challenge Room Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;an-endpoint-forensic-investigation-usingsplunk&#34;&gt;An Endpoint Forensic Investigation using Splunk&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;692e9d911921660a108a1add603b2981_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;360&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/692e9d911921660a108a1add603b2981_MD5.png&#34; width=&#34;360&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/benign&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/benign&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Imagine this:&lt;/strong&gt; You’re on the front lines of your organization’s security team when suddenly, intrusion detection alerts start firing from an endpoint, indicating discovery and persistence activity. You need to dive into your security logging platform, investigate the logs, and contain the threat. If this sounds like a thriller you want to be part of, you’ve stumbled upon the right blog!&lt;/p&gt;&#xA;&lt;p&gt;Welcome to my weekly walkthrough! This week, we’re tackling the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/benign&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Benign&lt;/strong&gt;&lt;/a&gt; room from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt; Using the &lt;em&gt;Splunk&lt;/em&gt; data and logging platform, we’re going to investigate a compromised endpoint, but we only have the process execution logs (Event ID: 4688) ingested into the platform. Together, we’ll analyze the logs to find the compromised endpoint and then uncover how the malicious payload was downloaded onto the system, where it was hosted, and how it bypassed the security controls to get there. Sounds like fun, right? Let’s get to it!&lt;/p&gt;&#xA;&lt;p&gt;In the spirit of learning, I won’t be revealing any flags in this write-up, but I hope that this guide sets you on the right track — you got this! If you find this walkthrough helpful in leveling up your skills or getting you through a tricky question, &lt;strong&gt;give it a clap&lt;/strong&gt;! Your feedback helps me improve and continue supporting your security journey. Thanks for reading!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/benign&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/benign&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;One of the client’s IDS indicated a potentially suspicious process execution indicating one of the hosts from the HR department was compromised. Some tools related to network information gathering / scheduled tasks were executed which confirmed the suspicion. Due to limited resources, we could only pull the process execution logs with Event ID: 4688 and ingested them into Splunk with the index &lt;strong&gt;win_eventlogs&lt;/strong&gt; for further investigation.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;question-1-how-many-logs-are-ingested-from-the-month-of-march2022&#34;&gt;Question 1: How many logs are ingested from the month of March, 2022?&#xA;&lt;/h3&gt;&lt;p&gt;Let’s dive right in and start by getting an overview of how many logs have been ingested by &lt;em&gt;Splunk&lt;/em&gt; in March 2022. First, we’ll open the &lt;em&gt;Search &amp;amp; Reporting App&lt;/em&gt; from the left side of the dashboard:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;84f0543c5565219e5c6959d5c65ddd9c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;471px&#34; data-flex-grow=&#34;196&#34; height=&#34;407&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/84f0543c5565219e5c6959d5c65ddd9c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once inside of the &lt;em&gt;Search&lt;/em&gt; tab, we’ll need to select the correct index that we want to query. Remember from the challenge scenario that the captured process execution logs were ingested into the &lt;strong&gt;&lt;em&gt;win_event_log&lt;/em&gt;&lt;/strong&gt; index.&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Due to limited resources, we could only pull the process execution logs with Event ID: 4688 and ingested them into Splunk with the index &lt;strong&gt;win_eventlogs&lt;/strong&gt; for further investigation.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;So, to answer &lt;strong&gt;Question 1&lt;/strong&gt; we’ll need to find the total number of events ingested in &lt;strong&gt;March 2022.&lt;/strong&gt; To do that we’ll first input the index name we want to search, then hit the date/time button to change the search range. Let’s select a &lt;em&gt;Date Range&lt;/em&gt; between 03/01/2022 and 03/31/2022 and then press &lt;em&gt;Apply.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;feae125236a7b065bb10198dec68684c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;914px&#34; data-flex-grow=&#34;380&#34; height=&#34;315&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/feae125236a7b065bb10198dec68684c_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/feae125236a7b065bb10198dec68684c_MD5_hu_86dcb9a7433c0735.png 800w, https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/feae125236a7b065bb10198dec68684c_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This will show us the total number of events during the selected date range to answer &lt;strong&gt;Question 1.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ab278304eaded318f8056069d063c67b_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2165px&#34; data-flex-grow=&#34;902&#34; height=&#34;133&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/ab278304eaded318f8056069d063c67b_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/ab278304eaded318f8056069d063c67b_MD5_hu_4dce60d336364bdc.png 800w, https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/ab278304eaded318f8056069d063c67b_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;30800fd9ac5515936d0ce701c38aa88d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2370px&#34; data-flex-grow=&#34;987&#34; height=&#34;81&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/30800fd9ac5515936d0ce701c38aa88d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-imposter-alert-there-seems-to-be-an-imposter-account-observed-in-the-logs-what-is-the-name-of-thatuser&#34;&gt;Question 2: Imposter Alert: There seems to be an imposter account observed in the logs, what is the name of that user?&#xA;&lt;/h3&gt;&lt;p&gt;Okay, before diving into the logs again let’s pull back and review the information provided to us. We have a list of usernames and their corresponding departments which will be our point of comparison for “real” users versus “imposter” users.&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;About the Network Information&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The network is divided into three logical segments. It will help in the investigation.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;IT Department&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;James&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Moin&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Katrina&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;HR department&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Haroon&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Chris&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Diana&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;Marketing department&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Bell&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Amelia&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Deepak&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Now that we have the correct index and date range selected already, let’s start to analyze the data.&lt;/p&gt;&#xA;&lt;p&gt;To answer &lt;strong&gt;Question 2&lt;/strong&gt;, we need to look at all the usernames captured within the ingested data. For that, we can leverage the &lt;em&gt;stats&lt;/em&gt; command to display all the aggregated usernames from the &lt;em&gt;UserName&lt;/em&gt; field.&lt;/p&gt;&#xA;&lt;p&gt;win_event_log&#xA;| stats count by UserName&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1aa487fac0634b095db84fa992066fb8_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;732px&#34; data-flex-grow=&#34;305&#34; height=&#34;393&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/1aa487fac0634b095db84fa992066fb8_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/1aa487fac0634b095db84fa992066fb8_MD5_hu_ddac3b37dfe76ba5.png 800w, https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/1aa487fac0634b095db84fa992066fb8_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This will show us all 11 of the UserNames in the data! After a comparison with the provided users list, we’ll find one that looks similar but not quite right…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;409cc66eb6996127e57a3587b7804ce8_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2285px&#34; data-flex-grow=&#34;952&#34; height=&#34;84&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/409cc66eb6996127e57a3587b7804ce8_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-which-user-from-the-hr-department-was-observed-to-be-running-scheduled-tasks&#34;&gt;Question 3: Which user from the HR department was observed to be running scheduled tasks?&#xA;&lt;/h3&gt;&lt;p&gt;Alright, to find the answer to &lt;strong&gt;Question 3&lt;/strong&gt; we’re going to search for evidence of persistence by looking for &lt;em&gt;scheduled tasks&lt;/em&gt; activity within the &lt;em&gt;HR department.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Since &lt;em&gt;Splunk&lt;/em&gt; only has ingested logs for the process execution events we’ll need to use the name of the &lt;em&gt;scheduled tasks&lt;/em&gt; executable in our search — &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows/win32/taskschd/schtasks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;schtasks.exe&lt;/em&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;win_event_log schtasks&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9fcf62d9cb4485bb3541a3f01727e8ab_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1777px&#34; data-flex-grow=&#34;740&#34; height=&#34;162&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/9fcf62d9cb4485bb3541a3f01727e8ab_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/9fcf62d9cb4485bb3541a3f01727e8ab_MD5_hu_a9bb47181e1ae0f0.png 800w, https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/9fcf62d9cb4485bb3541a3f01727e8ab_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This will return 87 &lt;em&gt;scheduled task&lt;/em&gt; events, but we can speed up our analysis by looking at the usernames that appear in these events by selecting &lt;em&gt;UserNames&lt;/em&gt; from the &lt;em&gt;selected fields&lt;/em&gt; header.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ed812ddfb0f979314a64f2633c302d82_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;654px&#34; data-flex-grow=&#34;272&#34; height=&#34;440&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/ed812ddfb0f979314a64f2633c302d82_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/ed812ddfb0f979314a64f2633c302d82_MD5_hu_6de941441ff7ae07.png 800w, https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/ed812ddfb0f979314a64f2633c302d82_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This shows us four usernames appearing in the data set, so let’s just match the visible entries against the &lt;em&gt;HR department&lt;/em&gt; list and see which user appears…&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;HR department&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Haroon&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Chris&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Diana&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;efb1f9a51951f6755ba97088c42d6e50_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2400px&#34; data-flex-grow=&#34;1000&#34; height=&#34;80&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/efb1f9a51951f6755ba97088c42d6e50_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-which-user-from-the-hr-department-executed-a-system-process-lolbin-to-download-a-payload-from-a-file-sharing-host&#34;&gt;Question 4: Which user from the HR department executed a system process (LOLBIN) to download a payload from a file-sharing host.&#xA;&lt;/h3&gt;&lt;p&gt;Okay! Now we’re going to dive deeper into our analysis and look for indicators of how the actor brought the payload/tools into the environment.&lt;/p&gt;&#xA;&lt;p&gt;The first thing to do is narrow down our search scope and only view the logging data for the &lt;em&gt;HR department&lt;/em&gt; users. Remember, we already have a list of all &lt;em&gt;HR&lt;/em&gt; users from the previous question so all we need to do is format our query to include only those users:&lt;/p&gt;&#xA;&lt;p&gt;win_event_log UserName=Daina OR UserName=&amp;ldquo;Chris.fort&amp;rdquo; OR UserName=&amp;ldquo;Haroon&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;But even with the tighter search scope, we still have too many logs to go through manually.&lt;/p&gt;&#xA;&lt;p&gt;Next, we need to drill down even further by searching for activity related to &lt;em&gt;living off the land binaries&lt;/em&gt; (&lt;em&gt;LOLBINS&lt;/em&gt;). For some background, &lt;em&gt;LOLBINS&lt;/em&gt; are legitimate &lt;em&gt;Microsoft&lt;/em&gt;-signed binaries that are native to &lt;em&gt;Windows&lt;/em&gt; which could also be abused to perform some unintended activity by an adversary.&lt;/p&gt;&#xA;&lt;p&gt;Fortunately, we don’t have to know these off the top of our heads and we can instead refer to the &lt;em&gt;living off the land binaries and scripts&lt;/em&gt; (&lt;em&gt;LOLBAS&lt;/em&gt;) repository on &lt;em&gt;GitHub!&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://lolbas-project.github.io/&#34;  title=&#34;https://lolbas-project.github.io/&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;LOLBAS&lt;/strong&gt;&#xA;_contribute, check out ourcontribution guide. Ourcriteria list sets out what we define as a LOLBin/Script/Lib. More…_lolbas-project.github.io&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://lolbas-project.github.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;While the &lt;em&gt;LOLBAS&lt;/em&gt; repository is a great start, we still need to find the exact tool within the list. Let’s work a little smarter and take a look at the MITRE ATT&amp;amp;CK knowledge base and see if we can find some specific tools in &lt;em&gt;Windows&lt;/em&gt; that are used for &lt;em&gt;Ingress Tool Transfer&lt;/em&gt; (&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1105/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;MITRE ATT&amp;amp;CK T1105&lt;/em&gt;&lt;/a&gt;.)&lt;/p&gt;&#xA;&lt;p&gt;According to the page for this technique:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;On Windows, adversaries may use various utilities to download tools, such as &lt;code&gt;copy&lt;/code&gt;, &lt;code&gt;finger&lt;/code&gt;, &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0160&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;certutil&lt;/a&gt;, and &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1059/001&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;PowerShell&lt;/a&gt; commands such as &lt;code&gt;IEX(New-Object Net.WebClient).downloadString()&lt;/code&gt; and &lt;code&gt;Invoke-WebRequest&lt;/code&gt;.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Now if we cross-reference these utilities with the &lt;em&gt;LOLBAS&lt;/em&gt; repository, we will find a couple of utilities to search for!&lt;/p&gt;&#xA;&lt;p&gt;So, putting all of this together, we are going to use &lt;em&gt;Splunk&lt;/em&gt; to search the &lt;em&gt;win_event_log&lt;/em&gt; index containing known &lt;em&gt;HR users&lt;/em&gt;, where the captured process command line (4688) matches one of the &lt;em&gt;LOLBAS&lt;/em&gt; download methods that we validated with &lt;em&gt;MITRE ATT&amp;amp;CK&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;win_event_log UserName=Daina OR UserName=&amp;ldquo;Chris.fort&amp;rdquo; OR UserName=&amp;ldquo;Haroon&amp;rdquo;&#xA;| search CommandLine=&amp;quot;&lt;em&gt;NAME OF LOLBIN&lt;/em&gt;&amp;quot;&lt;/p&gt;&#xA;&lt;p&gt;And there we go — we found a hit in the logs! Look at the &lt;em&gt;UserName&lt;/em&gt; field, this is the answer to &lt;strong&gt;Question 4.&lt;/strong&gt; Keep this search result open as we are going to use it to answer the next few questions too.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;585e59b8b1efa92120ad2d1da4f68a70_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;292px&#34; data-flex-grow=&#34;122&#34; height=&#34;590&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/585e59b8b1efa92120ad2d1da4f68a70_MD5.png&#34; width=&#34;720&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;69ad6831fdc7c25a472deaaf365a38b0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2400px&#34; data-flex-grow=&#34;1000&#34; height=&#34;80&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/69ad6831fdc7c25a472deaaf365a38b0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-to-bypass-the-security-controls-which-system-process-lolbin-was-used-to-download-a-payload-from-the-internet&#34;&gt;Question 5: To bypass the security controls, which system process (lolbin) was used to download a payload from the internet?&#xA;&lt;/h3&gt;&lt;p&gt;Fortunately, we already found the answer since the &lt;em&gt;lolbin&lt;/em&gt; name was how we discovered the answer to &lt;strong&gt;Question 4&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;979ed7cf4016534fb40294f2f684fb84_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2258px&#34; data-flex-grow=&#34;941&#34; height=&#34;85&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/979ed7cf4016534fb40294f2f684fb84_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-what-was-the-date-that-this-binary-was-executed-by-the-infected-host-format-yyyy-mm-dd&#34;&gt;Question 6: What was the date that this binary was executed by the infected host? format (YYYY-MM-DD)&#xA;&lt;/h3&gt;&lt;p&gt;From the same event that we found in &lt;strong&gt;Question 4&lt;/strong&gt;, enter the &lt;em&gt;date&lt;/em&gt; from the &lt;em&gt;Time&lt;/em&gt; column or the &lt;em&gt;EventTime&lt;/em&gt; field from the event log — they are the same.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3402c684e92983141ac74d4b1123f26f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;404px&#34; data-flex-grow=&#34;168&#34; height=&#34;475&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/3402c684e92983141ac74d4b1123f26f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;848c13b0d4b55dc79bd30db13d872c35_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2232px&#34; data-flex-grow=&#34;930&#34; height=&#34;86&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/848c13b0d4b55dc79bd30db13d872c35_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-7-which-third-party-site-was-accessed-to-download-the-malicious-payload&#34;&gt;Question 7: Which third-party site was accessed to download the malicious payload?&#xA;&lt;/h3&gt;&lt;p&gt;In the &lt;em&gt;CommandLine&lt;/em&gt; field, there is a visible &lt;em&gt;URL&lt;/em&gt; in the command. The &lt;em&gt;domain name&lt;/em&gt; is what we are looking for to answer &lt;strong&gt;Question 7.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5538752271e5dc478daa4e6426d8e664_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;403px&#34; data-flex-grow=&#34;168&#34; height=&#34;428&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/5538752271e5dc478daa4e6426d8e664_MD5.png&#34; width=&#34;720&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d7e880c1d5dd7f86efe326517dfe7326_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2258px&#34; data-flex-grow=&#34;941&#34; height=&#34;85&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/d7e880c1d5dd7f86efe326517dfe7326_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-8-what-is-the-name-of-the-file-that-was-saved-on-the-host-machine-from-the-c2-server-during-the-post-exploitation-phase&#34;&gt;Question 8: What is the name of the file that was saved on the host machine from the C2 server during the post-exploitation phase?&#xA;&lt;/h3&gt;&lt;p&gt;The file path the end of the C2 &lt;em&gt;URL&lt;/em&gt; from the previous question points to an &lt;em&gt;executable (.exe)&lt;/em&gt; file that is downloaded on the victim’s system.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ca8497a7f1e794b33f89db754820e4b7_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;404px&#34; data-flex-grow=&#34;168&#34; height=&#34;475&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/ca8497a7f1e794b33f89db754820e4b7_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f3a357ef92a36be11148a55c34eab172_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2461px&#34; data-flex-grow=&#34;1025&#34; height=&#34;78&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/f3a357ef92a36be11148a55c34eab172_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-9-the-suspicious-file-downloaded-from-the-c2-server-contained-malicious-content-with-the-pattern-thm-what-is-thatpattern&#34;&gt;Question 9: The suspicious file downloaded from the C2 server contained malicious content with the pattern THM{……….}; what is that pattern?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we have analyzed the suspicious event within &lt;em&gt;Splunk,&lt;/em&gt; we need to start looking at the malicious content, but how do we do that? Well, the wording of this question is a bit confusing but since we do not have access to the suspicious binary within our ingested data, we’re going to pivot and gather some intelligence on the &lt;em&gt;C2&lt;/em&gt; &lt;em&gt;URL&lt;/em&gt; instead.&lt;/p&gt;&#xA;&lt;p&gt;Let’s start out by checking the &lt;em&gt;C2 URL&lt;/em&gt; against &lt;em&gt;VirusTotal&lt;/em&gt; to see if we can gather any information about it.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/url/ec89f7db79c0760ecd6676a32feb5b0362526cbd491302ff3ad7bb0b640d21ce/details&#34;  title=&#34;https://www.virustotal.com/gui/url/ec89f7db79c0760ecd6676a32feb5b0362526cbd491302ff3ad7bb0b640d21ce/details&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;&lt;em&gt;VirusTotal&lt;/em&gt;&lt;/strong&gt;&#xA;VirusTotalwww.virustotal.com&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/url/ec89f7db79c0760ecd6676a32feb5b0362526cbd491302ff3ad7bb0b640d21ce/details&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;While the detection looks clean, let’s navigate to the &lt;em&gt;Details&lt;/em&gt; tab to get some extra information. Navigate to the &lt;em&gt;HTML Info&lt;/em&gt; section and check out the &lt;em&gt;Meta Tags —&lt;/em&gt; notice anything interesting?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2bb4e146e09d4ea224dca881587c56b3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;343px&#34; data-flex-grow=&#34;143&#34; height=&#34;503&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/2bb4e146e09d4ea224dca881587c56b3_MD5.png&#34; width=&#34;720&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Is that a flag we see?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e1c8582f264d1ef090b13c541592e94a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2526px&#34; data-flex-grow=&#34;1052&#34; height=&#34;76&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/e1c8582f264d1ef090b13c541592e94a_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-10-what-is-the-url-that-the-infected-host-connected-to&#34;&gt;Question 10: What is the URL that the infected host connected to?&#xA;&lt;/h3&gt;&lt;p&gt;Okay, we’ve reached the last question, and it’s a straightforward one. The &lt;em&gt;URL&lt;/em&gt; that the infected host connected to is the same one we used to answer &lt;strong&gt;Question 9.&lt;/strong&gt; Simply copy, paste, and submit the final flag!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9dcf1484e0873f789170cc9ab8297fa2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;404px&#34; data-flex-grow=&#34;168&#34; height=&#34;475&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/9dcf1484e0873f789170cc9ab8297fa2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4d808bab59132288a819496c96ccbcf3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-benign-challenge-room-walkthrough/4d808bab59132288a819496c96ccbcf3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;A big thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for another awesome hands-on challenge! By leveraging &lt;em&gt;Splunk&lt;/em&gt;, we’ve successfully identified the affected &lt;em&gt;HR user&lt;/em&gt; and uncovered how a &lt;em&gt;Living off the Land&lt;/em&gt; (LOLBIN) binary was abused to bypass security controls and download the malicious payload. Our investigation revealed that the payload was hosted on a suspicious &lt;em&gt;URL&lt;/em&gt;, which we traced back to a compromised website with some interesting metadata.&lt;/p&gt;&#xA;&lt;p&gt;The &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/benign&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Benign&lt;/strong&gt;&lt;/a&gt; room is a great opportunity to go hands-on with &lt;em&gt;Splunk,&lt;/em&gt; exercise your research skills, and get familiar with the &lt;em&gt;LOLBAS&lt;/em&gt; repository. As a defender, understanding how legitimate binaries are abused can help enrich your investigations and uncover the whole attack story. Personally, I find every opportunity to practice log analysis in a logging or &lt;em&gt;SIEM&lt;/em&gt; platform helpful to keep my skills sharp and get the repetitions in with the tool. With the analysis of the logs completed, let’s wrap up this investigation!&lt;/p&gt;&#xA;&lt;p&gt;Remember, if you found this walkthrough helpful in leveling up your skills or getting you through a tricky question, &lt;strong&gt;please give it a clap&lt;/strong&gt;! Your feedback lets me know that I helped you out on your security journey. We’re in this together! Thanks for the support!&lt;/p&gt;&#xA;&lt;p&gt;Until next week’s challenge — stay curious and be safe out there!&lt;/p&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Splunk (Stats):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://docs.splunk.com/Documentation/Splunk/9.3.1/SearchReference/Stats&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://docs.splunk.com/Documentation/Splunk/9.3.1/SearchReference/Stats&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn (schtasks.exe):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows/win32/taskschd/schtasks&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/windows/win32/taskschd/schtasks&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — Ingress Tool Transfer — T1105:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1105/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1105/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn (Certutil):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/certutil&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/certutil&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/url/ec89f7db79c0760ecd6676a32feb5b0362526cbd491302ff3ad7bb0b640d21ce/details&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/url/ec89f7db79c0760ecd6676a32feb5b0362526cbd491302ff3ad7bb0b640d21ce/details&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Boogeyman 1 Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/</link>
            <pubDate>Sun, 04 Aug 2024 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/bbee23c622202d846d1494cceb99078e_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Boogeyman 1 Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmeboogeyman-1-challenge-walkthrough&#34;&gt;TryHackMe — Boogeyman 1 Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;email-endpoint--network-forensic-investigation-using-thunderbird-lnkparse3-powershell-logs-jq--wireshark&#34;&gt;Email, Endpoint, &amp;amp; Network Forensic Investigation using Thunderbird, LNKParse3, PowerShell Logs, JQ, &amp;amp; Wireshark&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;bbee23c622202d846d1494cceb99078e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;394px&#34; data-flex-grow=&#34;164&#34; height=&#34;487&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/bbee23c622202d846d1494cceb99078e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman1&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/boogeyman1&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Are you afraid of the Boogeyman?&lt;/p&gt;&#xA;&lt;p&gt;If not, welcome to my weekly walkthrough, you’ve stumbled on the right blog! This blog is a walkthrough of the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman1&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Boogeyman 1&lt;/strong&gt;&lt;/a&gt; challenge from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; and is the first in a series of capstone challenges for the &lt;em&gt;SOC Level 1&lt;/em&gt; path. This challenge is a multi-part digital forensics and incident response (&lt;em&gt;DFIR&lt;/em&gt;) investigation focusing on a fictional threat actor called the &lt;em&gt;Boogeyman.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;In this challenge, we will investigate email, endpoint, and network artifacts collected from a victim compromised by this new, shadowy threat actor. It is our job as security analysts to determine how the &lt;em&gt;Boogeyman&lt;/em&gt; got in, what they took, and how they did it. Doesn’t sound so scary, right?&lt;/p&gt;&#xA;&lt;p&gt;To unmask the &lt;em&gt;Boogeyman&lt;/em&gt;, we’ll utilize a few tools at different points in our investigation including &lt;em&gt;LNKParse3&lt;/em&gt;, &lt;em&gt;JQ&lt;/em&gt; to parse &lt;em&gt;JSON&lt;/em&gt; formatted &lt;em&gt;PowerShell&lt;/em&gt; logs, and &lt;em&gt;Wireshark&lt;/em&gt; for deep packet capture analysis.&lt;/p&gt;&#xA;&lt;p&gt;Now let’s grab our flashlights and shine a light on the &lt;em&gt;Boogeyman’s&lt;/em&gt; tactics, techniques, and procedures. I don’t want to ruin any of the fun, so this walkthrough will not contain spoilers, but please use this as a reference and enjoy! Thanks for reading along!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman1&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/boogeyman1&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;em&gt;Uncover the secrets of the new emerging threat, the Boogeyman.&lt;/em&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;In this room, you will be tasked to analyse the Tactics, Techniques, and Procedures (TTPs) executed by a threat group, from obtaining initial access until achieving its objective.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;task-2emailanalysis&#34;&gt;Task 2 — Email Analysis&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Julianne, a finance employee working for Quick Logistics LLC, received a follow-up email regarding an unpaid invoice from their business partner, B Packaging Inc. Unbeknownst to her, the attached document was malicious and compromised her workstation.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The security team was able to flag the suspicious execution of the attachment, in addition to the phishing reports received from the other finance department employees, making it seem to be a targeted attack on the finance team. Upon checking the latest trends, the initial TTP used for the malicious attachment is attributed to the new threat group named Boogeyman, known for targeting the logistics sector.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;You are tasked to analyse and assess the impact of the compromise.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h3 id=&#34;question-1-what-is-the-email-address-used-to-send-the-phishingemail&#34;&gt;Question 1: What is the email address used to send the phishing email?&#xA;&lt;/h3&gt;&lt;p&gt;We’ll jump right into our environment and look at the &lt;em&gt;dump.eml&lt;/em&gt; file. There are number of ways that we can approach header analysis of this email, but let’s just open with the &lt;em&gt;Mozilla Thunderbird&lt;/em&gt; client so that we can get the victim’s perspective.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6bafcd9c152345a070963caa99f432b8_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;362px&#34; data-flex-grow=&#34;150&#34; height=&#34;530&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/6bafcd9c152345a070963caa99f432b8_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The phishing email.&lt;/p&gt;&#xA;&lt;p&gt;We’ll start out with a simple one and enter the &lt;em&gt;From&lt;/em&gt; field address to answer &lt;strong&gt;Question 1.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c35831955bd37b49289c293a6b10bd17_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/c35831955bd37b49289c293a6b10bd17_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-what-is-the-email-address-of-thevictim&#34;&gt;Question 2: What is the email address of the victim?&#xA;&lt;/h3&gt;&lt;p&gt;We’ll follow the same process for &lt;strong&gt;Question 2&lt;/strong&gt; except this time we will enter the &lt;em&gt;To&lt;/em&gt; field name which is the recipient address.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ce0d0eb3b67b8c35253f25e4035184aa_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3000px&#34; data-flex-grow=&#34;1250&#34; height=&#34;64&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/ce0d0eb3b67b8c35253f25e4035184aa_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-what-is-the-name-of-the-third-party-mail-relay-service-used-by-the-attacker-based-on-thedkim-signatureandlist-unsubscribeheaders&#34;&gt;Question 3: What is the name of the third-party mail relay service used by the attacker based on the &lt;strong&gt;DKIM-Signature&lt;/strong&gt; and &lt;strong&gt;List-Unsubscribe&lt;/strong&gt; headers?&#xA;&lt;/h3&gt;&lt;p&gt;Now, we need to get more detail beyond what’s shown in the normal, visible headers by viewing the message source.&lt;/p&gt;&#xA;&lt;p&gt;To do this in &lt;em&gt;Thunderbird&lt;/em&gt; press &lt;em&gt;More &amp;gt; View Source.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;08db70480f023cd65d92669c3b5e7744_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;629px&#34; data-flex-grow=&#34;262&#34; height=&#34;305&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/08db70480f023cd65d92669c3b5e7744_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;It might look a little scary at first, but let’s use the &lt;em&gt;find&lt;/em&gt; function of the text editor to locate the &lt;strong&gt;DKIM-Signature&lt;/strong&gt; line:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1af20bd6a93a9ee29b6ada1ae60846e1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1018px&#34; data-flex-grow=&#34;424&#34; height=&#34;157&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/1af20bd6a93a9ee29b6ada1ae60846e1_MD5.png&#34; width=&#34;666&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you would like more information on what &lt;em&gt;DKIM&lt;/em&gt; is or what the header means, refer to the excellent &lt;a class=&#34;link&#34; href=&#34;https://mailtrap.io/blog/email-headers/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Email Headers list from &lt;em&gt;Mailtrap.io&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt; I refer to this list often when I need additional context for email header analysis!&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://mailtrap.io/blog/email-headers/&#34;  title=&#34;https://mailtrap.io/blog/email-headers/&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Email Headers Explained: Definition, Components, Role [2024]&lt;/strong&gt;&#xA;_Email Headers contain important information and can be useful for improving email deliverability. Learn what they are…_mailtrap.io&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://mailtrap.io/blog/email-headers/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;fe2ea3c63f1dbe6b5efb95726ae853f0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/fe2ea3c63f1dbe6b5efb95726ae853f0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-what-is-the-name-of-the-file-inside-the-encrypted-attachment&#34;&gt;Question 4: What is the name of the file inside the encrypted attachment?&#xA;&lt;/h3&gt;&lt;p&gt;Now, let’s download the suspicious &lt;em&gt;ZIP archive&lt;/em&gt; file from the email message and save it to our artefacts folder. If we peek inside of the archive, we’ll see a &lt;em&gt;.lnk&lt;/em&gt; (shortcut) file within it.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;30adf108b4d1c764b06944d91915f0e6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;336px&#34; data-flex-grow=&#34;140&#34; height=&#34;503&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/30adf108b4d1c764b06944d91915f0e6_MD5.png&#34; width=&#34;705&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Very suspicious, indeed! Fortunately, this is enough information to answer &lt;strong&gt;Question 4!&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5a179953bdc01d44ab11bde6e0452e3c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/5a179953bdc01d44ab11bde6e0452e3c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-is-the-password-of-the-encrypted-attachment&#34;&gt;Question 5: What is the password of the encrypted attachment?&#xA;&lt;/h3&gt;&lt;p&gt;Let’s jump back to &lt;em&gt;Thunderbird&lt;/em&gt; and review the suspicious email sent to the victim. We’ll notice that the sender was kind enough to send us a handy password to open the archive.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;693f4564ebbdf548883b8a3ea9046246_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1355px&#34; data-flex-grow=&#34;564&#34; height=&#34;68&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/693f4564ebbdf548883b8a3ea9046246_MD5.png&#34; width=&#34;384&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now that we have the password for the &lt;em&gt;ZIP&lt;/em&gt; file, we will extract the &lt;em&gt;.lnk&lt;/em&gt; file. In the next question, we’ll perform some analysis on this &lt;em&gt;LNK file&lt;/em&gt; in the next question.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9935044443f9e9ea6f003b69408c76e9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2493px&#34; data-flex-grow=&#34;1038&#34; height=&#34;77&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/9935044443f9e9ea6f003b69408c76e9_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-based-on-the-result-of-the-lnkparse-tool-what-is-the-encoded-payload-found-in-the-command-line-arguments-field&#34;&gt;Question 6: Based on the result of the lnkparse tool, what is the encoded payload found in the Command Line Arguments field?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we have extracted the &lt;em&gt;.lnk&lt;/em&gt; from the archive, we’ll parse it and see if we can determine what it does. To do this, we will use the tool suggested in the challenge introduction — &lt;a class=&#34;link&#34; href=&#34;https://github.com/Matmaus/LnkParse3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;LnkParse3&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Within our analysis environment, open up the terminal and use the following syntax to parse the file:&lt;/p&gt;&#xA;&lt;p&gt;lnkparse NAME-OF-FILE.lnk&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;42f990b299ad2908349fc11132ada1bc_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3000px&#34; data-flex-grow=&#34;1250&#34; height=&#34;64&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/42f990b299ad2908349fc11132ada1bc_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Scroll through the output and we’ll see something interesting — an encoded &lt;em&gt;PowerShell&lt;/em&gt; command. This is extremely suspicious and definitely requires further investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4d3227e1abf6911fec50eeb961bda569_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3348px&#34; data-flex-grow=&#34;1395&#34; height=&#34;86&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/4d3227e1abf6911fec50eeb961bda569_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/4d3227e1abf6911fec50eeb961bda569_MD5_hu_2846803c0c82618c.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/4d3227e1abf6911fec50eeb961bda569_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;For now, we only need to submit the encoded command to answer &lt;strong&gt;Question 6&lt;/strong&gt; before we move on to investigating the victim’s endpoint device.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;741d26aea1b4034de62ef3c5edf03c08_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2782px&#34; data-flex-grow=&#34;1159&#34; height=&#34;69&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/741d26aea1b4034de62ef3c5edf03c08_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;task-3endpointsecurity&#34;&gt;Task 3 — Endpoint Security&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Based on the initial findings, we discovered how the malicious attachment compromised Julianne’s workstation:&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;A PowerShell command was executed.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Decoding the payload reveals the starting point of endpoint activities.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h3 id=&#34;question-1-what-are-the-domains-used-by-the-attacker-for-file-hosting-and-c2-provide-the-domains-in-alphabetical-order-eg-adomaincombdomaincom&#34;&gt;Question 1: What are the domains used by the attacker for file hosting and C2? Provide the domains in alphabetical order. (e.g. a.domain.com,b.domain.com)&#xA;&lt;/h3&gt;&lt;p&gt;So, we know that a malicious &lt;em&gt;PowerShell&lt;/em&gt; command was executed from the execution of malicious attachment we analyzed in the previous task. To determine the impact of the malicious attachment, we’re going to need to analyze the &lt;em&gt;Windows&lt;/em&gt; &lt;em&gt;PowerShell&lt;/em&gt; event logs.&lt;/p&gt;&#xA;&lt;p&gt;But first, let’s decode the &lt;em&gt;Base64 encoded&lt;/em&gt; payload that we discovered within the attachment. There are a few tools to do this, but for simplicity, I’ll just utilize the &lt;strong&gt;Base64 command&lt;/strong&gt; to decode this in the terminal_:_&lt;/p&gt;&#xA;&lt;p&gt;echo &amp;ldquo;ENCODED STRING&amp;rdquo; | base64 -d&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;377dc3b03ce94050267f8edd8e1e84f3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;7384px&#34; data-flex-grow=&#34;3076&#34; height=&#34;39&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/377dc3b03ce94050267f8edd8e1e84f3_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/377dc3b03ce94050267f8edd8e1e84f3_MD5_hu_c82de6c42e0a0e74.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/377dc3b03ce94050267f8edd8e1e84f3_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s note this &lt;em&gt;URL&lt;/em&gt; and move on to analyzing the &lt;em&gt;PowerShell&lt;/em&gt; logs. We have just a quick detour — remember the note from &lt;strong&gt;Task 1&lt;/strong&gt;?&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Note: The &lt;strong&gt;powershell.json&lt;/strong&gt; file contains JSON-formatted PowerShell logs extracted from its original evtx file via the &lt;a class=&#34;link&#34; href=&#34;https://github.com/Silv3rHorn/evtx2json&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;evtx2json&lt;/a&gt; tool.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;So, rather than viewing the exported &lt;em&gt;PowerShell Windows Event Log (.evtx)&lt;/em&gt; file, we are going to rely on &lt;a class=&#34;link&#34; href=&#34;https://jqlang.github.io/jq/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;JQ&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;,&lt;/strong&gt; which is a command-line based &lt;em&gt;JSON&lt;/em&gt; parsing tool to parse the &lt;em&gt;PowerShell.json.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;We will start with the simplest option; parsing the JSON file into the beautified output using the syntax below:&lt;/p&gt;&#xA;&lt;p&gt;cat powershell.json | jq&lt;/p&gt;&#xA;&lt;p&gt;Right away, we will see a ton of information but it’s too much output to sift through manually. Let’s filter by events by “&lt;em&gt;ScriptBlockText&lt;/em&gt;” so that we can focus on events with statements that we can analyze.&lt;/p&gt;&#xA;&lt;p&gt;According to &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_script_blocks?view=powershell-7.4&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;Microsoft&lt;/em&gt;&lt;/a&gt;:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;In the PowerShell programming language, a script block is a collection of statements or expressions that can be used as a single unit. The collection of statements can be enclosed in braces (&lt;code&gt;{}&lt;/code&gt;), defined as a function, or saved in a script file. A script block can return values and accept parameters and arguments.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Let’s go a step further too. We’ll re-tool our &lt;em&gt;JQ&lt;/em&gt; filter to apply sorting by Timestamp, the &lt;em&gt;ScriptBlockText&lt;/em&gt; field, and remove duplicate entries:&lt;/p&gt;&#xA;&lt;p&gt;cat powershell.json | jq -s -c &amp;lsquo;sort_by(.Timestamp) | .[] | {ScriptBlockText}&amp;rsquo; | sort | uniq&lt;/p&gt;&#xA;&lt;p&gt;While this still returns a lot of output, we’ve filtered to the most relevant output for our search. In particular, there are a couple of interesting lines that are requesting data with different URLs — one uses &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-webrequest?view=powershell-7.4&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;Invoke-WebRequest&lt;/em&gt;&lt;/a&gt; and the other &lt;em&gt;t_hat we already found by decoding the &lt;em&gt;Base64&lt;/em&gt; command uses &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/dotnet/api/system.net.webclient?view=net-8.0&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;WebClient&lt;/em&gt;&lt;/a&gt;&lt;/em&gt;._&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;625843a37b35e562cf61650f47a83f81_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;481px&#34; data-flex-grow=&#34;200&#34; height=&#34;399&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/625843a37b35e562cf61650f47a83f81_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;These are the two &lt;em&gt;command and control (C2)&lt;/em&gt; domains that we are looking for to answer &lt;strong&gt;Question 1&lt;/strong&gt;!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f1690a3f55be9a97cd3d6444776848f0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/f1690a3f55be9a97cd3d6444776848f0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-what-is-the-name-of-the-enumeration-tool-downloaded-by-the-attacker&#34;&gt;Question 2: What is the name of the enumeration tool downloaded by the attacker?&#xA;&lt;/h3&gt;&lt;p&gt;We’ll keep with the same &lt;strong&gt;JQ&lt;/strong&gt; output since we actually saw this earlier while looking for the C2 URLs.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;abac31be8d925d42f4ac1d4f75825497_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;16941px&#34; data-flex-grow=&#34;7058&#34; height=&#34;17&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/abac31be8d925d42f4ac1d4f75825497_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/abac31be8d925d42f4ac1d4f75825497_MD5_hu_e645e12028b7773f.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/abac31be8d925d42f4ac1d4f75825497_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The attacker downloaded a tool from a &lt;em&gt;GitHub Repository&lt;/em&gt;, but is it an enumeration tool? Let’s do some research to find out.&lt;/p&gt;&#xA;&lt;p&gt;See the name of the &lt;em&gt;.ps1&lt;/em&gt; file referenced at the end of the command? Navigate to the &lt;em&gt;GitHub&lt;/em&gt; repository and we can locate the separate repository for referenced tool!&lt;/p&gt;&#xA;&lt;p&gt;We’ll do some quick reading through the documentation for this project to discover that the tool does contain some enumeration function using &lt;em&gt;WMI -&lt;/em&gt; this confirms that we discovered the correct tool!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;dd06f24ce9f9d6f59b5ee4465634de41_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/dd06f24ce9f9d6f59b5ee4465634de41_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-what-is-the-file-accessed-by-the-attacker-using-the-downloadedsq3exebinary-provide-the-full-file-path-with-escaped-backslashes&#34;&gt;Question 3: What is the file accessed by the attacker using the downloaded &lt;strong&gt;sq3.exe&lt;/strong&gt; binary? Provide the full file path with escaped backslashes.&#xA;&lt;/h3&gt;&lt;p&gt;Okay, now we are looking for a specific executable. We’ll keep with using &lt;em&gt;JQ&lt;/em&gt; but we need to adjust our scope. What if we &lt;em&gt;grep&lt;/em&gt; the output to display only results containing &lt;em&gt;sq3.exe?&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;cat powershell.json | jq &amp;lsquo;{ScriptBlockText}&amp;rsquo; | grep &amp;ldquo;sq3.exe&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;31a6915fa8cd8b31e8b021c29a8f8391_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;9600px&#34; data-flex-grow=&#34;4000&#34; height=&#34;30&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/31a6915fa8cd8b31e8b021c29a8f8391_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/31a6915fa8cd8b31e8b021c29a8f8391_MD5_hu_fe708e94fb8b1c38.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/31a6915fa8cd8b31e8b021c29a8f8391_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Hey, that’s getting us closer! We found a file that the executable accessed. Now all we need to know is the user account name to add to the front of the path. We’ll use the same command as before but revise the &lt;em&gt;grep&lt;/em&gt; to the &lt;em&gt;change directory (cd)&lt;/em&gt; command. This should help us understand how the attacker traversed the victim’s directories and disclose a valid profile name.&lt;/p&gt;&#xA;&lt;p&gt;cat powershell.json | jq &amp;lsquo;{ScriptBlockText}&amp;rsquo; | grep &amp;ldquo;cd&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;038ed49f28d5fb56be8a2f7c15578881_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2823px&#34; data-flex-grow=&#34;1176&#34; height=&#34;68&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/038ed49f28d5fb56be8a2f7c15578881_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Here, we’ll find references to a user profile name. Append this profile name to the path we found earlier accessed by &lt;em&gt;sq3.exe&lt;/em&gt; to form our answer!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d16d9cfa7c54451aa87dc50f424fcc98_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2370px&#34; data-flex-grow=&#34;987&#34; height=&#34;81&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/d16d9cfa7c54451aa87dc50f424fcc98_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-what-is-the-software-that-uses-the-file-inq3&#34;&gt;Question 4: What is the software that uses the file in Q3?&#xA;&lt;/h3&gt;&lt;p&gt;To answer this question, look at the file path from the previous question:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;31a6915fa8cd8b31e8b021c29a8f8391_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;9600px&#34; data-flex-grow=&#34;4000&#34; height=&#34;30&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/31a6915fa8cd8b31e8b021c29a8f8391_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/31a6915fa8cd8b31e8b021c29a8f8391_MD5_hu_fe708e94fb8b1c38.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/31a6915fa8cd8b31e8b021c29a8f8391_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The file is a database that stores information for a specific application, the specific application is the answer to &lt;strong&gt;Question 4.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5ef546f7535dce58c6bd610d2af331b1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1882px&#34; data-flex-grow=&#34;784&#34; height=&#34;102&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/5ef546f7535dce58c6bd610d2af331b1_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-is-the-name-of-the-exfiltrated-file&#34;&gt;Question 5: What is the name of the exfiltrated file?&#xA;&lt;/h3&gt;&lt;p&gt;Let’s pull back and revisit the &lt;em&gt;JQ&lt;/em&gt; output for &lt;em&gt;ScriptBlockText&lt;/em&gt; that we used in &lt;strong&gt;Question 1&lt;/strong&gt; and browse through the output again. We’ll stumble across the following line where we can see some evidence of a file being exfiltrated to an external &lt;em&gt;IP address&lt;/em&gt;:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b51488279f6516e764b14be9f0e22de6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;6857px&#34; data-flex-grow=&#34;2857&#34; height=&#34;42&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/b51488279f6516e764b14be9f0e22de6_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/b51488279f6516e764b14be9f0e22de6_MD5_hu_7c0bbd4770d1a55a.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/b51488279f6516e764b14be9f0e22de6_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Submit the &lt;em&gt;IP address&lt;/em&gt; as the answer but also add it to your notes as we may need it again later!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c88aa5f79f358ee240d4fb69956f77bd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2526px&#34; data-flex-grow=&#34;1052&#34; height=&#34;76&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/c88aa5f79f358ee240d4fb69956f77bd_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-what-type-of-file-uses-thekdbx-file-extension&#34;&gt;Question 6: What type of file uses the .kdbx file extension?&#xA;&lt;/h3&gt;&lt;p&gt;If you aren’t familiar with this file type, do some quick &lt;em&gt;Google&lt;/em&gt; research to determine what application uses it. There is a help center for the application that has a detailed specification page about the file extension.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;fbc398d627a6ff83029db43d5d64d562_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2865px&#34; data-flex-grow=&#34;1194&#34; height=&#34;67&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/fbc398d627a6ff83029db43d5d64d562_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-7-what-is-the-encoding-used-during-the-exfiltration-attempt-of-the-sensitive-file&#34;&gt;Question 7: What is the encoding used during the exfiltration attempt of the sensitive file?&#xA;&lt;/h3&gt;&lt;p&gt;Continue reviewing the &lt;em&gt;JQ&lt;/em&gt; parsed command output. Following the line we discovered to answer &lt;strong&gt;Question 5&lt;/strong&gt;, we’ll see another interesting item that contains the file encoding used during the exfiltration:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c14eeeeac9b9904284405aa3b1913d3e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;5647px&#34; data-flex-grow=&#34;2352&#34; height=&#34;51&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/c14eeeeac9b9904284405aa3b1913d3e_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/c14eeeeac9b9904284405aa3b1913d3e_MD5_hu_4c4c060756b9fe88.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/c14eeeeac9b9904284405aa3b1913d3e_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;832aea70d39e881e683a2cfcadd92cae_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/832aea70d39e881e683a2cfcadd92cae_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-8-what-is-the-tool-used-for-exfiltration&#34;&gt;Question 8: What is the tool used for exfiltration?&#xA;&lt;/h3&gt;&lt;p&gt;To answer &lt;strong&gt;Question 8,&lt;/strong&gt; refer back to the previous question’s output that contains the encoding method and look further down the command.&lt;/p&gt;&#xA;&lt;p&gt;After the data is encoded, we’ll see another command which appears to be using &lt;em&gt;DNS&lt;/em&gt; to query the &lt;em&gt;A record&lt;/em&gt; of attacker-controlled infrastructure at the &lt;em&gt;$destination&lt;/em&gt; variable. Remember that the &lt;em&gt;IP address&lt;/em&gt; we found in &lt;strong&gt;Question 5&lt;/strong&gt; was defined as &lt;em&gt;$destination?&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;26f2115be2d4f2d6f48f3c672b92751c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;5647px&#34; data-flex-grow=&#34;2352&#34; height=&#34;51&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/26f2115be2d4f2d6f48f3c672b92751c_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/26f2115be2d4f2d6f48f3c672b92751c_MD5_hu_afe9ec7a95366df7.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/26f2115be2d4f2d6f48f3c672b92751c_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This looks like it might be a living off the land exfiltration technique where targeted data is encoded, split to a character limit, and then exfiltrated though &lt;em&gt;DNS&lt;/em&gt; queries to the adversary’s infrastructure by appending the data (the &lt;em&gt;$line&lt;/em&gt; variable) to a domain name where it can be reassembled or interpreted by the adversary.&lt;/p&gt;&#xA;&lt;p&gt;Maybe we will get more information when we move into the network packet capture analysis…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5d6e5a8f74b7a0f4b1942ccff6da0b56_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/5d6e5a8f74b7a0f4b1942ccff6da0b56_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;task-4network-trafficanalysis&#34;&gt;Task 4 — Network Traffic Analysis&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Based on the PowerShell logs investigation, we have seen the full impact of the attack:&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The threat actor was able to read and exfiltrate two potentially sensitive files.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The domains and ports used for the network activity were discovered, including the tool used by the threat actor for exfiltration.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h3 id=&#34;question-1-what-software-is-used-by-the-attacker-to-host-its-presumed-filepayload-server&#34;&gt;Question 1: What software is used by the attacker to host its presumed file/payload server?&#xA;&lt;/h3&gt;&lt;p&gt;Now, we are moving into the next phase of our investigation, the network traffic analysis. From the &lt;em&gt;artefact folder,&lt;/em&gt; double-click &lt;em&gt;capture.pcapng&lt;/em&gt; to open it with &lt;em&gt;Wireshark.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once we’re in &lt;em&gt;Wireshark&lt;/em&gt;, we need a starting point for the next phase of our investigation. Let’s begin by inputting the attacker’s infrastructure &lt;em&gt;IP address&lt;/em&gt; that we located in &lt;strong&gt;Question 5&lt;/strong&gt; of the &lt;em&gt;Endpoint Security&lt;/em&gt; section into &lt;em&gt;Wireshark’s&lt;/em&gt; filter:&lt;/p&gt;&#xA;&lt;p&gt;ip.addr==167.71.211.113&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;46873b4d4746d236483da0277386c287_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1006px&#34; data-flex-grow=&#34;419&#34; height=&#34;286&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/46873b4d4746d236483da0277386c287_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/46873b4d4746d236483da0277386c287_MD5_hu_74db750374715da4.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/46873b4d4746d236483da0277386c287_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;That’s a lot of output, so let’s make this a bit more manageable and focus on the &lt;em&gt;HTTP&lt;/em&gt; protocol traffic by further adjusting our filter.&lt;/p&gt;&#xA;&lt;p&gt;http &amp;amp;&amp;amp; ip.addr==167.71.211.113&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;afc90c5f1f82a05f7b5738c88e8319fb_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1511px&#34; data-flex-grow=&#34;629&#34; height=&#34;127&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/afc90c5f1f82a05f7b5738c88e8319fb_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Much more manageable! Let’s focus in on the first &lt;em&gt;HTTP&lt;/em&gt; response (&lt;em&gt;33256.)&lt;/em&gt; Right click the packet row &amp;gt; &lt;em&gt;Follow&lt;/em&gt; &amp;gt; &lt;em&gt;HTTP Stream.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3c0f988dcdebccf73307c96b7f00b529_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;441px&#34; data-flex-grow=&#34;183&#34; height=&#34;435&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/3c0f988dcdebccf73307c96b7f00b529_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once the &lt;em&gt;HTTP Stream&lt;/em&gt; window opens, we can check out the &lt;em&gt;Server&lt;/em&gt; field to determine what application is hosting the web server:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;100b70b21ea22e4b8c3e3ad2d5bd59a5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1371px&#34; data-flex-grow=&#34;571&#34; height=&#34;140&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/100b70b21ea22e4b8c3e3ad2d5bd59a5_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d67ff255f95c933c9dbaa089b0199e77_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2313px&#34; data-flex-grow=&#34;963&#34; height=&#34;83&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/d67ff255f95c933c9dbaa089b0199e77_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-what-http-method-is-used-by-the-c2-for-the-output-of-the-commands-executed-by-the-attacker&#34;&gt;Question 2: What HTTP method is used by the C2 for the output of the commands executed by the attacker?&#xA;&lt;/h3&gt;&lt;p&gt;We found this information when analyzing the &lt;em&gt;PowerShell&lt;/em&gt; logs in &lt;em&gt;Endpoint Security&lt;/em&gt; &lt;strong&gt;Question 1,&lt;/strong&gt; remember? If not, here’s a refresher:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5e16271c80d88af9478b00f6e02d6552_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;7783px&#34; data-flex-grow=&#34;3243&#34; height=&#34;37&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/5e16271c80d88af9478b00f6e02d6552_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/5e16271c80d88af9478b00f6e02d6552_MD5_hu_90163091b21628e7.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/5e16271c80d88af9478b00f6e02d6552_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Since, we know the attacker is exfiltrating the data out and not requesting it in, the method would NOT be GET…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e65c539420bffcccfeea417eaabf6685_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1882px&#34; data-flex-grow=&#34;784&#34; height=&#34;102&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/e65c539420bffcccfeea417eaabf6685_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-what-is-the-protocol-used-during-the-exfiltration-activity&#34;&gt;Question 3: What is the protocol used during the exfiltration activity?&#xA;&lt;/h3&gt;&lt;p&gt;Remember back in &lt;strong&gt;Question 8&lt;/strong&gt; of the &lt;em&gt;Endpoint Security Section&lt;/em&gt; &lt;strong&gt;&lt;em&gt;(Task 3)&lt;/em&gt;&lt;/strong&gt; we discovered that the exfiltration tool used a specific protocol? This is the answer to &lt;strong&gt;Question 3.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d179fd2e6bba1b16d1e969368f90993a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2000px&#34; data-flex-grow=&#34;833&#34; height=&#34;96&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/d179fd2e6bba1b16d1e969368f90993a_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-what-is-the-password-of-the-exfiltrated-file&#34;&gt;Question 4: What is the password of the exfiltrated file?&#xA;&lt;/h3&gt;&lt;p&gt;Since this gets a little complicated, let’s lean on the question hint:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1e5f83619688ab3f2452beba967f2fb5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;736px&#34; data-flex-grow=&#34;306&#34; height=&#34;143&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/1e5f83619688ab3f2452beba967f2fb5_MD5.png&#34; width=&#34;439&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Thanks, THM! So, the working theory here is that we need to locate a password that the victim stored in the file that accessed by &lt;em&gt;sq3.exe&lt;/em&gt; in the &lt;em&gt;Endpoint Investigation&lt;/em&gt; (&lt;strong&gt;Question 3&lt;/strong&gt;) to “unlock” the exfiltrated file.&lt;/p&gt;&#xA;&lt;p&gt;So, let’s leverage &lt;em&gt;Wireshark’s&lt;/em&gt; search function to search the packets for a keyword. First, press &lt;em&gt;CTRL + F&lt;/em&gt; to bring up the find/search bar, then select &lt;em&gt;String,&lt;/em&gt; and finally select &lt;em&gt;Packet details&lt;/em&gt; so we can search within middle “&lt;em&gt;packet details&lt;/em&gt;” window. Now enter &lt;em&gt;sq3.exe&lt;/em&gt; into the search box.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5a4247001f5a63de1f5efd848ab1aef5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;343px&#34; data-flex-grow=&#34;143&#34; height=&#34;559&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/5a4247001f5a63de1f5efd848ab1aef5_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Here, we will locate an &lt;em&gt;HTTP GET&lt;/em&gt; request packet (&lt;em&gt;42700&lt;/em&gt;), but since the attacker took the data and sent it out, we’re looking for a &lt;em&gt;POST&lt;/em&gt; request.&lt;/p&gt;&#xA;&lt;p&gt;If we continue with the &lt;em&gt;find&lt;/em&gt; function, there are four hits for &lt;em&gt;sq3.exe.&lt;/em&gt; The last one has the same &lt;em&gt;PowerShell&lt;/em&gt; command in the text data that we found in the &lt;em&gt;Endpoint Analysis&lt;/em&gt; section for &lt;strong&gt;Question 3.&lt;/strong&gt; It feels like we are getting closer!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a94130a9ed97070fd84802a854e03889_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;390px&#34; data-flex-grow=&#34;162&#34; height=&#34;492&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/a94130a9ed97070fd84802a854e03889_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;So, we’ll use &lt;em&gt;44459&lt;/em&gt; as our starting point for searching &lt;em&gt;POST&lt;/em&gt; requests. We’ll need to cut down the noise by filtering &lt;em&gt;HTTP POST&lt;/em&gt; methods since we can’t simply just keep searching &lt;em&gt;sq3.exe.&lt;/em&gt; We can further narrow our scope by also filtering anything below our starting point frame number.&lt;/p&gt;&#xA;&lt;p&gt;http.request.method==POST &amp;amp;&amp;amp; frame.number &amp;gt; 44459&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ade3692fcc79838965acd39ad4f5e2e4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1222px&#34; data-flex-grow=&#34;509&#34; height=&#34;157&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/ade3692fcc79838965acd39ad4f5e2e4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This gets us down to nine entries. Let’s start analyzing the first entry (&lt;em&gt;44467)&lt;/em&gt; and &lt;em&gt;Follow &amp;gt; HTTP Stream:&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;00fd2745bd2b0f65210e3c50e1b87648_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;901px&#34; data-flex-grow=&#34;375&#34; height=&#34;213&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/00fd2745bd2b0f65210e3c50e1b87648_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Well, that’s a big blob of something! Let’s drop it into &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;CyberChef&lt;/em&gt;&lt;/a&gt; so that we can do some decoding operations and see if we can get something readable. To start, we can go lazy mode and see if the &lt;em&gt;Magic&lt;/em&gt; function can do anything for us:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;96e42d1911226939b4843e08012bfb88_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;698px&#34; data-flex-grow=&#34;290&#34; height=&#34;275&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/96e42d1911226939b4843e08012bfb88_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;It looks like &lt;em&gt;CyberChef&lt;/em&gt; can do some decoding if we apply the &lt;em&gt;From Decimal&lt;/em&gt; recipe. Let’s apply it and see what we can find…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ea9cece8c4cf26d9fe67cf4b1f78c034_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2181px&#34; data-flex-grow=&#34;909&#34; height=&#34;88&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/ea9cece8c4cf26d9fe67cf4b1f78c034_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Bingo! We found the “&lt;em&gt;Master Password&lt;/em&gt;” that the victim stored in plain text— not good!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c7a2003a2900c40fab7b891aa6fc5660_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2594px&#34; data-flex-grow=&#34;1081&#34; height=&#34;74&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/c7a2003a2900c40fab7b891aa6fc5660_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-is-the-credit-card-number-stored-inside-the-exfiltrated-file&#34;&gt;Question 5: What is the credit card number stored inside the exfiltrated file?&#xA;&lt;/h3&gt;&lt;p&gt;Alright, we made it to the last question! Now that we have a “&lt;em&gt;Master Password&lt;/em&gt;” we need to unlock something with it…&lt;/p&gt;&#xA;&lt;p&gt;Let’s recap what we know so far:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;The exfiltrated file is a type of database that would require a master password. We know what application it is from &lt;strong&gt;Task 3 — Question 6.&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;From &lt;strong&gt;Question 8&lt;/strong&gt; of the previous task, we also know that this database was being converted to &lt;em&gt;Hexadecimal&lt;/em&gt; in blocks, and exfiltrated over &lt;em&gt;DNS A record&lt;/em&gt; queries to the destination IP address of &lt;em&gt;167[.]71[.]211[.]113&lt;/em&gt;&lt;/li&gt;&#xA;&lt;li&gt;Each &lt;em&gt;DNS&lt;/em&gt; query is sent in the format of an encoded string (&lt;em&gt;$line&lt;/em&gt;) appended to &lt;em&gt;bpakcaging[.]xyz&lt;/em&gt;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Below is the evidence from that question for our reference:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;03423ef59b82a09400782983fcf61e24_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3063px&#34; data-flex-grow=&#34;1276&#34; height=&#34;94&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/03423ef59b82a09400782983fcf61e24_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/03423ef59b82a09400782983fcf61e24_MD5_hu_ded4653799b0627d.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/03423ef59b82a09400782983fcf61e24_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;PowerShell Reference of the KDBX Exfiltration&lt;/p&gt;&#xA;&lt;p&gt;So, we know the file, protocol, domain, and &lt;em&gt;IP address&lt;/em&gt;. Let’s try to leverage &lt;em&gt;Wireshark&lt;/em&gt; to filter out just the packets relevant to this information. To do this, we need to adjust our filter again.&lt;/p&gt;&#xA;&lt;p&gt;First, I went to &lt;a class=&#34;link&#34; href=&#34;https://en.wikipedia.org/wiki/List_of_DNS_record_types&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;Wikipedia&lt;/em&gt;&lt;/a&gt; to find out the type id for the &lt;em&gt;DNS&lt;/em&gt; &lt;em&gt;A Record&lt;/em&gt; which is &lt;strong&gt;1.&lt;/strong&gt; This helps us build our &lt;em&gt;Wireshark&lt;/em&gt; query to only look at DNS A records. Then we also input the &lt;em&gt;IP address&lt;/em&gt; that the data is exfiltrated to.&lt;/p&gt;&#xA;&lt;p&gt;dns.qry.type==1 &amp;amp;&amp;amp; ip.dst==167.71.211.113&lt;/p&gt;&#xA;&lt;p&gt;Now, we will see a ton of rows returned but the data matches the format that we expected based on what we learned about the exfiltration method. But it isn’t readable just yet.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;45789bf2401f8612437274c1294d18ca_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1107px&#34; data-flex-grow=&#34;461&#34; height=&#34;260&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/45789bf2401f8612437274c1294d18ca_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/45789bf2401f8612437274c1294d18ca_MD5_hu_7a67ef9b2ca4ee1c.png 800w, https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/45789bf2401f8612437274c1294d18ca_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;So, now we need to figure out how to reassemble this data. We’re going to move it out of &lt;em&gt;Wireshark&lt;/em&gt; so we’ll first export this data by selecting all the filtered packets and pressing &lt;em&gt;File&lt;/em&gt; &amp;gt; &lt;em&gt;Export Packet Dissections&lt;/em&gt; &amp;gt; &lt;em&gt;As Plain Text&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;For the purposes of this walkthrough, my output file is called &lt;em&gt;AQuery.txt&lt;/em&gt;. When we open &lt;em&gt;AQuery.txt&lt;/em&gt; in a text editor, it looks like this:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1ff3b68c3eb9d4e180d63b145fcca368_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;566px&#34; data-flex-grow=&#34;235&#34; height=&#34;339&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/1ff3b68c3eb9d4e180d63b145fcca368_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;While helpful, we still need to clean up this data to carve out only the &lt;em&gt;Hex encoded strings&lt;/em&gt; that we need. I’m certain there is a better way to do this (alluded to in the question hint) but my approach is to try to transform this data from within the terminal.&lt;/p&gt;&#xA;&lt;p&gt;To save you some time, I freely admit that there was a lot of stumbling, trial and error, and time spent researching with &lt;em&gt;Google&lt;/em&gt; and &lt;em&gt;Microsoft Copilot&lt;/em&gt; to come up with command using &lt;em&gt;grep&lt;/em&gt; and &lt;em&gt;sed&lt;/em&gt; that would work to clean up the data, until at long last, I landed on the below version:&lt;/p&gt;&#xA;&lt;p&gt;grep -Eo &amp;lsquo;[0-9a-fA-F]{8,}.[a-zA-Z0-9.-]+.[a-zA-Z]{2,}&amp;rsquo; AQuery.txt | sed &amp;rsquo;s/.[a-zA-Z0-9.-]+.[a-zA-Z]{2,}.*//&amp;rsquo; | uniq | tr -d &#39;&#xA;&#39;&lt;/p&gt;&#xA;&lt;p&gt;Here’s the long story short(ish) — The &lt;em&gt;grep&lt;/em&gt; command is performing some pattern matching to display only the &lt;em&gt;Hex&lt;/em&gt; strings followed by a “&lt;em&gt;domain.tld&lt;/em&gt;” and trailing text from our &lt;em&gt;Wireshark&lt;/em&gt; output file. Then, &lt;em&gt;sed&lt;/em&gt; removes the domain and any trailing text, removes duplicate entries, and concatenates the results into a single line without any delimiters so it’s a long, single line combining all the &lt;em&gt;Hex strings&lt;/em&gt; we found being sent to the &lt;em&gt;C2&lt;/em&gt; domain.&lt;/p&gt;&#xA;&lt;p&gt;But now that we have the required data, we still need to output the file so that we can convert it from &lt;em&gt;Hex&lt;/em&gt; into a working database file.&lt;/p&gt;&#xA;&lt;p&gt;grep -Eo &amp;lsquo;[0-9a-fA-F]{8,}.[a-zA-Z0-9.-]+.[a-zA-Z]{2,}&amp;rsquo; AQuery.txt | sed &amp;rsquo;s/.[a-zA-Z0-9.-]+.[a-zA-Z]{2,}.*//&amp;rsquo; | uniq | tr -d &#39;&#xA;&amp;rsquo; &amp;gt; hexdump.txt&lt;/p&gt;&#xA;&lt;p&gt;We’re almost there! Now we’ll convert the &lt;em&gt;Hex&lt;/em&gt; data to ASCII and save the database as a new output. We’ll achieve this by processing it with &lt;strong&gt;&lt;em&gt;xxd&lt;/em&gt;.&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://linux.die.net/man/1/xxd&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;xxd&lt;/em&gt; creates a hex dump of a given file or standard input. It can also convert a hex dump back to its original binary form. Like &lt;strong&gt;&lt;em&gt;uuencode&lt;/em&gt;&lt;/strong&gt;&lt;em&gt;(1)&lt;/em&gt; and &lt;strong&gt;&lt;em&gt;uudecode&lt;/em&gt;&lt;/strong&gt;&lt;em&gt;(1)&lt;/em&gt; it allows the transmission of binary data in a ‘mail-safe’ ASCII representation, but has the advantage of decoding to standard output. Moreover, it can be used to perform binary file patching.&lt;/a&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;xxd -r -p hexdump.txt &amp;gt; database.kdbx&lt;/p&gt;&#xA;&lt;p&gt;Finally, we can open the reassembled &lt;em&gt;KDBX&lt;/em&gt; file! The &lt;em&gt;TryHackMe&lt;/em&gt; analysis environment already has the correct application to open this file type and it should automatically be associated.&lt;/p&gt;&#xA;&lt;p&gt;Once it opens, we are prompted for the &lt;em&gt;Master Password&lt;/em&gt; that we recovered in the previous question. Inputting the password unlocks the database and allows us to retrieve the credit card number that the victim stored in their password manager which is now in the hands of the adversary! Time to call the bank, indeed!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;41afe7a3180415dfd63e4e1b172d33f9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;456px&#34; data-flex-grow=&#34;190&#34; height=&#34;421&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/41afe7a3180415dfd63e4e1b172d33f9_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Go ahead and input the victim’s credit card number and let’s wrap up this investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3c2947b21cd1df2dc7b368ac34e6de66_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1882px&#34; data-flex-grow=&#34;784&#34; height=&#34;102&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-1-challenge-walkthrough/3c2947b21cd1df2dc7b368ac34e6de66_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;Mission accomplished — We have completed our frighteningly fun investigation of the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/boogeyman1&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Boogeyman 1&lt;/strong&gt;&lt;/a&gt;! Using our forensic skills, we learned how the &lt;em&gt;Boogeyman&lt;/em&gt; infected the victim’s device with a malicious attachment, collected and exfiltrated data with &lt;em&gt;PowerShell&lt;/em&gt; and &lt;em&gt;DNS&lt;/em&gt;, and stole credit card data stored in &lt;em&gt;KeePass.&lt;/em&gt; Now, let’s wrap this investigation!&lt;/p&gt;&#xA;&lt;p&gt;A huge thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for the seriously fun challenge! I was really impressed with the dimensions of this room as it had three different scopes and a complete narrative. The detail and flow were much closer to a real-world simulation exercise than others I have completed. The escalating difficulty was also really engaging as it started out easy and ramped up as the room went on. This really pushed me out of my comfort zone and forced creativity when it came to the later steps of the &lt;em&gt;Networking Traffic Analysis&lt;/em&gt;. I was also excited to have the opportunity to get some hands-on time with &lt;em&gt;JQ&lt;/em&gt; as I was familiar with the name but had not encountered it before.&lt;/p&gt;&#xA;&lt;p&gt;If you found this walkthrough helpful in leveling up your skills or getting you through a tricky question, &lt;strong&gt;please give it a clap&lt;/strong&gt;! Until the &lt;em&gt;Boogeyman&lt;/em&gt; returns, stay safe! If you want to continue battling the &lt;em&gt;Boogeyman,&lt;/em&gt; be sure to check out my walkthrough of the &lt;strong&gt;Boogeyman 2.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-boogeyman-2-challenge-walkthrough/&#34; &gt;&lt;strong&gt;TryHackMe — Boogeyman 2 Challenge Walkthrough&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Mailtraip.io Email Headers List:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://mailtrap.io/blog/email-headers/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://mailtrap.io/blog/email-headers/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;LnkParse3:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://github.com/Matmaus/LnkParse3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://github.com/Matmaus/LnkParse3&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;JQ:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://jqlang.github.io/jq/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://jqlang.github.io/jq/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Script Block:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_script_blocks?view=powershell-7.4&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_script_blocks?view=powershell-7.4&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn (WebClient Class):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/dotnet/api/system.net.webclient?view=net-8.0&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/dotnet/api/system.net.webclient?view=net-8.0&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn (Invoke-WebRequest):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-webrequest?view=powershell-7.4&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/invoke-webrequest?view=powershell-7.4&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;CyberChef:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://gchq.github.io/CyberChef/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Wikipedia DNS Types:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://en.wikipedia.org/wiki/List_of_DNS_record_types&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;List of DNS record types — Wikipedia&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Linux Man Pages (XXD):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://linux.die.net/man/1/xxd&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://linux.die.net/man/1/xxd&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  ItsyBitsy Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/</link>
            <pubDate>Sun, 23 Jun 2024 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/37b86be078b6e7a7a3c0c18c9f35741a_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  ItsyBitsy Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmeitsybitsy-challenge-walkthrough&#34;&gt;TryHackMe — ItsyBitsy Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;incident-response-challenge-using-the-elasticstack&#34;&gt;Incident Response Challenge using the Elastic Stack&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;37b86be078b6e7a7a3c0c18c9f35741a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;456px&#34; data-flex-grow=&#34;190&#34; height=&#34;290&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/37b86be078b6e7a7a3c0c18c9f35741a_MD5.png&#34; width=&#34;551&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/itsybitsy&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/itsybitsy&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Welcome to my weekly walkthrough!&lt;/p&gt;&#xA;&lt;p&gt;Are you curious about investigating incidents using the &lt;em&gt;Elastic (ELK) stack&lt;/em&gt;? Well you&amp;rsquo;re in luck — we’re about to tackle the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/itsybitsy&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;ItsyBitsy&lt;/strong&gt;&lt;/a&gt; challenge from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;!&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/itsybitsy&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;ItsyBitsy&lt;/strong&gt;&lt;/a&gt; is a DFIR challenge where we will analyze the HTTP network connection logs captured from a device. The not great news is that this device was making some suspicious network calls to a potential command and control server. To figure out what happened, we’ll use the &lt;em&gt;Kibana&lt;/em&gt; module within the &lt;em&gt;Elastic Stack&lt;/em&gt; to search the through logs, visualize the data, and determine what was downloaded.&lt;/p&gt;&#xA;&lt;p&gt;But first, a high-level infographic of where &lt;em&gt;Kibana&lt;/em&gt; fits into the &lt;em&gt;Elastic Stack&lt;/em&gt;:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b9fbed44a7928435bf0f0d975499ab79_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;771px&#34; data-flex-grow=&#34;321&#34; height=&#34;249&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/b9fbed44a7928435bf0f0d975499ab79_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/investigatingwithelk101&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/investigatingwithelk101&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Want more? Go check out the full &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/investigatingwithelk101&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Investigating with ELK 101 room&lt;/strong&gt;&lt;/a&gt; on &lt;em&gt;TryHackMe&lt;/em&gt; which covers the &lt;em&gt;ELK stack&lt;/em&gt; fundamentals in much more detail.&lt;/p&gt;&#xA;&lt;p&gt;So, whether you’re here to learn more about investigating with &lt;em&gt;Elastic&lt;/em&gt;, or are just looking for a reference walkthrough for the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/itsybitsy&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;ItsyBitsy&lt;/strong&gt;&lt;/a&gt; challenge, you’ve stumbled on the right blog. In the spirit of learning, I am not going to be revealing any flags in this write-up, so I encourage you to go hands-on and try it for yourself — you got this!&lt;/p&gt;&#xA;&lt;p&gt;Now let’s put on our detective hats and have some fun with forensics!&lt;/p&gt;&#xA;&lt;p&gt;Thanks for reading along!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/itsybitsy&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/itsybitsy&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;During normal SOC monitoring, Analyst John observed an alert on an IDS solution indicating a potential C2 communication from a user Browne from the HR department. A suspicious file was accessed containing a malicious pattern THM:{ ________ }. A week-long HTTP connection logs have been pulled to investigate. Due to limited resources, only the connection logs could be pulled out and are ingested into the &lt;code&gt;connection_logs&lt;/code&gt; index in Kibana.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Our task in this room will be to examine the network connection logs of this user, find the link and the content of the file, and answer the questions.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;question-1-how-many-events-were-returned-for-the-month-of-march2022&#34;&gt;Question 1: How many events were returned for the month of March 2022?&#xA;&lt;/h3&gt;&lt;p&gt;First things first, we’ll enter the &lt;em&gt;Elastic&lt;/em&gt; web console and then navigate to the &lt;em&gt;Kibana&lt;/em&gt; &amp;gt; &lt;em&gt;Discover Analytics&lt;/em&gt; module. &lt;em&gt;Kibana&lt;/em&gt; is used to search logs and visualize them, so using the &lt;em&gt;Discover&lt;/em&gt; module will enable us to query and explore the provided network &lt;em&gt;connection_logs&lt;/em&gt; index_._&lt;/p&gt;&#xA;&lt;p&gt;To access the &lt;em&gt;Discover&lt;/em&gt; tab, we can either input “&lt;em&gt;discover&lt;/em&gt;” into the search box at the top of the dashboard or use the menu on the left-hand sidebar.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c6852a5250fe399caca12ed95c655b86_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1894px&#34; data-flex-grow=&#34;789&#34; height=&#34;152&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/c6852a5250fe399caca12ed95c655b86_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/c6852a5250fe399caca12ed95c655b86_MD5_hu_bfc8fb744da5d6ff.png 800w, https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/c6852a5250fe399caca12ed95c655b86_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;For &lt;strong&gt;Question 1&lt;/strong&gt;, our objective is to narrow the search scope to a single month. To do this, we will need to adjust the &lt;em&gt;time filter&lt;/em&gt; so that we can focus only on the events that occurred in March of 2022. Let’s modify the dates in the time selection field.&lt;/p&gt;&#xA;&lt;p&gt;We’ll filter the first date/time to Absolute and set the start date to &lt;em&gt;March 1, 2022,&lt;/em&gt; at &lt;em&gt;0:00&lt;/em&gt; and then the end date to &lt;em&gt;March 31, 2022,&lt;/em&gt; at &lt;em&gt;23:30&lt;/em&gt;. This selection should give us the entire month of March 2022.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7d3c5bc46cf3c2db2cf0330ded494050_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;748px&#34; data-flex-grow=&#34;311&#34; height=&#34;385&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/7d3c5bc46cf3c2db2cf0330ded494050_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/7d3c5bc46cf3c2db2cf0330ded494050_MD5_hu_28b1ad0de622f30.png 800w, https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/7d3c5bc46cf3c2db2cf0330ded494050_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once we apply the date/time filter, we’ll see our results displayed as a total number of hits and now we have some data to analyze and the answer to &lt;strong&gt;Question 1.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;78df9ec44d271308d490784f1e96c33c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2181px&#34; data-flex-grow=&#34;909&#34; height=&#34;88&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/78df9ec44d271308d490784f1e96c33c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Total Hits&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1aafd557d9e6fea7580d37a269200421_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2630px&#34; data-flex-grow=&#34;1095&#34; height=&#34;73&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/1aafd557d9e6fea7580d37a269200421_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-what-is-the-ip-associated-with-the-suspected-user-in-thelogs&#34;&gt;Question 2: What is the IP associated with the suspected user in the logs?&#xA;&lt;/h3&gt;&lt;p&gt;Since we have so many log entries, we’ll want to filter this to a manageable level. To do this, let’s check out the &lt;em&gt;source_ip&lt;/em&gt; field filter which will help us to determine how many source hosts we have captured in our logs.&lt;/p&gt;&#xA;&lt;p&gt;On the fly-out menu, we will have some analytics about the top 5 values that appear in the logs. Fortunately for us, there are only two entries.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;90e7fac6cbc331a769ca862c5f0815ec_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;185px&#34; data-flex-grow=&#34;77&#34; height=&#34;733&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/90e7fac6cbc331a769ca862c5f0815ec_MD5.png&#34; width=&#34;567&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;One IP accounts for 99.6% of the traffic, and the second only accounts for 0.4%.&lt;/p&gt;&#xA;&lt;p&gt;Before we go too crazy wading through a massive number of records, let’s check the IP address with the fewest number of hits by adding the source IP to the filter. I searched it manually in the query box, but you can also simply hit the + next to the value to add it to the filter.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a1f6ca1c60796f86aba87c673851c0aa_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;757px&#34; data-flex-grow=&#34;315&#34; height=&#34;380&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/a1f6ca1c60796f86aba87c673851c0aa_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/a1f6ca1c60796f86aba87c673851c0aa_MD5_hu_8d03310d5fd4702d.png 800w, https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/a1f6ca1c60796f86aba87c673851c0aa_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This IP address only has two logged events which makes it a bit easier for us to analyze. Right away, there are a few suspicious indicators but let’s do some reconnaissance on the destination IP address to see if we can locate any intelligence.&lt;/p&gt;&#xA;&lt;p&gt;We’ll start with &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;VirusTotal&lt;/em&gt;&lt;/a&gt; to get an overview and see if there are any hits for malicious activity associated with this IP address:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ac394265d3682065e8e43b67316dbaaa_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1454px&#34; data-flex-grow=&#34;606&#34; height=&#34;132&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/ac394265d3682065e8e43b67316dbaaa_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Interestingly, there are no hits for malware, however the banner shows that there are “10+ detected files communicating with this IP address” — that’s odd, let’s take a closer look at that.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4dec9ff459d8d6505ea23190492bb004_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;738px&#34; data-flex-grow=&#34;307&#34; height=&#34;260&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/4dec9ff459d8d6505ea23190492bb004_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The files communicating with this domain seem to have a high number of hits for malicious activity. This is giving us some confidence that we have found the host IP address of the infected user. But let’s double-check with another service as well, &lt;a class=&#34;link&#34; href=&#34;https://www.hybrid-analysis.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;Hybrid Analysis&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;69a1c885a25a8aa578697f6c4ff4c508_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1149px&#34; data-flex-grow=&#34;479&#34; height=&#34;167&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/69a1c885a25a8aa578697f6c4ff4c508_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Hybrid Analysis&lt;/em&gt; also assesses that this IP has been associated with some malicious activity. So, would have enough information to say that we found the correct local IP address for the victim. Let’s enter our answer to check our work.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d6dc57a5603d078fabae26dbb8aaa54a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2493px&#34; data-flex-grow=&#34;1038&#34; height=&#34;77&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/d6dc57a5603d078fabae26dbb8aaa54a_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-the-users-machine-used-a-legit-windows-binary-to-download-a-file-from-the-c2-server-what-is-the-name-of-thebinary&#34;&gt;Question 3: The user’s machine used a legit windows binary to download a file from the C2 server. What is the name of the binary?&#xA;&lt;/h3&gt;&lt;p&gt;Now that we know the victim’s local IP address and have an idea of what IP address the infected device was communicating with for &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/tactics/TA0011/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;command and control&lt;/a&gt; (C2), we need to determine what application or service was being used for the connection. Let’s focus on the &lt;em&gt;user_agent&lt;/em&gt; field to answer &lt;strong&gt;Question 3.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you aren’t familiar, &lt;a class=&#34;link&#34; href=&#34;https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;user-agent&lt;/em&gt;&lt;/a&gt;&lt;em&gt;s&lt;/em&gt; are request headers that servers use to identify requesting client details like the operating system, web browser version, or application.&lt;/p&gt;&#xA;&lt;p&gt;In this log, we have an unusual &lt;em&gt;user_agent&lt;/em&gt; that isn’t something typical like a web browser, for example. This indicates that the malware might be living off the land and using a legitimate &lt;em&gt;Microsoft&lt;/em&gt; command-line tool.&lt;/p&gt;&#xA;&lt;p&gt;I don’t want to spoil the fun but if we do a little research about this user agent, we’ll stumble on some helpful information from &lt;em&gt;Microsoft Learn —&lt;/em&gt; this particular tool can be leveraged to:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/bitsadmin&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;create, download or upload jobs, and to monitor their progress.&lt;/a&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e9701e9bd96214999f19a993a80ec1ef_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1729px&#34; data-flex-grow=&#34;720&#34; height=&#34;111&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/e9701e9bd96214999f19a993a80ec1ef_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;In other words, this information confirms that this utility can be used to download files. Let’s submit our findings and move on to the next question.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;717707a420627c9f5be1027650ba38c2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2526px&#34; data-flex-grow=&#34;1052&#34; height=&#34;76&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/717707a420627c9f5be1027650ba38c2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-the-infected-machine-connected-with-a-famous-filesharing-site-in-this-period-which-also-acts-as-a-c2-server-used-by-the-malware-authors-to-communicate-what-is-the-name-of-the-filesharing-site&#34;&gt;Question 4: The infected machine connected with a famous filesharing site in this period, which also acts as a C2 server used by the malware authors to communicate. What is the name of the filesharing site?&#xA;&lt;/h3&gt;&lt;p&gt;In &lt;strong&gt;Question 2&lt;/strong&gt;, we found evidence that the victim’s device communicated with a destination IP address that resolves to a web-based file sharing service. According to &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1102/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;MITRE ATT&amp;amp;CK (T1102)&lt;/em&gt;&lt;/a&gt;, this site has been used for command and control by some threat actors and malware families.&lt;/p&gt;&#xA;&lt;p&gt;Let’s confirm that our IP intelligence is correct by looking at the &lt;em&gt;host&lt;/em&gt; field.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d2c8f14b45a92516dee90b66c6acf4de_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1864px&#34; data-flex-grow=&#34;776&#34; height=&#34;103&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/d2c8f14b45a92516dee90b66c6acf4de_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Since the &lt;em&gt;host&lt;/em&gt; matches the intelligence that we found about the IP address, we have our answer.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c188eb09c1c9122c6f4484f1ee4a71c5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2232px&#34; data-flex-grow=&#34;930&#34; height=&#34;86&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/c188eb09c1c9122c6f4484f1ee4a71c5_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-what-is-the-full-url-of-the-c2-to-which-the-infected-host-is-connected&#34;&gt;Question 5: What is the full URL of the C2 to which the infected host is connected?&#xA;&lt;/h3&gt;&lt;p&gt;Okay, to answer &lt;strong&gt;Question 5&lt;/strong&gt;, we have the simple task of combining the &lt;em&gt;host&lt;/em&gt; domain from &lt;strong&gt;Question 4&lt;/strong&gt; with the &lt;em&gt;uri&lt;/em&gt; field of the event. This will form the hostname/path combination of the URL that we are looking for to answer this question!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;35d99ce083a01c4e5affd4ffa29c70d9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1864px&#34; data-flex-grow=&#34;776&#34; height=&#34;103&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/35d99ce083a01c4e5affd4ffa29c70d9_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;a160aa108bc0be8c7b0ca61d91738856_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2493px&#34; data-flex-grow=&#34;1038&#34; height=&#34;77&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/a160aa108bc0be8c7b0ca61d91738856_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;questions-6-7&#34;&gt;Questions 6 &amp;amp; 7:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;a-file-was-accessed-on-the-filesharing-site-what-is-the-name-of-the-file-accessed&#34;&gt;A file was accessed on the filesharing site. What is the name of the file accessed?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;the-file-contains-a-secret-code-with-the-format-thm_____&#34;&gt;The file contains a secret code with the format THM{_____}.&#xA;&lt;/h4&gt;&lt;p&gt;All right, we made it to the last two questions! So far, we have determined the IP address, application, domain, and URL that the victim’s infected device accessed. The last step for this challenge is to determine the name and content of the file hosted on this file sharing site.&lt;/p&gt;&#xA;&lt;p&gt;Unfortunately, the &lt;em&gt;connection_logs index&lt;/em&gt; does not seem to contain any of the file data that we are looking for, so we have to pivot. What if we navigate to the URL that we assembled in &lt;strong&gt;Question 5&lt;/strong&gt; to view the public site directly?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9c602a60acb35b257e1795ac2d709cea_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;653px&#34; data-flex-grow=&#34;272&#34; height=&#34;294&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/9c602a60acb35b257e1795ac2d709cea_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once there, it looks like our research paid off! We found both the file that was accessed and can view the contents. Let’s submit our answers and wrap up this investigation!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d3936cdc5a5166d45bed5f0b619827ff_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1315px&#34; data-flex-grow=&#34;547&#34; height=&#34;146&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-itsybitsy-challenge-walkthrough/d3936cdc5a5166d45bed5f0b619827ff_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;Hey, nice job with the investigation! We successfully completed the listed objectives and analyzed the HTTP connection log file, found the required evidence, and have an understanding of the payload to complete the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/itsybitsy&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;ItsyBitsy&lt;/strong&gt;&lt;/a&gt; challenge! It’s time to close the case.&lt;/p&gt;&#xA;&lt;p&gt;A big thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for hosting this awesome challenge! I haven’t had an opportunity to jump into &lt;em&gt;Elastic&lt;/em&gt; so this was a fantastic challenge to learn about the tool and get a high-level overview of how it can be leveraged to analyze large data sets and apply that to incident response. While I’m sure this barely scratches the surface of what the tool is capable of, I gained plenty of valuable hands-on experience with &lt;em&gt;Kibana&lt;/em&gt; and am looking forward to the next time I’ll get to practice with &lt;em&gt;Elastic!&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;I hope that you had as much fun as I did and learned something new, too!&lt;/p&gt;&#xA;&lt;p&gt;Thank you so much for reading along and working through this investigation with me. Until next week — stay curious!&lt;/p&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;VirusTotal:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Hybrid Analysis:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.hybrid-analysis.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.hybrid-analysis.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — Command and Control:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/tactics/TA0011/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/tactics/TA0011/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Mozilla Developer (User Agent):&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft bitsadmin:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/bitsadmin&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/bitsadmin&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — Web Service:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1102/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1102/&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Basic Malware RE Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/</link>
            <pubDate>Sun, 21 Apr 2024 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/d2c1203d820d702206ccfacedf9d4102_MD5.jpg&#34; alt=&#34;Featured image of post TryHackMe  —  Basic Malware RE Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmebasic-malware-re-walkthrough&#34;&gt;TryHackMe — Basic Malware RE Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;basic-malware-reverse-engineering-withghidra&#34;&gt;Basic malware reverse engineering with Ghidra&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;d2c1203d820d702206ccfacedf9d4102_MD5.jpg&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;361px&#34; data-flex-grow=&#34;150&#34; height=&#34;498&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/d2c1203d820d702206ccfacedf9d4102_MD5.jpg&#34; width=&#34;750&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/basicmalwarere&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Image Credit: https://tryhackme.com/r/room/&lt;/a&gt;basicmalwarere&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Have you ever wondered how malware reverse engineering works when using &lt;a class=&#34;link&#34; href=&#34;https://ghidra-sre.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Ghidra&lt;/strong&gt;&lt;/a&gt;? We’re about to find out together!&lt;/p&gt;&#xA;&lt;p&gt;Welcome to my weekly walkthrough where we’ll tackle the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/basicmalwarere&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Basic Malware RE&lt;/strong&gt;&lt;/a&gt; room on &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;. This is a follow-up to the &lt;strong&gt;MAL: Strings&lt;/strong&gt; room on the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/path/outline/blueteam&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Cyber Defense learning path&lt;/a&gt; that I explored last week.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/&#34; &gt;&lt;strong&gt;TryHackMe — MAL: Strings Room Walkthrough&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;As a beginner with &lt;em&gt;reverse engineering,&lt;/em&gt; I’m confident that this room will challenge me with the basics and help me to fill in some knowledge gaps. So, while I’m still learning and won’t have many real-world application tips this time around, the hands-on experience will be a lot of fun.&lt;/p&gt;&#xA;&lt;p&gt;So, whether you’re here to learn with me or looking for a reference walkthrough for the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/basicmalwarere&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe Basic Malware RE&lt;/strong&gt;&lt;/a&gt; room, you’re in the right spot. In the spirit of learning, I will not be revealing any flags but I encourage you to follow along on your own. Thanks for reading along, hope it helps!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/basicmalwarere&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/basicmalwarere&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;setup-the-remnux-analysis-environment--extract-the-challenge-file&#34;&gt;Setup the REMnux Analysis Environment &amp;amp; Extract the challenge file:&#xA;&lt;/h3&gt;&lt;p&gt;Safety first — It’s always a good idea when working with lab/challenge files from &lt;em&gt;TryHackMe&lt;/em&gt; &lt;em&gt;(or any lab/challenge/range)&lt;/em&gt; to keep yourself safe by performing these tasks in a dedicated, isolated virtual machine. For example, I’m using &lt;a class=&#34;link&#34; href=&#34;https://remnux.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;REMnux&lt;/em&gt;&lt;/a&gt; for this challenge and walkthrough .&lt;/p&gt;&#xA;&lt;p&gt;Second, I want to make a note that I’ll be referencing the excellent &lt;a class=&#34;link&#34; href=&#34;https://docs.remnux.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;REMnux&lt;/em&gt;&lt;/a&gt; Documentation in this post. This is a great resource to discover the tools available within the environment.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://docs.remnux.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://docs.remnux.org/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Third, to keep this write-up focused I’m going to skip a step-by-step setup guide of &lt;em&gt;REMnux&lt;/em&gt;. Instead, if you want to set up your own &lt;em&gt;REMnux&lt;/em&gt; environment please follow the directions provided by &lt;em&gt;REMnux&lt;/em&gt; directly. I opted for the virtual appliance method:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://docs.remnux.org/install-distro/get-virtual-appliance&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://docs.remnux.org/install-distro/get-virtual-appliance&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Okay! Now that we have our virtual environment created, updated, isolated, and snapshotted, we can download and extract our challenge file and get started! For this one, we have three tasks, and the extraction process is the same:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2092ebbd7ac8975523101048bf2773d5_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;382px&#34; data-flex-grow=&#34;159&#34; height=&#34;396&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/2092ebbd7ac8975523101048bf2773d5_MD5.png&#34; width=&#34;631&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;strings-challenge-1&#34;&gt;Strings :: Challenge 1&#xA;&lt;/h3&gt;&lt;h4 id=&#34;this-executable-prints-an-md5-hash-on-the-screen-when-executed-can-you-grab-the-exactflag&#34;&gt;This executable prints an MD5 Hash on the screen when executed. Can you grab the exact flag?&#xA;&lt;/h4&gt;&lt;p&gt;Building on my write-up for the previous room in the series, &lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/&#34; &gt;&lt;strong&gt;MAL:Strings&lt;/strong&gt;&lt;/a&gt;, we’ll start simple and utilize the &lt;em&gt;strings&lt;/em&gt; command to see if there is anything obvious that we can find.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1ef1769c4c7b5144ba580bf77a70fe43_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;148px&#34; data-flex-grow=&#34;61&#34; height=&#34;865&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/1ef1769c4c7b5144ba580bf77a70fe43_MD5.png&#34; width=&#34;534&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Snippet from the strings output&lt;/p&gt;&#xA;&lt;p&gt;Woah! There are hundreds of FLAG strings. This looks like it might be a bit more complicated to analyze so we’ll need to pivot from simply using the &lt;em&gt;strings&lt;/em&gt; command. The challenge states that dynamic analysis is out of the question, so we can’t execute the binary or use a debugger. Maybe we can use something like &lt;strong&gt;&lt;em&gt;Ghidra&lt;/em&gt;,&lt;/strong&gt; which is &lt;a class=&#34;link&#34; href=&#34;https://docs.remnux.org/discover-the-tools/statically&amp;#43;analyze&amp;#43;code/general#ghidra&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;built in to REMnux&lt;/a&gt;&lt;strong&gt;,&lt;/strong&gt; so that we can perform static analysis on the code? Now, full disclosure I have little experience with &lt;em&gt;Ghidra&lt;/em&gt; outside of a lab or two. So, let’s get some background on what &lt;em&gt;Ghidra&lt;/em&gt; is from the project’s &lt;a class=&#34;link&#34; href=&#34;https://github.com/NationalSecurityAgency/ghidra&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;GitHub&lt;/em&gt;&lt;/a&gt; before we stumble through this together.&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Ghidra is a software reverse engineering (SRE) framework created and maintained by the &lt;a class=&#34;link&#34; href=&#34;https://www.nsa.gov/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;National Security Agency&lt;/a&gt; Research Directorate. This framework includes a suite of full-featured, high-end software analysis tools that enable users to analyze compiled code on a variety of platforms including Windows, macOS, and Linux. Capabilities include disassembly, assembly, decompilation, graphing, and scripting, along with hundreds of other features.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Now, let’s launch &lt;em&gt;Ghidra.&lt;/em&gt; When it starts up_,_ we’ll create a project, drop in the &lt;em&gt;strings1.exe&lt;/em&gt;, and let &lt;em&gt;Ghidra&lt;/em&gt; perform the initial analysis. Once that is completed, we’ll have the &lt;em&gt;symbol tree&lt;/em&gt; displayed on the left, the &lt;em&gt;listing contents&lt;/em&gt; in the center, and the &lt;em&gt;decompile&lt;/em&gt; window on the right.&lt;/p&gt;&#xA;&lt;p&gt;Let’s start by looking at the &lt;em&gt;functions&lt;/em&gt;. Based on what we know about this binary already, when the application is executed, it prints an MD5 hash of the flag string. So, put another way we need to find the MD5 hashing function and then locate the string within the code that is being hashed — this will be the flag we are looking for.&lt;/p&gt;&#xA;&lt;p&gt;After doing some research, we’ll start by examining the &lt;em&gt;entry&lt;/em&gt; function. We’ll enlist help from &lt;em&gt;Microsoft Co-Pilot&lt;/em&gt; to explain this better for us and fill in some knowledge gaps. As a side note, remember to always verify the sources and information given by generative AI for accuracy.&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The “entry function” in Ghidra refers to the initial function that is called when a program starts running. It’s the point where the control is transferred from the operating system to the program. In the context of reverse engineering, when you load a binary into Ghidra, it tries to identify this entry point so that analysts can begin tracing the program’s execution from the very start.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Great, this sounds like a good place to start! Right away, we see some evidence of a flag. While this seems promising, let’s dig in and try to understand what we are seeing.&lt;/p&gt;&#xA;&lt;p&gt;Let’s focus on the &lt;em&gt;decompile&lt;/em&gt; window. We see a &lt;strong&gt;character pointer&lt;/strong&gt;, which is typically used to point to a memory location that stores a string: &lt;code&gt;char *lpText;&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;It looks like this points to a string transformed by an MD5 hashing function. Messy explanation, I know, but stick with me and let’s double- click on the string that ends in “_&lt;em&gt;00432294&lt;/em&gt;”.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8ff85664c37dc2bffa79a6864360f64c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;511px&#34; data-flex-grow=&#34;213&#34; height=&#34;563&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/8ff85664c37dc2bffa79a6864360f64c_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/8ff85664c37dc2bffa79a6864360f64c_MD5_hu_df017a25c02550b4.png 800w, https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/8ff85664c37dc2bffa79a6864360f64c_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This takes us to the below location in the code:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;608cd041b186e96a9c0d32b25b9d5ba2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;876px&#34; data-flex-grow=&#34;365&#34; height=&#34;219&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/608cd041b186e96a9c0d32b25b9d5ba2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The top line matches the hash function string we found. Now let’s click the &lt;strong&gt;00424828&lt;/strong&gt; entry…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;134a8fd3774ebd666d1fb67601a72a8a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3764px&#34; data-flex-grow=&#34;1568&#34; height=&#34;51&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/134a8fd3774ebd666d1fb67601a72a8a_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;There we go! We saw the complete flag string and managed to find our first flag! Awesome job!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8de14ce6d32482e41b8ced537af8be36_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1761px&#34; data-flex-grow=&#34;733&#34; height=&#34;109&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/8de14ce6d32482e41b8ced537af8be36_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;strings-challenge-2&#34;&gt;Strings :: Challenge 2&#xA;&lt;/h3&gt;&lt;h4 id=&#34;this-executable-prints-an-md5-hash-on-the-screen-when-executed-can-you-grab-the-exactflag-1&#34;&gt;This executable prints an MD5 Hash on the screen when executed. Can you grab the exact flag?&#xA;&lt;/h4&gt;&lt;p&gt;We’ll start this task the same way we did with the first one — we’ll create a new project in &lt;em&gt;Ghidra&lt;/em&gt;, drop in the &lt;em&gt;strings2.exe&lt;/em&gt;, and let &lt;em&gt;Ghidra&lt;/em&gt; perform the initial analysis. Once that is complete, we’ll again start with the &lt;em&gt;entry function&lt;/em&gt; and focus on the &lt;em&gt;decompile&lt;/em&gt; window:&lt;/p&gt;&#xA;&lt;p&gt;This time, as we scroll through the entry, we’ll see a different &lt;em&gt;character pointer&lt;/em&gt; than we did in &lt;strong&gt;Task 1&lt;/strong&gt;: &lt;code&gt;char *local_8;&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;It seems like this points to another &lt;em&gt;MD5 hashed&lt;/em&gt; string. This time instead of a fully defined string like we saw in &lt;strong&gt;Task 1&lt;/strong&gt;, it appears that we have different variables in a stack represented as hexadecimal (hex) values that are hashed in sequence to form the full string. Lower address variables in the stack will be added first, so &lt;code&gt;local_2c = “F”;&lt;/code&gt; would be added before &lt;code&gt;local_2b = 0x4c;&lt;/code&gt; — maybe the F is the first character in “Flag”?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;681a3bad91ee3220100f1ccefc635129_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;507px&#34; data-flex-grow=&#34;211&#34; height=&#34;567&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/681a3bad91ee3220100f1ccefc635129_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/681a3bad91ee3220100f1ccefc635129_MD5_hu_3d4a519e98c39247.png 800w, https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/681a3bad91ee3220100f1ccefc635129_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s test the theory and focus on converting the hex values to &lt;strong&gt;ASCII&lt;/strong&gt; and see if this reveals a flag.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e7fa3b664c427a3097de60067115faac_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;509px&#34; data-flex-grow=&#34;212&#34; height=&#34;565&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/e7fa3b664c427a3097de60067115faac_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/e7fa3b664c427a3097de60067115faac_MD5_hu_7c4ca2e30e72b62a.png 800w, https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/e7fa3b664c427a3097de60067115faac_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;To do this, I am going to copy out the code with the &lt;em&gt;hex&lt;/em&gt; values and add them to &lt;a class=&#34;link&#34; href=&#34;https://gchq.github.io/CyberChef/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;CyberChef&lt;/em&gt;&lt;/a&gt; so that we can perform the cleanup and conversion_._ The first goal is to strip out all the code other than the &lt;em&gt;hex&lt;/em&gt; values. For this we can add a &lt;em&gt;Find/Replace&lt;/em&gt; operation to the recipe and apply the following &lt;em&gt;regular expression (REGEX)&lt;/em&gt; to the &lt;em&gt;find&lt;/em&gt; operation: &lt;code&gt;^[^,]*,&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;This should match everything from the start of each line up to the first comma.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;fbf63cf23cdc992fe9ca8abce5ced8a6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;507px&#34; data-flex-grow=&#34;211&#34; height=&#34;568&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/fbf63cf23cdc992fe9ca8abce5ced8a6_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/fbf63cf23cdc992fe9ca8abce5ced8a6_MD5_hu_86ba1852e0d85702.png 800w, https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/fbf63cf23cdc992fe9ca8abce5ced8a6_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now all we should have to do is add the “&lt;em&gt;From Hex”&lt;/em&gt; operation to the recipe to convert the &lt;em&gt;hex&lt;/em&gt; to &lt;em&gt;ASCII&lt;/em&gt; to reveal the flag!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8cb37c85eec618cfd965e862cf916c57_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;507px&#34; data-flex-grow=&#34;211&#34; height=&#34;568&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/8cb37c85eec618cfd965e862cf916c57_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/8cb37c85eec618cfd965e862cf916c57_MD5_hu_f6322699857b02ac.png 800w, https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/8cb37c85eec618cfd965e862cf916c57_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s submit and check if we stumbled through this one correctly!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3b0592993b203ccb1cc14f4910f9206b_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2133px&#34; data-flex-grow=&#34;888&#34; height=&#34;90&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/3b0592993b203ccb1cc14f4910f9206b_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;strings-challenge-3&#34;&gt;Strings :: Challenge 3&#xA;&lt;/h3&gt;&lt;h4 id=&#34;this-executable-prints-an-md5-hash-on-the-screen-when-executed-can-you-grab-the-exactflag-2&#34;&gt;This executable prints an MD5 Hash on the screen when executed. Can you grab the exact flag?&#xA;&lt;/h4&gt;&lt;p&gt;Once again, we’ll start this task the same way we did with the last two tasks — we’ll create a new project in &lt;em&gt;Ghidra&lt;/em&gt;, drop in the &lt;em&gt;strings3.exe&lt;/em&gt;, and let &lt;em&gt;Ghidra&lt;/em&gt; perform the initial analysis. Once that completes, we’ll again start with the &lt;em&gt;entry function&lt;/em&gt; and focus on the &lt;em&gt;decompile&lt;/em&gt; window:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;35d19a6593b8122bc9624342d4e8cf0c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;507px&#34; data-flex-grow=&#34;211&#34; height=&#34;567&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/35d19a6593b8122bc9624342d4e8cf0c_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/35d19a6593b8122bc9624342d4e8cf0c_MD5_hu_dbb71bcb466ab0f2.png 800w, https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/35d19a6593b8122bc9624342d4e8cf0c_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;For this task, the code looks a little different than we saw in the previous two tasks. As this is a &lt;em&gt;strings&lt;/em&gt; challenge, something sticks out to me, the &lt;strong&gt;LoadStringA&lt;/strong&gt; function. I’ll lean on the documentation &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-loadstringa&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;Microsoft Learn&lt;/em&gt;&lt;/a&gt; to help me out with some context for this function:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Loads a string resource from the executable file associated with a specified module and either copies the string into a buffer with a terminating null character or returns a read-only pointer to the string resource itself.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;So, it looks like maybe &lt;em&gt;strings3.exe&lt;/em&gt; is loading a string with the ID of &lt;code&gt;0x110&lt;/code&gt; and then copies it into the memory buffer &lt;code&gt;local_4a4&lt;/code&gt; .&lt;/p&gt;&#xA;&lt;p&gt;So, we’ll chase this theory and click the &lt;code&gt;0x110&lt;/code&gt; ID in the &lt;em&gt;decompile window.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ed1e2532ebcbf4305e863296d5c74489_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;584px&#34; data-flex-grow=&#34;243&#34; height=&#34;493&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/ed1e2532ebcbf4305e863296d5c74489_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/ed1e2532ebcbf4305e863296d5c74489_MD5_hu_1300af3464342dca.png 800w, https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/ed1e2532ebcbf4305e863296d5c74489_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Right away, we’ve stumbled upon some evidence of the flag we are looking for in the code! Let’s examine the function call by clicking on &lt;em&gt;CALL&lt;/em&gt; which takes us to the below &lt;em&gt;strings table&lt;/em&gt; which contains several flags.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f01b8ca6e31cad1526c2d3a925fab13d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;515px&#34; data-flex-grow=&#34;214&#34; height=&#34;368&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/f01b8ca6e31cad1526c2d3a925fab13d_MD5.png&#34; width=&#34;791&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The top string matches the flag we found earlier, but let’s double verify before we try to submit. Remember that we click the &lt;code&gt;0x110&lt;/code&gt; that we thought may be the identifier of the flag?&lt;/p&gt;&#xA;&lt;p&gt;In the &lt;em&gt;strings table&lt;/em&gt; we don’t see this value, but we do have a column of &lt;em&gt;String IDs.&lt;/em&gt; In &lt;strong&gt;Task 2&lt;/strong&gt; we performed a &lt;em&gt;hex&lt;/em&gt; to &lt;em&gt;ASCII&lt;/em&gt; conversion, this time we can try a &lt;em&gt;hex&lt;/em&gt; to &lt;em&gt;decimal&lt;/em&gt; conversion. Fortunately, &lt;em&gt;Ghidra&lt;/em&gt; has already taken care of this for us — we simply need to mouse over the &lt;code&gt;0x110&lt;/code&gt; ID to get the &lt;em&gt;decimal&lt;/em&gt; value of &lt;strong&gt;272.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;cc6dacd1ae06bc25247260496ca97591_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;582px&#34; data-flex-grow=&#34;242&#34; height=&#34;494&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/cc6dacd1ae06bc25247260496ca97591_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/cc6dacd1ae06bc25247260496ca97591_MD5_hu_d8975ce2b577e159.png 800w, https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/cc6dacd1ae06bc25247260496ca97591_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This confirms our findings and now we know for certain that &lt;em&gt;String ID&lt;/em&gt; &lt;strong&gt;&lt;em&gt;272&lt;/em&gt;&lt;/strong&gt; is the flag string we are searching for. We managed to find our third and final flag!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;62e4ee3f9801d2dff6d15b160dc23a06_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2133px&#34; data-flex-grow=&#34;888&#34; height=&#34;90&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-basic-malware-re-walkthrough/62e4ee3f9801d2dff6d15b160dc23a06_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;Awesome job! We might have stumbled a bit, but we made it through the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/basicmalwarere&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Basic Malware RE&lt;/strong&gt;&lt;/a&gt; room using &lt;em&gt;Ghidra!&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;To wrap this up, thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for the challenging room and the valuable exposure to &lt;em&gt;reverse engineering&lt;/em&gt; as I close in on the end of the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/path/outline/blueteam&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Cyber Defense learning path&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;This room was tougher than usual for me as I started out as a novice in reverse engineering and using &lt;em&gt;Ghidra.&lt;/em&gt; But the experience was incredibly helpful to highlight my own gaps in &lt;em&gt;reverse engineering&lt;/em&gt; knowledge and to help get me some hands-on practice. It was fun to think creatively and test how one might leverage generative AI solutions to help a newbie with static code analysis. In the real world, I might have skipped right to &lt;em&gt;dynamic analysis&lt;/em&gt; in a sandbox but that isn’t always an option and understanding what is going on “under the hood” can be far more beneficial for deep analysis.&lt;/p&gt;&#xA;&lt;p&gt;Thank you so much for reading along, too! I hope that you had as much fun as I did and learned something new, too. Until next week — stay curious!&lt;/p&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;TryHackMe:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/basicmalwarere&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/basicmalwarere&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;REMnux:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://docs.remnux.org/discover-the-tools/statically&amp;#43;analyze&amp;#43;code/general#ghidra&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://docs.remnux.org/discover-the-tools/statically+analyze+code/general#ghidra&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Ghidra:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://ghidra-sre.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://ghidra-sre.org/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Copilot:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.microsoft.com/en-us/windows/copilot-ai-features?r=1&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.microsoft.com/en-us/windows/copilot-ai-features?r=1&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;CyberChef:&lt;/strong&gt; https://gchq.github.io/CyberChef/&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Microsoft Learn:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-loadstringa&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-loadstringa&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  MAL Strings Room Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/</link>
            <pubDate>Sun, 14 Apr 2024 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/d71b8421aa2e7abb091a90a820c47e54_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  MAL Strings Room Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmemal-strings-room-walkthrough&#34;&gt;TryHackMe — MAL: Strings Room Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;investigating-strings-within-an-application&#34;&gt;Investigating strings within an application&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;d71b8421aa2e7abb091a90a820c47e54_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;300&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/d71b8421aa2e7abb091a90a820c47e54_MD5.png&#34; width=&#34;300&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/malstrings&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/malstrings&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Hello! Welcome and thanks for joining me for this weekly walkthrough!&lt;/p&gt;&#xA;&lt;p&gt;This week, I am doing something a little different. Rather than a challenge, I am going through the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/malstrings&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;MAL: Strings&lt;/strong&gt;&lt;/a&gt; room over on &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt; This room is part of their &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/path/outline/blueteam&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Cyber Defense learning path&lt;/a&gt;. I’ve been putting off finishing this path for a while, but I thought it might be a good time to tackle this room and do a write up, too! This is a brief room but touches on some really valuable resources like researching CVEs, &lt;em&gt;OWASP&lt;/em&gt;, crypto wallet address lookups, and &lt;em&gt;Sysinternals Strings&lt;/em&gt;, so stick around!&lt;/p&gt;&#xA;&lt;p&gt;As always, this write-up serves as a learning journey notebook for me and a &lt;strong&gt;TryHackMe&lt;/strong&gt; room reference walkthrough for anyone else who stumbles upon this post. Thanks for reading along, hope it helps!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/malstrings&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/malstrings&lt;/a&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;what-are-strings&#34;&gt;What are “strings”?&#xA;&lt;/h3&gt;&lt;p&gt;While this information is covered very well in the room’s learning content, I want to put an excerpt here for reference that will help frame the tasks as we move forward about what exactly strings are.&lt;/p&gt;&#xA;&lt;p&gt;Background on strings from &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/malstrings&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Task 1&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;:&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;From a programming perspective, “strings” is the term given for data handled by an application. At a broader view, these pieces of data are used to store information such as text to numerical values.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;For example, let’s say we have an application such as a calculator. A user will have to input two numerical values (e.g. 1 and 5) combined with an operator (e.g. + or plus) addition in this case. These values will be stored as “strings”.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;However “strings” can be stored within the application itself — where no input is necessary from the user. For example, using the example of usernames and passwords is a great representation of the many types of information that may be stored as a “string”.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;So put another way, if we are analyzing an application or some code, being able to extract strings can help us as analysts to understand a program’s intent or functionality and could reveal interesting artifacts like IP addresses, URLs, commands, credentials, etc. With that in mind, let’s start working through the room!&lt;/p&gt;&#xA;&lt;h3 id=&#34;task-1&#34;&gt;Task 1&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-thename-of-the-accountthat-had-the-passcode-of-12345678-in-the-intellian-example-discussed-above&#34;&gt;What is the &lt;strong&gt;name of the account&lt;/strong&gt; that had the passcode of “12345678” in the intellian example discussed above?&#xA;&lt;/h4&gt;&lt;p&gt;Jumping right in, we’re looking at examples of software vulnerabilities caused by storing sensitive information like passwords within the application which might lead to unintended access or information disclosure.&lt;/p&gt;&#xA;&lt;p&gt;The task states that:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Intellian, a satellite-communications focused company had the disclosure of their &lt;strong&gt;“Aptus Web 1.24”&lt;/strong&gt; application retaining a default passcode of “12345678”&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;So, we need to do some research to discover what the account name associated with the default password is. We’ll start by visiting the &lt;a class=&#34;link&#34; href=&#34;https://www.cvedetails.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;CVEdetails&lt;/strong&gt;&lt;/a&gt; website so that we can search the vendor and product name from the question. Let’s input the information and see what we can find.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;360c4fbaf1d8e76dd4a57d97cbfc4430_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;719px&#34; data-flex-grow=&#34;299&#34; height=&#34;267&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/360c4fbaf1d8e76dd4a57d97cbfc4430_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9a267b67de15e7d0bb1694cf0496347c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1005px&#34; data-flex-grow=&#34;418&#34; height=&#34;191&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/9a267b67de15e7d0bb1694cf0496347c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once we get to the product page for the vulnerable version listed in the task content, we find two vulnerabilities. If we look at the descriptions, we see that the first one, &lt;strong&gt;CVE-2020–8000&lt;/strong&gt;, has a hard coded password that matches what we are looking for. From there, we have the username as well!&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Intellian Aptus Web 1.24 has a hardcoded password of 12345678 for the intellian account.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7c1bf52a50bcfa36172baa8814a1a2be_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;554px&#34; data-flex-grow=&#34;231&#34; height=&#34;346&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/7c1bf52a50bcfa36172baa8814a1a2be_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1d4311db9d7f480ed5fcbdec3243a551_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2823px&#34; data-flex-grow=&#34;1176&#34; height=&#34;68&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/1d4311db9d7f480ed5fcbdec3243a551_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;what-is-the-cve-entry-disclosed-by-the-company-teradata-in-their-viewpoint-application-that-has-a-password-within-astring&#34;&gt;What is the CVE entry disclosed by the company “Teradata” in their “Viewpoint” Application that has a password within a string?&#xA;&lt;/h4&gt;&lt;p&gt;We’ll follow the same process that we did for the last question. Let’s search the &lt;em&gt;CVEdetails&lt;/em&gt; and see if we can discover the &lt;em&gt;CVE&lt;/em&gt; entry assigned to the vulnerability in the &lt;em&gt;Teradata Viewpoint&lt;/em&gt; application.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;dacdadd32f28729ed52b28966de9dafa_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;488px&#34; data-flex-grow=&#34;203&#34; height=&#34;393&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/dacdadd32f28729ed52b28966de9dafa_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e83c1eaef7c6152462ba0e5701d92bc2_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;468px&#34; data-flex-grow=&#34;195&#34; height=&#34;410&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/e83c1eaef7c6152462ba0e5701d92bc2_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0946ff229a15c310666f441b38b40ca6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/0946ff229a15c310666f441b38b40ca6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;according-to-owasps-list-of-top-ten-iot-vulnerabilities-name-the-ranking-this-vulnerability-would-fall-within-represented-astext&#34;&gt;According to OWASP’s list of “Top Ten IoT” vulnerabilities, name the ranking this vulnerability would fall within, represented as text.&#xA;&lt;/h4&gt;&lt;p&gt;For those who are unfamiliar, the &lt;em&gt;Open Worldwide Application Security Project (OWASP)&lt;/em&gt; is a foundation that publishes guidance to help developers create secure software projects. The &lt;em&gt;OWASP Top 10&lt;/em&gt; documents are like “what not to do” lists so developers can avoid the most commonly exploited security mistakes for a particular category of software or application. For our purposes, we want to review the &lt;em&gt;OWASP Internet of Things (IoT) Top 10&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;OWASP IOT Top 10:&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://wiki.owasp.org/index.php/OWASP_Internet_of_Things_Project#tab=IoT_Top_10&#34;  title=&#34;https://wiki.owasp.org/index.php/OWASP_Internet_of_Things_Project#tab=IoT_Top_10&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;OWASP Internet of Things Project&lt;/strong&gt;&#xA;_Oxford defines the Internet of Things as: &amp;ldquo;A proposed development of the Internet in which everyday objects have…_wiki.owasp.org&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://wiki.owasp.org/index.php/OWASP_Internet_of_Things_Project#tab=IoT_Top_10&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s take a look at the IoT guidance. The previous two questions have been about vulnerabilities due to &lt;em&gt;Hardcoded Passwords.&lt;/em&gt; According to OWASP, this the number one vulnerability facing IoT projects.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0a9ec6adaacd239e98f86a346b51d0b4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;498&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/0a9ec6adaacd239e98f86a346b51d0b4_MD5.png&#34; width=&#34;500&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;fdfbd54a2be77b6489006ce4b08a0732_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2493px&#34; data-flex-grow=&#34;1038&#34; height=&#34;77&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/fdfbd54a2be77b6489006ce4b08a0732_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;task-2&#34;&gt;Task 2&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-correct-username-required-by-the-loginform&#34;&gt;What is the correct username required by the “LoginForm”?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-required-password-to-authenticate-with&#34;&gt;What is the required password to authenticate with?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-hidden-thmflag&#34;&gt;What is the “hidden” THM{} flag?&#xA;&lt;/h4&gt;&lt;p&gt;Now we get a little bit of hands-on time! The task files contain an executable called &lt;em&gt;LoginForm.exe&lt;/em&gt; — for &lt;em&gt;strings&lt;/em&gt; analysis we can use the built-in &lt;em&gt;strings&lt;/em&gt; command in &lt;em&gt;Linux.&lt;/em&gt; For the purposes of this task, I am using my own &lt;a class=&#34;link&#34; href=&#34;https://remnux.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;REMnux&lt;/em&gt;&lt;/a&gt; virtual machine but you can use any distro of your choice including the &lt;em&gt;Kali Linux&lt;/em&gt; box on &lt;em&gt;TryHackMe&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;So, now that we have the file in our analysis environment, let’s just run the &lt;em&gt;strings&lt;/em&gt; command and let it print to the console and see what we find!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8baddda746363604c0a49c172c91c617_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;610px&#34; data-flex-grow=&#34;254&#34; height=&#34;271&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/8baddda746363604c0a49c172c91c617_MD5.png&#34; width=&#34;689&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Strings output.&lt;/p&gt;&#xA;&lt;p&gt;Okay, there is a lot of data here. Maybe it will be easier to search if we output to a txt file instead? For this example, I am going to write to an output file called &lt;em&gt;stringsdump.txt&lt;/em&gt; but you can use whatever you’d like.&lt;/p&gt;&#xA;&lt;p&gt;strings LoginForm_1586175647590.exe &amp;gt; stringsdump.txt&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d7606ae85023e4a5b170b6a627e79e09_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;300px&#34; data-flex-grow=&#34;125&#34; height=&#34;259&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/d7606ae85023e4a5b170b6a627e79e09_MD5.png&#34; width=&#34;324&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Strings output to txt file&lt;/p&gt;&#xA;&lt;p&gt;There we go! If we scroll through the list, we’ll stumble on a few strings that look like a username, password, and a flag. Great find!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6dbbe90b00dc9cdd3bf7a60f5fdcbac0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;936px&#34; data-flex-grow=&#34;390&#34; height=&#34;205&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/6dbbe90b00dc9cdd3bf7a60f5fdcbac0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;task-3&#34;&gt;Task 3&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-key-term-to-describe-a-server-that-botnets-recieve-instructions-from&#34;&gt;What is the key term to describe a server that Botnets recieve instructions from?&#xA;&lt;/h4&gt;&lt;p&gt;Moving right along, there isn’t much that we need to do here. If we read through &lt;strong&gt;Task 3,&lt;/strong&gt; we are able to answer this question from the learning content:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;malware types such as botnets and ransomware rely upon information being stored within strings I.e. IP Addresses so that they are able to “call home” and connect to their “Command and Control” (C&amp;amp;C) server.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Below, I’ve added some additional context about the &lt;em&gt;Command and Control&lt;/em&gt; tactic from &lt;strong&gt;MITRE ATT&amp;amp;ACK&lt;/strong&gt; (&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/tactics/TA0011/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;TA0011&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/tactics/TA0011/&#34;  title=&#34;https://attack.mitre.org/tactics/TA0011/&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Command and Control&lt;/strong&gt;&#xA;_The adversary is trying to communicate with compromised systems to control them. Command and Control consists of…_attack.mitre.org&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/tactics/TA0011/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d2fe4da61492ceb9082e5ccac2161115_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/d2fe4da61492ceb9082e5ccac2161115_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;name-the-discussed-example-malware-that-uses-strings-to-store-the-bitcoin-wallet-addresses-forpayment&#34;&gt;Name the discussed example malware that uses “strings” to store the bitcoin wallet addresses for payment&#xA;&lt;/h4&gt;&lt;p&gt;Same thing as the previous question — Let’s read through the task content to find the answer:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;A famous example is the “Wannacry” ransomware. The “killswitch” was a domain that was discovered as a value contained within a string.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;760baf732ec6c08817ec14c0a37d1493_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2461px&#34; data-flex-grow=&#34;1025&#34; height=&#34;78&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/760baf732ec6c08817ec14c0a37d1493_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;task-4&#34;&gt;Task 4&#xA;&lt;/h3&gt;&lt;h4 id=&#34;list-the-number-of-total-transactions-that-the-bitcoin-wallet-used-by-the-wannacry-authors&#34;&gt;List the number of total transactions that the Bitcoin wallet used by the “Wannacry” author(s)&#xA;&lt;/h4&gt;&lt;p&gt;For this task, we’ll go and gather some intelligence on the &lt;em&gt;Bitcoin&lt;/em&gt; wallet used by this threat actor to see how many transactions have occurred. There are a few sites we can do this on but let’s first check out the suggested website, &lt;a class=&#34;link&#34; href=&#34;https://live.blockcypher.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;BlockCypher&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once we look up the &lt;em&gt;Bitcoin&lt;/em&gt; address on the site, we’ll see the number of received &lt;em&gt;Bitcoins&lt;/em&gt; and the total number of transactions for the address.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c1a9e48aec257d4b2553ef8b5a3fc9b7_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;431px&#34; data-flex-grow=&#34;179&#34; height=&#34;445&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/c1a9e48aec257d4b2553ef8b5a3fc9b7_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Bitcoin address lookup on &lt;a class=&#34;link&#34; href=&#34;https://live.blockcypher.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;BlockCypher&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;For fun, let’s check another source, &lt;a class=&#34;link&#34; href=&#34;https://scam-alert.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;ScamAlert&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt; This website tracks &lt;em&gt;Bitcoin&lt;/em&gt; wallet fraud and scams and can be used to check a &lt;em&gt;Bitcoin&lt;/em&gt; addresses — very handy! Let’s look up the wallet address from the task here, too. We’ll find that the website has flagged it as a &lt;em&gt;ransomware&lt;/em&gt; address. But what if we want more detail?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0f155625d43c463284319a7e851fd961_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;384px&#34; data-flex-grow=&#34;160&#34; height=&#34;499&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/0f155625d43c463284319a7e851fd961_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Bitcoin address lookup on &lt;a class=&#34;link&#34; href=&#34;https://scam-alert.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;ScamAlert&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;If we click the source URL, we are taken to &lt;a class=&#34;link&#34; href=&#34;https://www.chainabuse.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;Chainabuse&lt;/em&gt;&lt;/a&gt; (which has merged with &lt;em&gt;Bitcoin Abuse).&lt;/em&gt; This is another site that can be used to report on malicious crypto activity. Now, if we input the wallet address on this site, we get even more intelligence that confirms the association with &lt;em&gt;Wannacry/Wannacrypt.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;71f374ed3aa05ae768b4c704c781527c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;427px&#34; data-flex-grow=&#34;178&#34; height=&#34;447&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/71f374ed3aa05ae768b4c704c781527c_MD5.png&#34; width=&#34;797&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Bitcoin address lookup on &lt;a class=&#34;link&#34; href=&#34;https://www.chainabuse.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Chainabuse&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s submit the answer of the total number of transactions that we discovered from &lt;em&gt;BlockCypher&lt;/em&gt; and move on.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5b5e1fa4f885cc9dbbe4e5e354c6561e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2909px&#34; data-flex-grow=&#34;1212&#34; height=&#34;66&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/5b5e1fa4f885cc9dbbe4e5e354c6561e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;what-is-the-bitcoin-address-stored-within-complexcalculatorexe&#34;&gt;What is the Bitcoin Address stored within “ComplexCalculator.exe”&#xA;&lt;/h4&gt;&lt;p&gt;Okay, more hands-on time! This time around we will use a &lt;em&gt;Windows&lt;/em&gt; environment instead of &lt;em&gt;Linux.&lt;/em&gt; This is a great opportunity to try out the &lt;strong&gt;&lt;em&gt;Strings&lt;/em&gt;&lt;/strong&gt; tool which is part of the &lt;strong&gt;&lt;em&gt;Microsoft Sysinternals&lt;/em&gt;&lt;/strong&gt; suite of utilities_._&lt;/p&gt;&#xA;&lt;p&gt;Fortunately, this task includes a virtual machine which has the &lt;em&gt;Sysinternals utilities&lt;/em&gt; installed already. We will use &lt;em&gt;strings.exe&lt;/em&gt; to extract the strings from within the included executable file, &lt;em&gt;ComplexCalculatorv2.exe&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s launch the virtual machine and see what we can discover!&lt;/p&gt;&#xA;&lt;p&gt;First, we’ll open the &lt;em&gt;Command Prompt (cmd.exe)&lt;/em&gt; as Administrator. Then, we will change the directory to the folder on the &lt;em&gt;Desktop&lt;/em&gt; containing the &lt;em&gt;Sysinternals&lt;/em&gt; tools_._ Since &lt;em&gt;Strings&lt;/em&gt; is a command-line utility, we will launch it from the command prompt and accept the license agreement.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;389cd3eb530547428e7f1c317bf17e4c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;460px&#34; data-flex-grow=&#34;191&#34; height=&#34;417&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/389cd3eb530547428e7f1c317bf17e4c_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now, let’s go ahead and run &lt;em&gt;Strings&lt;/em&gt; using the following syntax. We’ll use the &lt;strong&gt;&amp;gt;&lt;/strong&gt; operator to direct the output to a file instead of the console:&lt;/p&gt;&#xA;&lt;p&gt;strings.exe ComplexCalculatorv2.exe &amp;gt; strings.txt&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;862767bb3e5dbb4901652ce10b75526f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;365px&#34; data-flex-grow=&#34;152&#34; height=&#34;525&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/862767bb3e5dbb4901652ce10b75526f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now that we have sent the output to a text file, let’s open it up in &lt;em&gt;Notepad.&lt;/em&gt; Since we are searching for a &lt;em&gt;Bitcoin&lt;/em&gt; address, let’s speed this up and use &lt;em&gt;Notepad’s&lt;/em&gt; find function by pressing &lt;em&gt;CTRL + F&lt;/em&gt; and typing in &lt;em&gt;“bitcoin” —&lt;/em&gt; This should help us locate the &lt;em&gt;string&lt;/em&gt; quickly!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;01a425bffc82b3a16115ec5451d68a07_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;546px&#34; data-flex-grow=&#34;227&#34; height=&#34;313&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/01a425bffc82b3a16115ec5451d68a07_MD5.png&#34; width=&#34;713&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Nice! It looks like we found our answer!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f3699acec846a82d6b799895df4e4444_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2742px&#34; data-flex-grow=&#34;1142&#34; height=&#34;70&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/f3699acec846a82d6b799895df4e4444_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;task-5&#34;&gt;Task 5&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-name-of-the-toolset-provided-by-microsoft-that-allows-you-to-extract-the-strings-of-an-application&#34;&gt;What is the name of the toolset provided by Microsoft that allows you to extract the “strings” of an application?&#xA;&lt;/h4&gt;&lt;p&gt;Alright, we’re in the home stretch! &lt;strong&gt;Task 5&lt;/strong&gt; is going to focus on the theories that we just utilized in &lt;strong&gt;Task 4&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In the last task, we used &lt;em&gt;Strings&lt;/em&gt; in the &lt;em&gt;Windows&lt;/em&gt; environment. This utility is part of the &lt;em&gt;Microsoft SysInternals&lt;/em&gt; toolset.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/sysinternals/downloads/strings&#34;  title=&#34;https://learn.microsoft.com/en-us/sysinternals/downloads/strings&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Strings - Sysinternals&lt;/strong&gt;&#xA;_Search for ANSI and UNICODE strings in binary images._learn.microsoft.com&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/sysinternals/downloads/strings&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;what-operator-would-you-use-to-pipe-or-store-the-output-of-thestringscommand&#34;&gt;What operator would you use to “pipe” or store the output of the &lt;strong&gt;strings&lt;/strong&gt; command?&#xA;&lt;/h4&gt;&lt;p&gt;I believe the question is asking about redirecting output, not piping, since we aren’t sending the output of the command into the input of another command. With that, remember in &lt;strong&gt;Task 4&lt;/strong&gt; that we directed the output of &lt;em&gt;Strings&lt;/em&gt; with the &lt;strong&gt;&amp;gt;&lt;/strong&gt; operator to a .txt file? I think we are looking for &lt;strong&gt;&amp;gt;&lt;/strong&gt; as the answer.&lt;/p&gt;&#xA;&lt;h4 id=&#34;what-is-the-name-of-the-currency-that-ransomware-often-uses-forpayment&#34;&gt;What is the name of the currency that ransomware often uses for payment?&#xA;&lt;/h4&gt;&lt;p&gt;Okay, last one! In &lt;strong&gt;Task 4&lt;/strong&gt;, we were looking up the &lt;em&gt;Bitcoin&lt;/em&gt; address for &lt;em&gt;Wannacry&lt;/em&gt; and &lt;em&gt;Bitcoin&lt;/em&gt; is a type of cryptocurrency, so it seems to me that we already have the answer — let’s check our work!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;469fc73c26c414cf24bebd1b83a05743_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1072px&#34; data-flex-grow=&#34;446&#34; height=&#34;179&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-mal-strings-room-walkthrough/469fc73c26c414cf24bebd1b83a05743_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;Awesome job! We made it through the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/malstrings&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;MAL: Strings&lt;/strong&gt;&lt;/a&gt; room!&lt;/p&gt;&#xA;&lt;p&gt;Thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for the interesting room as I close in on the end of the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/path/outline/blueteam&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Cyber Defense learning path&lt;/a&gt;. While this room was pretty brief and a little light on the hands-on content, it was still a fun experience to do some research with &lt;a class=&#34;link&#34; href=&#34;https://www.cvedetails.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;CVEdetails&lt;/a&gt; and &lt;a class=&#34;link&#34; href=&#34;https://owasp.org/www-project-internet-of-things/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;OWASP&lt;/a&gt; and to explore the &lt;em&gt;Strings&lt;/em&gt; utilities available in &lt;em&gt;Linux&lt;/em&gt; and &lt;em&gt;Windows.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;I also enjoyed checking out some of the c_rypto wallet_ lookup tools and see what kind of intelligence can be found about &lt;em&gt;Bitcoin&lt;/em&gt; addresses. This will definitely be useful in the field! It never hurts to have some more experience with a new tool to keep in your kit, after all!&lt;/p&gt;&#xA;&lt;p&gt;Thank you so much for reading along. I hope that you had as much fun as I did and learned something new, too. Until next week — stay curious!&lt;/p&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;CVE Details:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.cvedetails.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.cvedetails.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;OWASP:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://wiki.owasp.org/index.php/OWASP_Internet_of_Things_Project#tab=IoT_Top_10&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://wiki.owasp.org/index.php/OWASP_Internet_of_Things_Project#tab=IoT_Top_10&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;REMnux:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://remnux.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://remnux.org/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;BlockCypher:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://live.blockcypher.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://live.blockcypher.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;ScamAlert.io:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://scam-alert.io/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://scam-alert.io/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;ChainAbuse:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.chainabuse.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.chainabuse.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Sysinternals Suite:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/sysinternals/downloads/sysinternals-suite&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://learn.microsoft.com/en-us/sysinternals/downloads/sysinternals-suite&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  REvil Corp Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/</link>
            <pubDate>Sun, 07 Apr 2024 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/f4c9c9721f1e6726d2c385d06521db0c_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  REvil Corp Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmerevil-corp-challenge-walkthrough&#34;&gt;TryHackMe — REvil Corp Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;incident-response-engagement-using-fireeyeredline&#34;&gt;Incident Response Engagement using FireEye Redline&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;f4c9c9721f1e6726d2c385d06521db0c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;275px&#34; data-flex-grow=&#34;114&#34; height=&#34;267&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/f4c9c9721f1e6726d2c385d06521db0c_MD5.png&#34; width=&#34;306&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/revilcorp&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/revilcorp&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Hello — Thanks for joining me for this weekly walkthrough!&lt;/p&gt;&#xA;&lt;p&gt;This week I am going to continue exploring the &lt;a class=&#34;link&#34; href=&#34;https://fireeye.market/apps/211364&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;FireEye Redline&lt;/strong&gt;&lt;/a&gt; tool by investigating the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/revilcorp&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;REvil Corp&lt;/strong&gt;&lt;/a&gt; incident response challenge room over on &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In the spirit of learning, I will not be revealing the flags in this walkthrough but this is a &lt;em&gt;FREE&lt;/em&gt; room so anyone can test their skills with &lt;strong&gt;Redline&lt;/strong&gt; and perform the investigation along with me and find the answer on their own.&lt;/p&gt;&#xA;&lt;p&gt;This challenge builds on my previous &lt;strong&gt;TryHackMe Redline&lt;/strong&gt; walkthrough so I encourage you to start there first if you are just jumping in.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/&#34; &gt;&lt;strong&gt;TryHackMe — Redline Endpoint Investigation Challenge Walkthrough&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;As always, this write-up will serve as a learning notebook for me and a &lt;strong&gt;TryHackMe&lt;/strong&gt; challenge walkthrough for anyone else who stumbles upon this post. Thanks for reading along, hope it helps!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/revilcorp&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/revilcorp&lt;/a&gt;&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;challenge-scenario&#34;&gt;Challenge Scenario:&#xA;&lt;/h3&gt;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;Scenario&lt;/strong&gt;: One of the employees at Lockman Group gave an IT department the call; the user is frustrated and mentioned that all of his files are renamed to a weird file extension that he has never seen before. After looking at the user’s workstation, the IT guy already knew what was going on and transferred the case to the Incident Response team for further investigation.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;You&lt;/strong&gt; are the incident responder. Let’s see if you can solve this challenge using the infamous Redline tool. Happy Hunting, my friend!&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h3 id=&#34;question-1-what-is-the-compromised-employees-fullname&#34;&gt;Question 1: What is the compromised employee’s full name?&#xA;&lt;/h3&gt;&lt;p&gt;Fortunately, the analysis session has already been created for this challenge, so we simply need to open the investigation (.mans) file in &lt;em&gt;Redline&lt;/em&gt;. Once it (finally) opens, we have quite a few options to explore in our &lt;em&gt;Analysis Data&lt;/em&gt; menu.&lt;/p&gt;&#xA;&lt;p&gt;To kick this off, let’s take a look at the &lt;em&gt;Users&lt;/em&gt; tab to hunt for the usernames on the system and find out who the victim is.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;77cb8e3af14277be5c31bed455174f08_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;525px&#34; data-flex-grow=&#34;218&#34; height=&#34;548&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/77cb8e3af14277be5c31bed455174f08_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/77cb8e3af14277be5c31bed455174f08_MD5_hu_742984ba699324fd.png 800w, https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/77cb8e3af14277be5c31bed455174f08_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Users Analysis Data&lt;/p&gt;&#xA;&lt;p&gt;Since the &lt;em&gt;Administrator&lt;/em&gt; and &lt;em&gt;Guest&lt;/em&gt; accounts are disabled, it looks like we only have one option. Let’s confirm our findings and keep going with the investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;59c01aa73e3a92985ad09a4d83a233fe_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2823px&#34; data-flex-grow=&#34;1176&#34; height=&#34;68&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/59c01aa73e3a92985ad09a4d83a233fe_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-what-is-the-operating-system-of-the-compromised-host&#34;&gt;Question 2: What is the operating system of the compromised host?&#xA;&lt;/h3&gt;&lt;p&gt;Okay, now that we know who the victim is let’s take a high-level view of the victim’s machine to better understand the environment. At the very top of the &lt;em&gt;Analysis Data&lt;/em&gt; menu is the &lt;em&gt;System Information&lt;/em&gt; tab. This tab is a great starting point for us and contains information about the Machine, Operating System, and User.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3304ea6a866c4dc5bda92617b55d3b37_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;224px&#34; data-flex-grow=&#34;93&#34; height=&#34;857&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/3304ea6a866c4dc5bda92617b55d3b37_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8c1899b70cbc660803c416593f273bd1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2630px&#34; data-flex-grow=&#34;1095&#34; height=&#34;73&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/8c1899b70cbc660803c416593f273bd1_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;questions-3-4&#34;&gt;Questions 3 &amp;amp; 4:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-name-of-the-malicious-executable-that-the-useropened&#34;&gt;What is the name of the malicious executable that the user opened?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-full-url-that-the-user-visited-to-download-the-malicious-binary-include-the-binary-aswell&#34;&gt;What is the full URL that the user visited to download the malicious binary? (include the binary as well)&#xA;&lt;/h4&gt;&lt;p&gt;Okay now we need to determine how the malicious executable was dropped onto the system. Since &lt;strong&gt;Question 4&lt;/strong&gt; is asking about a download &lt;em&gt;URL&lt;/em&gt;, let’s start with something obvious and check the &lt;em&gt;File Download History&lt;/em&gt; tab to see what we can find.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;dac7da78cf3246aab47668bfae74b8ec_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;523px&#34; data-flex-grow=&#34;218&#34; height=&#34;550&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/dac7da78cf3246aab47668bfae74b8ec_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/dac7da78cf3246aab47668bfae74b8ec_MD5_hu_2ed9633ea155a5a4.png 800w, https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/dac7da78cf3246aab47668bfae74b8ec_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The &lt;em&gt;File Download History&lt;/em&gt; shows u_s_ two artifacts, but one of the downloads has a source URL containing an IP address — that’s a bit suspicious and requires some additional investigation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8a6f86918fc4000aea88580a0409da75_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;273px&#34; data-flex-grow=&#34;113&#34; height=&#34;673&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/8a6f86918fc4000aea88580a0409da75_MD5.png&#34; width=&#34;767&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The artifacts we discovered so far should be sufficient to answer &lt;strong&gt;Questions 3 &amp;amp; 4&lt;/strong&gt; but it is still unclear how or why the victim acquired this executable.&lt;/p&gt;&#xA;&lt;p&gt;At this point in the analysis, we can start to speculate what might have happened:&lt;/p&gt;&#xA;&lt;p&gt;-Maybe the download URL was sent to the victim with a &lt;em&gt;Spearphishing Link?&lt;/em&gt; (&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1566/002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;MITRE ATT&amp;amp;CK T1566.002&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;-Could the user have been searching for the legitimate application on the web and fell victim to a &lt;em&gt;Malvertising&lt;/em&gt; link? (&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1583/008/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;MITRE ATT&amp;amp;CK T1583.008&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;-Or maybe there was a &lt;em&gt;Supply Chain Compromise,&lt;/em&gt; and the executable was infected and distributed from the legitimate site hosting the application? (&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1195/002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;MITRE ATT&amp;amp;CK T1195.002&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;As we go through the investigation, answering these types of questions will be important. In the real world, finding the root cause can help us form a strategy to tighten up our preventative controls and prepare us to fully eradicate the threat!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d1c8b20b9ba099ab9d25c2b9d6f03020_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2865px&#34; data-flex-grow=&#34;1194&#34; height=&#34;67&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/d1c8b20b9ba099ab9d25c2b9d6f03020_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3e4aebfdecaa9d1a0eba08d6995ef8c1_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2782px&#34; data-flex-grow=&#34;1159&#34; height=&#34;69&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/3e4aebfdecaa9d1a0eba08d6995ef8c1_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;questions-5-6&#34;&gt;Questions 5 &amp;amp; 6:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-md5-hash-of-thebinary&#34;&gt;What is the MD5 hash of the binary?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-size-of-the-binary-in-kilobytes&#34;&gt;What is the size of the binary in kilobytes?&#xA;&lt;/h4&gt;&lt;p&gt;Now, since we have the download path from the &lt;em&gt;File Download History&lt;/em&gt;, let’s actually navigate to this location using the &lt;em&gt;File System&lt;/em&gt; tab. We will select the &lt;em&gt;Downloads&lt;/em&gt; folder, locate the file, and double-click it to drill-down and get more detailed information.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c9e40e67668fb6ee80d7a8c9b42f92bc_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;386px&#34; data-flex-grow=&#34;160&#34; height=&#34;497&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/c9e40e67668fb6ee80d7a8c9b42f92bc_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This will give us the specific information we are looking for to answer &lt;strong&gt;Questions 5 &amp;amp; 6&lt;/strong&gt;, including the &lt;em&gt;file size&lt;/em&gt; and &lt;em&gt;file hashes&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3064dcdc55e3cd6a5620a28c8c1c3b40_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;285px&#34; data-flex-grow=&#34;118&#34; height=&#34;636&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/3064dcdc55e3cd6a5620a28c8c1c3b40_MD5.png&#34; width=&#34;756&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Full Detailed Information of the Malicious Binary&lt;/p&gt;&#xA;&lt;p&gt;Okay! Now that we have the file hash, let’s take our analysis a step further and drop the hash into &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;VirusTotal&lt;/em&gt;&lt;/a&gt; to see if we can get any hits and gather some additional intelligence on this binary:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;aff30323a0a1f5adf7ebbe6610f66555_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;685px&#34; data-flex-grow=&#34;285&#34; height=&#34;280&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/aff30323a0a1f5adf7ebbe6610f66555_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;VirusTotal&lt;/em&gt;&lt;/a&gt; shows a lot of detection on this binary and includes some threat labeling that will help us to hunt for specific indicators of compromise. Keep this page open for reference later since we will use it to help answer &lt;strong&gt;Question 9!&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;80449939d5986d2cf9319ec4a800c06f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1465px&#34; data-flex-grow=&#34;610&#34; height=&#34;131&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/80449939d5986d2cf9319ec4a800c06f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;questions-7-8&#34;&gt;Questions 7 &amp;amp; 8:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-extension-to-which-the-users-files-gotrenamed&#34;&gt;What is the extension to which the user’s files got renamed?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-number-of-files-that-got-renamed-and-changed-to-that-extension&#34;&gt;What is the number of files that got renamed and changed to that extension?&#xA;&lt;/h4&gt;&lt;p&gt;Okay, let’s stick with the &lt;em&gt;File System&lt;/em&gt; tab. Since we know the user account and that the victim complained that his files “&lt;em&gt;are renamed to a weird file extension that he has never seen before&lt;/em&gt;” we can take a look at a location with high visibility and that is often used for storage — the &lt;em&gt;Desktop.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;bdc35bd8f739ad77ffaaa6faf237597f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;493px&#34; data-flex-grow=&#34;205&#34; height=&#34;584&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/bdc35bd8f739ad77ffaaa6faf237597f_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/bdc35bd8f739ad77ffaaa6faf237597f_MD5_hu_7d616a0564ff9067.png 800w, https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/bdc35bd8f739ad77ffaaa6faf237597f_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Right away we can see what the victim reported, several files with an unusual extension. Let’s try to assess the impact and determine how many files were appended with this extension.&lt;/p&gt;&#xA;&lt;p&gt;To do this, we are going to utilize the &lt;em&gt;Timeline&lt;/em&gt; feature which records all of the file events so that we can see what has been created, accessed, modified, and changed. The question is asking about files that are renamed AND changed, so within the &lt;em&gt;Timeline&lt;/em&gt; lets select &lt;em&gt;modified&lt;/em&gt; and &lt;em&gt;changed&lt;/em&gt; under &lt;em&gt;Files.&lt;/em&gt; After that we will press the filter button on the &lt;em&gt;Summary&lt;/em&gt; column and input the weird extension from &lt;strong&gt;Question 7&lt;/strong&gt; to search for files with this extension.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0ac37863d728b4bb3343b68e47fb8255_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;524px&#34; data-flex-grow=&#34;218&#34; height=&#34;549&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/0ac37863d728b4bb3343b68e47fb8255_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/0ac37863d728b4bb3343b68e47fb8255_MD5_hu_7e0caec72d0d1f7.png 800w, https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/0ac37863d728b4bb3343b68e47fb8255_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now let’s check our results. At the bottom right of the screen we will have an item count, this should be the answer we are looking for!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6997c7a5ddb9ce47bc5cfae1bbca45f6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1142px&#34; data-flex-grow=&#34;476&#34; height=&#34;168&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/6997c7a5ddb9ce47bc5cfae1bbca45f6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-9-what-is-the-full-path-to-the-wallpaper-that-got-changed-by-an-attacker-including-the-imagename&#34;&gt;Question 9: What is the full path to the wallpaper that got changed by an attacker, including the image name?&#xA;&lt;/h3&gt;&lt;p&gt;To tackle this problem, let’s pull back and recall some of the indicators we have already discovered. Remember back in &lt;strong&gt;Question 6&lt;/strong&gt; that we found some information about the threat family of the malicious executable from &lt;em&gt;VirusTotal&lt;/em&gt;? Let’s use that information and do some research. This will save us time instead of manually sifting through the entire &lt;em&gt;Timeline&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Let’s head over to &lt;em&gt;Google&lt;/em&gt; and see what we can find by searching for the threat family label that we found on &lt;em&gt;VirusTotal.&lt;/em&gt; While there is quite a bit of information on this malware, I stumbled across one article that had some interesting information that will help us answer &lt;strong&gt;Question 9&lt;/strong&gt; (and confirms one of our theories from &lt;strong&gt;Question 4&lt;/strong&gt;).&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.secureworks.com/research/revil-sodinokibi-ransomware&#34;  title=&#34;https://www.secureworks.com/research/revil-sodinokibi-ransomware&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;REvil/Sodinokibi Ransomware&lt;/strong&gt;&#xA;_The REvil (also known as Sodinokibi) ransomware was used by the financially motivated GOLD SOUTHFIELD threat group…_www.secureworks.com&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.secureworks.com/research/revil-sodinokibi-ransomware&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The article states that the malware sets a wallpaper and:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;saves the finished image to the host’s %Temp% directory using a random filename consisting of lowercase letters and numbers between 3 and 13 characters in length appended with the “.bmp” extension (e.g., C:\Users_&lt;user&gt;_\AppData\Local\Temp\cd2sxy.bmp).&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Now that we have some idea of what indicator we might be hunting for, let’s jump back into &lt;em&gt;Redline&lt;/em&gt; and adjust our filter in the &lt;em&gt;Timeline.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;We will add a filter to the &lt;em&gt;Summary&lt;/em&gt; column and specify the &lt;em&gt;Temp&lt;/em&gt; directory for the user that we are investigating. Once we have the filter in place, we can search for the &lt;em&gt;.bmp&lt;/em&gt; file extension in the search box.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;517511d5dda363522a57c62baf25f805_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;519px&#34; data-flex-grow=&#34;216&#34; height=&#34;554&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/517511d5dda363522a57c62baf25f805_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/517511d5dda363522a57c62baf25f805_MD5_hu_21e81182c6dfd7ca.png 800w, https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/517511d5dda363522a57c62baf25f805_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Great! With the help of some threat intelligence, we found the answer!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7e5d9a98305237c0acb53244c7acd4be_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/7e5d9a98305237c0acb53244c7acd4be_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-10-the-attacker-left-a-note-for-the-user-on-the-desktop-provide-the-name-of-the-note-with-the-extension&#34;&gt;Question 10: The attacker left a note for the user on the Desktop; provide the name of the note with the extension.&#xA;&lt;/h3&gt;&lt;p&gt;Now let’s go searching for the ransom note. While we could navigate back to the &lt;em&gt;Desktop&lt;/em&gt; from the &lt;em&gt;File System&lt;/em&gt; tab, why don’t we just keep using the &lt;em&gt;Timeline&lt;/em&gt; with some adjustments?&lt;/p&gt;&#xA;&lt;p&gt;Let’s change the &lt;em&gt;Timeline Configuration&lt;/em&gt; to show &lt;em&gt;Created&lt;/em&gt; files and then filter the summary column for the victim’s &lt;em&gt;Desktop&lt;/em&gt; path:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3cbb91ddebfcd0afde928e64ee480257_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;447px&#34; data-flex-grow=&#34;186&#34; height=&#34;643&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/3cbb91ddebfcd0afde928e64ee480257_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/3cbb91ddebfcd0afde928e64ee480257_MD5_hu_6142025d581797ba.png 800w, https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/3cbb91ddebfcd0afde928e64ee480257_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once we do that, we will see a &lt;em&gt;readme&lt;/em&gt; file — I think that’s what we are looking for…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d39f10e5e5203c79f67b4c26039825af_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;737px&#34; data-flex-grow=&#34;307&#34; height=&#34;390&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/d39f10e5e5203c79f67b4c26039825af_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/d39f10e5e5203c79f67b4c26039825af_MD5_hu_6f1bb186387ade71.png 800w, https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/d39f10e5e5203c79f67b4c26039825af_MD5.png 1198w&#34; width=&#34;1198&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;90af6c4ee59a6dbc6ee8e0469b2818cc_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2704px&#34; data-flex-grow=&#34;1126&#34; height=&#34;71&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/90af6c4ee59a6dbc6ee8e0469b2818cc_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-11-the-attacker-created-a-folder-links-for-united-states-under-cusersjohn-colemanfavorites-and-left-a-file-there-provide-the-name-of-thefile&#34;&gt;Question 11: The attacker created a folder “Links for United States” under C:\Users\John Coleman\Favorites\ and left a file there. Provide the name of the file.&#xA;&lt;/h3&gt;&lt;p&gt;We have all the information we need from &lt;strong&gt;Question 11&lt;/strong&gt; itself to continue searching within the &lt;em&gt;Timeline&lt;/em&gt;. Let’s go ahead and add the file path from the question including the folder name.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d38f29057fd0f933a63d0a85a83f0920_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;862px&#34; data-flex-grow=&#34;359&#34; height=&#34;334&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/d38f29057fd0f933a63d0a85a83f0920_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/d38f29057fd0f933a63d0a85a83f0920_MD5_hu_1e59da70e3f30.png 800w, https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/d38f29057fd0f933a63d0a85a83f0920_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Once add the information to the filter, the output leaves us with just a few choices. One file sticks out as it is not an English language word like we have seen on the rest of this system:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e7ae9214ea997a5b26bdb22477c869a6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;349px&#34; data-flex-grow=&#34;145&#34; height=&#34;549&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/e7ae9214ea997a5b26bdb22477c869a6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s confirm our suspicion and check our findings.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;7c7254799a27e6d01baf215b8a73d378_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2865px&#34; data-flex-grow=&#34;1194&#34; height=&#34;67&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/7c7254799a27e6d01baf215b8a73d378_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-12-there-is-a-hidden-file-that-was-created-on-the-users-desktop-that-has-0-bytes-provide-the-name-of-the-hiddenfile&#34;&gt;Question 12: There is a hidden file that was created on the user’s Desktop that has 0 bytes. Provide the name of the hidden file.&#xA;&lt;/h3&gt;&lt;p&gt;For &lt;strong&gt;Question 12&lt;/strong&gt;, we’ll pivot back to the &lt;em&gt;File System&lt;/em&gt; tab and filter only John’s Desktop again.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;582592811ac6e774535056632f9fe63d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;458px&#34; data-flex-grow=&#34;190&#34; height=&#34;419&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/582592811ac6e774535056632f9fe63d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;If we look at the &lt;em&gt;Size&lt;/em&gt; column, we can easily spot the hidden file we are looking for.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;cdf237a1e23bf4fc798355613faca6d3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2526px&#34; data-flex-grow=&#34;1052&#34; height=&#34;76&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/cdf237a1e23bf4fc798355613faca6d3_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-13-the-user-downloaded-a-decryptor-hoping-to-decrypt-all-the-files-but-he-failed-provide-the-md5-hash-of-the-decryptor-file&#34;&gt;Question 13: The user downloaded a decryptor hoping to decrypt all the files, but he failed. Provide the MD5 hash of the decryptor file.&#xA;&lt;/h3&gt;&lt;p&gt;Awesome, since we are already filtering the &lt;em&gt;Desktop&lt;/em&gt; from the &lt;em&gt;File System tab,&lt;/em&gt; you may have also already noticed a conspicuous decryptor executable?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2fff0726f3e9d43612fd888d2c77cd23_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;475px&#34; data-flex-grow=&#34;198&#34; height=&#34;404&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/2fff0726f3e9d43612fd888d2c77cd23_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s double-click the file to get the full detailed information, including the &lt;em&gt;file hashes.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c99fd2e4fe1527edf90e5b8d7f75575a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;209px&#34; data-flex-grow=&#34;87&#34; height=&#34;916&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/c99fd2e4fe1527edf90e5b8d7f75575a_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s copy the &lt;em&gt;MD5 Hash&lt;/em&gt; and submit the answer!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f5be78e655e2f3e281ab56712bfd4d9f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2560px&#34; data-flex-grow=&#34;1066&#34; height=&#34;75&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/f5be78e655e2f3e281ab56712bfd4d9f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-14-in-the-ransomware-note-the-attacker-provided-a-url-that-is-accessible-through-the-normal-browser-in-order-to-decrypt-one-of-the-encrypted-files-for-free-the-user-attempted-to-visit-it-provide-the-full-urlpath&#34;&gt;Question 14: In the ransomware note, the attacker provided a URL that is accessible through the normal browser in order to decrypt one of the encrypted files for free. The user attempted to visit it. Provide the full URL path.&#xA;&lt;/h3&gt;&lt;p&gt;I don’t see a straightforward way to extract an artifact from the &lt;em&gt;Redline&lt;/em&gt; file to simply read the &lt;em&gt;URL&lt;/em&gt; from the ransom note, so let’s get creative and utilize the &lt;em&gt;Browser URL History tab&lt;/em&gt; and sift through the logs.&lt;/p&gt;&#xA;&lt;p&gt;Since we are looking for a website used for decryption let’s try entering the keyword &lt;em&gt;decrypt&lt;/em&gt; into the search box and see what we find?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;549ddd4cfef78d8b1dcb813e0716a544_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;247px&#34; data-flex-grow=&#34;103&#34; height=&#34;776&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/549ddd4cfef78d8b1dcb813e0716a544_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Okay, it looks like we found a &lt;em&gt;URL&lt;/em&gt; in the list with our search! While it isn’t always this easy to correlate a &lt;em&gt;URL&lt;/em&gt; with the other malicious activity, we’ll take this one as a win and move on to the final question.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;66f4c79f43d7f1d72102ba6b914e4a23_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2430px&#34; data-flex-grow=&#34;1012&#34; height=&#34;79&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/66f4c79f43d7f1d72102ba6b914e4a23_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-15-what-are-some-three-names-associated-with-the-malware-which-infected-this-host-enter-the-names-in-alphabetical-order&#34;&gt;Question 15: What are some three names associated with the malware which infected this host? (enter the names in alphabetical order)&#xA;&lt;/h3&gt;&lt;p&gt;With the indicators discovered from our investigation so far, we can be pretty confident that we know which ransomware affected the victim. But, the &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;VirusTotal&lt;/em&gt;&lt;/a&gt; intelligence from &lt;strong&gt;Question 6&lt;/strong&gt; and the &lt;a class=&#34;link&#34; href=&#34;https://www.secureworks.com/research/revil-sodinokibi-ransomware&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;Secureworks&lt;/em&gt;&lt;/a&gt; report from &lt;strong&gt;Question 9&lt;/strong&gt; only give us two names for this malware. So, we will need to collect more intelligence. For this, let’s turn to the &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;MITRE ATT&amp;amp;CK&lt;/strong&gt;&lt;/a&gt; knowledge base and see what additional information is available for this ransomware — we’ll input one of the names that we know already:&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0496/&#34;  title=&#34;https://attack.mitre.org/software/S0496/&#34;&#xA;     target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;REvil&lt;/strong&gt;&#xA;_REvil is a ransomware family that has been linked to the GOLD SOUTHFIELD group and operated as ransomware-as-a-service…_attack.mitre.org&lt;/a&gt;&lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0496/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4cf0badf7e4d53587670b9cb3a7914c0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;640px&#34; data-flex-grow=&#34;266&#34; height=&#34;300&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/4cf0badf7e4d53587670b9cb3a7914c0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;There we go, we have some associated software descriptions that should help us answer the last question and wrap up this investigation!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;13663cd8290fdbd83e5e1dfd13479ff6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-revil-corp-challenge-walkthrough/13663cd8290fdbd83e5e1dfd13479ff6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;Whew! We set to solve this ransomware incident using &lt;strong&gt;&lt;em&gt;Redline&lt;/em&gt;&lt;/strong&gt; and I think we now have enough information to start the eradication and recovery phase for John! Great job!&lt;/p&gt;&#xA;&lt;p&gt;Thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for hosting another engaging challenge and building out such a huge catalog of free rooms for the community. This room was an excellent challenge to reinforce the concepts from the &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/btredlinejoxr3d&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;&lt;em&gt;Redline&lt;/em&gt; room&lt;/strong&gt;&lt;/a&gt; and provides enough hands-on time to understand it’s value in the DFIR process. It never hurts to have some more experience with a new tool to keep in your kit, after all!&lt;/p&gt;&#xA;&lt;p&gt;Thank you so much for reading along. I hope that you had as much fun as I did and learned something new, too. Until next week — stay curious!&lt;/p&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;FireEye Redline:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://fireeye.market/apps/211364&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://fireeye.market/apps/211364&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;TryHackMe REvil Corp Room:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/r/room/revilcorp&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/r/room/revilcorp&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — Spearphishing Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1566/002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1566/002/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — Malvertising:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1583/008/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1583/008/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — Supply Chain Compromise:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/techniques/T1195/002/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/techniques/T1195/002/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Secureworks:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.secureworks.com/research/revil-sodinokibi-ransomware&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.secureworks.com/research/revil-sodinokibi-ransomware&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;MITRE ATT&amp;amp;CK — REvil:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://attack.mitre.org/software/S0496/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://attack.mitre.org/software/S0496/&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Redline Endpoint Investigation Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/</link>
            <pubDate>Sun, 10 Mar 2024 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/8a88ff8286b65b1e94d9e2a94bbedfc6_MD5.png&#34; alt=&#34;Featured image of post TryHackMe  —  Redline Endpoint Investigation Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackmeredline-endpoint-investigation-challenge-walkthrough&#34;&gt;TryHackMe — Redline Endpoint Investigation Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;endpoint-investigation-with-the-fireeye-redline-securitytool&#34;&gt;Endpoint Investigation with the FireEye Redline Security Tool&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;8a88ff8286b65b1e94d9e2a94bbedfc6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;425px&#34; data-flex-grow=&#34;177&#34; height=&#34;310&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/8a88ff8286b65b1e94d9e2a94bbedfc6_MD5.png&#34; width=&#34;550&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://fireeye.market/apps/211364&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://fireeye.market/apps/211364&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Hello! Thanks for joining me on this walkthrough. This week I am going through the &lt;a class=&#34;link&#34; href=&#34;https://fireeye.market/apps/211364&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Redline&lt;/strong&gt;&lt;/a&gt; room on &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/btredlinejoxr3d&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;. &lt;a class=&#34;link&#34; href=&#34;https://fireeye.market/apps/211364&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;FireEye Redline&lt;/strong&gt;&lt;/a&gt; (not the info stealer malware) is an endpoint security memory analysis tool with file structure browsing capabilities, similar to &lt;em&gt;Volatility&lt;/em&gt; (&lt;a class=&#34;link&#34; href=&#34;https://stumblesec.medium.com/tryhackme-volatility-room-practical-challenge-walkthrough-b25f9786decc&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;see my previous &lt;strong&gt;TryHackMe&lt;/strong&gt; write-up&lt;/a&gt;), but with a nice GUI for navigation!&lt;/p&gt;&#xA;&lt;p&gt;As always, this write up will serve as both a learning journal for me and a &lt;strong&gt;TryHackMe&lt;/strong&gt; challenge walkthrough with some added context for anyone who stumbles on this post. To keep this focused, this walkthrough is only going to cover &lt;em&gt;Task 7: Endpoint Investigation&lt;/em&gt;. In the spirit of learning, I will not be revealing the flags in this walkthrough but this is a &lt;em&gt;FREE&lt;/em&gt; room so anyone can learn about &lt;strong&gt;Redline&lt;/strong&gt; and perform the investigation along with me and find the answer on your own. Thanks for reading — hope it helps!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/btredlinejoxr3d&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/btredlinejoxr3d&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;task-7-endpoint-investigation&#34;&gt;Task 7 : Endpoint Investigation&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Challenge Scenario:&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;A Senior Accountant, Charles, is complaining that he cannot access the spreadsheets and other files he has been working on. He also mentioned that his wallpaper got changed with the saying that his files got encrypted. This is not good news!&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Are you ready to perform the memory analysis of the compromised host? You have all the data you need to do some investigation on the victim’s machine. Let’s go hunting!&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h3 id=&#34;question-1-can-you-identify-the-product-name-of-themachine&#34;&gt;Question 1: Can you identify the product name of the machine?&#xA;&lt;/h3&gt;&lt;p&gt;Okay, let’s see if we can help Charles. Fortunately, the analysis session has already been created for this challenge, so we simply need to open the investigation (.mans) file in &lt;em&gt;Redline&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Once it (finally) opens, we have quite a few options explore in our &lt;em&gt;Analysis Data&lt;/em&gt; menu. Let’s start with a high-level view of the victim machine to better understand the environment at the time of the data collection. The &lt;em&gt;System Information&lt;/em&gt; tab has some great information including information about the Machine, OS, and User.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1780e8c23fac351decb77303773a1f2d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;281px&#34; data-flex-grow=&#34;117&#34; height=&#34;682&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/1780e8c23fac351decb77303773a1f2d_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;If we read through the information, I think we can find the answer to &lt;strong&gt;Question 1…&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d333c3a69274a8c042be68ed4737a713_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3096px&#34; data-flex-grow=&#34;1290&#34; height=&#34;62&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/d333c3a69274a8c042be68ed4737a713_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-2-can-you-find-the-name-of-the-note-left-on-the-desktop-for-the-charles&#34;&gt;Question 2: Can you find the name of the note left on the Desktop for the “Charles”?&#xA;&lt;/h3&gt;&lt;p&gt;Okay, now that we have a better idea of the environment we are analyzing, we need to look for a “note” left for Charles. Since Charles complained that there was a message that his files were encrypted, we’re probably looking for a ransom note?&lt;/p&gt;&#xA;&lt;p&gt;There are a couple of ways I think we can find it. Let’s try the path of least resistance first. We can simply try navigating to Charles’ Desktop through the &lt;em&gt;File System&lt;/em&gt; tab and seeing what we find:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;daf97f2e6f6f89cb70fbd2210fea3fed_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;417px&#34; data-flex-grow=&#34;173&#34; height=&#34;460&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/daf97f2e6f6f89cb70fbd2210fea3fed_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;File System &amp;gt; Charles &amp;gt; Desktop&lt;/p&gt;&#xA;&lt;p&gt;Okay, this seems promising! We have a .txt file which is a standard plaintext document typically created by &lt;em&gt;Notepad&lt;/em&gt; in a Windows environment. Let’s approach this another way and confirm that we have the correct file.&lt;/p&gt;&#xA;&lt;p&gt;If we navigate to &lt;em&gt;Processes&lt;/em&gt; on the &lt;em&gt;Analysis Data&lt;/em&gt; panel, let’s look for &lt;em&gt;Notepad.&lt;/em&gt; We can use the filter but in this case, it’s pretty easy to spot in the process list.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8f571c54193d4a2a35ec6b76988ac2dc_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;351px&#34; data-flex-grow=&#34;146&#34; height=&#34;546&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/8f571c54193d4a2a35ec6b76988ac2dc_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s double click the &lt;em&gt;NOTEPAD.EXE&lt;/em&gt; process and see what additional information we can get.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2e0753cea5dd4ded77de702430e20a16_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;817px&#34; data-flex-grow=&#34;340&#34; height=&#34;235&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/2e0753cea5dd4ded77de702430e20a16_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Okay, there we go! I think we found the answer we are looking for. It looks like some process spawned &lt;em&gt;Notepad.exe&lt;/em&gt; to generate the note and drop it on Charles’ desktop.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9ceedf5945f54b2891ad33a6ec62142e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3147px&#34; data-flex-grow=&#34;1311&#34; height=&#34;61&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/9ceedf5945f54b2891ad33a6ec62142e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3-find-the-windows-defender-service-what-is-the-name-of-its-servicedll&#34;&gt;Question 3: Find the Windows Defender service; what is the name of its service DLL?&#xA;&lt;/h3&gt;&lt;p&gt;Alright, moving right along. We need to locate a DLL for the Windows Defender &lt;strong&gt;service&lt;/strong&gt;, so let’s go check out the &lt;em&gt;Windows Services&lt;/em&gt; section of the analysis panel.&lt;/p&gt;&#xA;&lt;p&gt;We have a couple of ways of locating this. We can filter all fields for &lt;em&gt;Windows Defender&lt;/em&gt; or we can filter the &lt;em&gt;Service DLL&lt;/em&gt; tab specifically.&lt;/p&gt;&#xA;&lt;p&gt;This time around, let’s use the &lt;em&gt;Service DLL&lt;/em&gt; column and filter for &lt;em&gt;Windows Defender.&lt;/em&gt; This should get us the information we need.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;1fb5e5dae44df1b383f56c40da5da449_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1398px&#34; data-flex-grow=&#34;582&#34; height=&#34;206&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/1fb5e5dae44df1b383f56c40da5da449_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/1fb5e5dae44df1b383f56c40da5da449_MD5_hu_4683638c60cb255d.png 800w, https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/1fb5e5dae44df1b383f56c40da5da449_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Filtering the Service DLL column.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d9f7548929d2181a3956c476ebf84b3e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1404px&#34; data-flex-grow=&#34;585&#34; height=&#34;205&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/d9f7548929d2181a3956c476ebf84b3e_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/d9f7548929d2181a3956c476ebf84b3e_MD5_hu_8f1d309c7e59b631.png 800w, https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/d9f7548929d2181a3956c476ebf84b3e_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s submit the answer and confirm:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;67a6eb0dc12d78dd6895bf89ee7d4872_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2953px&#34; data-flex-grow=&#34;1230&#34; height=&#34;65&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/67a6eb0dc12d78dd6895bf89ee7d4872_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-4-the-user-manually-downloaded-a-zip-file-from-the-web-can-you-find-the-filename&#34;&gt;Question 4: The user manually downloaded a zip file from the web. Can you find the filename?&#xA;&lt;/h3&gt;&lt;p&gt;Moving along, let’s see if we can determine the source of the ransomware infection. Let’s start with something obvious, like supposing that the user downloaded a file.&lt;/p&gt;&#xA;&lt;p&gt;We can approach this in a similar way to &lt;strong&gt;Question 2.&lt;/strong&gt; We will start by manually evaluating the artifacts in Charles’ download folder and then use the &lt;em&gt;File Download History&lt;/em&gt; tab in the &lt;em&gt;Analysis Data&lt;/em&gt; pane to confirm.&lt;/p&gt;&#xA;&lt;p&gt;Let’s use the &lt;em&gt;File System&lt;/em&gt; tab and select the &lt;strong&gt;Downloads&lt;/strong&gt; folder for Charles. If we quickly scan the folder we mostly see some forensic tools like &lt;em&gt;FTK Imager&lt;/em&gt;, &lt;em&gt;Wireshark&lt;/em&gt;, and &lt;em&gt;Redline&lt;/em&gt; itself along with some incomplete downloads(the unconfirmed downloads), and &lt;em&gt;Microsoft&lt;/em&gt; update files. There is one file that looks a little strange though…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6d7361e729d9867a637897f89bafea96_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;712px&#34; data-flex-grow=&#34;297&#34; height=&#34;404&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/6d7361e729d9867a637897f89bafea96_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/6d7361e729d9867a637897f89bafea96_MD5_hu_206396c7acf66fdf.png 800w, https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/6d7361e729d9867a637897f89bafea96_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now, let’s utilize the &lt;em&gt;File Download History&lt;/em&gt; tab_._ We can search by the file extension &lt;strong&gt;.zip&lt;/strong&gt; to search for the file we found during our manual review of the &lt;em&gt;Downloads&lt;/em&gt; folder.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;ad8681742e5e0d5032170b746fb9fe82_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;628px&#34; data-flex-grow=&#34;262&#34; height=&#34;458&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/ad8681742e5e0d5032170b746fb9fe82_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/ad8681742e5e0d5032170b746fb9fe82_MD5_hu_4ee3dbc0c179a6d8.png 800w, https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/ad8681742e5e0d5032170b746fb9fe82_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Look at the first result. There is a manual download entry with an intriguing URL — &lt;em&gt;Malware Bazaar&lt;/em&gt;. It appears Charles may have downloaded a malware sample.&lt;/p&gt;&#xA;&lt;p&gt;According to the &lt;em&gt;Malware Bazaar&lt;/em&gt; website:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;MalwareBazaar is a project from abuse.ch with the goal of sharing malware samples with the infosec community, AV vendors and threat intelligence providers.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Very interesting but for the purposes of this challenge, the &lt;em&gt;file name&lt;/em&gt; column confirms our finding from the &lt;em&gt;Downloads&lt;/em&gt; folder — we can go ahead and submit &lt;strong&gt;Question 4&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;8acbbc020c7f1bf70c9c8209de068b46_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2953px&#34; data-flex-grow=&#34;1230&#34; height=&#34;65&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/8acbbc020c7f1bf70c9c8209de068b46_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Side Note:&lt;/strong&gt; Before we move onto the next question, let’s try to add some context by checking out the timeline to get a better idea of the series of events leading up to the download of the malware sample. I had previously combed through the timeline and tagged relevant (the orange tag) events to get a focused view of the incident.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;aacf5874dc429670fa7213cfb2a7946a_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;774px&#34; data-flex-grow=&#34;322&#34; height=&#34;372&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/aacf5874dc429670fa7213cfb2a7946a_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/aacf5874dc429670fa7213cfb2a7946a_MD5_hu_b9e461ec2f630217.png 800w, https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/aacf5874dc429670fa7213cfb2a7946a_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;While this isn’t relevant for this challenge, this would be very interesting in a real world scenario. It’s possible that this sample was simply downloaded to create this challenge scenario but in the real world, we can’t rule out an insider threat since we have evidence of a &lt;em&gt;Google&lt;/em&gt; search for a piece of malware under the user’s profile.&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-5-provide-the-filename-of-the-malicious-executable-that-got-dropped-on-the-usersdesktop&#34;&gt;Question 5: Provide the filename of the malicious executable that got dropped on the user’s Desktop.&#xA;&lt;/h3&gt;&lt;p&gt;Let’s navigate back to Charles’ Desktop through the &lt;em&gt;file system&lt;/em&gt; tree view where we found the ransom note. On the Desktop, we see two executable (.exe) files. One appears to be the &lt;em&gt;Microsoft Office&lt;/em&gt; setup and the other seems a bit more suspicious…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;440799367ef4250fe2c8f4dd6bb32a76_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;736px&#34; data-flex-grow=&#34;306&#34; height=&#34;391&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/440799367ef4250fe2c8f4dd6bb32a76_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/440799367ef4250fe2c8f4dd6bb32a76_MD5_hu_6b59ec96db42470c.png 800w, https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/440799367ef4250fe2c8f4dd6bb32a76_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;In &lt;strong&gt;Question 6&lt;/strong&gt; we will do a bit more analysis on this executable but for now, let’s submit our answer:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;34202077c83585996bf5d06a84f9bede_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3000px&#34; data-flex-grow=&#34;1250&#34; height=&#34;64&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/34202077c83585996bf5d06a84f9bede_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-6-provide-the-md5-hash-for-the-dropped-malicious-executable&#34;&gt;Question 6: Provide the MD5 hash for the dropped malicious executable.&#xA;&lt;/h3&gt;&lt;p&gt;Now for the easy part! Simply double-click the file within the tree view to drill down into the &lt;em&gt;Full Detailed Information&lt;/em&gt; for the file. Once the window loads, we will have some additional information about the file including a section for file hashes.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c3ac600e4ed38546fea18d7b07a10216_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;334px&#34; data-flex-grow=&#34;139&#34; height=&#34;574&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/c3ac600e4ed38546fea18d7b07a10216_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;We can go ahead and submit the answer but keep that MD5 hash handy, as we will use it for some further IOC investigation in the next question.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;09b1708040f31a692ce648b05a852270_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3096px&#34; data-flex-grow=&#34;1290&#34; height=&#34;62&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/09b1708040f31a692ce648b05a852270_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-7-what-is-the-name-of-the-ransomware&#34;&gt;Question 7: What is the name of the ransomware?&#xA;&lt;/h3&gt;&lt;p&gt;Okay, to fully determine the impact and remediate the incident, we need to identify exactly what malware we are investigating. Let’s start by taking the file hash of the malicious executable that we found in &lt;strong&gt;Question 6&lt;/strong&gt; and checking it against &lt;em&gt;VirusTotal&lt;/em&gt; &amp;amp; _Hybrid Analysis t_o see if we get any hits that can help us:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;10b682841dd87a66c1c65291678e3cdd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;768px&#34; data-flex-grow=&#34;320&#34; height=&#34;375&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/10b682841dd87a66c1c65291678e3cdd_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/10b682841dd87a66c1c65291678e3cdd_MD5_hu_f9e0f33aff411732.png 800w, https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/10b682841dd87a66c1c65291678e3cdd_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;VirusTotal Result&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c5482aa79b0b7ae81e6f43fc87c097cb_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;666px&#34; data-flex-grow=&#34;277&#34; height=&#34;432&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/c5482aa79b0b7ae81e6f43fc87c097cb_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/c5482aa79b0b7ae81e6f43fc87c097cb_MD5_hu_a0f9b49691fac69d.png 800w, https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/c5482aa79b0b7ae81e6f43fc87c097cb_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Hybrid Analysis Result&lt;/p&gt;&#xA;&lt;p&gt;Fortunately, we have a lot of detection for this particular executable. If we look through the labels and the details tab on these two services, we see a frequent name which identifies this malware family. I have a suspicion that this is the correct name for the ransomware but we can do a bit of &lt;em&gt;Google&lt;/em&gt; reconnaissance to see if we can find any technical reports to provide further intelligence and confirm our findings.&lt;/p&gt;&#xA;&lt;p&gt;Once we do that, we have enough information to answer &lt;strong&gt;Question 7&lt;/strong&gt; and conclude this investigation!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;98cec72abab2d3a52e1de9a488d0991e_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3200px&#34; data-flex-grow=&#34;1333&#34; height=&#34;60&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-redline-endpoint-investigation-challenge-walkthrough/98cec72abab2d3a52e1de9a488d0991e_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;I think we now have enough information now to start the eradication and recovery phase for Charles! Great job!&lt;/p&gt;&#xA;&lt;p&gt;Thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for hosting another awesome challenge and building out such a huge catalog of free rooms for the community. This room, while brief, was a thorough introduction to the &lt;em&gt;Redline&lt;/em&gt; tool and gives you just enough hands-on time to understand it’s value in the DFIR process when comparing to &lt;em&gt;Volatility&lt;/em&gt; for memory analysis. It never hurts to have some experience with a new tool to keep in your kit, after all!&lt;/p&gt;&#xA;&lt;p&gt;Thank you so much for reading along and learning with me! I hope that you had as much fun as I did and learned something new, too. Stay curious!&lt;/p&gt;&#xA;&lt;h3 id=&#34;tools--references&#34;&gt;Tools &amp;amp; References:&#xA;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;Redline:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://fireeye.market/apps/211364&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://fireeye.market/apps/211364&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;TryHackMe:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/btredlinejoxr3d&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/btredlinejoxr3d&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Malware Bazaar:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://bazaar.abuse.ch/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://bazaar.abuse.ch/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Hybrid Analysis:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.hybrid-analysis.com/search?query=Fe1bc60a95b2c2d77cd5d232296a7fa4&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.hybrid-analysis.com/search?query=Fe1bc60a95b2c2d77cd5d232296a7fa4&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;VirusTotal:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://www.virustotal.com/gui/file/b3e1e9d97d74c416c2a30dd11858789af5554cf2de62f577c13944a19623777d&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://www.virustotal.com/gui/file/b3e1e9d97d74c416c2a30dd11858789af5554cf2de62f577c13944a19623777d&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item><item>
            <title>TryHackMe  —  Volatility Room Practical Challenge Walkthrough</title>
            <link>https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/</link>
            <pubDate>Sun, 25 Feb 2024 00:00:00 +0000</pubDate>
            <guid>https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/</guid>
            <description>&lt;img src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/73c43c76a6eabc0cc45fdb2142fda745_MD5.jpg&#34; alt=&#34;Featured image of post TryHackMe  —  Volatility Room Practical Challenge Walkthrough&#34; /&gt;&lt;h3 id=&#34;tryhackme-volatility-room-practical-challenge-walkthrough&#34;&gt;TryHackMe— Volatility Room Practical Challenge Walkthrough&#xA;&lt;/h3&gt;&lt;h4 id=&#34;endpoint-investigation-with-volatility-3&#34;&gt;Endpoint Investigation with Volatility 3&#xA;&lt;/h4&gt;&lt;p&gt;&lt;img alt=&#34;73c43c76a6eabc0cc45fdb2142fda745_MD5.jpg&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;240px&#34; data-flex-grow=&#34;100&#34; height=&#34;400&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/73c43c76a6eabc0cc45fdb2142fda745_MD5.jpg&#34; width=&#34;400&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Image Credit: &lt;a class=&#34;link&#34; href=&#34;https://github.com/volatilityfoundation&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://github.com/volatilityfoundation&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;introduction&#34;&gt;Introduction:&#xA;&lt;/h3&gt;&lt;p&gt;Hello! Last week’s write-up was for the &lt;a class=&#34;link&#34; href=&#34;https://stumblesec.medium.com/letsdefend-memory-analysis-challenge-walkthrough-with-volatility-3-f19472849453&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;LetsDefend&lt;/strong&gt; Memory Analysis room&lt;/a&gt; which was my introduction to the &lt;a class=&#34;link&#34; href=&#34;https://github.com/volatilityfoundation/volatility3/releases&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;Volatility&lt;/em&gt;&lt;/a&gt; framework. This week, I am going to build on my knowledge and am writing up my learning with the excellent &lt;em&gt;Volatility&lt;/em&gt; room on &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/volatility&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt;. The capstone of the room is a practical challenge with two cases.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; makes challenges like these very beginner-friendly and the coursework modules prior to the challenge will have you well-prepared. This challenge does require some additional, external research but it definitely helps to add context and spend more time on the DFIR process. In the spirit of learning and research I am not going to reveal the flags this time around but I will walk you through my process so you can recreate it yourself.&lt;/p&gt;&#xA;&lt;p&gt;I used &lt;em&gt;Volatility 3&lt;/em&gt; to complete this room but _g_oing forward I will use the terms &lt;em&gt;Volatility 3&lt;/em&gt; and &lt;em&gt;Volatility&lt;/em&gt; interchangeably. This is a longer one, so get comfortable. Thanks for reading!&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Link:&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/room/volatility&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://tryhackme.com/room/volatility&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Challenge Scenarios:&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;Case 001 — BOB! THIS ISN’T A HORSE!&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Your SOC has informed you that they have gathered a memory dump from a quarantined endpoint thought to have been compromised by a banking trojan masquerading as an Adobe document. Your job is to use your knowledge of threat intelligence and reverse engineering to perform memory forensics on the infected host.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;You have been informed of a suspicious IP in connection to the file that could be helpful. &lt;code&gt;41[.]168[.]5[.]140&lt;/code&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The memory file is located in &lt;code&gt;/Scenarios/Investigations/Investigation-1.vmem&lt;/code&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;strong&gt;Case 002 — That Kind of Hurt my Feelings&lt;/strong&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;You have been informed that your corporation has been hit with a chain of ransomware that has been hitting corporations internationally. Your team has already retrieved the decryption key and recovered from the attack. Still, your job is to perform post-incident analysis and identify what actors were at play and what occurred on your systems. You have been provided with a raw memory dump from your team to begin your analysis.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;The memory file is located in &lt;code&gt;/Scenarios/Investigations/Investigation-2.raw&lt;/code&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h3 id=&#34;case-001bob-this-isnt-ahorse&#34;&gt;Case 001 — &lt;strong&gt;BOB! THIS ISN’T A HORSE!&lt;/strong&gt;&#xA;&lt;/h3&gt;&lt;h3 id=&#34;questions-1-2&#34;&gt;Questions 1 &amp;amp; 2:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-build-version-of-the-host-machine-in-case001&#34;&gt;What is the build version of the host machine in Case 001?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;at-what-time-was-the-memory-file-acquired-in-case001&#34;&gt;At what time was the memory file acquired in Case 001?&#xA;&lt;/h4&gt;&lt;p&gt;Before we get started, I want to call out the &lt;em&gt;Volatility 3&lt;/em&gt; help command built into the tool. We’re going to lean on this a lot. This is a great way to explore what plugins are available and get a brief description of their functions. In some cases, the plugin itself may have its own set of help for optional arguments! Don’t worry, we will utilize these further in the challenge. For now, I will leave the help command here as a starting point if you’d prefer to navigate the challenge on your own.&lt;/p&gt;&#xA;&lt;p&gt;python3 vol.py -h&lt;/p&gt;&#xA;&lt;p&gt;Okay, let’s get started! While the challenge doesn’t specify it, I am going to assume that we are analyzing a memory dump from a &lt;em&gt;Windows&lt;/em&gt; endpoint. If you have completed the preceding tasks already in the TryHackMe &lt;em&gt;Volatility&lt;/em&gt; room, you will have come across a module that will help us get started with scoping the challenge and working through the case: &lt;strong&gt;windows.info&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;942ed10db685b64dc45e53ffcf61676b_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;8842px&#34; data-flex-grow=&#34;3684&#34; height=&#34;19&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/942ed10db685b64dc45e53ffcf61676b_MD5.png&#34; width=&#34;700&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;As a refresher, Task 6 states:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;If we are still looking to get information about what the host is running from the memory dump, we can use the following three plugins &lt;code&gt;_windows.info_&lt;/code&gt; &lt;code&gt;_linux.info_&lt;/code&gt; &lt;code&gt;_mac.info_&lt;/code&gt;. This plugin will provide information about the host from the memory dump.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;This plugin is a good starting point for our investigation so that we can get some high-level details from the dump file and better understand our victim environment. When we run &lt;em&gt;Volatility&lt;/em&gt; we’ll point to the challenge file path with the -f parameter and have it use the &lt;strong&gt;windows.info&lt;/strong&gt; plugin.&lt;/p&gt;&#xA;&lt;p&gt;python3 vol.py -f /Scenarios/Investigations/Investigation-1.vmem windows.info&lt;/p&gt;&#xA;&lt;p&gt;Once &lt;em&gt;Volatility&lt;/em&gt; does its magic, we get the following output with some details of the memory dump.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2774ce9c2c2778984e696dae9030f949_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;548px&#34; data-flex-grow=&#34;228&#34; height=&#34;350&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/2774ce9c2c2778984e696dae9030f949_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;I think the &lt;em&gt;NTBuildLab &amp;amp; SystemTime&lt;/em&gt; fields &lt;em&gt;should&lt;/em&gt; answer &lt;strong&gt;questions 1 &amp;amp; 2&lt;/strong&gt; — let’s submit to confirm that we have the right answers:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4cdb277bf3e5e9a58e9fe03dbd5c9445_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1324px&#34; data-flex-grow=&#34;551&#34; height=&#34;145&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/4cdb277bf3e5e9a58e9fe03dbd5c9445_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-3&#34;&gt;Question 3:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-process-can-be-considered-suspicious-in-case001&#34;&gt;What process can be considered suspicious in Case 001?&#xA;&lt;/h4&gt;&lt;p&gt;Okay, now let’s get into the analysis and use &lt;em&gt;Volatility&lt;/em&gt; to dig a bit deeper and understand the running processes on the victim system at the time the memory dump was taken. If we refer to the &lt;em&gt;Volatility&lt;/em&gt; help again we have several process identification options.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d655673457865687422c909164b69d3d_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2860px&#34; data-flex-grow=&#34;1192&#34; height=&#34;50&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/d655673457865687422c909164b69d3d_MD5.png&#34; width=&#34;596&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The windows.pslist help file entry.&lt;/p&gt;&#xA;&lt;p&gt;Let’s go with the light-touch option first and simply list out the processes list using the &lt;strong&gt;windows.pslist&lt;/strong&gt; plugin. We’ll see if we can find anything suspicious within our case file.&lt;/p&gt;&#xA;&lt;p&gt;python3 vol.py -f /Scenarios/Investigations/Investigation-1.vmem windows.pslist&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5aa8d87f918869ed77f6c5f8063d7f6f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;797px&#34; data-flex-grow=&#34;332&#34; height=&#34;361&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/5aa8d87f918869ed77f6c5f8063d7f6f_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/5aa8d87f918869ed77f6c5f8063d7f6f_MD5_hu_9187621c196107ce.png 800w, https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/5aa8d87f918869ed77f6c5f8063d7f6f_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Okay, now we have our output, see anything odd? I mentioned this in my previous &lt;em&gt;Volatility&lt;/em&gt; post, but typically when looking at a &lt;em&gt;Windows&lt;/em&gt; process list, I like to refer to the &lt;a class=&#34;link&#34; href=&#34;https://www.sans.org/posters/hunt-evil/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;SANS Hunt Evil&lt;/a&gt; reference poster to understand normal &lt;em&gt;Windows&lt;/em&gt; processes which helps tremendously during analysis.&lt;/p&gt;&#xA;&lt;p&gt;Fortunately, this is a pretty short list and one of these process sticks out to me. Let’s confirm our suspicion and submit the answer but before we do, pay attention to the note on the submissions page…&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;Note: Certain special characters may not be visible on the provided VM. When doing a copy-and-paste, it will still copy all characters.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;While we are here, let’s make a special note to grab the process ID (PID) of the suspicious process as well, we will need this to answer Question 5. So now we have the PID as well, let’s copy directly from the virtual machine, and paste our answer!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c344f0f0082f35a9b01fa105928b84e0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2666px&#34; data-flex-grow=&#34;1111&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/c344f0f0082f35a9b01fa105928b84e0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;questions-4-56&#34;&gt;Questions 4, 5, 6:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-parent-process-of-the-suspicious-process-in-case001&#34;&gt;What is the parent process of the suspicious process in Case 001?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-pid-of-the-suspicious-process-in-case001&#34;&gt;What is the PID of the suspicious process in Case 001?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-parent-process-pid-in-case001&#34;&gt;What is the parent process PID in Case 001?&#xA;&lt;/h4&gt;&lt;p&gt;Good work! Now that we have located the suspicious process, these next few questions will be straightforward. We just need to look at the output of &lt;strong&gt;pslist&lt;/strong&gt; and look at the information presented. These questions seem out of order to me but we’ll figure it out.&lt;/p&gt;&#xA;&lt;p&gt;Look at the columns in the output. We are going to focus on &lt;em&gt;Process ID (PID)&lt;/em&gt;, &lt;em&gt;Parent Process ID (PPID)&lt;/em&gt;, and &lt;em&gt;ImageFileName&lt;/em&gt;. Using the information in these columns, we can determine the answers.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Question 4&lt;/strong&gt; is looking for the &lt;em&gt;ImageFileName&lt;/em&gt; of the parent process of the suspicious child process we located. To find it, search the &lt;strong&gt;pslist&lt;/strong&gt; output and look at the &lt;em&gt;PPID&lt;/em&gt; of the suspicious process (this could also answer &lt;strong&gt;Question 6…)&lt;/strong&gt; Then, locate the process with the matching &lt;em&gt;PID —&lt;/em&gt; this is the parent process and we can use the &lt;em&gt;ImageFileName&lt;/em&gt; as our answer_._ Once you find it, make a note of the PID as well so we can have it ready for &lt;strong&gt;Question 6&lt;/strong&gt;!&lt;/p&gt;&#xA;&lt;p&gt;Remember in &lt;strong&gt;Question 3&lt;/strong&gt; we made a note of the PID of the suspicious process? Now we can utilize it! &lt;strong&gt;Question 5&lt;/strong&gt; is asking for the PID of the suspicious process — easy enough, we will simply use the PID value of the suspicious process for our answer.&lt;/p&gt;&#xA;&lt;p&gt;Whew! We got them — let’s move on.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;00afaed62542caf5da6d7c6c04b977b9_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1049px&#34; data-flex-grow=&#34;437&#34; height=&#34;183&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/00afaed62542caf5da6d7c6c04b977b9_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;questions-7-8&#34;&gt;Questions 7 &amp;amp; 8:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-user-agent-was-employed-by-the-adversary-in-case001&#34;&gt;What user-agent was employed by the adversary in Case 001?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;question-8-was-chase-bank-one-of-the-suspicious-bank-domains-found-in-case-001yn&#34;&gt;Question 8: Was Chase Bank one of the suspicious bank domains found in Case 001? (Y/N)&#xA;&lt;/h4&gt;&lt;p&gt;Cool, I haven’t had a chance to look at the networking modules in &lt;em&gt;Volatility 3&lt;/em&gt; yet. We’ll start with the information given in the challenge scenario:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;You have been informed of a suspicious IP in connection to the file that could be helpful. &lt;code&gt;_41.168.5.140_&lt;/code&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;We have an IP, let’s see if we can get any networking info with &lt;strong&gt;windows.netstat &amp;amp; windows.netscan.&lt;/strong&gt; Hmmm, the version of &lt;em&gt;Windows&lt;/em&gt; our memory dump was taken from doesn’t seem to be supported…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0cf30968fa3bcbb6a0fabc62b09502d6_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;755px&#34; data-flex-grow=&#34;314&#34; height=&#34;254&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/0cf30968fa3bcbb6a0fabc62b09502d6_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let’s pivot and try something else. If we scan through the help files again, there isn’t an obvious plugin that can work to search for this suspicious IP address though…&lt;/p&gt;&#xA;&lt;p&gt;What if we could dump out the suspicious processes’ memory map? Maybe we can get some additional information or perform further analysis about the contents of files opened by this process that are mapped to the memory address space…&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;2a4d9b6c41226bf9e0f83283a82e24b3_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3053px&#34; data-flex-grow=&#34;1272&#34; height=&#34;36&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/2a4d9b6c41226bf9e0f83283a82e24b3_MD5.png&#34; width=&#34;458&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Remember that before we started the investigation, I mentioned that some plugins have optional arguments? Here is a good example.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6a15e579d812f9509b346b26a2dabf18_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1361px&#34; data-flex-grow=&#34;567&#34; height=&#34;141&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/6a15e579d812f9509b346b26a2dabf18_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;We see that the &lt;strong&gt;memmap&lt;/strong&gt; plugin has some additional options that will help us here. We can try dumping the suspicious process that we identified earlier. This time we are going to set an output directory with the &lt;strong&gt;-o&lt;/strong&gt; parameter:&lt;/p&gt;&#xA;&lt;p&gt;python3 vol.py -f /Scenarios/Investigations/Investigation-1.vmem -o &lt;output directory&gt; windows.memmap &amp;ndash;pid &lt;redacted&gt; &amp;ndash;dump&lt;/p&gt;&#xA;&lt;p&gt;This creates a dump file which contains way too much information for us to manually sift through. Let’s try to utilize the &lt;strong&gt;strings&lt;/strong&gt; command in Ubuntu and grep our output to be a bit more focused.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://manpages.ubuntu.com/manpages/focal/en/man1/strings.1.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Strings&lt;/strong&gt;&lt;/a&gt; is a command that searches the contents of a file for printable strings so it can help us pull out something human readable from the process dump.&lt;/p&gt;&#xA;&lt;p&gt;So what are we going to grep? Well, if we read the question back, it asks for a &lt;em&gt;user-agent&lt;/em&gt; so let’s just try that? If you aren’t familiar a &lt;a class=&#34;link&#34; href=&#34;https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;user-agent&lt;/a&gt; headers are strings that servers use to identify requesting client details like the operating system or the web browser version. In this case, let’s use the &lt;strong&gt;-i&lt;/strong&gt; argument to ignore case and just search for &lt;em&gt;user-agent.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;afa187a12ae95472b9550d541cc8c088_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;593px&#34; data-flex-grow=&#34;247&#34; height=&#34;314&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/afa187a12ae95472b9550d541cc8c088_MD5.png&#34; width=&#34;776&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;3c0f0e7263e2553e1e9759826ce434c0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2285px&#34; data-flex-grow=&#34;952&#34; height=&#34;84&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/3c0f0e7263e2553e1e9759826ce434c0_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Awesome! It looks like we found something useful for our investigation that should answer &lt;strong&gt;Question 7.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now let’s tackle &lt;strong&gt;Question 8&lt;/strong&gt; and wrap Case 001 up. Since we already have the memory map for the suspicious process, maybe we can try the same logic as we did for &lt;strong&gt;Question 7&lt;/strong&gt; and just grep out “Chase” — could that work? Try it and find out!&lt;/p&gt;&#xA;&lt;p&gt;sudo strings /home/thmanalyst/evidence/pid.&lt;redacted&gt;.dmp | grep -i &amp;ldquo;Chase&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;Great! Now we can submit, and close the case before moving on to our next set of challenges in Case 002!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;dafe0fbb370a4db38e6f48686ec71882_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2953px&#34; data-flex-grow=&#34;1230&#34; height=&#34;65&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/dafe0fbb370a4db38e6f48686ec71882_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;e23f1fccdbb04f255880fa72c9373b11_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3047px&#34; data-flex-grow=&#34;1269&#34; height=&#34;63&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/e23f1fccdbb04f255880fa72c9373b11_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;case-002that-kind-of-hurt-myfeelings&#34;&gt;Case 002 — &lt;strong&gt;That Kind of Hurt my Feelings&lt;/strong&gt;&#xA;&lt;/h3&gt;&lt;h3 id=&#34;question-9-what-suspicious-process-is-running-at-pid-740-in-case002&#34;&gt;Question 9: What suspicious process is running at PID 740 in Case 002?&#xA;&lt;/h3&gt;&lt;p&gt;Okay! Case 002 is an analysis of a ransomware strain. Since we have the PID of the suspicious process already, let’s use the &lt;strong&gt;pslist&lt;/strong&gt; plugin again and this time let’s grep only the suspicious PID:&lt;/p&gt;&#xA;&lt;p&gt;python3 vol.py -f /Scenarios/Investigations/Investigation-2.raw wind&#xA;ows.pslist | grep 740&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;eedf9a03d5fface022777947b6a95287_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3368px&#34; data-flex-grow=&#34;1403&#34; height=&#34;57&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/eedf9a03d5fface022777947b6a95287_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Interesting. This file name seems like it might be related to a famous ransomware from a few years ago. Let’s keep that in mind as we move through the investigation. While we’re at it, let’s also make a note of the &lt;em&gt;parent process ID&lt;/em&gt; (PPID) too we’ll need it in &lt;strong&gt;Question 12&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9c14d5fda4937e3f4fe7ab7c6c5b5bcd_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3254px&#34; data-flex-grow=&#34;1355&#34; height=&#34;59&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/9c14d5fda4937e3f4fe7ab7c6c5b5bcd_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-10-what-is-the-full-path-of-the-suspicious-binary-in-pid-740-in-case002&#34;&gt;Question 10: What is the full path of the suspicious binary in PID 740 in Case 002?&#xA;&lt;/h3&gt;&lt;p&gt;Let’s try to locate the file path of the suspicious binary. We’ll first try to lean on our process plugs (&lt;strong&gt;pslist, psscan, &amp;amp; pstree)&lt;/strong&gt; to see if we can find any information. Unfortunately, these commands aren’t giving us much additional information so we will go back to the &lt;em&gt;Volatility 3&lt;/em&gt; help and see if we can find a plugin that could help us.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;6594fe3f3d526ee41587ab481286c0af_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2964px&#34; data-flex-grow=&#34;1235&#34; height=&#34;51&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/6594fe3f3d526ee41587ab481286c0af_MD5.png&#34; width=&#34;630&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;From the THM &lt;strong&gt;Task 7&lt;/strong&gt; Module:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;This plugin will list all DLLs associated with processes at the time of extraction. This can be especially useful once you have done further analysis and can filter output to a specific DLL that might be an indicator for a specific type of malware you believe to be present on the system.&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;This could be useful to us from an investigative perspective but we also might get the file path of the binary that is loading the DLLs as well.&lt;/p&gt;&#xA;&lt;p&gt;As a refresher, DLLs (Dynamic Link Library) are binary files that provide shared functionality for executables that can be called when required.&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/troubleshoot/windows-client/setup-upgrade-and-drivers/dynamic-link-library#summary&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;For the Windows operating systems, much of the functionality of the operating system is provided by DLL. Additionally, when you run a program on one of these Windows operating systems, much of the functionality of the program may be provided by DLLs. For example, some programs may contain many different modules, and each module of the program is contained and distributed in DLLs.&lt;/a&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Let’s give it a try and see what we can find.&lt;/p&gt;&#xA;&lt;p&gt;python3 vol.py -f /Scenarios/Investigations/Investigation-2.raw windows.dlllist | grep 740&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b3c0e0cba5139ab66d45a96a67793c31_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;705px&#34; data-flex-grow=&#34;294&#34; height=&#34;272&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/b3c0e0cba5139ab66d45a96a67793c31_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Awesome — this is exactly what we were looking for!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;b440a88550c75ed87c259da10daf80b4_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3096px&#34; data-flex-grow=&#34;1290&#34; height=&#34;62&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/b440a88550c75ed87c259da10daf80b4_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;questions-11-12&#34;&gt;Questions 11 &amp;amp; 12:&#xA;&lt;/h3&gt;&lt;h4 id=&#34;what-is-the-parent-process-of-pid-740-in-case002&#34;&gt;What is the parent process of PID 740 in Case 002?&#xA;&lt;/h4&gt;&lt;h4 id=&#34;what-is-the-suspicious-parent-process-pid-connected-to-the-decryptor-in-case002&#34;&gt;What is the suspicious parent process PID connected to the decryptor in Case 002?&#xA;&lt;/h4&gt;&lt;p&gt;Alright, one step forward and two steps back. If you haven’t cleared your terminal yet, lets scroll back up to your &lt;strong&gt;pslist&lt;/strong&gt; output from &lt;strong&gt;Question 9.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Take a look at the &lt;em&gt;PPID&lt;/em&gt; column for &lt;em&gt;PID 740.&lt;/em&gt; Remember in &lt;strong&gt;Question 9&lt;/strong&gt; where I mentioned we might want to make a note of the PPID of the suspicious process? That’s what we need for &lt;strong&gt;Question 12&lt;/strong&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;We will use &lt;strong&gt;pslist&lt;/strong&gt; again and grep the parent process ID. After that, this becomes a simple matching game like we saw in Case 001.&lt;/p&gt;&#xA;&lt;p&gt;python3 vol.py -f /Scenarios/Investigations/Investigation-2.raw wind&#xA;ows.pslist | grep &lt;ppid redacted&gt;&lt;/p&gt;&#xA;&lt;p&gt;When reviewing the output, &lt;strong&gt;Question 11&lt;/strong&gt; is looking for the &lt;em&gt;ImageFileName&lt;/em&gt; of the process_._ Have fun!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c826b670e60970130a87917af6d894e0_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1398px&#34; data-flex-grow=&#34;582&#34; height=&#34;132&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/c826b670e60970130a87917af6d894e0_MD5.png&#34; width=&#34;769&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0e889d1fff9ec6274fe3377e3abc7414_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1573px&#34; data-flex-grow=&#34;655&#34; height=&#34;122&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/0e889d1fff9ec6274fe3377e3abc7414_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-13-from-our-current-information-what-malware-is-present-on-the-system-in-case002&#34;&gt;Question 13: From our current information, what malware is present on the system in Case 002?&#xA;&lt;/h3&gt;&lt;p&gt;Let’s get to &lt;em&gt;Google&lt;/em&gt; for some research of the artifacts we’ve found so far. We’ll start by searching for something broad, like the specific name of the executable that we discovered in &lt;strong&gt;Question 9&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;We’ll stumble across a few links, but I chose the threat report from &lt;a class=&#34;link&#34; href=&#34;https://www.mandiant.com/resources/blog/wannacry-malware-profile&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Mandiant&lt;/strong&gt;&lt;/a&gt; for this write-up.&lt;/p&gt;&#xA;&lt;p&gt;Based on the report — we have already discovered some of these indicators of compromise (IOCs) on our victim system. I think that we have determined the malware strain that infected the victim system:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;459620bcac7a0727789fe24324a87591_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3096px&#34; data-flex-grow=&#34;1290&#34; height=&#34;62&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/459620bcac7a0727789fe24324a87591_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-14-what-dll-is-loaded-by-the-decryptor-used-for-socket-creation-in-case002&#34;&gt;Question 14: What DLL is loaded by the decryptor used for socket creation in Case 002?&#xA;&lt;/h3&gt;&lt;p&gt;Reading through the &lt;a class=&#34;link&#34; href=&#34;https://www.mandiant.com/resources/blog/wannacry-malware-profile&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Mandiant&lt;/strong&gt; report&lt;/a&gt; linked in &lt;strong&gt;Question 13&lt;/strong&gt;, there are some mentions of socket functions but not necessarily what DLL is loaded specifically for socket creation. Let’s do a little more manual work with &lt;em&gt;Volatility&lt;/em&gt; and perform our own analysis.&lt;/p&gt;&#xA;&lt;p&gt;First, we will dump the process to see if I can learn anything on &lt;em&gt;VirusTotal&lt;/em&gt; about any loaded DLLs by this executable. We’re going to dump this to an output directory and then retrieve the file hash for comparison.&lt;/p&gt;&#xA;&lt;p&gt;python3 vol.py -f /Scenarios/Investigations/Investigation-2.raw -o /home/thmanalyst/evidence windows.pslist &amp;ndash;pid 740 &amp;ndash;dump&lt;/p&gt;&#xA;&lt;p&gt;sha256sum /home/thmanalyst/evidence/pid.740.0x400000.dmp&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;438a12c1d553e8ca1b57f564774cf688_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;2630px&#34; data-flex-grow=&#34;1095&#34; height=&#34;73&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/438a12c1d553e8ca1b57f564774cf688_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;d0707cc6eaf8fda0c2df48a75b7f13bb_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1156px&#34; data-flex-grow=&#34;481&#34; height=&#34;166&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/d0707cc6eaf8fda0c2df48a75b7f13bb_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;On the details tab, we’ll scroll down to the imports and take a look at the list of DLLs. It might not be the most efficient way, but we can quickly expand on all of the imports and see if we can spot any network or socket functions specifically. Let’s review the details; there is one that sticks out and looks like it could be relevant.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f376ee1772b21fab94d6858f5576bf76_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;121px&#34; data-flex-grow=&#34;50&#34; height=&#34;452&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/f376ee1772b21fab94d6858f5576bf76_MD5.png&#34; width=&#34;229&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now, let’s return to the DLL list in our analysis environment and look at the output for this process again and see all of the DLLs loaded by this specific sample and verify we see the DLL here as well:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;93e2c87ed50c39c409ed290ac1ec856c_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;615px&#34; data-flex-grow=&#34;256&#34; height=&#34;468&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/93e2c87ed50c39c409ed290ac1ec856c_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/93e2c87ed50c39c409ed290ac1ec856c_MD5_hu_4802f0b5c43239ad.png 800w, https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/93e2c87ed50c39c409ed290ac1ec856c_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Okay, I am thinking we may have found the answer but let’s do some additional research. I’m going to try get a quick AI brief on this DLL from the &lt;em&gt;Microsoft Copilot&lt;/em&gt; for &lt;em&gt;Edge&lt;/em&gt; to before we validate the accuracy of the information through the reference links — it’s always important to verify the accuracy of AI output.&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://malwaretips.com/blogs/ws2_32-dll-what-it-is-how-to-fix-errors/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;The &lt;REDACTED&gt;.dll, also known as the Winsock2 DLL, is a dynamic link library file that provides essential functions for network communication in Windows operating systems&lt;/a&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows/win32/winsock/initialization-2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;REDACTED&gt;.dll plays a crucial role in managing network communication, ensuring compatibility, and facilitating efficient interactions between applications and service providers in the Windows environment&lt;/a&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Okay, confirmed! This seems like we can say with high confidence that the &lt;a class=&#34;link&#34; href=&#34;https://learn.microsoft.com/en-us/windows/win32/winsock/windows-sockets-start-page-2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Winsock2 DLL&lt;/a&gt; is what is used for socket creation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;f28888ca2be5ea4af2e38ef2419ce588_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3047px&#34; data-flex-grow=&#34;1269&#34; height=&#34;63&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/f28888ca2be5ea4af2e38ef2419ce588_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-15-what-mutex-can-be-found-that-is-a-known-indicator-of-the-malware-in-question-in-case002&#34;&gt;Question 15: What mutex can be found that is a known indicator of the malware in question in Case 002?&#xA;&lt;/h3&gt;&lt;p&gt;This is an interesting question and is a new one for me! Let’s do a quick &lt;em&gt;Google&lt;/em&gt; refresher on a &lt;strong&gt;mutex&lt;/strong&gt; for context.&lt;/p&gt;&#xA;&lt;p&gt;Below is an excerpt from the &lt;a class=&#34;link&#34; href=&#34;https://www.sans.org/blog/looking-at-mutex-objects-for-malware-discovery-indicators-of-compromise/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;SANS Blog&lt;/a&gt;:&lt;/p&gt;&#xA;&#xA;    &lt;blockquote&gt;&#xA;        &lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.sans.org/blog/looking-at-mutex-objects-for-malware-discovery-indicators-of-compromise/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Programs use mutex (“mutual exclusion”) objects as a locking mechanism to serialize access to a resource on the system. Consider the following explanation by Microsoft: “For example, to prevent two threads from writing to shared memory at the same time, each thread waits for ownership of a mutex object before executing the code that accesses the memory. After writing to the shared memory, the thread releases the mutex object.”&lt;/a&gt;&lt;/p&gt;&#xA;&#xA;    &lt;/blockquote&gt;&#xA;&lt;p&gt;Now, let’s check out the &lt;a class=&#34;link&#34; href=&#34;https://www.mandiant.com/resources/blog/wannacry-malware-profile&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;Mandiant&lt;/strong&gt;&lt;/a&gt; report again and see if any of the heavy lifting has been done for us already. If we check out the file artifacts listed in the report, we see a &lt;em&gt;mutex&lt;/em&gt; listed out.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;493dc64a4ab828361c3eab6f7bad1862_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;1033px&#34; data-flex-grow=&#34;430&#34; height=&#34;72&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/493dc64a4ab828361c3eab6f7bad1862_MD5.png&#34; width=&#34;310&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Okay, so in theory this is information that should be captured in the memory image and we should be able to find a mutex used by the malware. Let’s check out the &lt;em&gt;Volatility&lt;/em&gt; help and see if we can find any plugins that could help us validate this.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;9ac4faed0eafbb583631dce7ac87bb3f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3198px&#34; data-flex-grow=&#34;1332&#34; height=&#34;49&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/9ac4faed0eafbb583631dce7ac87bb3f_MD5.png&#34; width=&#34;653&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;I’m sure there is a better way to utilize this plugin but in this case, let’s simply use the &lt;em&gt;Volatility 3&lt;/em&gt; &lt;strong&gt;windows.mutantscan&lt;/strong&gt; plugin to validate the presence of the &lt;em&gt;mutex&lt;/em&gt; in our analysis sample against the report:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;5ffcbef15771cc2cc57a47ab7bef0500_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;8228px&#34; data-flex-grow=&#34;3428&#34; height=&#34;35&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/5ffcbef15771cc2cc57a47ab7bef0500_MD5.png&#34; srcset=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/5ffcbef15771cc2cc57a47ab7bef0500_MD5_hu_a714e41d029ee4ef.png 800w, https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/5ffcbef15771cc2cc57a47ab7bef0500_MD5.png 1200w&#34; width=&#34;1200&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Great, we stumbled through this one! Let’s submit and confirm our suspicion.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;c023ad6bec8ac46a637fe8411cc5bd18_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3147px&#34; data-flex-grow=&#34;1311&#34; height=&#34;61&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/c023ad6bec8ac46a637fe8411cc5bd18_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;question-16-what-plugin-could-be-used-to-identify-all-files-loaded-from-the-malware-working-directory-in-case002&#34;&gt;Question 16: What plugin could be used to identify all files loaded from the malware working directory in Case 002?&#xA;&lt;/h3&gt;&lt;p&gt;For the last question, we will return for the last time to our &lt;em&gt;Volatility 3&lt;/em&gt; help file. Let’s see if there are any other plugins we can utilize for further analysis of the malware and search for the files loaded from the malware directory?&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;4ab8cbf7de87dea3dad32fc9b019f04f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3147px&#34; data-flex-grow=&#34;1311&#34; height=&#34;53&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/4ab8cbf7de87dea3dad32fc9b019f04f_MD5.png&#34; width=&#34;695&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;This plugin could be useful for further analysis especially if we run it against the malware directory that we found in &lt;strong&gt;Question 10.&lt;/strong&gt; While not required for the challenge, let’s go ahead and run the command and grep the working directory:&lt;/p&gt;&#xA;&lt;p&gt;python3 vol.py -f /Scenarios/Investigations/Investigation-2.raw windows.filescan | grep -i&#xA;&amp;ldquo;\ivecuqmanpnirkt615&amp;rdquo;&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;0dcf0f1b0bce618e48e7d2b953d2533f_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;423px&#34; data-flex-grow=&#34;176&#34; height=&#34;453&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/0dcf0f1b0bce618e48e7d2b953d2533f_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Wow! This gives us even more IOCs that we can use to validate our findings. For now, though — let’s submit the answer to &lt;strong&gt;Question 16&lt;/strong&gt; and wrap up these cases.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img alt=&#34;df960d331c8467672155a07b8c6a7691_MD5.png&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;3254px&#34; data-flex-grow=&#34;1355&#34; height=&#34;59&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://stumblesec.com/posts/tryhackme-volatility-room-practical-challenge-walkthrough/df960d331c8467672155a07b8c6a7691_MD5.png&#34; width=&#34;800&#34;&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;conclusion&#34;&gt;Conclusion:&#xA;&lt;/h3&gt;&lt;p&gt;There we have it — mission completed! Thank you to &lt;a class=&#34;link&#34; href=&#34;https://tryhackme.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;strong&gt;TryHackMe&lt;/strong&gt;&lt;/a&gt; for the impressive room and challenge. This was a really great challenge to help me further explore &lt;a class=&#34;link&#34; href=&#34;https://github.com/volatilityfoundation/volatility3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;&lt;em&gt;Volatility 3&lt;/em&gt;&lt;/a&gt; and learn some new skills along the way and I hope that you learned something as well between the two cases. Personally, I especially appreciated the need to do external research and use some brain power on DFIR. Thank you for your time in checking out this (long) walkthrough and stumbling through the challenge with me. Stay curious!&lt;/p&gt;&#xA;</description>
        </item></channel>
</rss>
