Межпротокольная эксплуатация

Межпротокольная эксплуатация (англ. Inter-protocol exploitation) — это класс уязвимостей безопасности, использующих взаимодействие между двумя коммуникационными протоколами[1], например, протоколами, используемыми в Интернете. Чаще всего обсуждается в контексте HTTP[2]. Эта атака использует возможность того, что два разных протокола могут успешно и осмысленно обмениваться командами и данными.

Явление было популяризировано в 2007 году и публично описано в исследовании[3] того же года. Однако общий класс подобных атак был известен не позднее 1994 года.

Реализации Интернет-протоколов допускают возможность инкапсуляции эксплойт-кода для компрометации удалённых программ, использующих другой протокол. Межпротокольная эксплуатация может применять межпротокольное взаимодействие для создания предпосылок запуска межпротокольного эксплойта. Например, этот процесс может инициировать начальную аутентификацию для эксплуатации уязвимости при разборе паролей. Межпротокольная эксплуатация — это когда один протокол атакует сервис, работающий на другом протоколе. Это типичная наследственная проблема, поскольку спецификации протоколов зачастую не учитывали возможность такого рода атак.

Технические особенности

Два протокола, задействованных в уязвимости, называются несущим и целевым. Несущий протокол осуществляет инкапсуляцию команд и/или данных. Целевой протокол используется для взаимодействия с сервисом-жертвой. Межпротокольное взаимодействие будет успешным, если несущий протокол способен инкапсулировать команды и/или данные достаточно, чтобы осмысленно донести их до целевого сервиса[4].

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

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

Современные значения

Одной из главных проблем является возможность преодоления этим вектором атаки межсетевых экранов и DMZ. Межпротокольные эксплойты могут быть переданы по HTTP и запущены из веб-браузера, работающего во внутренней подсети. При этом важно, что веб-браузер не эксплуатируется обычными способами[4].

Пример

Пример передачи JavaScript по HTTP с дальнейшей коммуникацией по протоколу IRC:

var form = document.createElement('form');
form.setAttribute('method', 'post');
form.setAttribute('action', 'http://irc.example.net:6667');
form.setAttribute('enctype', 'multipart/form-data');

var textarea = document.createElement('textarea');
textarea.innerText = "USER A B C D \nNICK turtle\nJOIN #hack\nPRIVMSG #hackers: I like turtles\n";

form.appendChild(textarea);
document.body.appendChild(form);
form.submit();

Известны также случаи, когда файлы специально создавались одновременно валидными для HTML и BMP-изображения[5][6][7].

Примечания

  1. Inter-protocol Communication (англ.) (август 2006). Дата обращения: 22 февраля 2023. Архивировано 11 мая 2008 года.
  2. HTML Form Protocol Attack (англ.). Дата обращения: 22 февраля 2023. Архивировано 20 апреля 2013 года.
  3. Inter-protocol Exploitation (англ.) (5 марта 2007). Дата обращения: 8 июля 2010. Архивировано 4 ноября 2010 года.
  4. 1 2 Biancuzzi, Federico. Worms 2.0! (англ.), The Register (27 июня 2007). Дата обращения: 23 августа 2022.
  5. Marco Ramilli's Blog: Hacking through images (англ.). marcoramilli.blogspot.co.uk. Дата обращения: 13 мая 2015.
  6. Buccafurri, F. Signing the document content is not enough: A new attack to digital signature // 2008 First International Conference on the Applications of Digital Information and Web Technologies (ICADIWT) : [англ.] / F. Buccafurri, G. Caminiti, G. Lax. — август 2008. — P. 520–525. — ISBN 978-1-4244-2623-2. — doi:10.1109/ICADIWT.2008.4664402.
  7. The Dalì Attack on Digital Signature (англ.). www.softcomputing.net. Дата обращения: 13 мая 2015.

Категории