-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
[FEATURE] Extensible Auto-calibration strategies #694
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's couple of linter issues that need fixing. In addition for information for others that may have eyes on this PR, we're discussing a larger strategy (pun inteded) for autocalibration OOB with @aristosMiliaressis
Initial implementation refactored to allow for extensible auto-calibration strategies -acs, --autocalibration-strategy (can be used with comma separated values or multiple times) sample strategies for reference basic.json (default strategy, autogenerate for backwards compatibility) {
"basic_admin":["adminNFCTzMVyppxaVOUi","adminYEEzbfyp"],
"basic_random":["CfrPyBYAvAYSqFgl","dPKhFxKq"],
"htaccess":[".htaccessbeoigKocENPTFAUF",".htaccessRpTeQwbV"]
} advanced.json (autogenerate for backwards compatibility) {
"admin_dir":["adminxJyMWnxrFSuymAXL/","adminKOwGZBBQ/"],
"basic_admin":["adminhmPschjKHKniEDIH","adminUHMMvPHv"],
"basic_random":["pcKqahbrJknwNYFH","dZQmyqXj"],
"htaccess":[".htaccessrWgUxyDzDQzMXVHC",".htaccessxZzqfJSG"],
"random_dir":["pNdPspnFahKlNMoe/","oFUPFxQF/"]
} waf.json (custom strategy not auto generated) {
"WAF_PATH_XSS":["sgdsfgsgf/<script>alert(1)</script>","asdfasdfdsaf/<script>alert(22)</script>"],
"WAF_PATH_LFI":["asdfaasg/../../etc/passwd","sadgfdsdfhgdf/../../etc/passwd"],
"WAF_PATH_LFI2":["sadgkj/.../.../etc/passwd","asdsdfgfdgd/.../.../etc/passwd"],
"WAF_DOUBLE_SLASH":["sadfghkj//etc//passwd","sadfihuyus//etc//passwd"],
"WAF_FUZZY_CHAR":["sdfgdsfg::~$()><'!","asfdasdfjlk::~$()><'!"],
"WAF_FUZZY_CHAR2":["pNdPspnFahKlNMoe%20/","oFUPFxQF%20/"],
"WAF_FUZZY_CHAR3":["pNdPspnFahKlNMoe%0a.html","oFUPFxQF%0a.html"],
"WAF_QUERY_XSS":["pNdPspnFahKlNMoe?x=<script>alert(1)</script>","oFUPFxQF?x=<script>alert(22)</script>"],
"WAF_FUZZY_QUERY":["pNdPspnFahKlNMoe?x=::~$()><'!","oFUPFxQF?x=~$()><'!:::"]
} |
Hi, sorry for taking some time to get back on this. There are two linter issues (unused struct members), but other than that it looks good to merge! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I fixed the linter issues and merge conflicts in order to get this merged before the release, LGTM!
Description
Added an autocalibration strategy
extra
that uses a list of commonly blacklisted files to detect & filter blacklisted responsesFixes: #689