dotnetpaddingoracle
Небольшой скрипт для проверки уязвимости .NET веб-приложения к padding Oracle.
Данный скрипт фактически проверяет, присутствует ли оракул и можно ли его эксплуатировать, а не просто установлен ли патч.
использование
dotnetpaddingoracle.py [-h] [-t] [-b] [-d] [-s] [-p PARAMETER] Burp request file
Perform the padding Oracle attack on .NET web application
positional arguments:
Burp request file Request sample from Burp
optional arguments:
-h, --help show this help message and exit
-t, --test-vuln Test for the padding Oracle vulnerability
-b, --no-burp Disable Burp proxying
-d, --decrypt Decrypt
-s, --ssl use ssl transport
-p PARAMETER, --parameter PARAMETER
Parameter to use as Oracle
Несколько советов
- Убедитесь, что используете флаг 'ssl' в соответствующих случаях, так как это может привести к ложноотрицательным результатам.
- Проверка сертификатов теперь должна быть отключена повсеместно.
- Файл запроса Burp должен быть взят из Burp только с помощью функции "copy to file" (простой текстовый файл).
- Вообще говоря, флаг "-p" вам не нужен, так как скрипт в любом случае выбирает правильный параметр.
- По умолчанию скрипт будет пытаться подключиться через Burp (в целях отладки) через 127.0.0.1:8080 (значения можно изменить в скрипте mtools.py). Вы можете отключить это с помощью флага "-b".
Ограничения
- Скрипт, вероятно, не будет работать в системах Windows.
- Для корректной работы необходим как минимум Python 3.2 (или Python > 3.0 с модулем argparse).
- Он не выполняет шифрование (не хватило времени и тестовых данных), для этого вам всё ещё нужен padbuster. Однако скрипт предоставит вам нулевой IV (null IV) и корректный блок для использования с padbuster.