BUUCTF Web writeup-[ACTF2020 新生赛]Include1

 

 

文章目录

  • 启动靶机
  • 一、BP抓包
  • 二、根据题目提示
    • 1.根据题目提示include,结合url信息推测
    • 2.尝试input和filter协议
  • 总结

 


启动靶机

点击tips发现提示:Can you find the flag?


同时URL发生改变,这里说明网页会根据参数 file 来加载文件——

eg:

?file=flag.php

服务器内部的代码可能是:

include($_GET['file']);

这就是典型的文件包含漏洞入口。

 

一、BP抓包

抓包后没有发现隐藏信息:说明flag不在http数据里。

二、根据题目提示

1.根据题目提示include,结合url信息推测

推测:这是PHP文件包含漏洞(LFI)即:Local File Inclusion

服务器会把file参数的内容当作文件路径加载。

2.尝试input协议和filter协议

返回hacker!于是尝试filter协议,为了防止代码执行,使用base64编码读取源码:
?file=php://filter/convert.base64-encode/resource=flag.php

浏览器看到结果,再把结果进行解码得到flag:

 

 

 

 

 

 


总结

php://input :PHP 的一个 流协议

可以读取 POST 原始数据.POST提交PHP代码,然后include执行

eg:

POST:
<?php system('ls'); ?>

如果成功:

服务器会执行代码。

php://filter 的作用:读取文件内容但不执行

核心漏洞:PHP 文件包含漏洞(LFI)

利用方式:php://filter + base64读取源码

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值