<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Open Source Web Application Firewall on OWASP Coraza</title><link>https://www.coraza.io/</link><description>Recent content in Open Source Web Application Firewall on OWASP Coraza</description><generator>Hugo</generator><language>en-US</language><copyright>Copyright (c) 2021-2026 OWASP Coraza</copyright><lastBuildDate>Wed, 22 Jul 2026 14:50:23 +0000</lastBuildDate><atom:link href="https://www.coraza.io/index.xml" rel="self" type="application/rss+xml"/><item><title>Directives</title><link>https://www.coraza.io/docs/seclang/directives/</link><pubDate>Tue, 06 Oct 2020 08:48:57 +0000</pubDate><guid>https://www.coraza.io/docs/seclang/directives/</guid><description>&lt;h2 id="include"&gt;Include&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Description:&lt;/strong&gt; Include and evaluate a file or file pattern.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Syntax:&lt;/strong&gt; &lt;code&gt;Include [PATH_TO_CONF_FILES]&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Include loads a file or a list of files from the filesystem using golang Glob syntax.&lt;/p&gt;</description></item><item><title>Syntax</title><link>https://www.coraza.io/docs/seclang/syntax/</link><pubDate>Tue, 06 Oct 2020 08:48:57 +0000</pubDate><guid>https://www.coraza.io/docs/seclang/syntax/</guid><description>&lt;p&gt;The original language for configuring the ModSecurity Apache module was a set of extension directives to the Apache config language. This extension allows you to generate your Security Policy where you take an access control decision based on a set of parameters. Directives can be used to configure the engine itself, but also to send directives to the engine for access control. Directives look like the examples below:&lt;/p&gt;</description></item><item><title>Actions</title><link>https://www.coraza.io/docs/seclang/actions/</link><pubDate>Tue, 06 Oct 2020 08:48:57 +0000</pubDate><guid>https://www.coraza.io/docs/seclang/actions/</guid><description>&lt;p&gt;Package actions implements SecLang rule actions for processing and control flow.&lt;/p&gt;
&lt;h1 id="overview"&gt;Overview&lt;/h1&gt;
&lt;p&gt;Actions define how the system handles HTTP requests when rule conditions match.
Actions are defined as part of a SecRule or as parameters for SecAction or SecDefaultAction.
A rule can have no or several actions which need to be separated by a comma.&lt;/p&gt;</description></item><item><title>Execution flow</title><link>https://www.coraza.io/docs/seclang/execution-flow/</link><pubDate>Tue, 06 Oct 2020 08:48:57 +0000</pubDate><guid>https://www.coraza.io/docs/seclang/execution-flow/</guid><description>&lt;h2 id="phases"&gt;Phases&lt;/h2&gt;
&lt;p&gt;Phases are an abstract concept designed to fit most web servers execution flows and give it more opportunities to stop a request.&lt;/p&gt;</description></item><item><title>Introduction</title><link>https://www.coraza.io/docs/tutorials/introduction/</link><pubDate>Tue, 06 Oct 2020 08:48:57 +0000</pubDate><guid>https://www.coraza.io/docs/tutorials/introduction/</guid><description>&lt;h1&gt;
 &lt;img src="https://coraza.io/images/logo_shield_only.png" align="left" height="46px" alt=""/&gt;&amp;nbsp;
 &lt;span&gt;Coraza - Web Application Firewall&lt;/span&gt;
&lt;/h1&gt;
&lt;p&gt;&lt;a href="https://github.com/corazawaf/coraza/actions/workflows/regression.yml"&gt;&lt;img src="https://github.com/corazawaf/coraza/actions/workflows/regression.yml/badge.svg" alt="Regression Tests"&gt;&lt;/a&gt;
&lt;a href="#"&gt;&lt;img src="https://img.shields.io/badge/Coreruleset%20Compatibility-100%25-brightgreen" alt="Coreruleset Compatibility"&gt;&lt;/a&gt;
&lt;a href="https://github.com/corazawaf/coraza/actions/workflows/codeql-analysis.yml"&gt;&lt;img src="https://github.com/corazawaf/coraza/actions/workflows/codeql-analysis.yml/badge.svg" alt="CodeQL"&gt;&lt;/a&gt;
&lt;a href="https://codecov.io/gh/corazawaf/coraza"&gt;&lt;img src="https://codecov.io/gh/corazawaf/coraza/branch/v3/dev/graph/badge.svg?token=6570804ZC7" alt="codecov"&gt;&lt;/a&gt;
&lt;a href="https://www.repostatus.org/#active"&gt;&lt;img src="https://www.repostatus.org/badges/latest/active.svg" alt="Project Status: Active"&gt;&lt;/a&gt;
&lt;a href="https://owasp.org/www-project-coraza-web-application-firewall"&gt;&lt;img src="https://img.shields.io/badge/owasp-lab%20project-brightgreen" alt="OWASP Lab Project"&gt;&lt;/a&gt;
&lt;a href="https://godoc.org/github.com/corazawaf/coraza/v3"&gt;&lt;img src="https://godoc.org/github.com/corazawaf/coraza?status.svg" alt="GoDoc"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Coraza is an open source, enterprise-grade, high performance Web Application Firewall (WAF) ready to protect your beloved applications. It written in Go, supports ModSecurity SecLang rulesets and is 100% compatible with the OWASP Core Rule Set.&lt;/p&gt;</description></item><item><title>Operators</title><link>https://www.coraza.io/docs/seclang/operators/</link><pubDate>Tue, 06 Oct 2020 08:48:57 +0000</pubDate><guid>https://www.coraza.io/docs/seclang/operators/</guid><description>&lt;h2 id="beginswith"&gt;beginsWith&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Description:&lt;/strong&gt; Matches if the parameter string appears at the beginning of the input.
Supports macro expansion for dynamic string matching.&lt;/p&gt;</description></item><item><title>Transformations</title><link>https://www.coraza.io/docs/seclang/transformations/</link><pubDate>Tue, 06 Oct 2020 08:48:57 +0000</pubDate><guid>https://www.coraza.io/docs/seclang/transformations/</guid><description>&lt;p&gt;In the following example, the request parameter values are converted to lowercase before matching:&lt;/p&gt;
&lt;div class="expressive-code"&gt;
 &lt;figure class="frame not-content"&gt;
 &lt;figcaption class="header"&gt;
 &lt;span class="title"&gt;&lt;/span&gt;
 &lt;/figcaption&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-seclang" data-lang="seclang"&gt;SecRule ARGS &amp;#34;xp_cmdshell&amp;#34; &amp;#34;t:lowercase,id:91&amp;#34;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;/figure&gt;
&lt;/div&gt;
&lt;p&gt;Multiple transformation actions can be used in the same rule, forming a transformation pipeline. The transformations will be performed in the order in which they appear in the rule.&lt;/p&gt;</description></item><item><title>Variables</title><link>https://www.coraza.io/docs/seclang/variables/</link><pubDate>Tue, 06 Oct 2020 08:48:57 +0000</pubDate><guid>https://www.coraza.io/docs/seclang/variables/</guid><description>&lt;h2 id="args"&gt;ARGS&lt;/h2&gt;
&lt;p&gt;Collection of all request arguments, including both query string and request body parameters. To inspect only query string or body arguments, see ARGS_GET and ARGS_POST.&lt;/p&gt;</description></item><item><title>Quick Start</title><link>https://www.coraza.io/docs/tutorials/quick-start/</link><pubDate>Mon, 16 Nov 2020 13:59:39 +0100</pubDate><guid>https://www.coraza.io/docs/tutorials/quick-start/</guid><description>&lt;p&gt;If you are not looking to use Coraza WAF as a library and you want a working WAF implementation or integration, check out the 

&lt;a class="link link--text" href="https://www.coraza.io/connectors/"&gt;Connectors&lt;/a&gt; page for available integrations.&lt;/p&gt;</description></item><item><title>OWASP Core Ruleset</title><link>https://www.coraza.io/docs/tutorials/coreruleset/</link><pubDate>Tue, 13 Oct 2020 15:21:01 +0200</pubDate><guid>https://www.coraza.io/docs/tutorials/coreruleset/</guid><description>&lt;h2 id="using-coraza-coreruleset-recommended"&gt;Using coraza-coreruleset (Recommended)&lt;/h2&gt;
&lt;p&gt;The easiest way to use CRS with Coraza is via the 

&lt;a class="link link--text" href="https://github.com/corazawaf/coraza-coreruleset" rel="external"&gt;coraza-coreruleset&lt;/a&gt; Go package, which embeds the Core Rule Set and the recommended Coraza configuration so you don&amp;rsquo;t need to manage files manually.&lt;/p&gt;</description></item></channel></rss>