LIMB
Вход Регистрация

тема

Активная Разведка FortiWeb 2. Отключение защиты, просмотр траффика.

February · · 3 ответов · 854 просмотров

Всем Hi, с вами Февраль.
Это продолжение статьи, которая у меня выходила ранее.
Всем Hi, с вами Февраль.
Сегодня, я хочу поговорить про активную разведку внутри Fortiweb.
Не удалось прогрузить медиа
​
Предисловие.
Когда-то я сделал несколько публикаций. Среди них:
Маленький слив Fortiweb. – https://forum.LIMB.cc/threads/7575/
Раздача Fortiweb. – https://forum.LIMB.cc/threads/7797/


Уважаемый @cybergangster посоветовал мне развить эту тему, так что сегодня вы видите именно её.

Теория.

Для начала разберем: Что такое Fortiweb?
Fortiweb - это межсетевой экран для защиты веб-приложений и API (по-простому WAF) от компании Fortinet...
  • Не удалось прогрузить медиа
После активной разведки в FortiWeb, у большинства возник вопрос:
А что делать дальше?
Как эксплуатировать таргет и что мы можем сделать?

Эта статья – ответ на этот вопрос.

В этой статье будет новый таргет, так как после моей первой статьи, предыдущий таргет перестал работать.

Итак, мы в системе.

Проведя активную разведку я узнал что именно мы атакуем.
В этот раз у нас - Университет Маунт - Кения
Не удалось прогрузить медиа


Для того чтобы начать эксплуатацию, нужно найти уязвимости внутри самого сайта. В этом деле может помочь сканер, но FortiWeb активно блокирует любую его работу. Кроме того, любое подозрительное действие автоматически заносится в логи.

Так что перед началом эксплуатации мы с вами отключим все логи.

Отключение логов.

Сперва отключим логирование внутри Fortiweb.

Открываем терминал и вводим команду:
Code:
config log disk
Не удалось прогрузить медиа


Вывода нет, а это значит, что применены все настройки по умолчанию.

Теперь вводим команду:
set status disable
end
Не удалось прогрузить медиа


Теперь отключим логи FortiAnalyzer.
Code:
config log fortianalyzer-policy
set status disable
end
Не удалось прогрузить медиа


Не удалось прогрузить медиа



Отключение Защиты.

Теперь когда мы избавились от логов, можно выключать защиту на сайте для запуска сканера.
Не удалось прогрузить медиа



Вкратце про каждый пункт:
Antivirus - Проверяет файлы, которые пользователи пытаются загрузить на сайт через формы отправки.

IP Reputation - Блокирует запросы с известных ботнетов, прокси-серверов, Tor-узлов и так далее.

GEO DB - Карта соответствия IP-адресов конкретным странам. Позволяет заблокировать доступ к сайту из определенных регионов.

Fuzzy Web Shell DB - База веб-шеллов с нечетким поиском, позволяет находить вредоносные скрипты, в которых был изменён или обфусцирован код.

Теперь введём команду:
Code:
show server-policy policy
Эта команда покажет нам подключенные модули защиты.
В моём случае это:
Спойлер
FortiWeb # show server-policy policy



config server-policy policy



edit "FortiWeb"



set deployment-mode http-content-routing



set ssl enable



set vserver FortiWeb



set service HTTP



set web-protection-profile "New Inline Alert Only Profile"



set replacemsg Predefined



set https-service HTTPS



set certificate star.mku.ac.ke1



set intermediate-certificate-group 22



set ssl-custom-cipher ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA384 ECDHE-RSA-AES256-SHA384 ECDHE-ECDSA-AES128-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-RSA-AES256-SHA ECDHE-ECDSA-AES128-SHA ECDHE-RSA-AES128-SHA AES256-GCM-SHA384 AES128-GCM-SHA256 AES256-SHA256 AES128-SHA256



set http-to-https enable



set policy-id 14358589235088625150



config http-content-routing-list



edit 1



set content-routing-policy-name E-learning



set profile-inherit enable



next



edit 2



set content-routing-policy-name Distance



set profile-inherit enable



next



edit 3



set content-routing-policy-name "my life"



set profile-inherit enable



next



edit 5



set content-routing-policy-name Assessment



set profile-inherit enable



next



edit 6



set content-routing-policy-name Application



set profile-inherit enable



next



edit 7



set content-routing-policy-name Apply



set profile-inherit enable



next



edit 8



set content-routing-policy-name Associate



set profile-inherit enable



next



edit 9



set content-routing-policy-name Careers



set profile-inherit enable



next



edit 10



set content-routing-policy-name careers.mku.ac.ke



set profile-inherit enable



next



edit 11



set content-routing-policy-name elearning



set profile-inherit enable



next



edit 12



set content-routing-policy-name ERepository



set profile-inherit enable



next



edit 13



set content-routing-policy-name ERwanda



set profile-inherit enable



next



edit 14



set content-routing-policy-name feedback.mku.ac.ke



set profile-inherit enable



next



edit 15



set content-routing-policy-name "HRM External"



set profile-inherit enable



next



edit 16



set content-routing-policy-name "ICT Support"



set profile-inherit enable



next



edit 18



set content-routing-policy-name unipack



set profile-inherit enable



next



edit 19



set content-routing-policy-name "virtual Tour"



set profile-inherit enable



next



edit 20



set content-routing-policy-name Unipack



set profile-inherit enable



next



edit 21



set content-routing-policy-name "Unipac External"



set profile-inherit enable



next



edit 22



set content-routing-policy-name Unipac



set profile-inherit enable



next



edit 23



set content-routing-policy-name TPD



set profile-inherit enable



next



edit 25



set content-routing-policy-name "Staff Direct"



set profile-inherit enable



next



edit 26



set content-routing-policy-name "Staff External"



set profile-inherit enable



next



edit 27



set content-routing-policy-name "Staff Password Change"



set profile-inherit enable



next



edit 29



set content-routing-policy-name Student



set profile-inherit enable



next



edit 30



set content-routing-policy-name StudentPasswordChange



set profile-inherit enable



next



edit 31



set content-routing-policy-name studentemailreg



set profile-inherit enable



next



edit 32



set content-routing-policy-name MAIN



set profile-inherit enable



next



edit 34



set content-routing-policy-name "Nav External"



set profile-inherit enable



next



edit 35



set content-routing-policy-name "Password Change"



set profile-inherit enable



next



edit 36



set content-routing-policy-name "E- learning"



set profile-inherit enable



next



edit 37



set content-routing-policy-name Unifi



set profile-inherit enable



next



edit 38



set content-routing-policy-name Inventory



set profile-inherit enable



next



edit 39



set content-routing-policy-name join



set profile-inherit enable



next



edit 43



set content-routing-policy-name Elms



set profile-inherit enable



next



edit 44



set content-routing-policy-name Vlms



set profile-inherit enable



next



edit 45



set content-routing-policy-name Muwebapi



set profile-inherit enable



next



edit 46



set content-routing-policy-name Webapi



set profile-inherit enable



next



edit 47



set content-routing-policy-name ss



set profile-inherit enable



next



edit 48



set content-routing-policy-name services



set profile-inherit enable



next



edit 49



set content-routing-policy-name rights



set profile-inherit enable



next



edit 50



set content-routing-policy-name login



set profile-inherit enable



next



edit 51



set content-routing-policy-name hostel



set profile-inherit enable



next



edit 52



set content-routing-policy-name home



set profile-inherit enable



next



edit 53



set content-routing-policy-name helpdesk



set profile-inherit enable



next



edit 54



set content-routing-policy-name handlers



set profile-inherit enable



next



edit 55



set content-routing-policy-name fees



set profile-inherit enable



next



edit 56



set content-routing-policy-name academic



set profile-inherit enable



next



edit 57



set content-routing-policy-name exam



set profile-inherit enable



next



edit 58



set content-routing-policy-name event



set profile-inherit enable



next



edit 59



set content-routing-policy-name admin



set profile-inherit enable



next



edit 60



set content-routing-policy-name emp



set profile-inherit enable



next



edit 61



set content-routing-policy-name admission



set profile-inherit enable



next



edit 62



set content-routing-policy-name crm



set profile-inherit enable



next



edit 63



set content-routing-policy-name assets



set profile-inherit enable



next



edit 64



set content-routing-policy-name budget



set profile-inherit enable



next



edit 65



set content-routing-policy-name cdn



set profile-inherit enable



next



edit 66



set content-routing-policy-name dist



set profile-inherit enable



next



edit 70



set content-routing-policy-name catalogue



set profile-inherit enable



next



edit 41



set content-routing-policy-name Ras



set profile-inherit enable



next



edit 42



set content-routing-policy-name Das



set profile-inherit enable



next



edit 67



set content-routing-policy-name "Past Exams"



set profile-inherit enable



next



edit 68



set content-routing-policy-name Payroll



set profile-inherit enable



next



edit 40



set content-routing-policy-name oes



set profile-inherit enable



next



edit 69



set content-routing-policy-name shahada



set profile-inherit enable



next



edit 71



set content-routing-policy-name TTCG



set profile-inherit enable



next



edit 72



set content-routing-policy-name "Student Portal"



set profile-inherit enable



next



edit 73



set content-routing-policy-name elimu



set profile-inherit enable



next



edit 74



set content-routing-policy-name kahawa



set profile-inherit enable



next



edit 75



set content-routing-policy-name Dashboard



set profile-inherit enable



next



edit 17



set content-routing-policy-name info



set profile-inherit enable



next



edit 76



set content-routing-policy-name vms



set profile-inherit enable



next



edit 77



set content-routing-policy-name Recruitment



set profile-inherit enable



next



edit 78



set content-routing-policy-name Students



set profile-inherit enable



next



edit 4



set content-routing-policy-name rdxpjkazw



set profile-inherit enable



next



edit 33



set content-routing-policy-name OPAC



set profile-inherit enable



next



edit 79



set content-routing-policy-name catalog



set profile-inherit enable



next



edit 81



set content-routing-policy-name fakari



set profile-inherit enable



next



edit 80



set content-routing-policy-name Home-Rwanda



set profile-inherit enable



next



edit 82



set content-routing-policy-name Crm-Rwanda



set profile-inherit enable



next



edit 83



set content-routing-policy-name login-Rwanda



set profile-inherit enable



next



edit 84



set content-routing-policy-name ichat



set profile-inherit enable



next



edit 85



set content-routing-policy-name ulearn.mku.ac.ke



set profile-inherit enable



next



edit 24



set content-routing-policy-name studentportal



set profile-inherit enable



next



edit 28



set content-routing-policy-name Portal



set profile-inherit enable



next



end



set tlog enable



next



edit "FortiWeb-1"



set deployment-mode http-content-routing



set ssl enable



set vserver FortiWeb-1



set service HTTP



set web-protection-profile "New Inline Alert Only Profile"



set replacemsg Predefined



set https-service HTTPS



set certificate certificate



set intermediate-certificate-group MKUR.ac.rw



set ssl-custom-cipher ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA384 ECDHE-RSA-AES256-SHA384 ECDHE-ECDSA-AES128-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-RSA-AES256-SHA ECDHE-ECDSA-AES128-SHA ECDHE-RSA-AES128-SHA AES256-GCM-SHA384 AES128-GCM-SHA256 AES256-SHA256 AES128-SHA256



set http-to-https enable



set policy-id 2053259034471250235



config http-content-routing-list



edit 1



set content-routing-policy-name Vlms-Rwanda



set profile-inherit enable



next



edit 2



set content-routing-policy-name Academic-rwanda



set profile-inherit enable



next



edit 3



set content-routing-policy-name Admin-Rwanda



set profile-inherit enable



next



edit 4



set content-routing-policy-name Admission-Rwanda



set profile-inherit enable



next



edit 5



set content-routing-policy-name Assets-Rwanda



set profile-inherit enable



next



edit 6



set content-routing-policy-name budget-Rwanda



set profile-inherit enable



next



edit 7



set content-routing-policy-name Cdn-Rwanda



set profile-inherit enable



next



edit 8



set content-routing-policy-name Crm-Rwanda



set profile-inherit enable



next



edit 9



set content-routing-policy-name Emp-Rwanda



set profile-inherit enable



next



edit 10



set content-routing-policy-name Event-Rwanda



set profile-inherit enable



next



edit 11



set content-routing-policy-name Exam-Rwanda



set profile-inherit enable



next



edit 12



set content-routing-policy-name Fees-Rwanda



set profile-inherit enable



next



edit 13



set content-routing-policy-name Handlers-Rwanda



set profile-inherit enable



next



edit 14



set content-routing-policy-name Helpdesk-Rwanda



set profile-inherit enable



next



edit 15



set content-routing-policy-name Home-Rwanda



set profile-inherit enable



next



edit 16



set content-routing-policy-name Hostel-Rwanda



set profile-inherit enable



next



edit 17



set content-routing-policy-name library-Rwanda



set profile-inherit enable



next



edit 18



set content-routing-policy-name login-Rwanda



set profile-inherit enable



next



edit 19



set content-routing-policy-name Right-Rwanda



set profile-inherit enable



next



edit 20



set content-routing-policy-name Service-Rwanda



set profile-inherit enable



next



edit 21



set content-routing-policy-name ss-Rwanda



set profile-inherit enable



next



edit 22



set content-routing-policy-name Student-Rwanda



set profile-inherit enable



next



edit 23



set content-routing-policy-name Webapi-Rwanda



set profile-inherit enable



next



edit 24



set content-routing-policy-name Muwebapi-Rwanda



set profile-inherit enable



next



edit 25



set content-routing-policy-name Payroll-Rwanda



set profile-inherit enable



next



end



set tlog enable



next



edit "FortiWeb-3"



set deployment-mode http-content-routing



set ssl enable



set vserver FortiWeb



set service HTTP-custom



set web-protection-profile "New Inline Alert Only Profile"



set replacemsg Predefined



set https-service HTTPS-custom



set certificate star.mku.ac.ke1



set intermediate-certificate-group 22



set ssl-custom-cipher ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES256-SHA384 ECDHE-RSA-AES256-SHA384 ECDHE-ECDSA-AES128-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-ECDSA-AES256-SHA ECDHE-RSA-AES256-SHA ECDHE-ECDSA-AES128-SHA ECDHE-RSA-AES128-SHA AES256-GCM-SHA384 AES128-GCM-SHA256 AES256-SHA256 AES128-SHA256



set http-to-https enable



set policy-id 12842341736497287398



config http-content-routing-list



edit 1



set content-routing-policy-name ichat



set profile-inherit enable



next



end



set tlog enable



next



end

Теперь мы увидели ещё несколько защитных модулей, а именно:
Signature Rule (WAF) - параметр отвечающий за блокировку: SQLi, XSS, RCE и OS Command Injection.

Syntax-Based Attack Detection – модуль который использует парсеры кода для анализа синтаксиса, ищет аномалии в структуре запроса

Bot Mitigation Policy – политика которая отвечает за выявление автоматизированных скриптов, парсеров и сканеров

HTTP Protocol Parameter Restriction - Этот модуль следит за строгим соответствием запросов стандартам RFC

Custom Access Policy - Это правила которые создавали вручную под специфику конкретного сайта или приложения. (например, разрешить доступ к админ-панели)

Для успешной работы сканера, нам нужно отключить всего 2 модуля. А именно IP-Reputation и Bot Mitigation Policy, хотя конечно отключить можно всё сразу, но это может вызвать проблемы.

Теперь введём команду:
Code:
config waf web-protection-profile inline-protection
show
Спойлер
FortiWeb (inline-protect~o) # show



config waf web-protection-profile inline-protection



edit "Inline Standard Protection"



set signature-rule "Standard Protection"



set file-upload-policy WebShell-Uploading



set webshell-detection-policy WebShell-Uploading



set redirect-url http://



set custom-access-policy "Predefined - Advanced Protection"



set ip-intelligence enable



set token-header ""



set bot-mitigate-policy "Predefined - Bot Mitigation"



next



edit "Inline Extended Protection"



set signature-rule "Extended Protection"



set file-upload-policy WebShell-Uploading



set webshell-detection-policy WebShell-Uploading



set http-protocol-parameter-restriction "Extended Protection"



set redirect-url http://



set custom-access-policy "Predefined - Advanced Protection"



set ip-intelligence enable



set token-header ""



set bot-mitigate-policy "Predefined - Bot Mitigation"



set syntax-based-attack-detection "Extended Protection"



next



edit "Inline Alert Only"



set signature-rule "Alert Only"



set file-upload-policy WebShell-Uploading



set webshell-detection-policy WebShell-Uploading



set redirect-url http://



set custom-access-policy "Predefined - Advanced Protection - Alert Only"



set ip-intelligence enable



set token-header ""



set bot-mitigate-policy "Predefined - Bot Mitigation - Alert Only"



set syntax-based-attack-detection "Alert Only"



next



edit "Inline Exchange 2013"



set signature-rule "Exchange 2013"



set http-protocol-parameter-restriction "Exchange 2013"



set redirect-url http://



set application-layer-dos-prevention Predefined



set ip-intelligence enable



set token-header ""



next



edit "Inline Exchange 2016"



set signature-rule "Exchange 2016"



set http-protocol-parameter-restriction "Exchange 2016"



set redirect-url http://



set application-layer-dos-prevention Predefined



set ip-intelligence enable



set token-header ""



next



edit "Inline Exchange 2019"



set signature-rule "Exchange 2019"



set http-protocol-parameter-restriction "Exchange 2019"



set redirect-url http://



set application-layer-dos-prevention Predefined



set ip-intelligence enable



set token-header ""



next



edit "Inline SharePoint 2013"



set signature-rule "SharePoint 2013"



set http-protocol-parameter-restriction "SharePoint 2013"



set redirect-url http://



set application-layer-dos-prevention Predefined



set ip-intelligence enable



set token-header ""



next



edit "Inline SharePoint 2016"



set signature-rule "SharePoint 2016"



set http-protocol-parameter-restriction "SharePoint 2016"



set redirect-url http://



set application-layer-dos-prevention Predefined



set ip-intelligence enable



set token-header ""



next



edit "Inline WordPress"



set signature-rule WordPress



set http-protocol-parameter-restriction WordPress



set redirect-url http://



set application-layer-dos-prevention Predefined



set ip-intelligence enable



set token-header ""



next



edit "Inline Drupal"



set signature-rule Drupal



set http-protocol-parameter-restriction Drupal



set redirect-url http://



set application-layer-dos-prevention Predefined



set ip-intelligence enable



set token-header ""



next



edit "New Inline Alert Only Profile"



set signature-rule "Alert Only"



set url-rewrite-policy "URL Rewriting"



set redirect-url http://



set ip-list-policy "Block IP List"



set custom-access-policy "Predefined - Advanced Protection - Alert Only"



set profile-id 2123968337818311337



set syntax-based-attack-detection "Alert Only"



next



edit "Rewrite policy test"



set url-rewrite-policy "URL Rewriting"



set ip-intelligence enable



set profile-id 12799622772614077210



next



edit "RedirectShahadaTesting"



set url-rewrite-policy "URL Rewriting"



set ip-intelligence enable



set profile-id 1770198586133713303



set comment testing



next



edit "Bots Protection Pofile"



set signature-rule "Standard Protection"



set url-rewrite-policy "URL Rewriting"



set ip-list-policy "Block IP List"



set ip-intelligence enable



set profile-id 4587950094127952052



set fortigate-quarantined-ips enable



next



edit "Predefined - Advanced Protection"



set profile-id 4312265617817702077



next



end


Отсюда мы чётко видим что в данный момент используеться "New Inline Alert Only Profile"
Так что нам нужно менять именно эту политику.
Не удалось прогрузить медиа

Code:
edit "New Inline Alert Only Profile"
unset ip-list-policy
next
end
Не удалось прогрузить медиа


Мы так-же можем отключить IP Reputation через dashboard.
Для этого нужно перейти сюда - 
Code:
https://target/root/waf/ip-reputation/ip-reputation-policy
Не удалось прогрузить медиа

После этого вы можете запускать сканер и эксплуатировать найденные уязвимости.

Бонус - cмотрим траффик.
По сути нужны только 2 команды:
Code:
diagnose debug application logd 7
diagnose debug enable

Первая команда включает 7(максимальный) уровень логирования http/https траффика.
А вторая включает вывод отладочных сообщений в консоль.

Не удалось прогрузить медиа


Для того что бы получать больше информации, мы можем включить http only.
Для этого нужно зайти сюда:

Code:
https://target/root/policy/server-policy
Не удалось прогрузить медиа


Выбираем любой из серверов, и после этого ставим http для https service, и убираем Redirect HTTP to HTTPS.
Не удалось прогрузить медиа


После этого траффик пошёл в http виде.
Не удалось прогрузить медиа



Заключение.
Отвечая на вопросы, которые я оставил выше:
Что делать дальше?
Эксплуатировать, сканировать и искать больше уязвимостей.
Как можно эксплуатировать?
Вариантов много: можно попробовать реализовать RCE и установить майнер, а можно превратить FortiWeb в собственный IP-logger.
Также существует вероятность перехвата данных банковских карт (если вам очень повезёт).
Made by February. All rights reserved (c).
👍79 ❤️26 🔥9 😁13 👏8 😢14
интересная статья ,так держать
👍2
оч ждал стейк с кровью от тебя по отключению WAF и дальнейшим мувам, благодарю! жаль не хвататет для просмотра по добыче фортика 1 реакции :(
👍3
+

Гостевой просмотр. Чтобы отвечать и ставить реакции, войдите или зарегистрируйтесь.