[RoarCTF]Easy Calc】的更多相关文章

目录 [RoarCTF]Easy Calc 知识点 1.http走私绕过WAF 2.php字符串解析特性绕过WAF 3.绕过过滤写shell [RoarCTF]Easy Calc 题目复现链接:https://buuoj.cn/challenges 参考链接:楼上请让路 RoarCTF2019 writeup 知识点 1.http走私绕过WAF 详细说明见协议层的攻击--HTTP请求走私 一般来说,反向代理服务器与后端的源站服务器之间,会重用TCP链接.这也很容易理解,用户的分布范围是十分广泛,…
[RoarCTF 2019]Easy Calc 题目 题目打开是这样的 查看源码 .ajax是指通过http请求加载远程数据. 可以发现有一个calc.php,输入的算式会被传入到这个php文件里,尝试一下能不能打开 可以打开,并且显示了源码 foreach 语法结构提供了遍历数组的简单方式. 语法: foreach (array_expression as $value) statement foreach (array_expression as $key => $value) statem…
web [RoarCTF 2019]Easy Calc(利用PHP的字符串解析特性) 先上源码 <?phperror_reporting(0);if(!isset($_GET['num'])){    show_source(__FILE__);}else{        $str = $_GET['num'];        $blacklist = [' ', '\t', '\r', '\n','\'', '"', '`', '\[', '\]','\$','\\','\^'];  …
目录 [RoarCTF]Easy Java 知识点 1.WEB-INF/web.xml泄露 [RoarCTF]Easy Java 题目复现链接:https://buuoj.cn/challenges 参考链接:楼上请让路 RoarCTF2019 writeup 知识点 1.WEB-INF/web.xml泄露 贴一个别人的源码泄露总结ctf/web源码泄露及利用办法[总结中] WEB-INF主要包含一下文件或目录:     /WEB-INF/web.xml:Web应用程序配置文件,描述了 serv…
看一下页面源码,发现了提示: calc.php?num=encodeURIComponent($("#content").val()) $("#content").val() 是什么意思: 获取id为content的HTML标签元素的值,是JQuery,     $("#content")相当于document.getElementById("content");       $("#content").v…
简介  原题复现:  考察知识点:http协议走私.php字符串解析漏洞  线上平台:https://buuoj.cn(北京联合大学公开的CTF平台) 榆林学院内可使用信安协会内部的CTF训练平台找到此题 过程 一枚菜狗打开页面  懵逼一个小时然后   搜索WP..... 查看源码发现 利用php字符串解析漏洞 计算的时候会访问calc.php页面  访问它获得源码  审计发现有个过滤  过滤完执行eval() 所以可以构造 http://node3.buuoj.cn:28719/calc.ph…
看看题目内容,一个计算器,并且过滤了非数字的值,查看源码,上了waf,并且在calc.php显示waf的规则 <?php error_reporting(0); if(!isset($_GET['num'])){ show_source(__FILE__); }else{ $str = $_GET['num']; $blacklist = [' ', '\t', '\r', '\n','\'', '"', '`', '\[', '\]','\$','\\','\^']; foreach (…
要素察觉 打开calc.php发现源码 过滤了很多字符.题目一开始提示了有waf,最后通过eval实现计算功能.考虑利用该函数读取flag文件,先尝试弹个phpinfo 被waf拦截,在num参数前面插一个空格来绕过waf 原理:加空格使waf把num参数错误解析成%20num,这个参数是不存在的,但php解析的时候会自动把空格删掉,从而bypass. 利用var_dump和scandir查看目录.‘/’被过滤所以用相应的ascii表示 写了个php转码 构造payload:calc.php?…
进入之后可以看到我们需要输入一个计算式来得到答案,burpsuite进行抓包之后发现页面来自于calc.php 我们直接访问calc.php页面 发现源代码泄露 可以看到当我们没有输入num值的时候就会显示源代码,否则对输入的num进行eval命令执行,在命令执行之前有黑名单过滤. 我们需要绕过黑名单进行命令执行. 虽然是这样,但是ls不在黑名单执行里面,所以我们先ls一下 返回了403界面. 这里很可能是因为有waf设备保护着输入的参数,这里我们利用php的特性,使用php字符串解析绕过WAF…
启动靶机,查看网页源码,发现关键字 $("#content").val() 是什么意思: 获取id为content的HTML标签元素的值,是JQuery,     ("#content")相当于document.getElementById("content"); ("#content").val()相当于 document.getElementById("content").value; 多次尝试找不到思…