From c618647eebbaf97f0c5f4aac37ee0115a4d7b663 Mon Sep 17 00:00:00 2001 From: ekultek Date: Mon, 2 Oct 2017 12:10:15 -0500 Subject: [PATCH] created three new tamper scripts and added warnings to other ones --- lib/attacks/tamper_scripts/base64_encode.py | 12 +++++++++++- lib/attacks/tamper_scripts/hex_encode.py | 12 +++++++++++- lib/attacks/tamper_scripts/lowercase_encode.py | 2 ++ lib/attacks/tamper_scripts/randomcase_encode.py | 14 ++++++++++++++ lib/attacks/tamper_scripts/uppercase_encode.py | 2 ++ 5 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 lib/attacks/tamper_scripts/lowercase_encode.py create mode 100644 lib/attacks/tamper_scripts/randomcase_encode.py create mode 100644 lib/attacks/tamper_scripts/uppercase_encode.py diff --git a/lib/attacks/tamper_scripts/base64_encode.py b/lib/attacks/tamper_scripts/base64_encode.py index 19b2979..a1a9bde 100644 --- a/lib/attacks/tamper_scripts/base64_encode.py +++ b/lib/attacks/tamper_scripts/base64_encode.py @@ -1,5 +1,15 @@ import base64 +from lib.settings import ( + logger, + set_color +) -def tamper(payload, **kwargs): + +def tamper(payload, warning=True, **kwargs): + if warning: + logger.warning(set_color( + "base64 tamper scripts may increase the possibility of not finding vulnerabilities " + "in otherwise vulnerable sites...", level=30 + )) return base64.b64encode(payload) \ No newline at end of file diff --git a/lib/attacks/tamper_scripts/hex_encode.py b/lib/attacks/tamper_scripts/hex_encode.py index 5365a96..b9bee63 100644 --- a/lib/attacks/tamper_scripts/hex_encode.py +++ b/lib/attacks/tamper_scripts/hex_encode.py @@ -1,4 +1,14 @@ -def tamper(payload, **kwargs): +from lib.settings import ( + logger, + set_color +) + + +def tamper(payload, warning=True, **kwargs): + if warning: + logger.warning(set_color( + "hex tamper scripts may increase the risk of false positives...", level=30 + )) retval = hex(hash(payload)) if "-" in str(retval): return retval[1:-1] diff --git a/lib/attacks/tamper_scripts/lowercase_encode.py b/lib/attacks/tamper_scripts/lowercase_encode.py new file mode 100644 index 0000000..f81573c --- /dev/null +++ b/lib/attacks/tamper_scripts/lowercase_encode.py @@ -0,0 +1,2 @@ +def tamper(payload, **kwargs): + return str(payload).lower() \ No newline at end of file diff --git a/lib/attacks/tamper_scripts/randomcase_encode.py b/lib/attacks/tamper_scripts/randomcase_encode.py new file mode 100644 index 0000000..0a9ffeb --- /dev/null +++ b/lib/attacks/tamper_scripts/randomcase_encode.py @@ -0,0 +1,14 @@ +import random + + +def tamper(payload, **kwargs): + retval = "" + nums = [0, 1] + + for char in payload: + random_int = random.choice(nums) + if random_int == 1: + retval += char.upper() + else: + retval += char + return retval diff --git a/lib/attacks/tamper_scripts/uppercase_encode.py b/lib/attacks/tamper_scripts/uppercase_encode.py new file mode 100644 index 0000000..792cca4 --- /dev/null +++ b/lib/attacks/tamper_scripts/uppercase_encode.py @@ -0,0 +1,2 @@ +def tamper(payload, **kwargs): + return str(payload).upper() \ No newline at end of file