攻防世界 ics-02 writeup 学习

攻防世界 ics-02 writeup 学习笔记

emmm因为ssrf是对.pdf文件的下载,访问页面不出来的原因,做题的时候有点懵,

拿到题后,爆破目录有/secret/  里面有secret.php  和 debug_secret.php

ebug_secret.php是要求内网,以及下载的文档提示是ssrf。

对debug_secret.php进行sql注入,传参的问题学习了一下wp

url形式是ip:port/download.php?dl=http://127.0.0.1/secure/debug.php?s=3&txtfirst_name=.......这样会导致在第一个&符号处被加上.pdf导致其余参数无法传入debug文件里面,所以这里要给特殊字符url加密一次在请求apache服务器就会自动解密一次,这样.pdf就会加在最后一个参数后面了。

直接访问的时候无法访问,后来对ssrf指定了端口80发现和浏览器访问返回的结果一样,说明这个下载Pdf的ssrf并不用内网的80端口,好奇就尝试爆破一下(没爆破出来..存疑)。

 小白还对各种注入接触的比较少,那就对注入Poc学习一下吧。

本地sql测试

因为是插入数据的注入,拿了一个表测试,很蠢的照着poc试了一下,非常蠢..

 

 l_name 显示为0....因为poc中的+是python 字符串的连接字符 直接加括号就好了

 

 那么再试试错位到回显位置注入

 

 实战注入测试

1.给txtfirst_name添加单引号 报错'm','y','Esq.','01/10/2019','9786571')'  存在注入

2.猜测sql语句  Inset into XXX values(XX,XX,XX,XX)
3.猜测
insert in to xxx values('1',(database()),/*,'m'*/,'y','Esq.','01/10/2019','9786571')'

注入sql语句为

1',(database()),/*,'m'*/,'

 

4.由于忘了看回显位置为<p><b>Name: </b>,'y, 1<br />所以调整sql,由txtLast_name来回显
 
5.newpoc
insert in to xxx values('1','m',(database()),/*,'m','y'*/,'Esq.','01/10/2019','9786571')'

 

    注入sql语句为
1','m',(database()),/*,'m','y'*/,'

 

posted @ 2020-04-07 09:29  Zhu013  阅读(996)  评论(0编辑  收藏  举报