
У матеріалі розглядаються його найвідоміші утиліти, їхнє практичне застосування та особливості роботи. Також піднімається питання важливості опенсорсних рішень у кібербезпеці та їхнього впливу на професійну спільноту. Текст допоможе краще зрозуміти, як працюють сучасні інструменти аналізу, які проблеми вони вирішують і чому напрацювання Стівенса залишаються актуальними.
Дідьє Стівенс — бельгійський фахівець з інформаційної безпеки та розробник, відомий своїми інструментами для аналізу та тестування вразливостей. Він спеціалізується на дослідженні паролів Windows, аналізі PDF-документів та можливостях їхнього модифікування з використанням шкідливих файлів. Також є автором опенсорсного набору утиліт Didier Stevens Suite, що включає 140 програм для роботи з файлами, процесами, реєстром та іншими системними компонентами. Серед його розробок є навіть диспетчер завдань Windows, реалізований у Excel/VBA.
Дідьє Стівенс, за власним зізнанням у профілі LinkedIn, почав програмувати понад 40 років тому й не має наміру зупинятися. Ще з 80-х років він захоплювався реверс-інжинірингом шкідливого програмного забезпечення й продовжує досліджувати цю сферу досі. До того ж, якщо хтось має цікавий зразок для аналізу, він відкритий до отримання таких файлів електронною поштою.
Його офіційна кар’єра стартувала у 1991 році в бельгійського провайдера Belgacom, згодом він працював у Euroclear та IP Globalnet. З 2000 по 2016 рік був консультантом із безпеки в Microsoft, спочатку на позаштатній основі, а згодом отримав статус Microsoft MVP у сфері захисту користувачів.
У 2012 році заснував компанію Didier Stevens Labs, яка працює й сьогодні. Ймовірно, через цю юридичну особу він надає консультаційні послуги, отримуючи значно вищу оплату, ніж звичайний контрактник. Досвідчені програмісти часто реєструють власні компанії для оптимізації своєї діяльності.
Нині він займається приватним бізнесом, одночасно обіймаючи посаду старшого аналітика в компанії NVISO, яка спеціалізується на інформаційній безпеці та захисті від кібератак. Також він є старшим оброблювачем у Центрі інтернет-загроз (Internet Storm Center, ISC) при технологічному інституті SANS, що досліджує сучасні кіберзагрози.
Фахівці з інформаційної безпеки могли зустрічати згадку опенсорсних утиліт Didier Stevens Suite , що містить 140 маленьких програм.
Ось деякі:
Ariad : інструмент (драйвер) для блокування виконання коду після встановлення USB-флешки в порт,
base64dump : вилучення з файлу рядків base64,
BinaryTools : прості інструменти для бінарних операцій:
reverse
(інвертує файл) таmiddle
(витяг послідовності),
bpmtk : набір інструментів для маніпулювання основними процесами,
BruteForceEnigma : програма для брутфорсу шифрів Enigma,
cipher-tool : кодування та декодування текстів простими шифрами,
cmd-dll : перетворення
cmd.exe
(ReactOS) в dll,
CounterHeapSpray : інструмент для забезпечення безпеки процесів: відстежує використання пам’яті програмою для захисту від heap spraying,
CreateCertGUI : генерація власного сертифіката OpenSSL (GUI під Windows).
decode-vbe : декодування файлів VBE,
decompress_rtf : інструмент для декомпресії стиснутих RTF,
disitool : інструмент для роботи з цифровими підписами виконуваних файлів Windows,
emldump : аналіз файлів MIME,
extractscripts : вилучення кожного скрипта з файлу HTML в окремий файл,
file-magic : обгортка для файлу (libmagic),
file2vbscript : впровадження виконуваного коду в скрипт vbscript,
FileScanner : сканування файлів на певні патерни,
find-file-in-file : перевірка на наявність вкладених файлів усередині файлу,
HeapLocker : інструмент для безпеки процесів, схожий на EMET, але з відкритим кодом (проти атак типу heap spraying),
InstalledPrograms : електронна таблиця зі списком встановлених програм з
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
InteractiveSieve : GUI-інструмент для аналізу файлів з відображенням результату в табличній формі, корисний для тих випадків, коли ви точно не знаєте, що шукаєте.
jpegdump : інструмент для аналізу файлів JPEG,
js-unicode-escape та js-unicode-unescape : скрипти до редактора 010 Editor для перетворення байтів у рядок Unicode для JavaScript і назад,
keihash : обчислення хешу SSH Key Exchange Init (KEI),
ListModules : аналіз цифрового підпису всіх виконуваних файлів у процесах,
LockIfNotHot : автоматичне блокування комп’ютера Windows, коли користувач відходить від нього, на підставі даних інфрачервоного температурного сенсора.
lookup-tools : інструменти для резолвінгу хостів та IP-адрес,
make-pdf : набір програм Python для генерації всіх видів PDF-файлів, частина набору інструментів PDF Tools.
msoffcrypto-crack : злом пароля MS Office,
my-shellcode : колекція шелкоду, написаного вручну на асемблері nasm (в основному), приклади тут.
NAFT : набір інструментів для експертизи мережевих додатків (Network Appliance Forensic Toolkit).
NetworkMashup : мережеві утиліти (пінг, DNS), написані в Excel/VBA.
oledump : аналіз OLE-файлів,
pdf-parser : програма для аналізу PDF.
psurveil: використання телефону Nokia N800 як камера спостереження (фотозйомка через заданий інтервал часу); хоча такими телефонами ніхто не користується, але цікава сама ідея використовувати старий непотрібний смартфон як камеру спостереження або відеоняні, щоб не викидати даремно техніку, яка ще може стати в нагоді в господарстві.
rtfdump : аналіз файлів RTF,
RTStego : стеганографія за райдужними таблицями,
SendtoCLI : GUI для консольних команд,
shellcode2vba та shellcode2vbscript : перетворення шелкоду на VBA і VBScript,
ShellCodeMemoryModule : генерує шовк, що завантажується в пам’ять DLL,
simple-shellcode-generator : програма на Python для генерації 32-бітного шелкоду (асемблерного коду),
TaskManager : Диспетчер завдань Windows на Excel/VBA.
translate : пітонівський скрипт для виконання побітових операцій над файлами (таких як XOR, ROL/ROR та ін),
ultraedit_scripts : колекція скриптів для редактора UltraEdit,
UndeletableSafebootKey : інструмент для генерації в реєстрі ключа Safeboot (захищений режим завантаження), що не видаляється.
virtualwill : HTML-програма (сторінка) для зберігання вашого заповіту, з AES-шифруванням.
virustotal-submit : надсилання файлів для сканування в VirusTotal,
vs : програма Python для використання IP-камер як відеокамери спостереження: фотографування через задані інтервали та автоматичний запуск зазначеної програми (наприклад, для порівняння нового кадру з попереднім на предмет значних відмінностей),
what-is-new : утиліта для виявлення нових елементів у списку:
wsrradial : інструмент для побудови радіального графіка WiFi-сигналу за даними з аналізатора Wi-Spy (зараз називається Chanalyzer ), який допомагає виявити перешкоди та надмірну щільність у спектрі 2,4 та 5 ГГц.
XORSearch та XORStrings : пошук заданого рядка у файлах, які оброблені за допомогою XOR, ROL, ROT, SHIFT та ін.
ZIPEncryptFTP : програма для резервного копіювання: архівує задані папки, шифрує архів і копіює його по FTP куди задано.
Дідьє Стівенс є визнаним експертом у сфері формату PDF, особливо у дослідженні його вразливостей та прихованих функцій. Саме цій темі він присвятив свою єдину наукову статтю «Роз’яснення шкідливих PDF-документів», опубліковану у журналі IEEE Security & Privacy (2011, Volume: 9, Issue: 1, DOI: 10.1109/MSP.2011.14).
Серед його численних розробок найбільшу популярність здобув набір утиліт PDF Tools, що включає консольний інструмент pdf-parser.py, призначений для детального аналізу PDF-файлів, зокрема й зашифрованих.
Наприклад, на одному з вебінарів для початківців Дідьє демонстрував, як у PDF-документі можна приховати DOCX, який завантажує RTF, що, своєю чергою, запускає шкідливий файл. Таким чином, створюється багаторівневий вірусний документ із прихованою загрозою.
У своєму блозі він детально розглядав різні техніки маніпуляцій із PDF-файлами: методи приховування слідів вбудованих об’єктів, можливості їхнього автоматичного запуску, а також докладно описав процес злому захищених паролем документів. Його матеріали охоплюють теми відновлення паролів, відновлення ключів та розшифрування PDF-файлів за допомогою власних розробок.
В одному зі своїх постів Дідьє Стівенс детально розповів, як навмисно пошкодити PDF-файл, що робить його повністю непридатним для відкриття у будь-якому редакторі. Як з’ясувалося, в інтернеті навіть існували «бізнесмени», які продавали подібні пошкоджені документи студентам та офісним працівникам як спосіб виправдати невиконану вчасно роботу. Однак завдяки методам Стівенса будь-хто може зробити це безкоштовно, просто змінивши кілька байтів у файлі.
Його історія доводить, що кар’єра успішного спеціаліста в галузі кібербезпеки нерідко починається з експериментів та хакерських досліджень. Згодом, із накопиченням досвіду та серйозним підходом до справи, такі фахівці стають провідними експертами, яких запрошують консультувати великі корпорації та виступати на міжнародних конференціях.