{"repo":"coreruleset/go-ftw","free":true,"listed":false,"github":"https://github.com/coreruleset/go-ftw","clone":"git clone https://github.com/coreruleset/go-ftw.git","description":"Web Application Firewall Testing Framework - Go version","language":"Go","stars":179,"topics":["waf","testing","testing-tools"],"license":"Apache-2.0","category":"dev-tools","readme_excerpt":"Go-FTW - Framework for Testing WAFs in Go! Go-FTW is a replacement for FTW which had reached its limits in terms of maintainability and performance. Features of Go-FTW include: - fully customizable HTTP traffic - CI/CD friendly - fast - syntax checking of test files Install Homebrew (macOS and Linux) go-ftw can be installed on macOS and Linux via Homebrew using the CRS tap: To upgrade to the latest version: Linux Download the latest release archive for your architecture from the releases page, then extract and install the binary: Alternatively, .deb and .rpm packages are available on the releases page: Install with Go If you have Go installed and configured to run Go binaries from your shell you can also run Make sure your Go bin directory (typically /go/bin ) is on your PATH . Example Usage The go-ftw is designed to run Web Application Firewall (WAF) unit tests. The primary focus is the OWASP ModSecurity Core Rule Set. In order to run the tests, you need to prepare the following: 1. Active WAF 2. Log where the WAF writes the alert messages 3. go-ftw config file .ftw.yaml in the local folder or in your home folder (see YAML Config file for more information). 4. At least one unit test in (go)-ftw's yaml format. YAML Config file With the configuration, you can set paths for your environment, enable and disable features and you can also use it to alter the test results. The config file has six basic settings: logfile : path to WAF log with alert messages, relative or absolute te","default_branch":null,"files":null,"tree":[],"storefront":"/r/coreruleset","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/coreruleset/go-ftw/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}