Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
forbidden — Обход 4xx HTTP response status codes и другое. Инструмент основан на Python Requests, PycURL и HTTP Client. | Kitploit
Инструменты/GitHubGitHub/ivan-sincek/forbidden
Сканеры уязвимостейОбход IDS/IPSЭксплуатация веб-приложенийСбор информацииОбход WAFВеб-безопасностьФаззингТестирование на Проникновение
GitHubivan-sincek/forbidden

forbidden

Обход 4xx HTTP response status codes и другое. Инструмент основан на Python Requests, PycURL и HTTP Client.

Репозиторий
257481301 год назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Forbidden

Обход кодов состояния HTTP 4xx и не только.

Инструмент основан на Python Requests, PycURL и HTTP Client.

Протестировано на Kali Linux v2024.2 (64-bit).

Сделано в образовательных целях. Надеюсь, это поможет!

Планы на будущее:

  • Добавить опцию silent для подавления вывода в консоль.
  • Добавить опцию no color для отключения цветного вывода в консоль.
  • Добавить тесты для «hop-by-hop» заголовков HTTP-запросов.
  • Добавить тесты для заголовка HTTP-запроса User-Agent.
  • Добавить тесты для HTTP-куки.
  • Добавить тесты для HTTP-смаглинга.
  • Добавить тесты для CRLF.
  • Добавить тесты для Log4j.
  • Добавить тесты для AWS metadata SSRF.

Содержание

  • How to Install
    • Install PycURL
    • Standard Install
    • Build and Install From the Source
  • How to Use
  • Tests
    • HTTP Methods
    • HTTP Request Headers
  • Results
  • Usage
  • Images

Установка

Установка PycURL

В Kali Linux это должно работать без проблем; в противном случае выполните:

apt-get -y install libcurl4-gnutls-dev librtmp-dev

pip3 install --upgrade pycurl

PycURL на Windows не поддерживается.


На macOS выполните:

brew uninstall curl
brew uninstall openssl

brew install curl
brew install openssl

echo 'export PATH="/opt/homebrew/opt/curl/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/opt/homebrew/opt/openssl@3/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

export LDFLAGS="-L/opt/homebrew/opt/curl/lib"
export CPPFLAGS="-I/opt/homebrew/opt/curl/include"
export PYCURL_SSL_LIBRARY=openssl

pip3 install --no-cache-dir --compile --ignore-installed --config-setting="--with-openssl=" --config-setting="--openssl-dir=/opt/homebrew/opt/openssl@3" pycurl

Также можно установить через Homebrew (не поддерживается мной):

brew install forbidden

Стандартная установка

pip3 install --upgrade forbidden

Сборка и установка из исходников

git clone https://github.com/ivan-sincek/forbidden && cd forbidden

python3 -m pip install --upgrade build

python3 -m build

python3 -m pip install dist/forbidden-13.4-py3-none-any.whl

Использование

Обход кода состояния HTTP 403 Forbidden:

forbidden -u https://example.com/admin -t protocols,methods,uploads,overrides,headers,paths-ram,encodings -f GET -l initial,path -o forbidden_403_results.json

Обход кода состояния HTTP 403 Forbidden с нагрузочным тестированием:

mkdir stresser_403_results

stresser -u https://example.com/admin -r 1000 -th 200 -f GET -l initial -dir stresser_403_results -o stresser_403_results.json

Обход кода состояния HTTP 401 Unauthorized:

forbidden -u https://example.com/admin -t auths -f GET -l initial -o forbidden_401_results.json

Тест на открытые редиректы и сломанные парсеры URL, т.е. проверка out-of-band (OOB) взаимодействий:

forbidden -u https://example.com/admin -t redirects,parsers -f GET -l initial -e xyz.interact.sh -o forbidden_oob_results.json

Тесты

protocols

  • Проверка протоколов HTTP и HTTPS с использованием IP-адреса и доменного имени.
  • Проверка понижения протокола до HTTP/1.0 без заголовка Host HTTP-запроса, с использованием IP-адреса и доменного имени.

methods

  • Проверка разрешённых HTTP-методов, также с использованием заголовка Content-Length: 0.
  • Проверка Cross-Site Tracing (XST) с помощью методов TRACE и TRACK.

uploads

  • Проверка рекурсивной загрузки текстового файла для каждой директории в пути URL методом PUT.

overrides

  • Проверка переопределения HTTP-метода через параметры строки запроса URL, заголовки HTTP-запроса и тело запроса.
  • Проверка переопределения схемы URL через заголовки HTTP-запроса (с HTTPS на HTTP и с HTTP на HTTPS).
  • Проверка переопределения порта через заголовки HTTP-запроса.
  • Проверка переопределения хоста HTTP через заголовки HTTP-запроса, а также с использованием двух заголовков Host.
  • Проверка переопределения пути URL через заголовки HTTP-запроса с относительными путями URL, используя следующие URL: доступный URL, корневой URL и полный URL.

headers

  • Проверка заголовков HTTP-запроса с IP-адресами, разделёнными запятыми IP-адресами, доменными именами, корневыми URL, полными URL и т.д.

values

  • Проверка заголовков HTTP-запроса с IP-адресами, доменными именами, корневыми URL и полными URL, переданными пользователем.

paths

  • Проверка обхода путей URL.

encodings

  • Проверка преобразований и кодировок хоста и пути URL.

auths

  • Проверка базовой аутентификации/авторизации через заголовки HTTP-запроса с пустыми значениями и предопределёнными Base64-закодированными учётными данными.
  • Проверка Bearer-аутентификации/авторизации через заголовки HTTP-запроса с пустыми значениями, некорректными JWT и предопределёнными JWT.

redirects

  • Проверка открытых редиректов через заголовки HTTP-запроса с IP-адресами, доменными именами, корневыми URL и полными URL для перенаправления.

parsers

  • Проверка сломанных парсеров URL через заголовки HTTP-запроса с некорректными IP-адресами, доменными именами, корневыми URL и полными URL.

Если вас интересуют дополнительные детали, смотрите:

  • /src/forbidden/utils/forbidden.py
  • /src/forbidden/utils/test.py
  • /src/forbidden/utils/value.py

Замечания:

  • Все тесты основаны на публичных отчётах infosec и bug bounty.
  • Некоторые тесты пересекаются; однако перед отправкой применяется уникальный фильтр.
  • Все заголовки HTTP-запроса, параметры строки запроса URL и т.д. были проверены в соответствии с официальной документацией.
  • По умолчанию и Forbidden, и Stresser используют движок Python Requests.
  • Тест понижения протокола до HTTP/1.0 без заголовка Host привязан к движку HTTP Client. Кроме того, указанная команда cURL не будет работать корректно, потому что cURL не позволяет удалить заголовок Host.
  • Тест переопределения хоста HTTP с двумя заголовками Host привязан к движку Python Requests. Кроме того, указанная команда cURL не будет работать корректно, потому что cURL не позволяет использовать два заголовка Host.
  • Тест преобразований и кодировок хоста и пути URL привязан к движку PycURL.
  • Некоторые веб-прокси могут нормализовывать URL (например, при тестировании encodings), изменять HTTP-запросы или полностью отбрасывать их.
  • Некоторые сайты могут требовать валидный или очень специфический заголовок User-Agent.
  • Cross-Site Tracing (XST) больше не считается уязвимостью.
  • Остерегайтесь ограничения частоты запросов и других подобных антибот-защит; делайте паузу перед повторным запуском инструмента на том же домене.

HTTP-методы

Это лишь краткий обзор того, что используется, но не того, как используется.

ACL
ARBITRARY
BASELINE-CONTROL
BIND
CHECKIN
CHECKOUT
CONNECT
COPY
DELETE
GET
HEAD
INDEX
LABEL
LINK
LOCK
MERGE
MKACTIVITY
MKCALENDAR
MKCOL
MKREDIRECTREF
MKWORKSPACE
MOVE
OPTIONS
ORDERPATCH
PATCH
POST
PRI
PROPFIND
PROPPATCH
PUT
REBIND
REPORT
SEARCH
SHOWMETHOD
SPACEJUMP
TEXTSEARCH
TRACE
TRACK
UNBIND
UNCHECKOUT
UNLINK
UNLOCK
UPDATE
UPDATEREDIRECTREF
VERSION-CONTROL

Заголовки HTTP-запросов

Это лишь краткий обзор того, что используется, но не того, как используется.

Скачать инструмент