Цели эксплоитов

Копирование целей эксплоитов в вашем Metasploit модуле

 

Эксплоиты определяют список целей, которые включают в себя имя, номер, и опции. Количество целей определяется при запуске.

Пример целевого кода для эксплоит модуля:

Код целей эксплоитов
Dante

 

Блок целевых опций

 

Опции блока в пределах целевой секции, почти в свободной форме хоть есть некоторые специализированные имена опций.

Ret‘ сокращенный в target.ret()

Payload‘ перегружает эксплоиты в блок

 

Опции где вы храните опции цели. Для примера:

Возвращает адрес для цели Windows 2000.

500 байт заполнения необходимо дополнить для целей Windows XP

Windows Vista NX обход адресов

 

Доступ к целевой информации

 

Целевые ‘target‘ объекты внутри эксплоита, пользователи выбираются как цели и доступ в эксплоит как хеш.

target[‘padcount’]

target[‘Rets’][0]

target[‘Payload’][‘BadChars’]

target[‘opnum’]

 

Добавление и фиксация целей эксплоита

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

Определить тип возврата адреса необходимого вам. Это может быть просто ‘jmp esp‘, перепрыгивание к определенному регистру или ‘pop/pop/ret‘. Комментарии в коде эксплоита, могут помочь вам определить что необходимо.

Получение копии целевых бинарных файлов.

Использование msfpescan для обнаружения подходящего обратного адреса.

Режимы и опции msfpescan
Dante

 

Получение возврата адреса msfpescan

Если код эксплоита явно не указывает какой тип обратного адреса необходим, это является достаточным для того чтобы сказать вам имя dll для существующего эксплоита, вы можете узнать какой тип обратного адреса вам необходим. Давайте рассмотрим следующий пример, который обеспечивает обратный адрес для цели Windows 2000 SP0-SP4.

Возврат адреса для цели Windows 2000 SP0-SP4
Dante

 

Чтобы узнать, какой тип обратного адреса эксплоита используется в настоящее время, нам необходимо просто найти копию umpnpmgr.dll из машины Windows 2000 и запустить msfpescan с указанным адресом чтобы определить тип возвращаемого значения. В приведенном ниже примере, мы видим что этот эксплоит требует pop/pop/ret.

Определяем тип возврата адреса
Dante

 

Теперь нам просто необходимо захватить копию целевого dll и использовать msfpescan чтобы найти допустимый pop/pop/ret адрес для нас.

Находим допустимый адрес цели
Dante

 

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

Добавляем цель для эксплоита
Dante

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *