Jump to content

НЕОП слайд

(Перенаправлено с маршрута NOP )

В компьютерной безопасности слайд NOP , салазки NOP или пандус NOP — это последовательность инструкций NOP (без операций), предназначенных для «сдвигания» потока выполнения инструкций ЦП к конечному желаемому месту назначения всякий раз, когда программа переходит к адресу памяти в любом месте. слайд.

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

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

NOP-салазки — старейший и наиболее широко известный метод использования переполнения буфера стека . [2] Он решает проблему поиска точного адреса буфера за счет эффективного увеличения размера целевой области. Для этого гораздо большие разделы стека повреждаются с помощью недействующей машинной инструкции. В конце предоставленных злоумышленником данных, после пустых инструкций, злоумышленник помещает инструкцию для выполнения относительного перехода к началу буфера, где шелл-код расположен . Этот набор пустых операций называется «NOP-салазками», потому что, если адрес возврата перезаписывается каким-либо адресом в неактивной области буфера, выполнение будет «скользить» вниз по пустым операциям до тех пор, пока не будет перенаправляется на реальный вредоносный код переходом в конце. Этот метод требует, чтобы злоумышленник угадал, где в стеке находится NOP-след, а не сравнительно небольшой шеллкод. [3]

Из-за популярности этого метода многие поставщики систем предотвращения вторжений будут искать этот шаблон бездействующих машинных инструкций в попытке обнаружить используемый шеллкод. Важно отметить, что NOP-салазки не обязательно содержат только традиционные безоперационные машинные инструкции; любая инструкция, которая не искажает состояние машины до такой степени, что шелл-код не запускается, может использоваться вместо аппаратного бездействия. В результате для авторов эксплойтов стало обычной практикой составлять неактивный слейд из случайно выбранных инструкций, которые не оказывают реального влияния на выполнение шеллкода. [4]

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

Энтропия . слайда NOP зависит от наложенных на него ограничений Если можно определить, что определенные регистры не используются (то есть, перед следующим использованием им будет установлено известное значение), в слайде NOP могут использоваться инструкции, которые произвольно манипулируют ими. Кроме того, если выравнивание как слайда NOP, так и указателя инструкции является детерминированным, многобайтовые инструкции могут использоваться в слайде NOP без учета результатов невыровненного выполнения. Если входные данные, обеспечивающие вектор атаки, в который должны быть введены слайд NOP и полезные данные, фильтруются (например, принимаются только печатные символы), поле возможных инструкций для включения ограничено. Хотя инструкции, являющиеся частью расширения архитектуры (например, SSE ), часто могут не иметь отношения к состоянию программы, их нельзя использовать в слайде NOP, предназначенном для компьютера, на котором это расширение не поддерживается.

Обнаружение

[ редактировать ]

Существует множество методов обнаружения присутствия слайдов NOP в памяти. Например, в 2005 году греческие исследователи обнаружили, что их можно легко обнаружить, проверив, содержит ли образ памяти длинную последовательность байтов, в которой каждое начальное смещение внутри последовательности является допустимым и приводит выполнение к одному и тому же месту. [6]

См. также

[ редактировать ]
  1. ^ corelanc0d3r (31 декабря 2011 г.). «Учебное пособие по написанию эксплойтов, часть 11: Распыление кучи» . Команда Корелана. Архивировано из оригинала 25 апреля 2015 г. Проверено 15 января 2014 г. {{cite web}}: CS1 maint: числовые имена: список авторов ( ссылка )
  2. ^ Вангелис (08 декабря 2004 г.). «Эксплойт переполнения стека: введение в классическую и расширенную технику переполнения» . Wowhacker через Neworder. Архивировано из оригинала (текста) 18 августа 2007 г. {{cite journal}}: Для цитирования журнала требуется |journal= ( помощь )
  3. ^ Балабан, Мурат. «Раскрытие тайны о переполнении буфера» (текст) . Enderunix.org. {{cite journal}}: Для цитирования журнала требуется |journal= ( помощь )
  4. ^ Акритидис, П.; Маркатос, Евангелос П.; Полихронакис, М.; Анагностакис, Костас Д. (2005). «STRIDE: обнаружение полиморфных салазок посредством анализа последовательности инструкций» (PDF) . Материалы 20-й Международной конференции по информационной безопасности IFIP (IFIP/SEC 2005) . Международная конференция ИФИП по информационной безопасности. Архивировано из оригинала (PDF) 1 сентября 2012 г. Проверено 4 марта 2012 г.
  5. ^ Кляйн, Кристиан (сентябрь 2004 г.). «Переполнение буфера» (PDF) . Архивировано из оригинала (PDF) 28 сентября 2007 г. {{cite journal}}: Для цитирования журнала требуется |journal= ( помощь )
  6. ^ Акритидис, П.; Маркатос, Е.П.; Полихронакис, М.; Анагностакис, К. (2005). «STRIDE: обнаружение полиморфных салазок посредством анализа последовательности инструкций». Безопасность и конфиденциальность в эпоху повсеместных вычислений . ИФИП: Достижения в области информационных и коммуникационных технологий. Том. 181. С. 375–391. дои : 10.1007/0-387-25660-1_25 . ISBN  978-0-387-25658-0 . {{cite book}}: |journal= игнорируется ( помогите )
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 9f77fc231c43da09fa453f39fced1551__1679745000
URL1:https://arc.ask3.ru/arc/aa/9f/51/9f77fc231c43da09fa453f39fced1551.html
Заголовок, (Title) документа по адресу, URL1:
NOP slide - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)