Взлом: некоторые примеры

Опубликовано в Взлом на практике

Можно ли говорить о защите в отрыве от методов взлома? Нет, скажут многие из наших посетителей и, несомненно, будут правы. Чтобы постичь суть или хотя бы понять, «как они делают это», рассмотрим следующие вопросы:

1. какие из уязвимостей вашей системы могут стать воротами для вторжения извне;

2. какие механизмы взлома используются хакерами чаще всего и как им противостоять.

Дабы не утомлять читателя классификациями, я постараюсь изложить суть, а именно: мы рассмотрим наиболее вероятные варианты взлома и частично (более подробно механизмы защиты рассмотрены в последующих главах) защиты – «два в одном».

ПРИМЕЧАНИЕ
В дальнейшем условимся, что у нашего виртуального пользователя установлена операционная система семейства Windows.

Итак, пожалуй, начнем. Вас решили взломать. Потенциально уязвимыми местами вашей системы могут стать:

1.  необновленная, изобилующая многочисленными уязвимостями Windows и прикладное ПО:

  • уязвимости служб и сервисов операционной системы (к примеру, уязвимость в службе LSASS, ответственной за авторизацию, управления      учетными записями и пр.; или службе файлового сервера);
  • уязвимости приложений, интегрированных в систему (к примеру, Internet Explorer, Outloook Express и т. д.);
  • уязвимости прикладного ПО сторонних разработчиков («Антивирус Касперского», OutPost Firewall и т. д.);

2. настройки системы по умолчанию (к примеру, открытые для общего доступа диски C:, D:);

3. человеческий фактор:

  • пустые (как уже было упомянуто выше, достаточно часто пользователи оставляют учетную запись администратора с пустым паролем) или слабые (qwerty, 123, admin, 1987 и т. д.) пароли на вход в систему;
  • ошибки администрирования (как пример – открытые порты).

ПРИМЕЧАНИЕ
У некоторых из читателей может возникнуть вопрос относительно того, что же такое есть порт. Фактически, порт – это приложение или служба, которая ждет, чтобы установить соединение извне (рисунок ниже).

Команда netstat-an позволяет просмотреть ваши открытые порты

Команда netstat-an позволяет просмотреть ваши открытые порты

Следует отметить, что вышеперечисленные уязвимые места – далеко не полный список, а всего лишь наиболее распространенные варианты.

Какие механизмы взлома используются хакерами чаще всего?

Рассмотрим некоторые из них:

Компрометация системы с использованием эксплоитов.

Пример: популярный в свое время KaHt2, который эксплуатирует уязвимость службы RPC (Remote Procedure Call – удаленный вызов процедур), позволяя удаленному пользователю получить доступ к компьютеру жертвы, посредством организации некоего подобия telnet-сеанса (рисунок ниже).

Эксплоит Kaht2 в действии

Эксплоит Kaht2 в действии

Взлом с использованием специализированного ПО

  • троянские кони (как пример – под картинкой новой знакомой может оказаться самый настоящий троянский конь – достаточно лишь открыть прикрепленный к электронному письму файл);
  • черви (чтобы подцепить червя, вовсе не обязательно что-либо открывать – если система не залатана, червь сам вас найдет; например, MS Blast, используя уязвимость в службе DCOM RPC, инфицирует систему, что вызывает перезагрузку компьютера).

Подбор паролей (как правило, осуществляется при помощи специализированного ПО. При этом перебор может вестись как по словарю, так путем «брут-форса» – перебором «грубой силой», то есть всеми сочетаниями символов). В качестве примера такого специализированного ПО достаточно привести утилиту Cain & Abel, возможности которой далеко не ограничиваются одним лишь перебором паролей (рисунок ниже).

Утилита Cain & Abel в действии

Утилита Cain & Abel в действии

Рассмотрим вариант, когда у взломщика есть физический доступ к компьютеру. Его цель – получить доступ в систему и скопировать ваш (будем предполагать) секретный документ. Для этого ему понадобится выполнить следующее.

1. Загрузиться с CD или USB-носителя.

2. Скопировать в другой среде (им загруженной) себе этот документ.

Как он будет действовать? Вероятно, следующим образом.

1. Снимет пароль на BIOS (если он установлен, разумеется), чтобы произвести настройку на загрузку с носителя.

  • вытащив батарейку;
  • воспользовавшись соответствующей BIOS-перемычкой;
  • замкнув контакты на микросхеме.

ПРИМЕЧАНИЕ

В некоторых материнских платах раннего производства имелась возможность «сброса» BIOS-пароля посредством ввода так называемогозаводского. Например, для микросхем производства AWARD пароль мог быть AWARD.

2. Загрузится с Live CD (как пример) и скопирует секретный документ (вполне возможно, что документ будет зашифрован встроенными средствами операционной системы, но это вряд ли остановит нашего взломщика, так как в настоящее время для большинства алгоритмов шифрования существуют парольные взломщики).

Возможные варианты противодействия:

  • настроить BIOS на загрузку только с винчестера;
  • установить пароль на BIOS;
  • опечатать системный блок.

Другой вариант взлома, когда целью взломщика является установить тотальный контроль над системой (чаще всего конечной целью такого контроля является получение паролей).

Как он будет действовать? Вероятно, следующим образом.

1. Повысит свои привилегии в системе путем взлома учетной записи с правами администратора:

  • используя пустой пароль для учетной записи Администратор;
  • подсмотрев пароль;
  • применив специальное программное обеспечение вроде PWSEX; несмотря на весьма странное название, данная утилита позволяет восстановить большинство паролей всего за несколько секунд (рисунок ниже);
Proactive Windows Security Explorer в действии

Proactive Windows Security Explorer в действии

ПРИМЕЧАНИЕ
Стоит обратить особое внимание читателя на то, что утилиты вроде описанной для своей работы уже требуют прав администратора. «Так в чем же тогда суть взлома?» – спросят многие из читателей. А в том, что взломщиком может оказаться доверенное лицо, просто на пять минут получившее доступ в систему с учетной записью администратора, но, разумеется, не знающее пароль.

  • использовав специальное ПО для повышения локальных привилегий в системе.

2. Установит троянского коня (наиболее широкое понятие шпионского ПО), бэкдор (утилита удаленного администрирования) или клавиатурного шпиона (программа, перехватывающая ввод данных с клавиатуры).

Возможные варианты противодействия:

1. регулярное обновление системы (заплатки всегда доступны на официальном сайте Microsoft);

2. повседневная работа в системе с правами пользователя;

3. установка (если не установлено) пароля на учетную запись Администратор;

4. использование стойких паролей (не менее восьми символов из букв, цифр и специальных символов);

5. удаление из системы неиспользуемых учетных записей, таких, например, как HelpAssistant и NetShowServices (Пуск, Панель управления, Администрирование, Управление компьютером, Локальные пользователи и группы, Пользователи);

6. ревизия локальных политик безопасности (в том числе контроль ветвей реестра, ответственных за автозагрузку);

7. включение DEP (выполнение команды Мой компьютер ? Свойства ? Дополнительно ? Быстродействие ? Параметры ? Предотвращение выполнения данных);

8. использование хорошей антивирусной программы с новыми базами.

Теперь рассмотрим третий вариант вторжения– вторжение из сети. Как будет действовать взломщик в подобном случае и какие инструменты взлома попытается применить?

Варианты следующие.

1. Установит в систему троянского коня следующим образом.

  • Отправив вам на электронный ящик (или через ICQ) письмо с прикрепленным файлом – картинкой, – замаскированным троянским конем.
  • Все через ту же электронную почту (или другим способом, например на форуме) скомпрометирует пользователя перейти по некоторой ссылке, ведущей на сфабрикованную подставную страницу, содержащую злонамеренный JavaScript-код. В результате через уязвимости браузера троянский конь «зальется» в систему.

2. Получит удаленный доступ, использовав специальное ПО для повышения привилегий в системе.

ПРИМЕЧАНИЕ

В обоих перечисленных случаях вторжения через сеть для последующего контроля системы-жертвы взломщику понадобится как минимум знать ее IP-адрес. В случае подключения к Интернету с использованием динамических IP (выдаваемый пользователю каждый раз новый IP) взломщик должен будет узнать (как правило) ваш IP на текущий момент подключения. Как? Просто. В момент подключения к Интернету троянский конь отправляет на электронный почтовый ящик взломщика письмо, содержащее ваш IP.

Проникнет в систему, используя бреши в настройках безопасности (например, подключение через telnet).

Варианты возможной защиты:

1. опять же, работа в системе без прав администратора;

2. последняя версия антивирусной программы (подробно вопрос выбора антивируса рассмотрен здесь) со свежими базами;

3. установка хорошего межсетевого экрана (для нужд домашнего ПК можно рекомендовать Zone Alarm);

4. ревизия политик безопасности (отключение общедоступных дисков C$, D$, неиспользуемых сервисов и т. д.).

Вышеперечисленные возможные варианты атак ни в коем случае не претендуют на исчерпывающее руководство, а приведены лишь как примеры, отражающие суть.

Следует отметить, что предварительным этапом практически любой атаки является сканирование портов. Сканирование портов проводится, чтобы узнать, какие из служб или сетевых сервисов установлены в системе и могут быть использованы для атаки.

Как пример – уже упоминавшийся в статье о XSpider – отечественный сетевой сканер безопасности, который на сегодняшний день можно считать лучшим в своем классе.

Резонно заметить, что отчет о сканировании XSpider включает в себя не только список открытых портов, но и подробное описание того, как устранить ту или иную обнаруженную брешь.

Приведенные выше возможные варианты реализуемы в большей своей части на рабочем ПК простого пользователя и подразумевают взлом, в случае если:

1. есть физический доступ к машине;

2. машина пользователя доступна по локальной сети.

А как будет действовать взломщик и какие инструменты применит, если его целью окажется веб-сервер? Ответ на этот вопрос можно было без труда найти в категории «Безопасность веб-серверов», однако же будет совсем не лишним привести общую схему действий взломщика в подобной ситуации.

Сценарий действий взломщика в подобном случае может быть разбит по пунктам.

1. Сбор общей информации:

  • версия операционной системы, установленной на сервере (UNIX-подобная, Windows 2003 и др.);
  • версия HTTP-сервера (Apache, IIS);
  • версия и особенности удаленного интерфейса управления сайтом, базами данных (bitrix, phpmyadmin);
  • изучение структуры сайта (включает перебор доступных папок, например test; на чем написан и какие элементы использованы: HTML, PHP, Java Script, MySQL, Perl).

ПРИМЕЧАНИЕ

Сбор информации может вестись различными путями: возможны варианты с использованием специализированных сканеров безопасностиили же «вручную».

2. Непосредственно взлом (используя XSS, SQL-Injection или другой из способов; более подробно варианты описаны в категории «Классы атак»).

3. Создание «потайного хода», через который впоследствии можно будет получить доступ к сайту даже при условии смены текущих паролей (одним из вариантов такого потайного хода является так называемая «заливка шелла», подразумевающая закачку на сайт сценария, который дает возможность выполнения произвольных команд).

4. Заметание следов (как правило, заключается в удалении записей из журналов безопасности).