ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

第十三题——[RoarCTF 2019]Easy Calc

2021-04-05 11:34:00  阅读:258  来源: 互联网

标签:RoarCTF php WAF chr num 2019 print 参数 Calc


题目地址:https://buuoj.cn/challenges

解题思路

第一步:进入题目,发现有一个输入栏叫我们输入计算表达式,按f12查看提示,看到一个calc.php页面且参数为num,且calc设置了WAF保护措施。

在这里插入图片描述
在这里插入图片描述

第二步:访问calc.php页面发现WAF安全规则以及参数检测

  1. 可以看到calc.php页面对num参数进行了规定,不允许参入空格以及其他的特殊字符
    在这里插入图片描述

  2. 让num传入数字,在页面上返回数字
    在这里插入图片描述

  3. 让num传入非数字,发现WAF限制
    在这里插入图片描述

第三步:绕过WAF

WAF检测的是"num"参数,若我们在num参数前添加空格,让”num“变成” num“,那就可以绕过WAF,而php在接受参数时会将空格删除,将” num“转变成”num“进行接收。

在这里插入图片描述

第四步:绕过num限制

php对num参数进行了限制,不允许携带空格以及一些特殊字符,可以通过chr()函数携带ASCII码进行绕过。
在这里插入图片描述

第五步:扫描目录

使用函数scandir()获取根目录"/"下的所有文件名,并使用print_r将其打印出来,URL构造? num=print_r(scandir(chr(47))),发现flag所在位置:f1agg
在这里插入图片描述

scandir用法介绍

第六步:获取flag

使用函数file_get_contents()将f1agg文件读入字符串中并用print_r打印出来,
URL为? num=print_r(file_get_contents(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103)))
flag为:flag{1b2d35a8-d683-4286-a98f-03eacbfd0055}
在这里插入图片描述

标签:RoarCTF,php,WAF,chr,num,2019,print,参数,Calc
来源: https://blog.csdn.net/qq_37589805/article/details/115438982

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有