mirror of
https://github.com/Ekultek/Zeus-Scanner.git
synced 2026-03-11 08:55:51 +00:00
created five new tamper scripts for XSS payloads
This commit is contained in:
parent
80d9565585
commit
9d97a6765a
7 changed files with 80 additions and 5 deletions
|
|
@ -22,7 +22,7 @@ except NameError:
|
||||||
# clone link
|
# clone link
|
||||||
CLONE = "https://github.com/ekultek/zeus-scanner.git"
|
CLONE = "https://github.com/ekultek/zeus-scanner.git"
|
||||||
# current version <major.minor.commit.patch ID>
|
# current version <major.minor.commit.patch ID>
|
||||||
VERSION = "1.0.35"
|
VERSION = "1.0.36"
|
||||||
# colors to output depending on the version
|
# colors to output depending on the version
|
||||||
VERSION_TYPE_COLORS = {"dev": 33, "stable": 92, "other": 30}
|
VERSION_TYPE_COLORS = {"dev": 33, "stable": 92, "other": 30}
|
||||||
# version string formatting
|
# version string formatting
|
||||||
|
|
|
||||||
2
lib/tamper_scripts/appendnull_encode.py
Normal file
2
lib/tamper_scripts/appendnull_encode.py
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
def tamper(payload, **kwargs):
|
||||||
|
return "{}%00".format(payload.strip())
|
||||||
24
lib/tamper_scripts/enclosebrackets_encode.py
Normal file
24
lib/tamper_scripts/enclosebrackets_encode.py
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
import string
|
||||||
|
|
||||||
|
from lib.core.settings import (
|
||||||
|
logger,
|
||||||
|
set_color
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def tamper(payload, warning=True, **kwargs):
|
||||||
|
if warning:
|
||||||
|
logger.warning(set_color(
|
||||||
|
"enclosing brackets is meant to be used as an obfuscation "
|
||||||
|
"against an already valid vulnerable site...", level=30
|
||||||
|
))
|
||||||
|
|
||||||
|
to_enclose = string.digits
|
||||||
|
retval = ""
|
||||||
|
for char in payload:
|
||||||
|
if char in to_enclose:
|
||||||
|
char = "['{}']".format(char)
|
||||||
|
retval += char
|
||||||
|
else:
|
||||||
|
retval += char
|
||||||
|
return retval
|
||||||
22
lib/tamper_scripts/obfuscateordinal_encode.py
Normal file
22
lib/tamper_scripts/obfuscateordinal_encode.py
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
from lib.core.settings import (
|
||||||
|
logger,
|
||||||
|
set_color
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def tamper(payload, warning=True, **kwargs):
|
||||||
|
if warning:
|
||||||
|
logger.warning(set_color(
|
||||||
|
"obfuscating the payloads by ordinal equivalents may increase the risk "
|
||||||
|
"of false positives...", level=30
|
||||||
|
))
|
||||||
|
|
||||||
|
retval = ""
|
||||||
|
danger_characters = "%&<>/\\;'\""
|
||||||
|
for char in payload:
|
||||||
|
if char in danger_characters:
|
||||||
|
char = "%{}".format(ord(char) * 10 / 7)
|
||||||
|
retval += char
|
||||||
|
else:
|
||||||
|
retval += char
|
||||||
|
return retval
|
||||||
10
lib/tamper_scripts/space2comment_encode.py
Normal file
10
lib/tamper_scripts/space2comment_encode.py
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
def tamper(payload, **kwargs):
|
||||||
|
retval = ""
|
||||||
|
encoder = "/**/"
|
||||||
|
for char in payload:
|
||||||
|
if char == " ":
|
||||||
|
char = encoder
|
||||||
|
retval += char
|
||||||
|
else:
|
||||||
|
retval += char
|
||||||
|
return retval
|
||||||
10
lib/tamper_scripts/space2null_encode.py
Normal file
10
lib/tamper_scripts/space2null_encode.py
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
def tamper(payload, **kwargs):
|
||||||
|
retval = ""
|
||||||
|
encoder = "%00"
|
||||||
|
for char in payload:
|
||||||
|
if char == " ":
|
||||||
|
char = encoder
|
||||||
|
retval += char
|
||||||
|
else:
|
||||||
|
retval += char
|
||||||
|
return retval
|
||||||
15
zeus.py
15
zeus.py
|
|
@ -607,10 +607,17 @@ if __name__ == "__main__":
|
||||||
))
|
))
|
||||||
time.sleep(2)
|
time.sleep(2)
|
||||||
subprocess.call("python zeus.py --help", shell=True)
|
subprocess.call("python zeus.py --help", shell=True)
|
||||||
except IOError:
|
except IOError as e:
|
||||||
logger.fatal(set_color(
|
if "Invalid URL" in str(e):
|
||||||
"provided file does not exist, make sure you have the full path...", level=50
|
logger.exception(set_color(
|
||||||
))
|
"URL provided is not valid, schema appears to be missing...", level=50
|
||||||
|
))
|
||||||
|
request_issue_creation()
|
||||||
|
shutdown()
|
||||||
|
else:
|
||||||
|
logger.fatal(set_color(
|
||||||
|
"provided file does not exist, make sure you have the full path...", level=50
|
||||||
|
))
|
||||||
except KeyboardInterrupt:
|
except KeyboardInterrupt:
|
||||||
logger.error(set_color(
|
logger.error(set_color(
|
||||||
"user aborted process...", level=40
|
"user aborted process...", level=40
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue