February 11

Worldskills.elf F8 Forensics Task

Разбор на CTF task с сайта F8Tasks.ru для подготовки к чемпионату по компетенции информационная безопасность.



Название: message
Описание:Злоумышленник передавал сообщение своему подельнику. Мы смогли получить дамп памяти с его компьютера, помогите понять что он передавал


Я все делал на Kali Linux, использовал Volatility Framework и Stegosolve.

Скачал архив, распаковал его и далее просмотрел информацию о дампе памяти командой:
python2 vol.py -f ~/Desktop/wordskills.elf/wordskills.elf imageinfo

Volatility предлагает использовать профиль Win7SP1x86_23418, т.к. дамп был собран как раз из седьмой винды. Используя этот профиль просмотрим список запущенных процессов:

python2 vol.py -f ~/Desktop/wordskills.elf/wordskills.elf --profile=Win7SP1x86_23418 pslist

Среди всех процессов самым странным показался mspaint.exe. Кому он вообще нужен?

Читая описание таска, злоумышленник пытался передать какое то послание, то очевидно, что Paint мог быть одним из способов этого сделать. На всякий случай я проверял сетевые соединения, но ничего интересного там не нашлось.

Далее я приступил к изучению процесса mspaint.exe надеясь найти там флаг. Выгрузил его дамп командой:
python2 vol.py -f ~/Desktop/wordskills.elf/wordskills.elf --profile=Win7SP1x86_23418 memdump -D ~/Desktop/ -p 2832

Далее извлекаем из дампа текстовые строки и сохраняем в файл командой: strings -el 2832.dmp > 123.txt

Открыв в текстовом редакторе документ, флага там не было, но наткнулся на интересный readme.png, название говорило само за себя

Также наткнуться на этот readme.png можно просмотрев аргументы командной строки:

python2 vol.py -f ~/Desktop/wordskills.elf/wordskills.elf --profile=Win7SP1x86_23418 cmdline

Сканируем файлы системы и выводим строку с readme.png:
python2 vol.py -f ~/Desktop/wordskills.elf/wordskills.elf --profile=Win7SP1x86_23418 filescan | grep readme.png

Получаем шестнадцатиричный physical offset файла - 0x000000003df64038

Теперь мы можем выгрузить дамп файла по physical offset используя плагин dumpfiles и опцию -Q:

python2 vol.py -f ~/Desktop/wordskills.elf/wordskills.elf --profile=Win7SP1x86_23418 dumpfiles -Q 0x000000003df64038 -D ~/Desktop/

Вот такая картинка была закэширована в памяти:

Очевидно наш "хакер" не из глупых и с помощью техник стеганографии спрятал послание где то в картинке

Прогоняя картинку через тулзу stegosolve, я заметил, что на каждом plane 0 красного, зеленого и синего, в левом углу были белые пиксели.

Это значит, что использовалась техника наименее значащего бита, соответственно, нужно было извлечь данные: Red, green, blue = 0:

Сохраняем как Bin и получаем флаг:


Автор: https://t.me/cybersecuritybureau - здесь больше разных разборов