Код оболочки


Код оболочки

Код оболочки

Код оболочки, шелл-код (англ. shellcode) — это двоичный исполняемый код, который обычно передаёт управление консоли, например '/bin/sh' Unix shell, command.com в MS-DOS и cmd.exe в операционных системах Microsoft Windows. Код оболочки может быть использован как полезная нагрузка эксплойта, обеспечивая взломщику доступ к командной оболочке (англ. shell) в компьютерной системе.

При эксплуатации удаленной уязвимости шелл-код может открывать заранее заданый порт TCP уязвимого компьютера, через который будет осуществляться дальнейший доступ к командной оболочке, такой код называется привязывающим к порту (англ. port binding shellcode). Если шелл-код осуществляет подключение к порту компьютера атакующего, что производится с целью обхода брандмауэра или NAT, то такой код называется обратной оболочкой (англ. reverse shell shellcode).

Содержание

Принцип работы

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

Обнаружение

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

Шелл-код почти всегда содержит строку с именем оболочки. Все входящие пакеты содержащие такую строку всегда рассматриваются как подозрительные в глазах СОВ. Также, некоторые приложения не принимают неалфавитно-цифровой ввод (они не принимают что-либо, кроме a-z, A-Z, 0-9, и несколько других символов.)

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

См. также

Ссылки


Wikimedia Foundation. 2010.

Смотреть что такое "Код оболочки" в других словарях:

  • Код консоли — Код оболочки, шелл код (англ. shellcode)  это двоичный исполняемый код, который обычно передаёт управление консоли, например /bin/sh Unix shell, command.com в операционных системах Microsoft Windows. Код оболочки может быть использован как… …   Википедия

  • оболочки категории 1 — (по ГОСТ 14254): Оболочки, в которых нормальная работа оборудования приводит к понижению давления внутри оболочки ниже внешнего давления; Источник …   Словарь-справочник терминов нормативно-технической документации

  • оболочки категории 2 — (по ГОСТ 14254): Оболочки, внутри которых давление равно внешнему давлению. Источник …   Словарь-справочник терминов нормативно-технической документации

  • Код степени защиты IP (International Protection) — 1. Буквенно цифровое обозначение, характеризующее защитные свойства корпуса (оболочки)  оборудования от проникновения в него посторонних предметов, пыли и воды и от контакта с электроопасными частями Употребляется в документе: ПТЭ 2002 (Часть 3)… …   Телекоммуникационный словарь

  • МКБ-10: Код K — Международная классификация болезней 10 го пересмотра (МКБ 10) Класс I Некоторые инфекционные и паразитарные болезни Класс II Новообразования Класс III Болезни крови, кроветворных органов и отдельные нарушения, вовлекающие иммунный механизм Класс …   Википедия

  • ГОСТ 14254-96: Степени защиты, обеспечиваемые оболочками (код IP) — Терминология ГОСТ 14254 96: Степени защиты, обеспечиваемые оболочками (код IP) оригинал документа: 3.6 Защита, обеспечиваемая оболочкой от доступа к опасным частям Защита людей от: контакта с токоведущими опасными частями, находящимися под низким …   Словарь-справочник терминов нормативно-технической документации

  • IP (степень защиты оболочки) — У термина IP существуют и другие значения, см. IP (значения). Для надёжной защиты от поражения электрическим током, соединение выполнено в герметично закрытой монтажной коробке степенью IP54 во избежание попадания брызг на токов …   Википедия

  • Шелл-код — (англ. shellcode, код запуска оболочки)  это двоичный исполняемый код, который обычно передаёт управление командному процессору, например /bin/sh в Unix shell, command.com в MS DOS и cmd.exe в операционных системах Microsoft Windows.… …   Википедия

  • МКБ-10: Код C — Международная классификация болезней 10 го пересмотра (МКБ 10) Класс I Некоторые инфекционные и паразитарные болезни Класс II Новообразования Класс III Болезни крови, кроветворных органов и отдельные нарушения, вовлекающие иммунный механизм Класс …   Википедия

  • МКБ-10: Код Y — Международная классификация болезней 10 го пересмотра (МКБ 10) Класс I Некоторые инфекционные и паразитарные болезни Класс II Новообразования Класс III Болезни крови, кроветворных органов и отдельные нарушения, вовлекающие иммунный механизм Класс …   Википедия

Книги