Вредоносное программное обеспечение, позволяющее восстановить структурную схему по исходным данным (Часть 3)

Published on Февраль 2, 2009 by   ·   Комментариев нет

На протяжении двух первых частей из этой серии, посвященной восстановлению структурной схемы по исходным текстам (reverse engineering), мы заложили фундамент для нашего анализа. В этой третьей части мы проведем реальный анализ вредоносного программного обеспечения.

Во второй части этой статьи мы остановились на том, что я спросил вас, имеет ли загруженное вам вредоносное программное обеспечение (malware) иконку winzip или winrar. Почему я задал этот вопрос? Кто-нибудь из вас помнит, что в одной из статей я приводил ссылку на статью под названием “The student, the Teacher, and Optix Pro”. Эта статья рассказывает о тех, кто использовал Троянов для взлома компьютера учителя. Часть процесса по построению троянского сервера включает в себя маскировку Трояна под иконкой winzip. Достаточно хитро, не так ли? Хотя этим и нельзя одурачить всех, определенно, большинство пользователей компьютера, которые не так сильны в компьютерной безопасности, поддадутся на эту уловку. Это также замечательно, что не каждый может быть экспертов в безопасности (security expert). Я упомянул это по той простой причине, что все мы разные. У всех у нас развиты различные навыки, поэтому об этом стоит помнить. Никто не любит умников!

Если вы хотите ознакомиться с остальными частями этой статьи, пожалуйста, прочитайте:

Это шутка или правда?

Итак, как я заключил выше, я не слишком уверен, что загруженное мной вредоносное программное обеспечение в действительности является сжатым с помощью winzip. И таким образом при двойном щелчке мыши на этом файле, я вовсе не распакую его, а установлю это вредоносное программное обеспечение на свою систему. Но с другой стороны это также может быть действительно сжатый кусок вредоносного программного обеспечения. Может кто-нибудь из вас придумать способ для однозначного определения того, что находится перед нами, сжатый кусок вредоносного программного обеспечения или же уже готовая к установке программа-шпион? Я могу это сделать. Все что нам нужно – это открыть загруженный нами файл с помощью шестнадцатиричного редактора Hex editor.

Как открыть format mz чтобы?

Рисунок 1

Как вы можете увидеть из рисунка, загруженный мною файл действительно имеет иконку архива winzip. Она не отображается, как классическая иконка winzip, потому что на моей виртуальной системе (VMware image) установлен winrar. Перед тем, как мы откроем файл с помощью шестнадцатиричного редактора (hex editor). Очень важно обратить на одну вещь. Форматы файлов таких, как winzip, winrar или даже формат PE все имеют особую сигнатуру или подпись, которую можно увидеть на уровне байтов (byte level). Это прекрасно видно с помощью шестнадцатиричного редактора (hex editor), именно поэтому нам необходимо с его помощью открыть наше вредоносное программное обеспечение. Это позволит нам увидеть особую последовательность байтов в самом файле. А это в свою очередь позволит нам отличить файл с архивом winzip от файла с вредоносной программой. Вам больше не нужно беспокоиться о том, что вы открываете этот файл в шестнадцатиричном редакторе, т.к. при этом вы не запускаете его, а всего лишь смотрите его содержимое.

О битах и байтах

Из рисунка ниже мы можем увидеть, что я открыл файл с вредоносным программным обеспечением в шестнадцатиричном редакторе (hex editor), который мне больше всего нравиться. На рисунке мы видим символы “MZ”, или если смотреть на файл в шестнадцатиричном виде — символы “4D 5A”. Символы “MZ” означают открытии последовательности байтов в заголовке файла формата PE. Другими словами, “MZ” означает, что этот файл является исполняемым, а не сжатым файлом в формате winzip. Ужас! Просто ужас! Неужели у авторов этого вредоносного программного обеспечения совсем нет совести? Ха. Как все мы знаем, у большинства из них ее определенно нет. Попытка замаскировать исполняемый файл под сжатый файл в формате winzip очень хитра, т.к. двойной щелчок мыши на нем приведет к запуску вредоносного программного обеспечения, а не к распаковке файла.

Как открыть format mz чтобы?

Рисунок 2

Хорошо, но тогда возникает вопрос, а как выглядит файл формата winzip на байтовом уровне. В действительности это очень хороший вопрос, который мы должны рассмотреть, т.к. только это позволит нам доказать различие между форматами. Точно также, как файл формата PE начинается с последовательности байтов “MZ”, файл формата winzip всегда начинается с сигнатуры “PK”. На этом моменте давайте посмотрим на настоящий файл в формате winzip.

Как сжать исполняемый файл hex редактором?

Рисунок 3

Чтобы не быть голословным, я привел вам пример, из которого четко видно, что сжатый файл действительно начинается с последовательности символов “PK”, или же “50 4B”. Теперь, когда мы подвели нашу базовую линию и доказали, что файл с вредоносным программным обеспечением является исполняемым, а не сжатым файлом в формате winzip. Я также должен упомянуть здесь, что когда мы смотрим на файл с помощью редактора (hex), важно помнить, что один символ ASCII character представлен двумя буквенно-цифровыми символами (alpha-numeric). Чтобы вам стало совсем понятно, приведу конкретный пример, байт “50” представляет собой ASCII символ “P”, а байт “4B” представляет символ ASCII “K”. Это очень важная деталь, и также относится к области анализа пакетов (packet analysis). Хотя при анализе пакетов у нас часто есть метрики, каждая из которых представлена одним битом, а не целым байтом.

Форматы файлов и их важность

Вы наверно думаете, что теперь мы по-настоящему займемся восстановлением структурной схемы по исходным текстам (reverse engineering). Да, мы очень скоро займемся этим, но все в свое время. Также очень важно не упустить из виду информацию, которая будет очень полезна для нашего анализа. Такую информацию, как форматы файлов для winzip и PE. Когда вы занимаетесь reverse engineering необходимо уделить время на то, чтобы убедиться, что файл имеет тот формат, которым он кажется. Для того, чтобы сделать это, как мы делали это в этой статье, мы должны понять, как это делать. А для этого мы должны открыть файл с помощью редактора (hex editor), как мы это и сделали, а далее иметь под рукой копию спецификации формата файла (file format specification).

Формат Portable Executable или PE (переносимый исполняемый) – это один из тех форматов, которые являются исконно присущими для операционной системы Microsoft Windows. Спецификация этого формата файлов, я могу совершенно честно сказать, очень очаровательна для чтения. Для того, чтобы ваши знания в области компьютерной безопасности росли и закреплялись, вы должны постоянно увеличивать сложность изучаемых тем. Я буду очень рад, если вы найдете время и сможете разобраться с тем, что представляет из себя формат PE, что он означает, и для чего он используется. Изучение этого формата также поможет вам закрепить ваши знания о том, каким образом программа размещается в физической памяти т.е.: ваш жесткий диск в действительности отображается в память т.е.: RAM. Это в действительности может быть очень интересным.

Резюме

В этой статье мы рассмотрели вредоносное программное обеспечение, которое загрузил я. Оно имело иконку файла формата winzip, но у меня были некоторые сомнения по этому поводу, что этот файл был действительно такого формата. Будучи очень подозрительным по натуре, я взломал этот файл с помощью шестнадцатиричного редактора (hex editor), в результате чего выяснилось, что в самом деле, это был не файл, сжатый в формате winzip, а исполняемый файл или файл в формате PE. В соответствии с этим мы узнали очень важную информацию, что файлы различных форматов начинаются с различных уникальных последовательностей байтов. Эти знания позволили нам точно определить тип файла, который у нас был. В следующей части этой статьи мы узнаем, каким образом было сжато это вредоносное программное обеспечение, а также, как его можно распаковать. После этого наш анализ начнется всерьез. До скорых встреч.

Источник www.windowsecurity.com


Смотрите также:

Readers Comments (Комментариев нет)




Да человек я, человек! =)




Exchange 2007

Проведение мониторинга Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 3)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Проведение мониторинга Exchange 2007 с помощью диспетчера System ... [+]

Практическое рассмотрение перехода с Exchange 2003 на Exchange 2007 (часть 1)

Введение В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 2)

Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ... [+]

Мониторинг Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 2)

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ... [+]

Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 5)

Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам: Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1) ... [+]

Установка и настройка Exchange 2007 из командной строки (Часть 3)

If you missed the previous parts in this article series please read: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 1)

Инструмент ExRCA Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями: Тест подключения Outlook 2007 Autodiscover Тест подключения Outlook 2003 RPC ... [+]

Развертывание сервера Exchange 2007 Edge Transport (часть 5)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Развертывание сервера Exchange 2007 Edge Transport (часть 1) Развертывание ... [+]

Установка и настройка Exchange 2007 из командной строки (часть 2)

Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование интегрированных сценариев Using Exchange Server 2007 – часть 2: генерирование отчетов агента Transport AntiSpam Agent

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ... [+]