Forensic - это
Введение
Forensic (Computer forensic) - прикладная наука о раскрытии инцидентов, связанных с компьютерной информацией, исследовании цифровых доказательств, методах поиска, получения и закрепления таких доказательств. Форенсика является подразделом криминалистики, является неотъемлемой частью в сфере ИБ.
Виды инцидентов:
утечка конфиденциальной информации
неправомерный доступ к информации
удаление информации
компрометация информации
саботаж
мошенничество с помощью ИТ систем
использование активов компании в личных целях
внешние атаки: DoS, DDoS, фишинг, перехват и подмена трафика
размещение конфиденциальной/провокационной информации в сети Интернет
взлом
вирусные атаки
Forensic в CTF
В CTF forensic является одной из сложных категорий заданий, сравнимой с PWN. Эта категория охватывает довольно обширные категории знаний:
Программирование
ОС (Windows, Unix,
BolgenOS)ФС (FAT, NTFS, Ext, etc.)
Специфика типов файлов (JPEG, ELF, WAV, etc.)
Сети (как минимум стек протоколов TCP/IP)
Криптография
Стеганография
RE
OSINT (Open Source INTelligence)
Виды задач, встречающиеся в тасках CTF:
Восстановление данных (в том числе и удаленных)
Анализ логов (журналы аудита, лог-файлы программ)
Анализ сетевого трафика
Поиск информации из открытых источников
Задачи могут перемежаться между собой, а также быть усложнены другими категориями знаний (криптография, RE, вирусология).
Каких-либо универсальных методов решения тасков категории forensic нет. Никогда не знаешь, что тебе за инцидент попадется и как тебе с ним париться справляться. Можно лишь выработать стратегию решения, например:
Что за
фигнюобъект мы имеем?Какие особенности имеет тип объекта?
Какие отличия имеет объект от эталонного типа объекта?
Какие методы решения существуют?
Эту стратегию следует зациклить до тех пор, пока задача не будет решена. Например, в исходных данных мы имеем дамп сетевого трафика. Проанализировав его, мы определили, что там передавались какие-то данные. После успешного (или не очень) извлечения мы получаем новый объект. Мы снова анализируем, что это за объект, какие он имеет особенности, что с ним не так и что с этим дальше делать.
Инструменты для решения задач forensic:
Сетевые утилиты (Wireshark, Tshark, Scapy)
Файловые утилиты (file, head, hex-редакторы)
Утилиты для работы с ФС (TSK, Foremost, Autopsy)
Крипто-утилиты (Cryptool)
Графические редакторы (GIMP, PS)
Аудиоредакторы (Audacity, AU)
Языки программирования (Python, C,
Brainfuck)
Пример задания
Один из тасков на соревнованиях PlaidCTF 2015 - Unknown.
Из исходных данных - файл непонятного содержания. Первое что приходит в голову - отдать файл утилите file (КЭП рядом). Результат:
Пробуем открыть редаткором LaTeXа - ничего вразумительного. Посмотрим любым текстовым редактором содержание файла, увидим следующее:
Погуглим значение первой строки (Нечто похожее на хедер какого-то файла). Первая же ссылка дает нам вполне вразумительную информацию о файле.
Format of ATK raster images
The raster data object writes a standard ATK data stream beginning with a \begindata line and ending with a \enddata line. Between these comes a header and possibly an image body.
The first line of the header looks like this:
2 0 65536 65536 0 0 484 603
Из статьи делаем вывод, что перед нами - растровое изображение какой-то фигни Andrew User Interface System. Расширение файла - .CMU. Далее опять обращаемся к гуглу за тем, что же нам может открыть данный тип изображений, на что получаем ответ - XnView. Качаем программу, ставим, переименовываем файл в unknown.CMU, открываем, получаем результат - flag{l0l_CMU_da_b3s}
Last updated