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

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

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

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

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

Категории

Все категории
Loading categories
HTTPSignatures — Расширение Burp Suite, реализующее черновик спецификации Signing HTTP Messages (draft-ietf-httpbis-message-signatures-01). | Kitploit
Инструменты/GitHubGitHub/nccgroup/httpsignatures
Веб-прокси и перехватТестирование безопасности APIВеб-безопасностьКриптографияАутентификацияБезопасность API
GitHubnccgroup/httpsignatures

HTTPSignatures

Расширение Burp Suite, реализующее черновик спецификации Signing HTTP Messages (draft-ietf-httpbis-message-signatures-01).

Репозиторий
421064 лет назадПроверено Kitploit

Популярное

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

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

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

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

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

Расширение HTTPSignatures для Burp Suite

HTTPSignatures — это расширение Burp Suite, реализующее черновой документ спецификации Signing HTTP Messages draft-ietf-httpbis-message-signatures-01. Это позволяет пользователям Burp Suite беспрепятственно тестировать приложения, требующие HTTP-подписей (HTTP Signatures).

Возможности

  • Автоматически создаёт новую подпись и digest в Burp Repeater, Intruder и Scanner, когда расширение обнаруживает существующий заголовок HTTP Signature.
  • Поддерживает алгоритм rsa-sha256 для подписи сообщений (RSASSA-PKCS1-v1_5 [RFC8017] с использованием SHA-256 [RFC6234]) и SHA-256 для заголовка digest.
  • Расширение работает в Burp Suite Professional и в бесплатной Burp Suite Community Edition.

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

Установка

Скачайте последний JAR-релиз и добавьте его в Burp Suite через вкладку Extender / Extensions / Add.

Настройка

  1. После загрузки расширения в Burp будет добавлен новый пункт меню HTTP Signatures.
  2. Откройте вкладку конфигурации (нажмите на пункт меню HTTP Signatures).
  3. Минимальная конфигурация требует указания Header Name, keyId и Private key file name and path. Подробное описание приведено ниже.
  4. Теперь вы можете использовать Burp Proxy, Repeater, Intruder и Scanner. Расширение будет создавать новую подпись для каждого запроса, содержащего настроенный Header Name.

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

После правильной настройки HTTPSignatures расширение Burp Suite будет заменять значение HTTP-заголовка, указанное в настройке Header Name (например, Signature), новой подписью для каждого HTTP-запроса, отправляемого через Burp Proxy, Repeater, Intruder и Scanner.

HTTPSignatures Configuration

Документация

Расширение Burp Suite должно быть настроено перед использованием. Конфигурацию HTTPSignatures можно найти в меню Burp после его загрузки (обычно справа от меню Help). Для работы расширения необходимо правильно настроить Header Name, keyId и Private key file name and path. Остальные настройки можно при необходимости скорректировать.

  • Header Name: (примеры значений: Authorization, Signature): имя HTTP-заголовка запроса, содержащего подпись. В черновике IETF используется имя заголовка Signature. Oracle Cloud (OCI) использует имя заголовка Authorization.

  • keyId: параметр keyId — это строка в US-ASCII, используемая проверяющей стороной для идентификации и/или получения ключа проверки подписи. Примеры значений могут выглядеть как https://mastodon.example.com/users/myUser (для ActivityPub) или ocid1.tenancy.oc1.../ocid1.user.oc1.../{fingerprint} для OCI.

  • Private key file name and path: полный путь и имя файла, содержащего приватный ключ (например, /home/${USER}/private_key.pem).

  • Digest Header Name: имя заголовка, содержащего digest. Это должно быть либо x-content-sha256 (для OCI), либо digest для большинства других реализаций.

  • Header Names to Sign: GET: имена заголовков, включаемых в GET-запросы (например, date (request-target) host). Значение (request-target) — это специальный идентификатор, состоящий из метода запроса, пути и query-части URI запроса (например, get /foo?param=value).

  • Header Names to Sign: HEAD: имена заголовков, включаемых в HEAD-запросы (например, date (request-target) host).

  • Header Names to Sign: DELETE: имена заголовков, включаемых в DELETE-запросы (например, date (request-target) host).

  • Header Names to Sign: PUT: имена заголовков, включаемых в PUT-запросы (например, date (request-target) host content-length content-type digest).

  • Header Names to Sign: POST: имена заголовков, включаемых в POST-запросы (например, date (request-target) host content-length content-type digest).

  • Include query parameters in Signature: это логическое значение определяет, должны ли query-параметры (например, ?param=value) включаться в подпись. Хотя черновой стандарт определяет, что query-параметры являются частью идентификатора (request-target), не все реализации включают query-параметры. Значение по умолчанию: true.

  • Include the port in Signature: некоторые реализации не включают порт в заголовок host (например, localhost:8080). Эта настройка позволяет удалить порт из значения заголовка host, если установлено значение false. Значение по умолчанию: true.

Профили

Конфигурация HTTPSignatures позволяет настраивать несколько профилей на вкладках. Создайте новую вкладку, нажав на вкладку .... Вы можете переименовывать вкладки двойным щелчком по вкладке. Чтобы сохранить вкладку, нажмите кнопку "Save". Чтобы пометить вкладку как активный профиль, нажмите кнопку "Use this profile". Активная вкладка (профиль) помечена красным шрифтом и границей.

Глобальные параметры конфигурации

Раздел глобальной конфигурации содержит настройки, которые применяются ко всем профилям.

  • Enable the extension for the following Burp Suite tools: расширение можно включить или отключить для следующих инструментов Burp Suite:

    • Proxy (по умолчанию: отключено)
    • Scanner (по умолчанию: включено)
    • Intruder (по умолчанию: включено)
    • Repeater (по умолчанию: включено)

    Прокси по умолчанию отключен. Остальные инструменты включены по умолчанию. Инструмент Proxy обычно следует включать только при использовании функции перехвата (intercept). Расширение не будет обновлять подпись, когда оно отключено.

  • Enable Debug Logs: установка этого флажка выводит отладочные журналы в стандартный вывод. Вывод можно настроить в Burp Suite в разделе Extender -> Extensions, затем выберите расширение Signing HTTP Messages. На вкладке Output вы можете выбрать, где будет отображаться стандартный вывод. По умолчанию используется Shown in UI, где вывод отображается в самом Burp Suite.

Примеры конфигураций

ActivityPub

ActivityPub использует HTTP Signatures для аутентификации и авторизации между серверами.

  • Header Name: Signature
  • keyId: keyId должен ссылаться на актора, чтобы можно было получить поле publicKey: https://mastodon.online/users/viktor. Вы можете использовать curl для получения ключа: curl https://mastodon.online/users/viktor -H 'Accept: application/activity+json'|jq
  • Private key file name and path: /home/user/private_key.pem
  • Digest Header Name: digest
  • Header Names to Sign: GET: date (request-target) host
  • Header Names to Sign: HEAD: date (request-target) host
  • Header Names to Sign: DELETE: date (request-target) host
  • Header Names to Sign: PUT: date (request-target) host content-length content-type digest
  • Header Names to Sign: POST: date (request-target) host content-length content-type digest
  • Include query parameters in Signature: true
  • Include the port in Signature: true

Oracle Cloud Infrastructure (OCI)

Все API-запросы Oracle Cloud Infrastructure (OCI) требуют HTTP Signatures. Реализация основана на черновой спецификации с некоторыми изменениями.

  • Header Name: Authorization
  • keyId: <TENANCY OCID>/<USER OCID>/<KEY FINGERPRINT>, например: ocid1.tenancy.oc1..<unique_ID>/ocid1.user.oc1..<unique_ID>/<key_fingerprint>
  • Private key file name and path: /home/user/private_key.pem
  • Digest Header Name: x-content-sha256
  • Header Names to Sign: GET: date (request-target) host
  • Header Names to Sign: HEAD: date (request-target) host
  • Header Names to Sign: DELETE: date (request-target) host
  • Header Names to Sign: PUT: date (request-target) host content-length content-type x-content-sha256
  • Header Names to Sign: POST: date (request-target) host content-length content-type x-content-sha256
  • Include query parameters in Signature: true
  • Include the port in Signature: true

Сборка с помощью IntelliJ IDEA

  1. Клонируйте этот репозиторий и Open or Import папку HTTPSignatures в IntelliJ IDEA.
  2. Скомпилируйте проект (Build -> Build Project).
  3. Создайте JAR-файл для импорта в Burp Suite: перейдите в File -> Project Structure, выберите Project Settings -> Artifacts.
  4. Нажмите на знак «плюс», чтобы создать новый JAR-файл "From modules with dependencies", и нажмите OK.
  5. Установите флажок "Include in project build", чтобы автоматически создавать JAR-файл при сборке проекта, и нажмите OK.
  6. Соберите проект ещё раз (Ctrl+F9 или ⌘+F9).
  7. JAR-файл создаётся в папке проекта по пути out/artifacts/HTTPSignatures_jar/HTTPSignatures.jar.
  8. Загрузите JAR-файл в Burp через вкладку Extender -> Extensions -> Add.

Сборка из командной строки с помощью Maven

  1. Клонируйте этот репозиторий.
  2. Скомпилируйте проект и создайте JAR-файл командой mvn package assembly:single.
  3. JAR-файл создаётся в папке проекта по пути target/HTTPSignatures-1.0-SNAPSHOT-jar-with-dependencies.jar.
  4. Загрузите JAR-файл в Burp через вкладку Extender -> Extensions -> Add.

Зависимости

Для сборки Java-проекта требуются три зависимости:

  • Apache HttpClient (https://hc.apache.org/httpcomponents-client-ga/)
  • HTTP Signatures Java Client от Tomitribe (https://github.com/tomitribe/http-signatures-java)
  • Burp Extender API (https://github.com/PortSwigger/burp-extender-api)
Скачать инструмент