Код консоли


Код консоли

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

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

Содержание

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

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

Обнаружение

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

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

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

См. также

Ссылки


Wikimedia Foundation. 2010.

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

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

  • Код Konami — Последовательность нажатия кнопок, составляющая Konami Code Код Konami (Konami Command (яп. コナミコマンド Конами Командо …   Википедия

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

  • Чит-код — В этой статье не хватает ссылок на источники информации. Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена. Вы можете …   Википедия

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

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

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

  • Call of Duty: Modern Warfare 2 — Разработчик Infinity Ward …   Википедия

  • Battlefield 3 — Российская обложка расширенного издания игры Разработчик …   Википедия

  • Sony PlayStation Portable — PlayStation Portable Производитель Тип Портативная игровая система Поколение …   Википедия