29 ноября 2014

Инфобез. Введение в Forensics

Относительно редкая категория. Расшифровывается примерно как "нахождение улик", и пришла в CTF из компьютерной криминалистики. После работы пользователя или программы обычно остаются какие-то "следы", по которым можно восстановить исходные данные или активность пользователя. Для сбора и расшифровки таких данных требуются углубленные знания практически во всех областях ИТ. Но конечно на CTF затрагиваются лишь аспекты.
Computer forensics (sometimes known as computer forensic science) is a branch of digital forensic science pertaining to legal evidence found in computers and digital storage media. The goal of computer forensics is to examine digital media in a forensically sound manner with the aim of identifying, preserving, recovering, analyzing and presenting facts and opinions about the digital information.

Пожалуй лучшее, чем я могу помочь начинающему, это привести примеры простейших расследований в области компьютерной безопасности.

Восстановление удаленных/поврежденных данных.

Пусть есть некоторая флешка. На ней хранились важные документы, среди которых есть и
"флаг". Флешку форматируют, выбрав способ "Быстрое форматирование". Человек, который сталкивался с этим и знает что такое файловая система и как она работает, сразу поймет, что при форматировании диска была очищена файловая таблица. В ней лежали физические адреса всех файлов в файловой системе. Таким образом, если на форматированную флешку ничего не было записано, то данные можно восстановить воспользовавшись специальной утилитой. Аналогичный метод решения применяется тогда, когда повреждается эта самая таблица, и файлы не могут быть считаны, хотя физически они есть.

Восстановление удаленных изображений

Человек, который работал в Windows знает, что в папках с картинками присутствует такой способ отображения как "Эскизы" и "Диафильм". Так вот, как только пользователь хоть раз устанавливал такой способ отображения папки, в ней сразу появляется файл Thumb.db в котором хранятся "превьюшки" картинок. Теперь если папка будет очищена от картинок, то они могут быть восстановлены с помощью этого файла (конечно не сами картинки, а их миникопии, но иногда этого бывает достаточно).


Сокрытие файлов

В Windows как и в Linux можно скрывать файлы, добавив к ним атрибут "Скрытый". Конечно поиск таких файлов является в высшей степени тривиальной задачей, но для неискушенного человека может стать почти откровением. Но куда ещё можно спрятать данные. помимо ка в скрытый файл? В Windows системах применяется файловая система NTFS, в которой файлы представляют собой так называемые файловые потоки. Каждый файл может содержать несколько файловых потоков. Так вот когда мы открываем файл, просматриваем его свойства или запускаем - мы работаем с первым потоком - потоком данных. А при этом в другие потоки можно заныкать что угодно.

Анализ электронной переписки

Очень часто пользователь, обсудив с кем либо важную информацию, забывает очистить историю сообщений и прочий сопутствующий "мусор". Особенно часто этим грешат пользователи мессенджеров, таких как ICQ, mIRC, GoogleTalk и прочие. Находя, расшифруя и анализируя подобные переписки, можно найти секретную информацию, восстановить переданные файлы (в некоторых случаях), что может скомпрометировать самую защищенную систему.


Анализ активности пользователя

Часто, проникнув в систему и сделав свои черные дела, хакер оставляет за собой огромную цепочку следов в различных системных и прочих средствах аудита. Естественно, что опытный взломщик постарается эти следы за собой подчистить, но как показывает практика, сделать это эффективно получается не всегда. Таким образом, анализируя логи и журналы различных средств учета и аудита, можно установить факт совершения взлома, а иногда и конкретизировать: что конкретно компрометировал злоумышленник, какие стащил файлы и чем воспользовался.

Анализ сетевой активности

Предположим, у нас есть сетевой дамп некоторого объема сетевых пакетов. За время, которое охватывает дамп, было передано несколько файлов от жертвы к злоумышленнику. Чтобы узнать, что за файлы были переданы и где находится злоумышленник, необходимо проанализировать имеющийся объем данных. Здесь на помощь приходит знание различных сетевых протоколов, структуры файлов а также принципов работы сети. Чтобы такой объем информации не держать в голове, были придуманы специальные вспомогательные программы, которые "видят" в наборе пакетов сеансы, файлы и прочую информацию.


Категория Forensics отнюдь не исчерпывается вышеописанными проблемами, и даже наоборот. С изучения этих простейших проблем и начинает длинный путь в компьютерные расследования и криминалистику.