• Stars
    star
    460
  • Rank 93,106 (Top 2 %)
  • Language
    Python
  • License
    BSD 3-Clause Clea...
  • Created about 6 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Python3 Burp History parsing tool to discover potential SQL injection points. To be used in tandem with SQLmap.

SleuthQL Description

SleuthQL is a python3 script to identify parameters and values that contain SQL-like syntax. Once identified, SleuthQL will then insert SQLMap identifiers (*) into each parameter where the SQL-esque variables were identified.

Supported Request Types

SleuthQL requires an export of Burp's Proxy History. To gain this export, simply navigate to your proxy history tab, highlight every item and click "Save Items". Ensure that each request is saved using base64 encoding. When SleuthQL scans the proxy history file, outside of the regular URL parameters, it will be able to identify vulnerable parameters from the following request content-types:

  • application/json
  • application/x-www-form-urlencoded
  • multipart/form-data

There are cases where this tool will break down. Namely, if there is nested content-types (such as a base64 encoded parameter within JSON data), it will not be able to identify those parameters. It also does not cover Cookies, as too often something such as CloudFlare will flag a parameter we're not interested in.

Why not Burp Pro?

Burp Pro's scanner is great, but isn't as full featured as SQLMap. Thus, if we can prioritize requests to feed into SQLMap in a batch-like manner and look for results this way, we can increase the detection rate of SQL injection.

Usage

Usage: 
                .:/+ssyyyyyyso+/:.                
            -/s                    s/.            
         .+|        SleuthQL         |y+.         
       -s| SQL Injection Discovery Tool |s-       
     .shh|                              |ohs.     
    +hhhho+shhhhhhhhhhhs/hhhhhhhhhhhhhhhh.-hh/    
  `shhhhhhy:./yo/:---:/:`hhhhhhhhhhhhhhhs``ohho   
  shhhhhhhhh-`-//::+os: +hhhhhhhhh+shhhh.o-/hhho  
 +hhhhhhhhh:+y/.:shy/  /hhhhhhhhh/`ohhh-/h-/hhhh/ 
.hhhhhhhhhsss`.yhhs` .shhhhhhhh+-o-hhh-/hh`ohhhhh`
+hhhhhhhhhhhhyoshh+. `shhhhhs/-oh:ohs.ohh+`hhhhhh/
shhhhhhhhhhhhhhhhhhh/  -//::+yhy:oy::yhhy`+hhhhhho
yhhhhhhhhhhhhhhhhhhh:-:.   `+y+-/:/yhhhy.-hhhhhhhs
shhhhhhhhhhhhhhhhhhh+ :/o+:.``  -hhhhhs`.hhhhhhhho
+hhhhhhhs/hhhhhhhhhhy::/:/yhhhy: .+yy/ :hhhhhhhhh/
.hhhhhhh:.hhhhhhhhhhhhhhhhhhhhhhs/-  -shhhhhhhhhh`
 +hhhhhh+ /hhhhhhhhhhhhhhhhhhhhho/:`+hhhhhhhhhhh/ 
  shhhhy+  -shhhhhhhhhhhhhhhhhhh.// yhhhhhhhhhho  
  `ohh+://+/.`-/++ooooooooooyhhhhy.`hhhhhhhhhho   
    /hhhhhhhhhso++//+++oooo+:`sh+`-yhhhhhhhhh/    
     .s                                    s.     
       -s      Rhino Security Labs       s-       
         .+y    Dwight  Hohnstein     y+.         
            ./s                    s/.            
                .:/+osyyyyyyso+/-.                

sleuthql.py -d example.com -f burpproxy.xml

SleuthQL is a script for automating the discovery of requests matching
SQL-like parameter names and values. When discovered, it will display
any matching parameters and paths that may be vulnerable to SQL injection.
It will also create a directory with SQLMap ready request files.



Options:
  -h, --help            show this help message and exit
  -d DOMAINS, --domains=DOMAINS
                        Comma separated list of domains to analyze. i.e.:
                        google.com,mozilla.com,rhinosecuritylabs.com
  -f PROXY_XML, --xml=PROXY_XML
                        Burp proxy history xml export to parse. Must be base64
                        encoded.
  -v, --verbose         Show verbose errors that occur during parsing of the
                        input XML.

Output Files

For each potentially vulnerable request, the SQLMap parameterized request will be saved under $(pwd)/$domain/ as text files.

Video Demo

https://youtu.be/Sp3FevOAmCs

License

This code is licensed under the BSD 3-Clause Clear License, which limits liability, warranty and patent use of this code. See license.txt for more details.

More Repositories

1

pacu

The AWS exploitation framework, designed for testing the security of Amazon Web Services environments.
Python
4,015
star
2

cloudgoat

CloudGoat is Rhino Security Labs' "Vulnerable by Design" AWS deployment tool
Python
2,428
star
3

Security-Research

Exploits written by the Rhino Security Labs team
Python
1,036
star
4

AWS-IAM-Privilege-Escalation

A centralized source of all AWS IAM privilege escalation methods released by Rhino Security Labs.
883
star
5

IPRotate_Burp_Extension

Extension for Burp Suite which uses AWS API Gateway to rotate your IP on every request.
Python
766
star
6

CVEs

A collection of proof-of-concept exploit scripts written by the team at Rhino Security Labs for various CVEs.
Python
750
star
7

ccat

Cloud Container Attack Tool (CCAT) is a tool for testing security of container environments.
Python
573
star
8

GCPBucketBrute

A script to enumerate Google Storage buckets, determine what access you have to them, and determine if they can be privilege escalated.
Python
446
star
9

Cloud-Security-Research

Cloud-related research releases from the Rhino Security Labs team.
Python
346
star
10

GCP-IAM-Privilege-Escalation

A collection of GCP IAM privilege escalation methods documented by the Rhino Security Labs team.
Python
311
star
11

Swagger-EZ

A tool geared towards pentesting APIs using OpenAPI definitions.
JavaScript
163
star
12

Aggressor-Scripts

Aggregation of Cobalt Strike's aggressor scripts.
PowerShell
145
star
13

IAMActionHunter

An AWS IAM policy statement parser and query tool.
Python
137
star
14

dsnap

Utility for downloading and mounting EBS snapshots using the EBS Direct API's
Python
61
star
15

Presentations

A collection of slides, videos, and proof-of-concept scripts from various Rhino presentations.
37
star
16

little-stitch

Send and receive bypassing Little Snitch alerting.
Go
9
star