![]() |
Исследование IBM Rational AppScan
Исследование IBM Rational AppScan 7.7
О программе Продукт IBM Rational AppScan - это модуль для автоматического тестирования безопасности Web-приложений, который непрерывно в автоматическом режиме просматривает Web-приложения, проверяет их на наличие проблем с безопасностью и формирует пригодные для практического использования отчеты с рекомендациями по устранению проблем, чтобы упростить процесс внесения исправлений. IBM Rational AppScan Standard Edition предоставляет следующие возможности: * Поддержка базового уровня защищенности: включая защиту от угроз, определенных в классификации угроз WASC, например SQL-injection, XSS и переполнение буфера. * Широкий охват приложений: включает сканирование интегрированных Web-служб, а также выполнение и синтаксический анализ JavaScript (в том числе Ajax). Функции настройки и расширения: инфраструктура AppScan eXtension Framework позволяет сообществу пользователей совместно использовать и разрабатывать подключаемые модули с открытым исходным кодом. * Расширенные рекомендации по внесению исправлений: отображается исчерпывающий список задач, которые необходимо решить для устранения проблем, выявленных при сканировании. Автоматизированные функции для контроля вторжений: инструменты тестирования с расширенными функциями и инфраструктура Pyscan дополняют ручное тестирование, обеспечивая более высокий уровень эффективности и производительности. * Отчетность о соответствии нормативным требованиям: поставляемые в комплекте 40 отчетов о соответствии, в том числе стандарт безопасности данных PCI, ISO 17799 и ISO 27001, а также Basel II. Такая вот информация, от себя добавлю что это еще один сканер web-уязвимостей, требующий регистрации. Ну и конечно же программа работает с ограничениями и для всеобъемлющего сканирования нам потребуется полная лицензия. Приступим.. Подготовительный этап Скачаем программу Страница скачивания IBM AppScan 7.7 - Потребуется регистрация. прямые ссылки - AppScan 7.7.part1, AppScan 7.7.part2 и установим все обновления. После этого версия продукта будет иметь значение 7.7.738. На этом этапе может потребоваться лицензия. Пробную можно получить от самих разработчиков, причем бесплатно. Итак, считаем что лицензию, пусть и временную, мы получили. Заглянем в меню Help-License – видим, что лицензия Demo и имеются некоторые параметры, о значении которых мы смутно можем догадываться. Текстовый поиск по папке, куда все установлено, дает ответ - лицензия находится в папке License и имеет читабельный вид. Обращаем внимание на большое число, видимо это подпись файла. Теперь найдем ту библиотеку или приложение, что считывает данные этой лицензии. Для этого ищем текстовым поиском по всем файлам в папке куда все установлено, строку FIX_RECOMMENDATION_ALL. Находим такую в файле engine_control.dll. Грузим эту библиотеку в PEiD, сканируем плагином Kanal, последний выдает интересный результат – большие числа и не менее интересные функции в импорте. http://s41.radikal.ru/i094/0901/e4/896f0293040f.png Экспорт и импорт Engine_control.dll Загрузим библиотеку в дизассемблер. Будем использовать для этой цели IDA. После нескольких минут работы автоанализа видим - исследуемая библиотека содержит большое количество говорящих «имен». В импорте мы видим DSA_verify, это дает нам право считать, что та самая подпись файла лицензии основывается на алгоритме DSA. Код:
.idata:67BF65CC ; Imports from LIBEAY32.dllКод:
.text:67B88AE4 call DSA_verifyКод:
.text:67B892C8 call verify_signЗатем обратим внимание на экспорт, названия говорят сами за себя, например bool __thiscall LicenseEngine::isLicenseOk(enum LicenseVerifier). Поставим тут бряк [адрес 67B19280] (далее станет ясно что это «верхний» уровень обертки вокруг verify_sign). Но остается нерешенным вопрос – что должно быть в файле лицензии? Если обойти проверку подписи, то мы её просто проигнорируем, но содержимое нам не проигнорировать, так как оно активно используется для определения лимитов в работе (такие параметры как IP, сроки работы приложения и т.д.). Поэтому займемся сбором информации. Собираем свою лицензию Вспоминаем, что при установке есть возможность получить временную лицензию непосредственно от разработчиков. Получив один раз такую лицензию, рассмотрим её содержимое: Код:
ProductName=AppScanКод:
ProductName=AppScanМодификация engine_control.dll Теперь, когда лицензия готова, осталось внести изменения в библиотеку. Перейдем к адресу 67B88AF8 и заменим байт 17h на 00h. Код:
.text:67B88AF7 jnz short loc_67B88B10P.S. Если выглядит достойно, прошу перенести в статьи. Любая критика только приветствуется. |
молодец.)
|
Интересно, надо попробывать, тока прога прилично весит(
Почему в статьи не ушло?! |
Цитата:
отчего не в статьях не знаю, может мало материала, а может еще не засылалось в соответствующий раздел |
>> отчего не в статьях не знаю, может мало материала, а может еще не засылалось в соответствующий раздел
В статьи беспонту перемещать... Лучше чтобы тематические статьи были в тематических разделах, так хоть посещающий контингент будет читать. так что все ок, хоть есть шанс получить нормальные комментарии, а не нечто вроде "афтар маладец", "ничего не понял, но плюсег" и тому подобное. да и в "Статьях" нет градации по тематике, что не есть хорошо. |
AppScan 7.8
Hello Neprovad,
I've seen that in the new version 7.8 of this product steps to follow to get a valid license is not possible, IBM has included a new system and I can not figure out how to unlock, Thanks, |
Цитата:
|
тема не раскрыта - убрать листинги, картинки и т.д. от неё ничё не останется, смысл тогда? неподкованный человек ничего не черпнёт нового из неё, т.к. написано для среднего уровня. вообщем, совершенствуйся, ты можешь и лучше.
|
Цитата:
|
| Время: 09:43 |