Hi there!,
This is the third topic in this series. You can have a look at other topics also for getting a better idea about the series and the pattern.
Third Topic - SQL Injection
I had already completed the portswigger labs and looked into many challenges of Audi Labs.
So this time, I decided to dig a little deeper into the Sqlmap tool about its working.
Before this, I just knew some the basic usage of Sqlmap.
Labs
- 
https://portswigger.net/web-security/sql-injection 
 (PortSwigger Labs)
- 
https://github.com/Audi-1/sqli-labs 
 (Audi Sqli Labs)
- 
https://github.com/skyblueee/sqli-labs-php7 
 (Audi Sqli Labs with PHP version >=7 compatibility)
Advanced Sqlmap Usage
- 
https://github.com/sqlmapproject/sqlmap/wiki/Usage 
 (Options available in Sqlmap)
- 
https://thegreycorner.com/2017/01/05/exploiting-difficult-sql-injection.html 
 (Nicely explained advanced Usage of Sqli)
- 
https://www.trustwave.com/en-us/resources/blogs/spiderlabs-blog/sqlmap-tricks-for-advanced-sql-injection/ 
 (How to create your own payload)
- 
https://cobalt.io/blog/a-pentesters-guide-to-sql-injection-sqli 
 (Cheat Sheet on different types of techniques)
- 
http://www.securityidiots.com/Web-Pentest/SQL-Injection/XPATH-Error-Based-Injection-Extractvalue.html 
 (Explanation on extractvalue function mostly used in Error based payload)
- 
https://pentest.blog/exploiting-second-order-sqli-flaws-by-using-burp-custom-sqlmap-tamper/ 
 (Ref on detecting second order)
Parameters that I commonly use
-u URL, --url=URL   Target URL (e.g. "http://www.site.com/vuln.php?id=1")
-r REQUESTFILE      Load HTTP request from a file
-p TESTPARAMETER    Testable parameter(s)
-v VERBOSE          Verbosity level: 0-6 (default 1)
--proxy=PROXY       Use a proxy to connect to the target URL
--headers=HEADERS   Extra headers (e.g. "Accept-Language: fr\nETag: 123")
--technique=TECH..  SQL injection techniques to use (default "BEUSTQ")
--flush-session     Flush session files for current target
--skip-waf          Skip heuristic detection of WAF/IPS protection
--skip-heuristics   Skip heuristic detection of SQLi/XSS vulnerabilities
--level=LEVEL       Level of tests to perform (1-5, default 1)
--risk=RISK         Risk of tests to perform (1-3, default 1)
--dbms=DBMS         Force back-end DBMS to provided value
--tamper=TAMPER     Use given script(s) for tampering injection data
--prefix=PREFIX     Injection payload prefix string
--suffix=SUFFIX     Injection payload suffix string
--second-url=SEC..  Resulting page URL searched for second-order response
Feel free to drop any suggestions via my social handles.
Thanks for reading!!!.