From bdcc28b4122f3af4a53616429acc2334d09a3f56 Mon Sep 17 00:00:00 2001 From: ekultek Date: Wed, 25 Oct 2017 13:26:20 -0500 Subject: [PATCH] you are now successfully able to launch the sqlmap API automatically using the --auto flag (issue #58) --- etc/checksum/md5sum.md5 | 8 ++++---- etc/scripts/launch_sqlmap.sh | 4 +--- lib/attacks/sqlmap_scan/__init__.py | 25 ++++++++++++++++++------- lib/core/settings.py | 4 ++-- zeus.py | 2 +- 5 files changed, 26 insertions(+), 17 deletions(-) diff --git a/etc/checksum/md5sum.md5 b/etc/checksum/md5sum.md5 index cdd2cd9..118f904 100644 --- a/etc/checksum/md5sum.md5 +++ b/etc/checksum/md5sum.md5 @@ -1,8 +1,8 @@ -be5c457a19611d8e7f22477ebf733e11 ./zeus.py +9874a6fea201b6c9a9105c61256c0335 ./zeus.py 6ad5f22ec4a6f8324bfb1b01ab6d51ec ./etc/scripts/cleanup.sh 155c9482f690f1482f324a7ffd8b8098 ./etc/scripts/fix_pie.sh 0e435c641bc636ac0b3d54e032d9cf6a .etc/scripts/install_nmap.sh -fa53722189548fe405014fd3a4b32cc5 .etc/scripts/launch_sqlmap.sh +4b32db388e8acda35570c734d27c950c .etc/scripts/launch_sqlmap.sh 642a77905d8bb4e5533e0e9c2137c0fa ./etc/agents.txt 66b11aa388ea909de7b212341259a318 ./etc/auths/git_auth 8f686b05c5c5dfc02f0fcaa7ebc8677c ./etc/auths/whois_auth @@ -32,7 +32,7 @@ c10fdf73c2b655e07d13ac8103bd321e ./lib/tamper_scripts/space2null_encode.py 3b8c95a6a3b7cecce5118f2fb1ccc6b8 ./lib/tamper_scripts/appendnull_encode.py d41d8cd98f00b204e9800998ecf8427e ./lib/__init__.py d41d8cd98f00b204e9800998ecf8427e ./lib/attacks/__init__.py -7aa70ffff764fc1d884adcc12f6825e1 ./lib/attacks/sqlmap_scan/__init__.py +a48dc0484668393bece144e102273e99 ./lib/attacks/sqlmap_scan/__init__.py 5e5bb575014ebe613db6bf671d008cf8 ./lib/attacks/sqlmap_scan/sqlmap_opts.py d41d8cd98f00b204e9800998ecf8427e ./lib/attacks/whois_lookup/__init__.py f27322b9716e1a2b0b0b0487f3149474 ./lib/attacks/whois_lookup/whois.py @@ -43,7 +43,7 @@ f5e10264d98d8c59b3d5ae86051bbcf2 ./lib/attacks/nmap_scan/__init__.py c5ebb0c56c9ae3b9a72a14e3f05afa16 ./lib/attacks/intel_me/__init__.py 1faa2b5dfad6eb538bbfe42942d2a9da ./lib/core/errors.py d41d8cd98f00b204e9800998ecf8427e ./lib/core/__init__.py -98680e3f6a2618f9d2acdf89575afd17 ./lib/core/settings.py +5e744093802861aa8548c29847fd3dbf ./lib/core/settings.py d41d8cd98f00b204e9800998ecf8427e ./var/google_search/__init__.py b8761604c5d4f88ae653526057491a5f ./var/google_search/search.py d41d8cd98f00b204e9800998ecf8427e ./var/__init__.py diff --git a/etc/scripts/launch_sqlmap.sh b/etc/scripts/launch_sqlmap.sh index 2a2399c..d9e041b 100644 --- a/etc/scripts/launch_sqlmap.sh +++ b/etc/scripts/launch_sqlmap.sh @@ -2,6 +2,4 @@ USR_PATH=$2 -echo $USR_PATH - -python "$USR_PATH/sqlmapapi.py -s" \ No newline at end of file +python "$USR_PATH/sqlmapapi.py" -s \ No newline at end of file diff --git a/lib/attacks/sqlmap_scan/__init__.py b/lib/attacks/sqlmap_scan/__init__.py index fcb300f..4ecc12d 100644 --- a/lib/attacks/sqlmap_scan/__init__.py +++ b/lib/attacks/sqlmap_scan/__init__.py @@ -131,19 +131,30 @@ def sqlmap_scan_main(url, port=None, verbose=None, opts=None, auto_start=False): found_path = find_sqlmap() if auto_start: - lib.core.settings.logger.error(lib.core.settings.set_color( + '''lib.core.settings.logger.error(lib.core.settings.set_color( "auto start is not enabled yet, please start the API manually..." )) lib.core.settings.prompt( "press enter when ready..." - ) - '''lib.core.settings.logger.info(lib.core.settings.set_color( + )''' + lib.core.settings.logger.info(lib.core.settings.set_color( "attempting to launch sqlmap API..." )) - subprocess.call("sudo sh {} p {}".format(lib.core.settings.LAUNCH_SQLMAP_API_TOOL, found_path)) - lib.core.settings.logger.info(lib.core.settings.set_color( - "sqlmap API is up and running, continuing process..." - ))''' + subprocess.Popen( + ["sudo", "sh", "{}".format(lib.core.settings.LAUNCH_SQLMAP_API_TOOL), "p", "{}".format("".join(found_path))], + stdout=subprocess.PIPE + ) + if is_started: + lib.core.settings.logger.info(lib.core.settings.set_color( + "sqlmap API is up and running, continuing process..." + )) + else: + lib.core.settings.logger.error(lib.core.settings.set_color( + "there was a problem starting sqlmap API...", level=40 + )) + lib.core.settings.prompt( + "manually start the API and press enter when ready..." + ) else: if not is_started: lib.core.settings.prompt( diff --git a/lib/core/settings.py b/lib/core/settings.py index 390c918..797a7e7 100644 --- a/lib/core/settings.py +++ b/lib/core/settings.py @@ -35,7 +35,7 @@ PATCH_ID = str(subprocess.check_output(["git", "rev-parse", "origin/master"]))[: # clone link CLONE = "https://github.com/ekultek/zeus-scanner.git" # current version -VERSION = "1.0.60" +VERSION = "1.1" # colors to output depending on the version VERSION_TYPE_COLORS = {"dev": 33, "stable": 92, "other": 30} # version string formatting @@ -73,7 +73,7 @@ FIX_PROGRAM_INSTALL_PATH = "{}/etc/scripts/fix_pie.sh".format(os.getcwd()) # path to the auto clean tool CLEANUP_TOOL_PATH = "{}/etc/scripts/cleanup.sh".format(os.getcwd()) # path to tool to launch sqlmap API -LAUNCH_SQLMAP_API_TOOL = "{}/etc/scripts/launch_sqlmap.sh".format(os.getcwd()) +LAUNCH_SQLMAP_API_TOOL = "{}/etc/scripts/launch_sqlmap_api.sh".format(os.getcwd()) # path to nmap installer NMAP_INSTALLER_TOOL = "{}/etc/scripts/install_nmap.sh".format(os.getcwd()) # paths to sqlmap and nmap diff --git a/zeus.py b/zeus.py index 708f022..d60d4bb 100755 --- a/zeus.py +++ b/zeus.py @@ -113,7 +113,7 @@ if __name__ == "__main__": attacks.add_option("--thread", dest="threadPanels", action="store_true", help=optparse.SUPPRESS_HELP) attacks.add_option("--auto", dest="autoStartSqlmap", action="store_true", - help=optparse.SUPPRESS_HELP) + help="Automatically start the sqlmap API (or at least try to)") # search engine options engines = optparse.OptionGroup(parser, "Search engine arguments",