Существующие компьютерные угрозы по несанкционированному доступу к информации. Часть 1 — Трояны и бэкдоры.
Ожидает приглашения
Примечание: Данная статья написана мною с целью разложить по полочкам всю информацию, что я пытаюсь освоить в ходе изучения данной обширной темы. Поэтому пишу исключительно свои мысли, наверняка по ходу текста будут встречаться неточности или ошибки, буду рад их исправить.
В условиях стремительно прогрессирующей компьютеризации, вопрос информационной безопасности является как никогда важным в настоящее время. Сейчас почти каждый персональный компьютер имеет доступ в Интернет, уже не говоря об коммерческих организациях, государственных структурах и т.д. Очевидно, что на каждом компьютере может содержаться информация, представляющая интерес для другого человека, будь это текстовый файл, фотография или база данных пользователей почтового сервера. Чтобы обезопасить компьютер от угрозы взлома существует множество программ, способов и техник — это антивирусы, файерволы, всевозможные системы контроля доступа и т.д. В идеале самая безопасная схема — это отсутствие Интернета на компьютере, содержащем секретную информацию, однако даже этот вариант позволяет обезопасить компьютер только от удаленного взлома. В последующих статьях я постараюсь сделать обзор существующих в настоящее время компьютерных угроз и возможные способы борьбы с ними.
Компью́терный ви́рус — разновидность компьютерных программ или вредоносный код, отличительной особенностью которых является способность к размножению (саморепликация). В дополнение к этому вирусы могут без ведома пользователя выполнять прочие произвольные действия, в том числе наносящие вред пользователю и/или компьютеру (Wiki).
Рассмотрим классификацию компьютерных вирусов для более четкого понимания термина. Более подробная классификация вирусов приведена на www.hackzone.ru/articles/view/id/669.
Наиболее распространенный тип вирусов, в основном распространяемый по электронной почте. Чтобы не вызывать подозрений, исполняемый вирусный файл маскируется под известный формат, например документ MS Word, PDF, или графический jpeg. В свою очередь здесь существует тоже несколько способов сокрытия вредоносного содержимого. В большинстве случаев троян представляет собой PE- файл, поэтому получив на электронную почту файл *****.exe среднестатистический пользователь, обладающий некоторой компьютерной грамотностью, скорее всего такой файл открывать не станет. Иногда троян маскируется под тот же самый текстовый документ, заменяя свою иконку на значок документа MS Word 2007, хотя по факту файл имеет расширение .exe или .scr (файл заставки Windows), а так как у большинства пользователей Windows параметр отображения расширений файлов не активирован, то для них вирусный файл будет отображаться просто как текстовый документ, который, при соответствующем названии будет непременно открыт. Такая схема маскировки является наиболее примитивной и без труда будет обнаружена антивирусом (если же конечно он установлен). Наиболее сложным способом скрыть вирус является уязвимость по переполнению буфера в таких продуктах как Microsoft Office и Adobe Acrobat. На данную тему в Интернете содержится много информации, поэтому нет смысла полностью описывать принцип действия данной уязвимости, в общем же случае переполнение буфера — это явление, которое возникает, когда компьютерная программа записывает данные за пределами выделенного в памяти буфера. В общем виде процесс выглядит следующим образом. Вирус содержится в теле документа MS Word или Adobe Acrobat, однако чтобы ему отработать необходимо, чтобы всё тот же MS Word в ходе открытия документа выполнил переполненную хакером функцию, в результате чего адрес возврата из функции в основное тело программы изменится на адрес начала вирусного кода. То есть когда пользователь открывает документ, вместе с этим выполняется вирусный код, внешне заметить это довольно сложно, например, при открытии инфицированного документа Word, программа может очень быстро перезапуститься, после чего откроется текст самого документа. Подробное описание данного вида уязвимости я постараюсь разобрать в следующих статьях.
Учитывая, что компьютерный вирус — это все-таки полноценная программа, то нецелесообразно компилировать её в виде одного исполняемого файла. Во-первых, маскируя вирус в документе, есть большая вероятность раскрыть вредоносный характер файла по его значительно выросшему объему, чем у обычного документа. Во-вторых, если тело вируса размещается в системе в виде единственного исполняемого файла или .dll библиотеки, то его гораздо проще детектировать и удалить из системы. Поэтому чаще всего при написании троянов используется модульный принцип разбиения тела вируса. Так, например, существует модуль-загрузчик (Loader), который и помещается в тело текстового документа или другого носителя, после чего, при успешном размещении в системе он подключается к удаленному центру управления и докачивает дополнительные модули, если это конечно необходимо. Разновидностью троянов являются бэкдоры (Backdoor), которые, размещаясь в инфицированной системе, получают возможность к удаленному управлению зараженным компьютером. И те, и другие, в большинстве случаев маскируются под системные процессы, например, svchost.exe, а вирусными модулями являются .dll файлы. Основным отличием трояна от бэкдора является наличие у последнего клиентской и серверной частей. Таким образом серверная часть вместе с каким-нибудь «грузом» открывается пользователем на компьютере. После успешного размещения всех инфицированных модулей на компьютере бэкдор начинает слать DNS запросы на удаленный центр управления, т.е. на компьютер злоумышленника с запущенным клиентом. Здесь опять же возможно два варианта событий, либо вирус непрерывно (или с небольшими интервалами) делает попытку установить соединение, не проверяя при этом, существует ли в данный момент подключение с Интернетом, либо же ждет когда на ПК установиться подключение. Когда соединение с компьютером злоумышленника установлено, происходит обмен информацией между клиентом и сервером. Это могут быть команды, данные и т.д. В следующей статье я постараюсь подробно разобрать принцип работы одного из бэкдоров.
Для полноценной работы вируса ему необходимо работать в ring0 (уровень ядра), где ему доступны все системные инструкции. Для перехода в ring0 могут использоваться различные способы — собственные написанные драйвера и прочие премудрости.
На данный момент одним из самых популярных бэкдоров являются ZeuS, и пришедший ему на смену SpyEye, созданные для кражи банковской информации с ПК. Оба вируса имеют панель управления через Web-интерфейс, где показано, на какой машине активирован вирус, и доступен ли он в данный момент онлайн. Исходный код этого вируса доступен для скачивания в сети, хоть и его владелец предлагает сам вирус, а так же техническую поддержку всего за 10 тысяч рублей. ZeuS обладает кучей параметров для настройки серверной части, что таким образом облегчает жизнь для юного хакера — нет необходимости писать вирус самому. Да и чтобы написать вирус такого уровня необходим огромный багаж знаний и полное понимание всех мельчайших деталей работы операционной системы (в данном случае Microsoft Windows). Единственно, что потребуется от юного хакера — это закриптовать вновь собранный ZeuS, чтобы его не обнаружили антивирусные программы. Объявлений по оказанию услуг на этот счет в сети можно найти несметное множество и за символическую плату в одну или две тысячи рублей, а иногда и больше. Вообще данный вирус требует отдельной статьи с подробным описанием принципа работы благодаря своему широкому диапазону возможностей.
Существуют еще так называемые мейлеры, принцип работы которых не сильно отличается от тех же троянов, просто источником приема украденных данных выступает электронная почта злоумышленника. Оригинальная атака проводилась на пользователей сайта job.ru, которым приходило предложение о приеме на работу в виде документа Microsoft Word, содержащего в себе троянскую программу.
В условиях стремительно прогрессирующей компьютеризации, вопрос информационной безопасности является как никогда важным в настоящее время. Сейчас почти каждый персональный компьютер имеет доступ в Интернет, уже не говоря об коммерческих организациях, государственных структурах и т.д. Очевидно, что на каждом компьютере может содержаться информация, представляющая интерес для другого человека, будь это текстовый файл, фотография или база данных пользователей почтового сервера. Чтобы обезопасить компьютер от угрозы взлома существует множество программ, способов и техник — это антивирусы, файерволы, всевозможные системы контроля доступа и т.д. В идеале самая безопасная схема — это отсутствие Интернета на компьютере, содержащем секретную информацию, однако даже этот вариант позволяет обезопасить компьютер только от удаленного взлома. В последующих статьях я постараюсь сделать обзор существующих в настоящее время компьютерных угроз и возможные способы борьбы с ними.
Компьютерные вирусы
Компью́терный ви́рус — разновидность компьютерных программ или вредоносный код, отличительной особенностью которых является способность к размножению (саморепликация). В дополнение к этому вирусы могут без ведома пользователя выполнять прочие произвольные действия, в том числе наносящие вред пользователю и/или компьютеру (Wiki).
Рассмотрим классификацию компьютерных вирусов для более четкого понимания термина. Более подробная классификация вирусов приведена на www.hackzone.ru/articles/view/id/669.
1. Трояны и бэкдоры
Наиболее распространенный тип вирусов, в основном распространяемый по электронной почте. Чтобы не вызывать подозрений, исполняемый вирусный файл маскируется под известный формат, например документ MS Word, PDF, или графический jpeg. В свою очередь здесь существует тоже несколько способов сокрытия вредоносного содержимого. В большинстве случаев троян представляет собой PE- файл, поэтому получив на электронную почту файл *****.exe среднестатистический пользователь, обладающий некоторой компьютерной грамотностью, скорее всего такой файл открывать не станет. Иногда троян маскируется под тот же самый текстовый документ, заменяя свою иконку на значок документа MS Word 2007, хотя по факту файл имеет расширение .exe или .scr (файл заставки Windows), а так как у большинства пользователей Windows параметр отображения расширений файлов не активирован, то для них вирусный файл будет отображаться просто как текстовый документ, который, при соответствующем названии будет непременно открыт. Такая схема маскировки является наиболее примитивной и без труда будет обнаружена антивирусом (если же конечно он установлен). Наиболее сложным способом скрыть вирус является уязвимость по переполнению буфера в таких продуктах как Microsoft Office и Adobe Acrobat. На данную тему в Интернете содержится много информации, поэтому нет смысла полностью описывать принцип действия данной уязвимости, в общем же случае переполнение буфера — это явление, которое возникает, когда компьютерная программа записывает данные за пределами выделенного в памяти буфера. В общем виде процесс выглядит следующим образом. Вирус содержится в теле документа MS Word или Adobe Acrobat, однако чтобы ему отработать необходимо, чтобы всё тот же MS Word в ходе открытия документа выполнил переполненную хакером функцию, в результате чего адрес возврата из функции в основное тело программы изменится на адрес начала вирусного кода. То есть когда пользователь открывает документ, вместе с этим выполняется вирусный код, внешне заметить это довольно сложно, например, при открытии инфицированного документа Word, программа может очень быстро перезапуститься, после чего откроется текст самого документа. Подробное описание данного вида уязвимости я постараюсь разобрать в следующих статьях.
Учитывая, что компьютерный вирус — это все-таки полноценная программа, то нецелесообразно компилировать её в виде одного исполняемого файла. Во-первых, маскируя вирус в документе, есть большая вероятность раскрыть вредоносный характер файла по его значительно выросшему объему, чем у обычного документа. Во-вторых, если тело вируса размещается в системе в виде единственного исполняемого файла или .dll библиотеки, то его гораздо проще детектировать и удалить из системы. Поэтому чаще всего при написании троянов используется модульный принцип разбиения тела вируса. Так, например, существует модуль-загрузчик (Loader), который и помещается в тело текстового документа или другого носителя, после чего, при успешном размещении в системе он подключается к удаленному центру управления и докачивает дополнительные модули, если это конечно необходимо. Разновидностью троянов являются бэкдоры (Backdoor), которые, размещаясь в инфицированной системе, получают возможность к удаленному управлению зараженным компьютером. И те, и другие, в большинстве случаев маскируются под системные процессы, например, svchost.exe, а вирусными модулями являются .dll файлы. Основным отличием трояна от бэкдора является наличие у последнего клиентской и серверной частей. Таким образом серверная часть вместе с каким-нибудь «грузом» открывается пользователем на компьютере. После успешного размещения всех инфицированных модулей на компьютере бэкдор начинает слать DNS запросы на удаленный центр управления, т.е. на компьютер злоумышленника с запущенным клиентом. Здесь опять же возможно два варианта событий, либо вирус непрерывно (или с небольшими интервалами) делает попытку установить соединение, не проверяя при этом, существует ли в данный момент подключение с Интернетом, либо же ждет когда на ПК установиться подключение. Когда соединение с компьютером злоумышленника установлено, происходит обмен информацией между клиентом и сервером. Это могут быть команды, данные и т.д. В следующей статье я постараюсь подробно разобрать принцип работы одного из бэкдоров.
Для полноценной работы вируса ему необходимо работать в ring0 (уровень ядра), где ему доступны все системные инструкции. Для перехода в ring0 могут использоваться различные способы — собственные написанные драйвера и прочие премудрости.
На данный момент одним из самых популярных бэкдоров являются ZeuS, и пришедший ему на смену SpyEye, созданные для кражи банковской информации с ПК. Оба вируса имеют панель управления через Web-интерфейс, где показано, на какой машине активирован вирус, и доступен ли он в данный момент онлайн. Исходный код этого вируса доступен для скачивания в сети, хоть и его владелец предлагает сам вирус, а так же техническую поддержку всего за 10 тысяч рублей. ZeuS обладает кучей параметров для настройки серверной части, что таким образом облегчает жизнь для юного хакера — нет необходимости писать вирус самому. Да и чтобы написать вирус такого уровня необходим огромный багаж знаний и полное понимание всех мельчайших деталей работы операционной системы (в данном случае Microsoft Windows). Единственно, что потребуется от юного хакера — это закриптовать вновь собранный ZeuS, чтобы его не обнаружили антивирусные программы. Объявлений по оказанию услуг на этот счет в сети можно найти несметное множество и за символическую плату в одну или две тысячи рублей, а иногда и больше. Вообще данный вирус требует отдельной статьи с подробным описанием принципа работы благодаря своему широкому диапазону возможностей.
Существуют еще так называемые мейлеры, принцип работы которых не сильно отличается от тех же троянов, просто источником приема украденных данных выступает электронная почта злоумышленника. Оригинальная атака проводилась на пользователей сайта job.ru, которым приходило предложение о приеме на работу в виде документа Microsoft Word, содержащего в себе троянскую программу.