Русская Википедия:Эксплойт

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Экспло́йт (Шаблон:Lang-en, эксплуатировать) — компьютерная программа, фрагмент программного кода или последовательность команд, использующие уязвимости в программном обеспечении и применяемые для проведения атаки на вычислительную систему. Целью атаки может быть как захват контроля над системой (повышение привилегий), так и нарушение её функционирования (DoS-атака). Вирус для уничтожения программ, игр, приложений.

Классификация

В зависимости от метода получения доступа к уязвимому программному обеспечению эксплойты подразделяются на удалённые (Шаблон:Lang-en) и локальные (Шаблон:Lang-en).

  • Удалённый эксплойт работает через сеть и использует уязвимость в защите без какого-либо предварительного доступа к уязвимой системе;
  • Локальный эксплойт запускается непосредственно в уязвимой системе, требуя предварительного доступа к ней. Обычно используется для получения взломщиком прав суперпользователя.

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

Виды эксплойтов

Шаблон:Нет ссылок в разделе Эксплойты фактически предназначены для выполнения сторонних действий на уязвимой системе и могут быть разделены между собой следующим образом:

  1. Эксплойты для операционных систем.
  2. Эксплойты для прикладного ПО (музыкальные проигрыватели, офисные пакеты и т. д.).
  3. Эксплойты для браузеров (Internet Explorer, Mozilla Firefox, Opera и другие).
  4. Эксплойты для интернет-продуктов (IPB, WordPress, VBulletin, phpBB).
  5. Эксплойты для интернет-сайтов (facebook.com, hi5.com, livejournal.com).
  6. Другие эксплойты[1].

Pivoting

Под термином pivoting (англ. поворот) понимается метод, используемый тестировщиками компьютерной безопасности при тестах на проникновение,[2] который использует взломанную систему для атаки на другие системы в той же сети, чтобы избежать ограничений, таких как конфигурации брандмауэра, которые могут запрещать прямой доступ ко всем машинам. Например, если злоумышленник взламывает веб-сервер в корпоративной сети, злоумышленник может затем использовать взломанный веб-сервер для атаки других систем в сети. Эти типы атак часто называют многоуровневыми.[3]

Как выглядит эксплойт?

Эксплойт может распространяться в виде исходных текстов, исполняемых модулей или словесного описания использования уязвимости. Он может быть написан на любом языке программирования (наиболее часто использующиеся: C/C++, Perl, Python, PHP, HTML+JavaScript)[4].

Эксплойты могут быть классифицированы также по типу используемой ими уязвимости, такой как: переполнение буфера, внедрение SQL-кода, межсайтовый скриптинг, подделка межсайтовых запросов и т. д.

Актуальность

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

После закрытия уязвимости производителем шанс успешного применения эксплойта начинает стремительно уменьшаться. Поэтому особой популярностью среди хакеров пользуются так называемые 0day-эксплойты, использующие недавно появившиеся уязвимости, которые ещё не стали общеизвестны[5].

Связки (набор эксплойтов, exploit kit)

Связки эксплойтов представляют собой пакет эксплойтов сразу под несколько программ (версий) и/или под разные уязвимости в них. В последних версиях связок производится выбор эксплойта именно под конкретную программу пользователя.

В большинстве случаев эксплойт-киты применяются для атак, использующих уязвимости браузеров или их дополнений (частыми целями, к примеру, являются Java, Flash и PDF[6]).

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

См. также

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Нет иллюстраций Шаблон:Нет сносок