Самый популярный и широко используемый инструмент для криминалистики в мире
Волатильность Утилита утилиты для извлечения памяти с открытым исходным кодом. Это наиболее популярная структура реакции на инцидент и анализ вредоносных программ для анализа необработанных дамп памяти.
Volatility
- Overview
- Системные Требования
- Функции
- Инструкция по установке
- Часто задаваемые вопросы
- Исследовать
Обзор
Структура волатильности представляет собой бесплатный инструмент для криминалистики с открытым исходным кодом. Это для мониторинга реакции инцидентов и анализа вредоносных программ. Аарон Уолтерс создал инструмент анализа дамп волатильности памяти в академических исследованиях при анализе криминалистики памяти. Волатильность — это совершенно открытая коллекция инструментов, написанная на языке Python и выпущенная по общедоступной лицензии GNU. Он используется для извлечения цифровых артефактов из образцов летучей памяти (ОЗУ) и поддерживает Linux, Windows и Mac OS. Среда криминалистики памяти волатильности предназначена для введения методов извлечения и сложностей, связанных с цифровыми артефактами из летучих образцов памяти во время выполнения. Утилита для извлечения памяти волатильности работает на любой платформе, которая поддерживает Python. Правооплата по волатильности с открытым исходным кодом имеет 5,1K GitHub Stars и 1,1K GitHub Forks.
Системные Требования
Требования к установке и настройке криминалистического инструмента волатильности включают:
- Python версия 2.6 или позже (но не 3.x)
- Машина Windows, Linux или Mac OS X
- Distorm3 для анализа 64-битных окон
- Некоторые плагины требуют 3 -й стороны библиотеки
- Git
Функции
Волатильность инструментов анализа памяти с открытым исходным кодом имеет много полезных и богатых функций, которые перечислены ниже:
- Обнаружение активных соединений
- Анализ потенциального вредоносного ПО в дампе памяти
- Перечислите все открытые файлы в системе
- Ульи реестра сброса
- Перечислите хэши паролей пользователей
- Извлечение браузера и истории командной строки
- Список загруженных драйверов
- Поддерживает различные форматы файлов
- Открытый источник
Инструкции по установке
Установить волатильность на Linux
В этом руководстве мы опишем, как установить волатильность на Linux. Это действительно легко установить и настроить волатильность на любую версию LTS Ubuntu. Ниже шаги установки предполагают, что все пакеты Depency установлены и актуальны в вашей операционной системе. Давайте начнем. Прежде всего, вы можете получить исходный код, загрузив стабильный выпуск или клонирование из GitHub, используя команду:
git clone https://github.com/volatilityfoundation/volatility.git
Установите несколько пакетов/библиотек в качестве предпосылки на волатильность Linux с командой:
sudo apt-get install pcregrep libpcre++-dev python-dev -y
Этот клон GIT создаст папку исходного кода волатильности в вашей системе и теперь запускает каталог волатильности оттуда. Если вы загрузили архив исходного кода Zip или TAR, есть два способа установить код:
- Извлеките архив и запустите setup.py. Это позаботится о копировании файлов в нужных местах на вашем диске. Запуск setup.py необходим только в том случае, если вы хотите импортировать пространство имен волатильности из других сценариев Python в качестве библиотеки.
- Извлеките архив в каталог по вашему выбору. Для использования волатильности просто сделайте Python /path/to/directory/vol.py. Это более чистый метод, так как файлы никогда не перемещаются за пределами выбранного вами каталога. Это облегчает обновление до новых версий, когда они будут выпущены. Кроме того, вы можете легко иметь несколько версий волатильности, установленных в отдельных каталогах, например /HOME/ME/VOL2.0 и /HOME/ME/VOL2.1.
Для наиболее полной поддержки плагина, вы должны установить следующие Библиотеки и пакеты Поздравляю! Вы успешно установили волатильность на Linux. Наслаждаться!
FAQS
Для чего используется волатильность?
Волатильность — самая широко используемая в мире лучшая структура криминалистической памяти. Он был создан Аароном Уолтерсом, используя академические исследования для анализа оперативной памяти памяти в 32 -битных/64 -битных системах.
Без волатильности?
Да, волатильность может бесплатно использовать фреймворк -криминалистики.
Является ли волатильность с открытым исходным кодом?
Да, волатильность-это фрейнти-криминалистика с открытым исходным кодом для анализа инцидентов и анализа вредоносных программ. Анализ памяти волатильности Репозиторий открытого исходного кода доступен на GitHub.
есть ли альтернатива волатильности?
Одним из лучших альтернативы инструменту цифровой криминалистики волатильности является браузер для вскрытия, который доступен как бесплатный, так и с открытым исходным кодом для Linux, Mac и Windows. Другими альтернативами волатильности являются Caine (бесплатный, открытый исходный код), Rekall (бесплатный, открытый исходный код) и Cado Live (бесплатно).
Какова последняя стабильная версия волатильности?
Последняя стабильная версия 2,6. Вы можете получить исходный код, установщик Python или автономный исполняемый файл Windows из Страница загрузки.
Какова последняя версия развития волатильности?
Последняя версия разработки — 2.6, которую вы можете клонировать, проверив основную филиал, используя Git Like ($ git клон git@github.com: volatilityfoundation/volatility.git).
Какие операционные системы поддерживают волатильность?
Исследовать
В этой статье мы обсуждали о структуре волатильности. Чтобы узнать о других лучших цифровых судебных инструментах с открытым исходным кодом, посетите следующую страницу:
Как обнаружить вредонос: методология SANS
Когда происходит взлом какой-то системы, зачастую возникает необходимость выяснить, как система была взломана, какие компоненты были скомпрометированы, какая информация была похищена, и кто произвел атаку. Ветвь криминалистики, отвечающая на вопросы такого рода, называется компьютерной криминалистикой или форензикой.
Одна из важнейших техник форензики – анализ дампов памяти, сделанных на потенциально скомпрометированных системах. Дамп памяти – это файл, содержащий данные из оперативной памяти компьютера, в том числе данные запущенных процессов. Именно поэтому их анализ так важен: если система была скомпрометирована, и на ней запущено вредоносное программное обеспечение, эксперт по компьютерной криминалистике сможет обнаружить это, изучая дамп.
Существует множество инструментов для анализа дампов памяти, наиболее популярные из которых – фреймворки volatility и rekall, оба с открытым исходным кодом. Однако самих по себе инструментов может оказаться недостаточно: исследователю полезно иметь алгоритм, который помогал бы действовать эффективно, систематично и не упускать важные детали. Один такой алгоритм под названием SANS Six-Step Investigative Methodology был предложен институтом SANS.
SANS Six-Step Investigative Methodology
Описание методологии SANS Six-Step можно найти на одном из постеров SANS. Алгоритм, как следует из названия, состоит из шести шагов:
- Идентификация вредоносных процессов.
- Анализ DLL и хэндлов процесса.
- Изучение сетевых артефактов.
- Поиск свидетельств инъекции кода.
- Проверка признаков наличия руткита.
- Выгрузка подозрительных процессов и драйверов.
Для пошаговой демонстрации методологии я воспользовался известным образом Jackcr’s Challenge в качестве первого семпла и дампом с Linux-машины, подготовленным моим коллегой, в качестве второго. Среди инструментов, которыми я пользовался, – фреймворк volatility, последнюю версию которого можно найти на GitHub, Wireshark и стандартные Linux-утилиты, такие как strings и grep.
Jackcr’s Challenge
В 2012 специалист по безопасности Джек Крук поделился ссылкой на образ челленджа в своем Твиттере. Сейчас образ доступен по ссылке. Челлендж состоит из дампов памяти с нескольких машин, дампа трафика и текстового файла с вопросами, на которые предлагается ответить. После публикации челлендж стал весьма популярным, в интернете можно найти ряд посвященных ему статей-прохождений, поэтому образ вполне подходит для того, чтобы попрактиковаться с новыми инструментами и методами работы.
Применение методологии к дампу из челленджа
Теперь я продемонстрирую применение каждого шага методологии к дампу из челленджа, снятому на машине ENG-USTXHOU-148.
1. Идентификация вредоносных процессов
Согласно методологии, первый шаг – идентификация вредоносных процессов. Однако, начиная работу с volatility, первым делом нужно выяснить, какой профиль следует использовать с рассматриваемым дампом, иначе volatility не сможет прочитать дамп. Для этого пригодится команда volatility imageinfo: в ее выводе можно найти основную информацию о переданном на вход дампе, в том числе подходящий профиль – в моем случае таковым оказался WinXPSP2x86.
Затем я воспользовался плагином volatility pslist. В списке запущенных процессов, который он вывел на консоль, я заметил несколько подозрительных.
Здесь выглядят подозрительными из-за их времени запуска процессы 364, 1796 и 244. Также я взял на заметку процессы 1024 и 284, которые являются родительскими для процессов 364 и 1796 соответственно.
2. Анализ DLL процесса
В состав volatility входит плагин dlllist, предназначенный для получения списка используемых процессом DLL. Запустив dlllist для подозрительных процессов и проверив ряд DLL, я обнаружил 6to4ex.dll, используемый процессом svchost.exe с PID 1024, который был помечен большинством движков VirusTotal как вредоносный. Запустив strings на этой DLL, я заметил вхождения строки “gh0st” – это название известного трояна.
3. Анализ сетевых артефактов
Третий шаг состоял из изучения дампа трафика в Wireshark и запуска плагина volatility connscan, который показывает артефакты подключений, в том числе недавно закрытых. Это дало мне адрес C2, запуск grep по которому показал также, каким образом было доставлено вредоносное ПО: злоумышленники отправили нескольким пользователям фишинговые письма с требованием установить новый антивирус и ссылкой на дроппер под названием Symantec-1.43-1.exe.
4. Поиск свидетельств инъекции кода
Поиск свидетельств возможного внедрения кода можно осуществить с помощью malfind – ещё одного плагина volatility, разработанного специально для этих целей. В моем случае ничего найдено не было. Это связано с тем, что malfind не способен обнаруживать инъекции DLL (разработчики подчеркивают это в документации).
5. Проверка признаков наличия руткита
Руткиты часто перехватывают вызовы System Service Descriptor Table (SSDT), поэтому проверка на владельцев функций SSDT – один из способов обнаружить руткит в системе. В составе volatility есть плагин, перечисляющий функции SSDT и их владельцев, который так и называется – ssdt. Запуск ssdt, однако, не показал ничего. Надо полагать, это связано с тем, что Gh0st, обнаруженный на исследуемой системе, согласно исследованию InfoSec способен зачищать существующие перехваты SSDT.
6. Выгрузка подозрительных процессов и драйверов
Плагин volatility procdump позволяет выгружать исполняемый файл по переданному на вход номеру процесса. Именно так я и поступил с процессами 1024 и 1796.
Применение методологии к дампу с Linux-машины
Теперь, когда мы закончили с Windows-дампом, давайте попробуем адаптировать тот же алгоритм к имитирующему несложный инцидент Linux-образу.
1. Идентификация вредоносных процессов
При работе с помощью volatility над Linux-дампом следует использовать профиль, созданный на той же машине, на которой был снят дамп. Поэтому на сей раз я не запускал плагин imageinfo, чтобы определить необходимый профиль. Вместо этого я просто использовал профиль, переданный мне вместе с образом.
Итак, вооружившись этим профилем, я воспользовался плагином linux_pslist, чтобы просмотреть список процессов и выделить подозрительные.
Обнаружить подозрительный процесс было нетрудно: wallet.elf не только единственный процесс с расширением .elf у исполняемого файла, но еще и родитель для процесса sh, который в свою очередь является родителем vim. Не самая обычная цепочка.
2. Анализ DLL процесса
Несмотря на то, что термин DLL применим только к Windows, этот шаг легко остается актуальным для Linux-дампа, так как исполняемые файлы под Linux также используют динамические библиотеки, называемые обычно shared libraries. Единственное отличие состоит в том, что если для Windows-дампа я использовал плагин dlllist, то для Linux-дампа я использовал плагин linux_library_list, аналогичным образом выводящий список библиотек для процесса. В случае процесса 1353 список библиотек, однако, оказался пустым.
3. Анализ сетевых артефактов
На этот раз у меня не было дампа трафика, поэтому на этапе анализа сетевых артефактов мне оставалось только изучить список подключений с помощью плагина volatility linux_netscan, который выводит список открытых сокетов. Его вывод снова направил внимание в сторону процесса 1353, а также дал потенциальный адрес C2.
Более того, запустив strings на дампе и отфильтровав результат по потенциальному адресу C2, я заметил фрагмент bash-скрипта.
Была там и строчка, дающая возможность понять, как файл wallet.elf попал в систему.
4. Поиск свидетельств инъекции кода
Как и в случае Windows, в составе volatility есть плагин для поиска возможной инъекции кода. Его Linux-версия называется linux_malfind. Запустив его, я получил несколько положительных сработок для процесса 1353, однако я уже знал, что запущенный в этом процессе исполняемый файл был загружен извне подозрительным скриптом, так что это было не очень полезно.
5. Проверка признаков наличия руткита
В составе volatility есть несколько инструментов для обнаружения руткитов в случае Linux:
- linux_check_fop проверяет на наличие модификаций структуры file_operation;
- linux_check_idt проверяет, были ли изменены IDT;
- linux_check_modules сравнивает список модулей с данными sysfs;
- linux_hidden_modules пытается обнаружить скрытые модули ядра; И другие.
Запуск этих инструментов не дал никакой информации, кроме нескольких ложных сработок, присутствующих и на «чистой» системе. Из этого можно сделать вывод, что руткита в системе, вероятно, нет.
6. Выгрузка подозрительных процессов и драйверов
Работая над Windows-дампом, я использовал плагин volatility procdump, чтобы выгрузить исполняемый файл подозрительного процесса. В volatility есть аналогичный плагин и для Linux-дампов – он называется linux_procdump. С помощью этого плагина я выгрузил исполняемый файл процесса 1353 для дальнейшего анализа.
Заключение
В этой статье я проиллюстрировал применение методологии SANS для анализа Windows-дампа, а затем и для анализа Linux-дампа, чтобы показать, что, за исключением небольших адаптаций алгоритм в обоих случаях остается неизменным.
Если вы попробуете работать по методологии SANS Six-Step, вам может показаться, что она контринтуитивна – например, вы захотите сначала изучить сетевые подключения, а уже потом посмотреть на список запущенных процессов. Однако следует понимать, что это обратная сторона систематизации. Если вы не опытный специалист по компьютерной криминалистике с развитой профессиональной интуицией, скорее всего, методология поможет вам выполнить работу быстрее и получить более точные и структурированные результаты.
Разумеется, я не утверждаю, что это единственная методология, достойная внимания, но она может стать для вас хорошей отправной точкой.
Разбор Memory Forensics с OtterCTF и знакомство с фреймворком Volatility
Недавно закончился OtterCTF (для интересующихся — ссылка на ctftime), который в этом году меня, как человека, достаточно плотно связанного с железом откровенно порадовал — была отдельная категория Memory Forensics, которая, по сути, представляла из себя анализ дампа оперативной памяти. Именно ее я хочу разобрать в этом посте, всем кому интересно — добро пожаловать под кат.
Введение
Возможно, на Хабре уже были статьи, описывающие работу с Volatility, но, к сожалению, я их не нашел. Если не прав — киньте в меня ссылкой в комментариях. Эта статья преследует две цели — показать, насколько бессмысленны все попытки администратора защитить систему, в случае если у атакующего есть дамп оперативной памяти и познакомить читателей с самым прекрасным, на мой взгляд, инструментом. Ну и, конечно же, обменяться опытом. Достаточно воды, приступим!
Знакомство с инструментом
Volatility — open-sorce фреймворк, который развивается сообществом. Написан на втором питоне и работает с модульной архитектурой — есть т.н. плагины, которые можно подключать для анализа и даже можно писать самому недостающие. Полный список плагинов, которые доступны из коробки можно посмотреть с помощью volatility -h .
Из-за питона инструмент кроссплатформенный, поэтому проблем с запуском под какой-то популярной ОС, на которой есть питон возникнуть не должно. Фреймворк поддерживает огромное количество профилей (в понимании Volatility — системы, с которых был снят дамп): от популярных Windows-Linux-MacOs до «напрямую» списанных dd-дампов и дампов виртуальных машин (как QEMU, так и VirtualBox). По-моему, очень неплохой наборчик.
Мощь этого инструмента действительно потрясает — я наткнулся на него в момент отлаживания своего ядра для ARM’a и он прекрасно анализировал то, что я давал ему на вход
Как бонус — поддержка почти любого адресного пространства, которое можно себе вообразить.
Кажется, пиара получилось чуть больше, чем планировалось изначально. Давайте попробуем заняться самим анализом.
Базовая информация и поверхностный анализ
Для тех, кто хочет проделывать все манипуляции по ходу статьи — ссылка на Mega с образом или можно с помощью wget:
wget https://transfer.sh/AesNq/OtterCTF.7z
Итак, образ у нас в руках, можно начинать анализ. Для начала, нужно понять, с какой системы снимали дамп. Для этого у волатилити есть прекрасный плагин imageinfo . Просто запускаем
$ volatility -f %имя_образа% imageinfo
В нашем случае выхлоп будет примерно следующим:
Volatility Foundation Volatility Framework 2.6 INFO : volatility.debug : Determining profile based on KDBG search. Suggested Profile(s) : Win7SP1x64, Win7SP0x64, Win2008R2SP0x64, Win2008R2SP1x64_23418, Win2008R2SP1x64, Win7SP1x64_23418 AS Layer1 : WindowsAMD64PagedMemory (Kernel AS) AS Layer2 : FileAddressSpace (%путь%/%имя_образа%) PAE type : No PAE DTB : 0x187000L KDBG : 0xf80002c430a0L Number of Processors : 2 Image Type (Service Pack) : 1 KPCR for CPU 0 : 0xfffff80002c44d00L KPCR for CPU 1 : 0xfffff880009ef000L KUSER_SHARED_DATA : 0xfffff78000000000L Image date and time : 2018-08-04 19:34:22 UTC+0000 Image local date and time : 2018-08-04 22:34:22 +0300
Итак, мы получили почти исчерпывающую информацию о нашем дампе — предположительно, с какой ОС он был сделан (отсортировано в порядке вероятности), локальную дату и время на момент снятия дампа, адресацию и еще много чего. Итак, мы поняли, что перед нами дамп Windows 7 Service Pack 1 x64. Можно копать вглубь!
What’s the password
Так как это своеобразный райтап, то я буду давать формулировку задачи и потом описывать, как ее решить с помощью волатилити.
Первая задача — достать пароль пользователя
Для начала, поймем, какие пользователи были в системе и, заодно, попробуем достать их пароли. Сами пароли достать сложнее, а поэтому понадеемся на то, что нам попался не очень умный человек и получится вскрыть хеш от его пароля. Остается достать его! Для этого попробуем посмотреть _CMHIVE — как правило, там всегда можно найти что-то интересное во время работы Windows. Для этого просто подключим плагин hivelist , при этом указав Win7 в профиле:
$ volatility -f OtterCTF.vmem --profile=Win7SP1x64 hivelist Volatility Foundation Volatility Framework 2.6 Virtual Physical Name ------------------ ------------------ ---- 0xfffff8a00377d2d0 0x00000000624162d0 \??\C:\System Volume Information\Syscache.hve 0xfffff8a00000f010 0x000000002d4c1010 [no name] 0xfffff8a000024010 0x000000002d50c010 \REGISTRY\MACHINE\SYSTEM 0xfffff8a000053320 0x000000002d5bb320 \REGISTRY\MACHINE\HARDWARE 0xfffff8a000109410 0x0000000029cb4410 \SystemRoot\System32\Config\SECURITY 0xfffff8a00033d410 0x000000002a958410 \Device\HarddiskVolume1\Boot\BCD 0xfffff8a0005d5010 0x000000002a983010 \SystemRoot\System32\Config\SOFTWARE 0xfffff8a001495010 0x0000000024912010 \SystemRoot\System32\Config\DEFAULT 0xfffff8a0016d4010 0x00000000214e1010 \SystemRoot\System32\Config\SAM 0xfffff8a00175b010 0x00000000211eb010 \??\C:\Windows\ServiceProfiles\NetworkService\NTUSER.DAT 0xfffff8a00176e410 0x00000000206db410 \??\C:\Windows\ServiceProfiles\LocalService\NTUSER.DAT 0xfffff8a002090010 0x000000000b92b010 \??\C:\Users\Rick\ntuser.dat 0xfffff8a0020ad410 0x000000000db41410 \??\C:\Users\Rick\AppData\Local\Microsoft\Windows\UsrClass.dat
Прекрасно! Мы, предположительно, получили имя пользователя и, заодно, убедились, что нужные нам SYSTEM и SAM уже подгружены в память. Теперь просто достаем хеши и идем перебирать:
$ volatility -f OtterCTF.vmem --profile=Win7SP1x64 hashdump -y 0xfffff8a000024010 -s 0xfffff8a0016d4010 Volatility Foundation Volatility Framework 2.6 Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0. Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0. Rick:1000:aad3b435b51404eeaad3b435b51404ee:518172d012f97d3a8fcc089615283940.
По итогу, у нас есть три пользователя — Administrator(31d6cfe0d16ae931b73c59d7e0c089c0) , Guest(31d6cfe0d16ae931b73c59d7e0c089c0) и наш Rick(518172d012f97d3a8fcc089615283940) . Хеши Windows 7 это NTLM и перебирать их реально долго. Могу сказать, что я у себя занимался этим почти сутки на игровой видеокарте и так и не пришел ни к чему. Поэтому можно пойти более простым путем и попробовать пробиться с помощью mimikatz . Не всегда панацея и не всегда работает, но, зато, если работает, то выдает результат всегда. Тут пригождается та самая универсальность volatility — есть пользовательский плагин mimikatz. Скачиваем в любую удобную папку и далее при запуске указываем путь к этой папке:
$ volatility --plugins=%путь_до_папки_с_плагином% -f OtterCTF.vmem --profile=Win7SP1x64 mimikatz
И сразу же получаем пароль пользователя:
Volatility Foundation Volatility Framework 2.6 Module User Domain Password -------- ---------------- ---------------- ---------------------------------------- wdigest Rick WIN-LO6FAF3DTFE MortyIsReallyAnOtter wdigest WIN-LO6FAF3DTFE$ WORKGROUP
General Info
Задача — достать IP-адрес и имя компьютера
Теперь, когда мы знаем, кто мы, надо бы понять, где мы. То есть хорошо бы узнать наш IP-адрес и имя машины. В случае с IP-адресом все просто — смотрим на список подключений на момент дампа с помощью netscan :
Листинг
$ volatility -f OtterCTF.vmem --profile=Win7SP1x64 netscan Volatility Foundation Volatility Framework 2.6 Offset(P) Proto Local Address Foreign Address State Pid Owner Created 0x7d60f010 UDPv4 0.0.0.0:1900 *:* 2836 BitTorrent.exe 2018-08-04 19:27:17 UTC+0000 0x7d62b3f0 UDPv4 192.168.202.131:6771 *:* 2836 BitTorrent.exe 2018-08-04 19:27:22 UTC+0000 0x7d62f4c0 UDPv4 127.0.0.1:62307 *:* 2836 BitTorrent.exe 2018-08-04 19:27:17 UTC+0000 0x7d62f920 UDPv4 192.168.202.131:62306 *:* 2836 BitTorrent.exe 2018-08-04 19:27:17 UTC+0000 0x7d6424c0 UDPv4 0.0.0.0:50762 *:* 4076 chrome.exe 2018-08-04 19:33:37 UTC+0000 0x7d6b4250 UDPv6 ::1:1900 *:* 164 svchost.exe 2018-08-04 19:28:42 UTC+0000 0x7d6e3230 UDPv4 127.0.0.1:6771 *:* 2836 BitTorrent.exe 2018-08-04 19:27:22 UTC+0000 0x7d6ed650 UDPv4 0.0.0.0:5355 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7d71c8a0 UDPv4 0.0.0.0:0 *:* 868 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7d71c8a0 UDPv6 . 0 *:* 868 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7d74a390 UDPv4 127.0.0.1:52847 *:* 2624 bittorrentie.e 2018-08-04 19:27:24 UTC+0000 0x7d7602c0 UDPv4 127.0.0.1:52846 *:* 2308 bittorrentie.e 2018-08-04 19:27:24 UTC+0000 0x7d787010 UDPv4 0.0.0.0:65452 *:* 4076 chrome.exe 2018-08-04 19:33:42 UTC+0000 0x7d789b50 UDPv4 0.0.0.0:50523 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7d789b50 UDPv6 . 50523 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7d92a230 UDPv4 0.0.0.0:0 *:* 868 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7d92a230 UDPv6 . 0 *:* 868 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7d9e8b50 UDPv4 0.0.0.0:20830 *:* 2836 BitTorrent.exe 2018-08-04 19:27:15 UTC+0000 0x7d9f4560 UDPv4 0.0.0.0:0 *:* 3856 WebCompanion.e 2018-08-04 19:34:22 UTC+0000 0x7d9f8cb0 UDPv4 0.0.0.0:20830 *:* 2836 BitTorrent.exe 2018-08-04 19:27:15 UTC+0000 0x7d9f8cb0 UDPv6 . 20830 *:* 2836 BitTorrent.exe 2018-08-04 19:27:15 UTC+0000 0x7d8bb390 TCPv4 0.0.0.0:9008 0.0.0.0:0 LISTENING 4 System 0x7d8bb390 TCPv6 . 9008 . 0 LISTENING 4 System 0x7d9a9240 TCPv4 0.0.0.0:8733 0.0.0.0:0 LISTENING 4 System 0x7d9a9240 TCPv6 . 8733 . 0 LISTENING 4 System 0x7d9e19e0 TCPv4 0.0.0.0:20830 0.0.0.0:0 LISTENING 2836 BitTorrent.exe 0x7d9e19e0 TCPv6 . 20830 . 0 LISTENING 2836 BitTorrent.exe 0x7d9e1c90 TCPv4 0.0.0.0:20830 0.0.0.0:0 LISTENING 2836 BitTorrent.exe 0x7d42ba90 TCPv4 -:0 56.219.196.26:0 CLOSED 2836 BitTorrent.exe 0x7d6124d0 TCPv4 192.168.202.131:49530 77.102.199.102:7575 CLOSED 708 LunarMS.exe 0x7d62d690 TCPv4 192.168.202.131:49229 169.1.143.215:8999 CLOSED 2836 BitTorrent.exe 0x7d634350 TCPv6 -:0 38db:c41a:80fa:ffff:38db:c41a:80fa:ffff:0 CLOSED 2836 BitTorrent.exe 0x7d6f27f0 TCPv4 192.168.202.131:50381 71.198.155.180:34674 CLOSED 2836 BitTorrent.exe 0x7d704010 TCPv4 192.168.202.131:50382 92.251.23.204:6881 CLOSED 2836 BitTorrent.exe 0x7d708cf0 TCPv4 192.168.202.131:50364 91.140.89.116:31847 CLOSED 2836 BitTorrent.exe 0x7d729620 TCPv4 -:50034 142.129.37.27:24578 CLOSED 2836 BitTorrent.exe 0x7d72cbe0 TCPv4 192.168.202.131:50340 23.37.43.27:80 CLOSED 3496 Lavasoft.WCAss 0x7d7365a0 TCPv4 192.168.202.131:50358 23.37.43.27:80 CLOSED 3856 WebCompanion.e 0x7d81c890 TCPv4 192.168.202.131:50335 185.154.111.20:60405 CLOSED 2836 BitTorrent.exe 0x7d8fd530 TCPv4 192.168.202.131:50327 23.37.43.27:80 CLOSED 3496 Lavasoft.WCAss 0x7d9cecf0 TCPv4 192.168.202.131:50373 173.239.232.46:2997 CLOSED 2836 BitTorrent.exe 0x7d9d7cf0 TCPv4 192.168.202.131:50371 191.253.122.149:59163 CLOSED 2836 BitTorrent.exe 0x7daefec0 UDPv4 0.0.0.0:0 *:* 3856 WebCompanion.e 2018-08-04 19:34:22 UTC+0000 0x7daefec0 UDPv6 . 0 *:* 3856 WebCompanion.e 2018-08-04 19:34:22 UTC+0000 0x7db83b90 UDPv4 0.0.0.0:0 *:* 3880 WebCompanionIn 2018-08-04 19:33:30 UTC+0000 0x7db83b90 UDPv6 . 0 *:* 3880 WebCompanionIn 2018-08-04 19:33:30 UTC+0000 0x7db9cdd0 UDPv4 0.0.0.0:0 *:* 2844 WebCompanion.e 2018-08-04 19:30:05 UTC+0000 0x7db9cdd0 UDPv6 . 0 *:* 2844 WebCompanion.e 2018-08-04 19:30:05 UTC+0000 0x7dc2dc30 UDPv4 0.0.0.0:50879 *:* 4076 chrome.exe 2018-08-04 19:30:41 UTC+0000 0x7dc2dc30 UDPv6 . 50879 *:* 4076 chrome.exe 2018-08-04 19:30:41 UTC+0000 0x7dc83810 UDPv4 0.0.0.0:5355 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7dc83810 UDPv6 . 5355 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7dd82c30 UDPv4 0.0.0.0:5355 *:* 620 svchost.exe 2018-08-04 19:26:38 UTC+0000 0x7df00980 UDPv4 0.0.0.0:0 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7df00980 UDPv6 . 0 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7df04cc0 UDPv4 0.0.0.0:5355 *:* 620 svchost.exe 2018-08-04 19:26:38 UTC+0000 0x7df04cc0 UDPv6 . 5355 *:* 620 svchost.exe 2018-08-04 19:26:38 UTC+0000 0x7df5f010 UDPv4 0.0.0.0:55175 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7dfab010 UDPv4 0.0.0.0:58383 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7dfab010 UDPv6 . 58383 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7e12c1c0 UDPv4 0.0.0.0:0 *:* 3880 WebCompanionIn 2018-08-04 19:33:27 UTC+0000 0x7e163a40 UDPv4 0.0.0.0:0 *:* 3880 WebCompanionIn 2018-08-04 19:33:27 UTC+0000 0x7e163a40 UDPv6 . 0 *:* 3880 WebCompanionIn 2018-08-04 19:33:27 UTC+0000 0x7e1cf010 UDPv4 192.168.202.131:137 *:* 4 System 2018-08-04 19:26:35 UTC+0000 0x7e1da010 UDPv4 192.168.202.131:138 *:* 4 System 2018-08-04 19:26:35 UTC+0000 0x7dc4ad30 TCPv4 0.0.0.0:49155 0.0.0.0:0 LISTENING 500 lsass.exe 0x7dc4ad30 TCPv6 . 49155 . 0 LISTENING 500 lsass.exe 0x7dc4b370 TCPv4 0.0.0.0:49155 0.0.0.0:0 LISTENING 500 lsass.exe 0x7dd71010 TCPv4 0.0.0.0:445 0.0.0.0:0 LISTENING 4 System 0x7dd71010 TCPv6 . 445 . 0 LISTENING 4 System 0x7ddca6b0 TCPv4 0.0.0.0:49156 0.0.0.0:0 LISTENING 492 services.exe 0x7ddcbc00 TCPv4 0.0.0.0:49156 0.0.0.0:0 LISTENING 492 services.exe 0x7ddcbc00 TCPv6 . 49156 . 0 LISTENING 492 services.exe 0x7de09c30 TCPv4 0.0.0.0:49152 0.0.0.0:0 LISTENING 396 wininit.exe 0x7de09c30 TCPv6 . 49152 . 0 LISTENING 396 wininit.exe 0x7de0d7b0 TCPv4 0.0.0.0:49152 0.0.0.0:0 LISTENING 396 wininit.exe 0x7de424e0 TCPv4 0.0.0.0:49153 0.0.0.0:0 LISTENING 808 svchost.exe 0x7de45ef0 TCPv4 0.0.0.0:49153 0.0.0.0:0 LISTENING 808 svchost.exe 0x7de45ef0 TCPv6 . 49153 . 0 LISTENING 808 svchost.exe 0x7df3d270 TCPv4 0.0.0.0:49154 0.0.0.0:0 LISTENING 868 svchost.exe 0x7df3eef0 TCPv4 0.0.0.0:49154 0.0.0.0:0 LISTENING 868 svchost.exe 0x7df3eef0 TCPv6 . 49154 . 0 LISTENING 868 svchost.exe 0x7e1f6010 TCPv4 0.0.0.0:135 0.0.0.0:0 LISTENING 712 svchost.exe 0x7e1f6010 TCPv6 . 135 . 0 LISTENING 712 svchost.exe 0x7e1f8ef0 TCPv4 0.0.0.0:135 0.0.0.0:0 LISTENING 712 svchost.exe 0x7db000a0 TCPv4 -:50091 93.142.197.107:32645 CLOSED 2836 BitTorrent.exe 0x7db132e0 TCPv4 192.168.202.131:50280 72.55.154.81:80 CLOSED 3880 WebCompanionIn 0x7dbc3010 TCPv6 -:0 4847:d418:80fa:ffff:4847:d418:80fa:ffff:0 CLOSED 4076 chrome.exe 0x7dc4bcf0 TCPv4 -:0 104.240.179.26:0 CLOSED 3 ?4. 0x7dc83080 TCPv4 192.168.202.131:50377 179.108.238.10:19761 CLOSED 2836 BitTorrent.exe 0x7dd451f0 TCPv4 192.168.202.131:50321 45.27.208.145:51414 CLOSED 2836 BitTorrent.exe 0x7ddae890 TCPv4 -:50299 212.92.105.227:8999 CLOSED 2836 BitTorrent.exe 0x7ddff010 TCPv4 192.168.202.131:50379 23.37.43.27:80 CLOSED 3856 WebCompanion.e 0x7e0057d0 TCPv4 192.168.202.131:50353 85.242.139.158:51413 CLOSED 2836 BitTorrent.exe 0x7e0114b0 TCPv4 192.168.202.131:50339 77.65.111.216:8306 CLOSED 2836 BitTorrent.exe 0x7e042cf0 TCPv4 192.168.202.131:50372 83.44.27.35:52103 CLOSED 2836 BitTorrent.exe 0x7e08a010 TCPv4 192.168.202.131:50374 89.46.49.163:20133 CLOSED 2836 BitTorrent.exe 0x7e092010 TCPv4 192.168.202.131:50378 120.29.114.41:13155 CLOSED 2836 BitTorrent.exe 0x7e094b90 TCPv4 192.168.202.131:50365 52.91.1.182:55125 CLOSED 2836 BitTorrent.exe 0x7e09ba90 TCPv6 -:0 68f0:181b:80fa:ffff:68f0:181b:80fa:ffff:0 CLOSED 2836 BitTorrent.exe 0x7e0a8b90 TCPv4 192.168.202.131:50341 72.55.154.81:80 CLOSED 3880 WebCompanionIn 0x7e0d6180 TCPv4 192.168.202.131:50349 196.250.217.22:32815 CLOSED 2836 BitTorrent.exe 0x7e108100 TCPv4 192.168.202.131:50360 174.0.234.77:31240 CLOSED 2836 BitTorrent.exe 0x7e124910 TCPv4 192.168.202.131:50366 89.78.106.196:51413 CLOSED 2836 BitTorrent.exe 0x7e14dcf0 TCPv4 192.168.202.131:50363 122.62.218.159:11627 CLOSED 2836 BitTorrent.exe 0x7e18bcf0 TCPv4 192.168.202.131:50333 191.177.124.34:21011 CLOSED 2836 BitTorrent.exe 0x7e1f7ab0 TCPv4 -:0 56.187.190.26:0 CLOSED 3 ?4. 0x7e48d9c0 UDPv6 fe80::b06b:a531:ec88:457f:1900 *:* 164 svchost.exe 2018-08-04 19:28:42 UTC+0000 0x7e4ad870 UDPv4 127.0.0.1:1900 *:* 164 svchost.exe 2018-08-04 19:28:42 UTC+0000 0x7e511bb0 UDPv4 0.0.0.0:60005 *:* 620 svchost.exe 2018-08-04 19:34:22 UTC+0000 0x7e5dc3b0 UDPv6 fe80::b06b:a531:ec88:457f:546 *:* 808 svchost.exe 2018-08-04 19:33:28 UTC+0000 0x7e7469c0 UDPv4 0.0.0.0:50878 *:* 4076 chrome.exe 2018-08-04 19:30:39 UTC+0000 0x7e7469c0 UDPv6 . 50878 *:* 4076 chrome.exe 2018-08-04 19:30:39 UTC+0000 0x7e77cb00 UDPv4 0.0.0.0:50748 *:* 4076 chrome.exe 2018-08-04 19:30:07 UTC+0000 0x7e77cb00 UDPv6 . 50748 *:* 4076 chrome.exe 2018-08-04 19:30:07 UTC+0000 0x7e79f3f0 UDPv4 0.0.0.0:5353 *:* 4076 chrome.exe 2018-08-04 19:29:35 UTC+0000 0x7e7a0ec0 UDPv4 0.0.0.0:5353 *:* 4076 chrome.exe 2018-08-04 19:29:35 UTC+0000 0x7e7a0ec0 UDPv6 . 5353 *:* 4076 chrome.exe 2018-08-04 19:29:35 UTC+0000 0x7e7a3960 UDPv4 0.0.0.0:0 *:* 3880 WebCompanionIn 2018-08-04 19:33:30 UTC+0000 0x7e7dd010 UDPv6 ::1:58340 *:* 164 svchost.exe 2018-08-04 19:28:42 UTC+0000 0x7e413a40 TCPv4 -:0 -:0 CLOSED 708 LunarMS.exe 0x7e415010 TCPv4 192.168.202.131:50346 89.64.10.176:10589 CLOSED 2836 BitTorrent.exe 0x7e4202d0 TCPv4 192.168.202.131:50217 104.18.21.226:80 CLOSED 3880 WebCompanionIn 0x7e45f110 TCPv4 192.168.202.131:50211 104.18.20.226:80 CLOSED 3880 WebCompanionIn 0x7e4cc910 TCPv4 192.168.202.131:50228 104.18.20.226:80 CLOSED 3880 WebCompanionIn 0x7e512950 TCPv4 192.168.202.131:50345 77.126.30.221:13905 CLOSED 2836 BitTorrent.exe 0x7e521b50 TCPv4 -:0 -:0 CLOSED 708 LunarMS.exe 0x7e5228d0 TCPv4 192.168.202.131:50075 70.65.116.120:52700 CLOSED 2836 BitTorrent.exe 0x7e52f010 TCPv4 192.168.202.131:50343 86.121.4.189:46392 CLOSED 2836 BitTorrent.exe 0x7e563860 TCPv4 192.168.202.131:50170 103.232.25.44:25384 CLOSED 2836 BitTorrent.exe 0x7e572cf0 TCPv4 192.168.202.131:50125 122.62.218.159:11627 CLOSED 2836 BitTorrent.exe 0x7e5d6cf0 TCPv4 192.168.202.131:50324 54.197.8.177:49420 CLOSED 2836 BitTorrent.exe 0x7e71b010 TCPv4 192.168.202.131:50344 70.27.98.75:6881 CLOSED 2836 BitTorrent.exe 0x7e71d010 TCPv4 192.168.202.131:50351 99.251.199.160:1045 CLOSED 2836 BitTorrent.exe 0x7e74b010 TCPv4 192.168.202.131:50385 209.236.6.89:56500 CLOSED 2836 BitTorrent.exe 0x7e78b7f0 TCPv4 192.168.202.131:50238 72.55.154.82:80 CLOSED 3880 WebCompanionIn 0x7e7ae380 TCPv4 192.168.202.131:50361 5.34.21.181:8999 CLOSED 2836 BitTorrent.exe 0x7e7b0380 TCPv6 -:0 4847:d418:80fa:ffff:4847:d418:80fa:ffff:0 CLOSED 2836 BitTorrent.exe 0x7e7b9010 TCPv4 192.168.202.131:50334 188.129.94.129:25128 CLOSED 2836 BitTorrent.exe 0x7e94b010 TCPv4 192.168.202.131:50356 77.126.30.221:13905 CLOSED 2836 BitTorrent.exe 0x7e9ad840 TCPv4 192.168.202.131:50380 84.52.144.29:56299 CLOSED 2836 BitTorrent.exe 0x7e9bacf0 TCPv4 192.168.202.131:50350 77.253.242.0:5000 CLOSED 2836 BitTorrent.exe 0x7eaac5e0 TCPv4 192.168.202.131:50387 93.184.220.29:80 CLOSED 3856 WebCompanion.e 0x7eab4cf0 TCPv4 -:0 56.219.196.26:0 CLOSED 2836 BitTorrent.exe 0x7fb9cec0 UDPv4 192.168.202.131:1900 *:* 164 svchost.exe 2018-08-04 19:28:42 UTC+0000 0x7fb9d430 UDPv4 127.0.0.1:58341 *:* 164 svchost.exe 2018-08-04 19:28:42 UTC+000
IP 192.168.202.131 найден. Конечно, это IP в локальной сети, но, к сожалению, из дампа больше не вытащишь — для того, чтобы достать внешний IP нужно побольше, чем просто дамп. Теперь достанем имя компа. Для этого просто прочитаем ветку SYSTEM реестра:
$ volatility -f OtterCTF.vmem --profile=Win7SP1x64 printkey -o 0xfffff8a000024010 -K 'ControlSet001\Control\ComputerName\ComputerName' Volatility Foundation Volatility Framework 2.6 Legend: (S) = Stable (V) = Volatile ---------------------------- Registry: \REGISTRY\MACHINE\SYSTEM Key name: ComputerName (S) Last updated: 2018-06-02 19:23:00 UTC+0000 Subkeys: Values: REG_SZ : (S) mnmsrvc REG_SZ ComputerName : (S) WIN-LO6FAF3DTFE
Супер, мы получили имя компа WIN-LO6FAF3DTFE .
Play Time
Пользователь любит играть в старые видеоигры. Требуется найти название его любимой игры и IP-адрес ее сервера
Просто смотрим на выхлоп netscan на предыдущем шаге и видим странные процесссы — LunarMS.exe . Гуглим — действительно, это видеоигра. Там же можно и найти IP-адрес, с которым открыто соединение — 77.102.199.102
Volatility как пользоваться windows
## 13. Volatility Framework ### Применение и установка утилиты ### Введение Volatility — это фреймворк с полностью открытым кодом, предоставляющий собой набор Python-инструментов для извлечения цифровых артефактов из энергонезависимой памяти (RAM). Это может пригодиться при расследовании инцидентов или просто при исследовании работы программы с критичными данными (например, с номерами платежных карт). На сегодняшний день программа поддерживает следующие платформы: Linux, Windows, OS X. Список того что может извлечь Volatility: * дату и время; * список запущенных процессов; * список открытых сетевых сокетов; * список открытых сетевых соединений; * список загруженных DLL для каждого процесса; * имена открытых файлов для каждого процесса; * адресуемую память; * модули ядра ОС; * маппинг физических смещений на виртуальные адреса и многое другое. ### Установка 1. Шаг 1. Необходимо проверить, что все системные пакеты обновлены. Для этого в терминале необходимо выполнить следующие команды: «` sudo apt update sudo apt upgrade sudo apt install git «` Рис. 1. Обновление  Рис. 2. Обновление  Рис. 3. Обновление  2. Шаг 2. Установка Python. «` sudo apt install python2.7 python3-pip python-setuptools build-essential python-dev-is-python2 «` Рис 4. Установленный пакет Python  3. Шаг 3. Установка Distorm. Затем используем модули pip для установки Distorm 3: «` sudo pip install distorm3==3.4.4 «` Рис 5. Установленная библиотека  4. Шаг 4. Установка Volatility на Ubuntu. Для установки можно просто клонировать репозиторий Git Volatility: «` git clone https://github.com/volatilityfoundation/volatility.git «` Рис. 6. Клонирование репозитория  Делаем только что склонированный файл исполняемым: «` chmod +x volatility/vol.py «` Затем перемещаем volatility в каталог и создеам символическую ссылку, чтобы сделать его глобально доступным:/qwe: «` sudo mv volatility /qwe sudo ln –s /qwe/volatility/vol.py /usr/bin/vol.py «` 5. Шаг 5. Проверяем volatility. Наконец, проверяем, что Volatility работает. Не должны быть получены никакие ошибки: «` vol.py —info «` Рис. 7. Результат установки.  Рис. 8. Результат установки  Поздравляю! Вы успешно установили Volatility. ### Ресурсы для решения возможных проблем Для получения дополнительной помощи или полезной информации можно обратиться к официальному сайту [Volatility](https://github.com/volatilityfoundation/volatility) . Решение проблем с установкой некоторых пакетов [Crypto.Hash](https://github.com/volatilityfoundation/volatility/issues/771)
Last changed by
Add a comment
Read more
Untitled
Лабораторная работа №1 Получить доступ к образу Windows, изучить его и восстановить утерянный файл курсовой работы. Решение Перед восстановлением скачиваем утилиту Lasersoft Recovery и устанавливаем утилиту. Создаем загрузочную флешку: Настраиваем ее под восстанавливаемую систему и приступаем к работе:
Untitled
Практическая работа №2 Scalpel 1. Введение Parrot Security OS — набирающий популярность security-дистрибутив, основанный на Debian-linux. Простой в освоении, подходит и для новичков и для профессионалов. Этот дистрибутив нацелен как на проведение тестирования на проникновение, так и на анонимную работу в сети Интернет. Использует оболочку MATE и дисплей-менеджер LightDM. По фукнционалу он похож на Kali Linux, здесь тоже вместе с системой поставляется огромное количество специального программного обеспечения для тестирования безопасности. Из отличительных особенностей можно назвать больший, нежели в Kali, уклон в анонимность: интеграция I2P (invisible internet project) и предустановленные сервисы TOR. Существует несколько версий (включающих 32 и 64 битные платформы) Parrot Security OS (3.8 — JollyRoger): Scalpel – это программа с открытым исходным кодом для восстановления файлов используя базу данных заголовков, колонтитулов. Может восстанавливать с образов дисков или устройств с сырыми блоками, заголовки и колонтитулы устанавливаются пользователем. Программа используется не только для восстановления файлов, но и цифровых криминалистических исследований.