HTB Writeups
  • HTB Writeups
  • Boxes: Very Easy
    • Academy
    • Archetype
    • Arctic
    • Base
    • Bike
    • Blue
    • Explosion
    • Included
    • Markup
    • Oopsie
    • Redeemer
    • Responder
    • Shield
    • Unified
    • Vaccine
  • Boxes: Easy
    • Analytics
    • Armageddon
    • Bashed
    • Beep
    • Blocky
    • Bounty Hunter
    • Buff
    • Cap
    • CozyHosting
    • Devel
    • Explore
    • Forest
    • Grandpa
    • Granny
    • Horizontall
    • Jerry
    • Keeper
    • Knife
    • Lame
    • Late
    • Legacy
    • Mirai
    • Netmon
    • Nibbles
    • Optimum
    • Paper
    • Photobomb
    • Precious
    • RedPanda
    • Return
    • Sau
    • ScriptKiddie
    • Sense
    • Servmon
    • Shocker
    • Shoppy
    • Squashed
    • Trick
  • Boxes: Medium
    • Poison
  • Challenges
    • Behind the Scenes
    • Canvas
    • Debugging Interface
    • Digital Cube
    • Easy Phish
    • Find the Easy Pass
    • Forest
    • Infiltration
    • misDIRection
    • Pusheen Loves Graphs
    • Retro
    • Signals
    • The Secret of a Queen
    • Wrong Spooky Season
  • Fortresses
  • Cyber Apocalypse 2023: The Cursed Mission
    • The Cursed Mission
    • Alien Cradle
    • Critical Flight
    • Debug
    • Extraterrestrial Persistence
    • Getting Started
    • Needle in the Haystack
    • Orbital
    • Packet Cyclone
    • Passman
    • Perfect Sync
    • Persistence
    • Plaintext Tleasure
    • Questionnaire
    • Reconfiguration
    • Relic Maps
    • Roten
    • Secret Code
    • Shattered Tablet
    • Small StEps
  • Hack the Boo 2023
    • Hauntmart
    • Spellbrewery
    • Trick or Treat
    • Valhalloween
  • Cyber Apocalypse 2024: Hacker Royale
    • Hacker Royale
    • An Unusual Sighting
    • BoxCutter
    • BunnyPass
    • Character
    • Data Siege
    • Delulu
    • Dynastic
    • Fake Boost
    • Flag Command
    • Game Invitation
    • It has begun
    • KORP Terminal
    • Labyrinth Linguist
    • LockTalk
    • Lucky Faucet
    • Makeshift
    • Maze
    • Packed Away
    • Phreaky
    • Primary Knowledge
    • Pursue the Tracks
    • Rids
    • Russian Roulette
    • Stop Drop and Roll
    • Testimonial
    • TimeKORP
    • Unbreakable
    • Urgent
  • CYBER APOCALYPSE 2025: Tales from Eldoria
    • Tales from Eldoria
    • A New Hire
    • Cave Expedition
    • Echoes in Stone
    • Eldorion
    • Embassy
    • EncryptedScroll
    • HeliosDEX
    • Quack Quack
    • Silent Trap
    • Stealth Invasion
    • Tales for the Brave
    • The Ancient Citadel
    • The Hillside Haven
    • The Stone That Whispers
    • Thorins Amulet
    • ToolPie
    • Traces
    • Trial by Fire
    • Whispers of the Moonbeam
Powered by GitBook
On this page
  • Getting Started
  • Static Memory Analysis
  • Flag Questions
  1. CYBER APOCALYPSE 2025: Tales from Eldoria

Stealth Invasion

Personal Rating: Medium

PreviousSilent TrapNextTales for the Brave

Last updated 1 month ago

Getting Started

This forensics challenge teaches memory analysis on a memory dump. We start off with the file "memdump.elf". From the challenge description we know that a malicious Chrome extension was stealthily installed, masqueradnig as a useful productivity tool. An analyst was alarmed by unusual network activity.

This article shows some first things to do when you are starting with static memory analysis:

I started by extracting some basing information from the dump, mainly metadata and strings:

file memdump.elf 
memdump.elf: ELF 64-bit LSB core file, x86-64, version 1 (SYSV)

foremost -o result/ -t zip -i memdump.elf

binwalk -e memdump.elf

strings memdump.elf | grep -i chrome

Scrolling through the extensive results, a password was found: _password="2ce2shi2009122";

Static Memory Analysis

When analyzing a memory image, one tool should come to mind immediately: Volatility. This memory analysis framework boasts impressive analysis capabilities, malware scans, file extraction and process lists, to name a few. I started by getting basic OS information:

vol -f memdump.elf windows.info
Is64Bit	True
IsPAE	False
layer_name	0 WindowsIntel32e
memory_layer	1 Elf64Layer
base_layer	2 FileLayer
KdVersionBlock	0xf80193e0a778
Major/Minor	15.26100
MachineType	34404
KeNumberProcessors	6
SystemTime	2025-03-13 17:01:20+00:00
NtSystemRoot	C:\WINDOWS
NtProductType	NtProductWinNt
NtMajorVersion	10
NtMinorVersion	0
PE MajorOperatingSystemVersion	10

From there, I concentrated on Chrome since it was mentioned in the challenge preface. I found the process ID of the Google Chrome parent process:

vol -f memdump.elf windows.pslist
<SNIP>
4080	chrome.exe
<SNIP>

I then used memprocfs to mount the image as filesystem locally. The forensics flag was enabled to reconstruct files from the recovered NTFS data.

memprocfs -f memdump.elf -mount mnt/
echo 1 > /Stealth\ Invasion/mnt/forensic/forensic_enable.txt

Searching through the data, we discover the user "selene". Guided by the questions required to solve the challenge, I enumerated potential malicious Chrome plugins. By searching for "\Users\selene" in the file "ntfs_files.txt" in Kate, I found this folder:

\0\Users\selene\AppData\Local\Google\Chrome\User Data\Default\Extensions\nmmhkkegccagdldgiimedpiccmgmieda\1.0.0.6_0\

Suspicious contents were found in the folder

Back to volatility, I used it to extract all extension related files:

vol -f memdump.elf windows.filescan.FileScan | tee filescan.txt & cat filescan.txt | grep Extension

Investigating the results, this folder caught my eye:

\Users\selene\AppData\Local\Google\Chrome\User Data\Default\Local Extension Settings\nnjofihdjilebhiiemfmdlpbdkbjcpae\LOG

The log however did not contain enough information, so I opened the web logs that were created by the memprocfs forensics feature:

Most of the requests were to "drive.google.com".

In the output of filescan.txt that I generated earlier, I could grep for the log "000003.log". This was one of the log files that were found by searching for the suspicious extension. Most logs could not be recovered because they were ot loaded in memory when the dump was made. However, one of them was indeed buffered and could be obtained by this command, which returns all instances of the log file along with the virtual address of each one. The virtual address was also found by grepping for said log file in "filescan.txt".

vol -f memdump.elf dumpfiles --virtaddr 0x1337

The resulting log file contained the Eldoria Online password of the user selene.

Flag Questions

  1. What is the PID of the Original (First) Google Chrome process: 4080

-> Found with vol -f memdump.elf windows.pslist

  1. What is the only Folder on the Desktop: malext

-> Found by mounting the image with memprocfs memprocfs -f memdump.elf -mount mnt/ and enabling the forensic feature

  1. What is the Extention's ID (ex: hlkenndednhfkekhgcdicdfddnkalmdm): nnjofihdjilebhiiemfmdlpbdkbjcpae

-> sudo vol -f memdump.elf windows.filescan.FileScan | tee filescan.txt | grep Extension

  1. After examining the malicious extention's code, what is the log filename in which the data is stored: ffffa708c79892d0-000003.log

-> vol -f memdump.elf windows.filescan.FileScan | tee filescan.txt & cat filescan.txt | grep Extension and search for the log

  1. What is the URL the user navigated to: drives.google.com

-> This was to be found in the web logs that could be found in the mnt/forensics/web folder in the chrome history

  1. What is the password of selene@rangers.eldoria.com: clip-mummify-proofs

-> vol -f memdump.elf windows.filescan.FileScan | tee filescan.txt & cat filescan.txt | grep 000003.log revealed the virtual memory address of the log file in 8 instances. Going through each of them, one was apparently cached and could be read. The password was inside. Reading the files was done with vol -f memdump.elf windows.dumpfiles.DumpFiles --virtaddr <virt memory address>

https://heisenberk.github.io/Study-Memory-Dump/
memprocfs Forensics File Extraction
Wordlists in Chrome Extension Folder
Extension Log Folder
Web Logs in memprocfs Forensics Results