当前位置:网站首页>[极客大挑战 2020]Roamphp1-Welcome
[极客大挑战 2020]Roamphp1-Welcome
2022-07-30 16:43:00 【茶经新读.】
[极客大挑战 2020]Roamphp1-Welcome
打开是一个网页无法运作的网页, 发现了HTTP ERROR 405

百度405得

bp抓包发现网页本身是GET请求,将其改为POST请求放包


放包后页面就给出了源码:
<?php
error_reporting(0);
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
header("HTTP/1.1 405 Method Not Allowed");
exit();
} else {
if (!isset($_POST['roam1']) || !isset($_POST['roam2'])){
show_source(__FILE__);
}
else if ($_POST['roam1'] !== $_POST['roam2'] && sha1($_POST['roam1']) === sha1($_POST['roam2'])){
phpinfo(); // collect information from phpinfo!
}
} 审计代码得知,我们需要post两个值,分别是roam1和roam2,并且要让这两个值不相等,同时还要使这两个值通过sha1函数比较两者使两者相等。这里利用sha1函数的漏洞来绕过,即sha1函数无法处理数组类型,会报错并返回NULL,因此传入的两个是数组的时候就直接相等。构造payload:roam1[]=1&roam2[]=2

进入phoinfo()界面,直接Ctrl + F,全局搜索flag

至此结束,撒花
边栏推荐
- 获得抖音商品详情 API
- 23. Please talk about the difference between IO synchronization, asynchronous, blocking and non-blocking
- 疫情之下的裁员浪潮,7点建议帮你斩获心仪offer
- 第一次用debug查询,发现这个为空,是不是代表还没获得数据库的意思?求帮助。
- 静态网页和动态网页的不同之处;该如何选择服务器呢
- 【SOC】Classic output hello world
- Explore CSAPP Experiment 2-bomb lab-Section 1
- Chapter 5 Advanced SQL Processing
- Leetcode 119. Yang Hui's Triangle II
- 大厂面试官眼中的好简历到底长啥样
猜你喜欢
随机推荐
华为云WeLink携手伙伴,共建协同办公生态
Chapter 6: Decisive Autumn Moves
vivo宣布延长产品保修期限 系统上线多种功能服务
Minio 入门
Public Key Retrieval is not allowed报错解决方案
深度学习区分不同种类的图片
代码越写越乱?那是因为你没用责任链
武汉星起航跨境电商有前景吗?亚马逊的未来趋势如何发展?
What does a good resume look like in the eyes of a big factory interviewer?
实现web实时消息推送的7种方案
[AGC] Quality Service 2 - Performance Management Example
lotus 爆块失败
PyQt5快速开发与实战 9.2 数据库处理
Invalid or corrupt jarfile xxx.jar
牛客网刷题——运算符问题
Visual Studio 集成Qt开发环境的一些注意事项
新技术要去做新价值
SocialFi 何以成就 Web3 去中心化社交未来
CMake库搜索函数居然不搜索LD_LIBRARY_PATH
Paper reading (63): Get To The Point: Summarization with Pointer-Generator Networks




![[NCTF2019]Fake XML cookbook-1|XXE漏洞|XXE信息介绍](/img/29/92b9d52d17a203b8bdead3eb2c902e.png)

![[TypeScript] Introduction, Development Environment Construction, Basic Types](/img/d7/b3175ab538906ac1b658a9f361ba44.png)


