Для многих из нас мир восстановления структурной схемы по исходным данным является достаточно экзотическим. Многие люди даже не знают, как к нему подойти. В этой статье мы рассмотрим, как ее можно использовать в быстро развивающейся области компьютерной безопасности.
Если вы хотите ознакомиться с остальными частями этой статьи, пожалуйста, прочитайте:
Я помню, как много лет назад впервые услышал термин reverse engineering (восстановление структурной схемы по исходным данным). В то время эти слова ничего для меня не значили. После того, как мои знания о компьютерной безопасности стали увеличиваться от изучения сетевых протоколов до обнаружения атак и безопасности web приложений, я решил заново обратиться к этому термину. После того, как проработал в области компьютерной безопасности несколько лет, я начал понимать, чем возможность восстановления структурной схемы по исходным данным была так полезна. Более того, знания, необходимые для выполнения такой задачи, у меня к этому времени были гораздо богаче. Понимание того, что необходимо выполнить – это лишь часть задачи. Другая часть заключается в простом осознании подхода к выполнению задачи.
Перед тем, как мы обсудим, какие умения и знания необходимы для осуществления подобной операции на практике, необходимо объяснить, почему вам, как системному администратору или специалисту по безопасности, так важно это знать. Это практически неизбежно, что ваша сеть станет предметом атак. Кроме всего прочего, существует сотни, если не тысячи хакеров с различными уровнями знаний, которые сканируют, а затем атакуют вашу сеть. Это лишь вопрос времени. Там, где злоумышленнику достаточно быть удачливым лишь раз, вам надо быть на самой вершине каждый день.
Первое, что вы захотите предпринять после атаки – это понять то, что она в себе содержит, а затем очистить компьютер, подвергнувшийся атаке. После этого я попытаюсь определить, какую уязвимость использовала данная атака. Была ли это уязвимость типа 0 day exploit, или же вы просто забыли установить какое-то обновление на определенный компьютер. Если вы просто забыли установить обновление, то восстановите компьютера, а затем установите эти обновления! В любом случае вы должны попытаться получить копию программы, которая использовалась для атаки, неважно будь это исходный или скомпилированный код. Я слышу, как вы говорите: «Это практически невозможно сделать!». Вы будете правы, заявляя это, однако, достаточно часто вы можете найти этот вирус с помощью творческого подхода к поиску. Существует однако достаточно неплохой способ поиска вредоносного программного обеспечения, который мы рассмотрим в рамках этой статьи. Он был создан и выложен очень умным человеком тут HDM of Metasploit fame.
Вооруженные этой информацией мы продолжим далее и взглянем на небольшую часть вредоносного программного обеспечения. Вы должны понимать, что вам необходимо решить самим стоит ли на свой риск загрузить и изучить вредоносное программное обеспечение. Я ни в коей степени не в ответе за то, что может случиться с вашим компьютером. Используйте стандартные практики, когда имеете дело с примерами вредоносного программного обеспечения. Либо работайте с образом VMware или используйте специальный компьютер, который отключен от вашей сети. Это позволит вам изучить вредоносное программное обеспечение, не боясь заражения им вашей домашней или корпоративной сети.
Не забывая про предупреждение, сделанное выше относительно загрузки и использования примеров вредоносного программного обеспечения, давайте загрузим его копию. Т.к. на сайте FrSirt больше не размешается вредоносный код, то мы должны поискать другое хранилище. Существует множество других сайтов, на которых размещается вредоносный код, например, Securiteam. В зависимости от вашего уровня знаний, вы можете не знать, как скомпилировать исходные тексты в исполняемый PE код. Но если быть честным, то если вы не знаете, как скомпилировать исходный код, то эта статья не для вас.
Эта часть статьи была в основном посвящена восстановлению структурной схемы по исходному коду. Была очень важная причина назвать ее именно так. Reverse engineering – это не слишком простая тема. Различные читатели обладают различным уровнем знаний. По отношению к вам, читателям, для того чтобы вы могли получить максимум из этой статьи, очень важно, чтобы вы обладали начальными знаниями по поднятой теме. Аналогично тому, как я сказал выше, если вы не знаете, как компилировать исходные тексты, то это статья будет очень сложной для вас. Постарайтесь читать внимательно, и если что-то не ясно, то необходимо изучить некоторые вещи.
Да, да. Я помню, что я сказал, что мы должны загрузить какое-нибудь вредоносное программное обеспечение с сайта Metasploit website.
Хотя вышеприведенные три пункта для некоторых из вас могут звучать устрашающе, поверьте мне, это не так ужасно. Все, что необходимо сделать, это собрать необходимую информацию, инструменты и правильно собрать тестовый стенд для проведения reverse engineering (восстановления структурной схемы по исходным данным). На этом я считаю первую часть этой статьи закрытой. Хотя в этой статье мы практически ничего не сделали, мы наверстаем это в других частях. Очень важно выполнить всю подготовительную работу перед тем, как приступить непосредственно к делу. Время, потраченное на подготовку, окупиться далее. Надеюсь, что мы скоро встретимся во второй части этой статьи. В ней мы наконец загрузим пример вредоносного программного обеспечения и начнем reverse engineering.
Источник www.windowsecurity.com