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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/corazawaf/coraza
Оборонительные ИнструментыСканеры уязвимостейОбход IDS/IPSЭксплуатация веб-приложенийТестирование безопасности APIОбход WAFВеб-безопасностьНеправильная КонфигурацияОбучение и ОбразованиеБезопасность API
GitHubcorazawaf/coraza
3.7k35164 дней назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →

coraza

Go-библиотека для межсетевого экрана веб-приложений (WAF), совместимая с правилами ModSecurity SecLang и OWASP Core Rule Set v4, обеспечивающая проверку HTTP-трафика в реальном времени и блокировку атак для веб-приложений и API.

РепозиторийСайт
Поделиться

  Coraza - Брандмауэр веб-приложений

Regression Tests Coreruleset Compatibility CodeQL codecov Project Status: Active – The project has reached a stable, usable state and is being actively developed.

OWASP Production Project
GoDoc

Coraza — это брандмауэр веб-приложений (WAF) с открытым исходным кодом, корпоративного уровня и высокой производительностью, готовый защитить ваши любимые приложения. Он написан на Go, поддерживает наборы правил ModSecurity SecLang и на 100% совместим с OWASP Core Rule Set v4.

  • Веб-сайт: https://coraza.io
  • Форум: Github Discussions
  • Сообщество OWASP Slack (#coraza): https://owasp.org/slack/invite
  • Тестирование правил: Coraza Playground

Ключевые особенности:

  • ⇲ Бесшовная замена — Coraza — это альтернативный движок, который частично совместим с TrustwaveOWASP ModSecurity Engine и поддерживает отраслевые наборы правил SecLang.

  • 🔥 Безопасность — Coraza запускает OWASP CRS v4 (ранее известный как Core Rule Set) для защиты ваших веб-приложений от широкого спектра атак, включая OWASP Top Ten, с минимальным количеством ложных срабатываний. CRS защищает от многих распространённых категорий атак, включая: SQL-инъекции (SQLi), межсайтовый скриптинг (XSS), инъекции кода PHP и Java, HTTPoxy, Shellshock, обнаружение скриптов/сканеров/ботов, утечки метаданных и ошибок. Обратите внимание, что более старые версии CRS несовместимы.

  • 🔌 Расширяемость — Coraza по своей сути является библиотекой, имеющей множество интеграций для развёртывания локальных экземпляров брандмауэра веб-приложений. Журналы аудита, механизмы сохранения состояния, операторы, действия — создавайте собственные функции, чтобы расширять Coraza по своему усмотрению.

  • 🚀 Производительность — От огромных веб-сайтов до маленьких блогов — Coraza справляется с нагрузкой с минимальным влиянием на производительность. Ознакомьтесь с нашими тестами производительности

  • ﹡ Простота — Любой может понять и изменить исходный код Coraza. Легко расширять Coraza новыми функциями.

  • 💬 Сообщество — Coraza — это проект сообщества, принимаются вклады и все идеи будут рассмотрены. Руководство для участников можно найти в документе CONTRIBUTION.


Интеграции

Проект Coraza поддерживает реализации и плагины для следующих серверов:

  • Плагин для обратного прокси-сервера и веб-сервера Caddy — стабильный, требуется мейнтейнер
  • Расширение Proxy WASM для прокси с поддержкой proxy-wasm (например, Envoy) — стабильное, всё ещё в разработке
  • Плагин HAProxy SPOE — экспериментальный
  • Библиотека Coraza на C (для nginx и др.) — экспериментальная
  • RuiQi WAF — веб-панель управления и расширенный контроль трафика для Coraza SPOA — экспериментальный

Предварительные требования

  • Недавняя версия Go (см. go.mod) или компилятор tinygo.
  • Дистрибутив Linux (рекомендуется Debian или CentOS), Windows или Mac.

Использование ядра Coraza

Coraza можно использовать как библиотеку для вашей программы на Go для реализации промежуточного ПО безопасности или интеграции с существующими приложениями и веб-серверами.

root@kitploit:~
package main

import (
	"fmt"

	"github.com/corazawaf/coraza/v3"
)

func main() {
	// First we initialize our waf and our seclang parser
	waf, err := coraza.NewWAF(coraza.NewWAFConfig().
		WithDirectives(`SecRule REMOTE_ADDR "@rx .*" "id:1,phase:1,deny,status:403"`))
	// Now we parse our rules
	if err != nil {
		fmt.Println(err)
	}

	// Then we create a transaction and assign some variables
	tx := waf.NewTransaction()
	defer func() {
		tx.ProcessLogging()
		tx.Close()
	}()
	tx.ProcessConnection("127.0.0.1", 8080, "127.0.0.1", 12345)

	// Finally we process the request headers phase, which may return an interruption
	if it := tx.ProcessRequestHeaders(); it != nil {
		fmt.Printf("Transaction was interrupted with status %d\n", it.Status)
	}
}

Examples/http-server содержит пример для практики с Coraza.

Теги сборки

Теги сборки Go позволяют изменять определённую функциональность во время компиляции. Они предназначены только для продвинутых сценариев использования и не имеют гарантий совместимости между минорными версиями — используйте с осторожностью.

  • coraza.disabled_operators.* — исключает указанный оператор из компиляции. Особенно полезно при переопределении оператора с помощью plugins.RegisterOperator для уменьшения размера бинарного файла / времени запуска.
  • coraza.rule.multiphase_evaluation — включает оценку переменных правил в тех фазах, в которых они готовы, а не только в фазе, для которой правило определено.
  • coraza.no_memoize — отключает мемоизацию по умолчанию для сборщиков регулярных выражений и aho-corasick. Мемоизация включена по умолчанию и использует глобальный кэш для повторного использования скомпилированных шаблонов между экземплярами WAF, снижая потребление памяти и время запуска. В долгоживущих процессах, выполняющих горячую перезагрузку, используйте WAF.Close() (через experimental.WAFCloser) для освобождения кэшированных записей при уничтожении WAF, или используйте этот тег, чтобы полностью отказаться от мемоизации.
  • no_fs_access — указывает, что целевая среда не имеет доступа к файловой системе, чтобы не использовать функциональность, связанную с файловой системой ОС, например, буферы тела файла.
  • coraza.rule.case_sensitive_args_keys — включает чувствительное к регистру сопоставление для ключей ARGS, приводя поведение Coraza в соответствие со спецификацией RFC 3986. Будет включено по умолчанию в следующей основной версии.
  • coraza.rule.no_regex_multiline — отключает включение по умолчанию многострочных модификаторов регулярных выражений в операторе @rx. Это соответствует ожидаемому поведению CRS, уменьшает количество ложных срабатываний и может улучшить производительность. По умолчанию многострочные регулярные выражения будут отключены в следующей основной версии. Для получения дополнительной информации см. этот PR.
  • coraza.rule.mandatory_rule_id_check — включает строгую проверку идентификаторов правил, где действие id требуется для всех SecRule/SecAction.
  • coraza.rule.rx_prefilter — устанавливает значение по умолчанию директивы SecRxPreFilter в On. Оптимизирует оператор @rx, пропуская полное регулярное выражение, когда ввод не может совпасть. Этот тег сборки предназначен только для целей тестирования; полагайтесь на директиву SecRxPreFilter для конфигурации времени выполнения и более подробной документации по этой функции.

E2E-тестирование

http/e2e/ предоставляет утилиту для запуска e2e-тестов. Её можно использовать отдельно для своего собственного развёртывания WAF:

root@kitploit:~
go run github.com/corazawaf/coraza/v3/http/e2e/cmd/httpe2e@main --proxy-hostport localhost:8080 --httpbin-hostport localhost:8081

или как библиотеку, импортируя:

root@kitploit:~
"github.com/corazawaf/coraza/v3/http/e2e"

В качестве примера использования библиотеки смотрите testing/e2e/e2e_test.go. Ожидаемые директивы, которые необходимо загрузить, и доступные флаги можно найти в http/e2e/cmd/httpe2e/main.go.

Инструменты

  • Go FTW: Движок тестирования правил
  • Coraza Playground: Веб-интерфейс для тестирования правил в песочнице
  • OWASP Core Ruleset: Отличный набор правил, совместимый с Coraza

Разработка

Coraza требует только Go для разработки. Вы можете запустить mage.go для выполнения команд разработки.

Список команд:

root@kitploit:~
$ go run mage.go -l
Targets:
  check        runs lint and tests.
  coverage     runs tests with coverage and race detector enabled.
  doc          runs godoc, access at http://localhost:6060.
  format       formats code in this repository.
  fuzz         runs fuzz tests.
  lint         verifies code quality.
  precommit    installs a git hook to run check when committing.
  test         runs all tests.

Например, чтобы отформатировать код перед отправкой, выполните:

root@kitploit:~
go run mage.go format

Вклад

Вклад приветствуется! Пожалуйста, обратитесь к CONTRIBUTING.md за инструкциями.

Безопасность

Чтобы сообщить о проблеме безопасности, перейдите по этой ссылке и добавьте описание проблемы, шаги, которые вы предприняли для её создания, затронутые версии и, если известно, способы смягчения проблемы. Наша команда по управлению уязвимостями ответит в течение 3 рабочих дней после вашего сообщения. Если проблема подтверждена как уязвимость, мы откроем уведомление о безопасности (Security Advisory). Этот проект придерживается 90-дневного срока раскрытия информации.

Благодарности

  • Команда OWASP Coreruleset за CRS и их помощь
  • Ivan Ristić за создание ModSecurity

Coraza в X/Twitter

  • @corazaio

Пожертвования

Для пожертвований посетите сайт пожертвований.

Спасибо всем, кто внёс вклад

Прежде всего, огромное спасибо Juan Pablo Tosso за запуск этого проекта и создание замечательного сообщества вокруг Coraza!

Сегодня у нас много замечательных участников, мы не смогли бы этого сделать без вас!

Сделано с помощью contrib.rocks.

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