当前位置: 首页 > wzjs >正文

做投诉网站赚钱吗wordpress撰写

做投诉网站赚钱吗,wordpress撰写,动漫设计就业前景如何,网站整体配色方案目录 一、空格绕过方法 二、trim函数 三、源码分析 四、渗透实战 1、构建脚本test7.php 2、打开靶场 3、bp开启拦截 4、点击上传 5、bp拦截 6、后缀名增加空格 7、发包并获取脚本地址 8、访问脚本 本文通过《upload-labs靶场通关笔记系列》来进行upload-labs靶场的渗…

目录

一、空格绕过方法

二、trim函数

三、源码分析

四、渗透实战

1、构建脚本test7.php

 2、打开靶场

3、bp开启拦截

4、点击上传

5、bp拦截

6、后缀名增加空格

7、发包并获取脚本地址

8、访问脚本


本文通过《upload-labs靶场通关笔记系列》来进行upload-labs靶场的渗透实战,本文讲解upload-labs靶场第7关文件空格绕过渗透实战。

一、空格绕过方法

文件上传攻击中的的 空格绕过方法(Space Bypass) 是一种利用文件命名规则或校验逻辑缺陷的攻击方式,攻击者通过在文件名中插入 空格(Space) 或 特殊空白字符,绕过服务器的安全校验(如黑名单过滤、扩展名检测等),从而渗透成功上传恶意文件。

假设目前服务器过滤".php"后缀,但是没有过滤".php "后缀,就是在原有php后缀的尾部加一个空格的情况,可以使用如下方法进行渗透利用,计划上传pass7.php文件,但是由于服务器过滤了"php"后缀,故而无法直接上传该脚本。于是可以通过在将上传脚本的后缀改为“.php ”(末尾带空格)的文件,即改名后的文件名为"pass7.php ",可能被系统存储为 “pass7.php” 并执行。

  • Windows 系统:默认会自动去除文件名末尾的空格,“pass7.php ”→ “pass7.php”

  • Linux/Unix 系统:保留空格,但某些校验逻辑可能忽略空格

二、trim函数

trim() 是 PHP 中用于 去除字符串首尾空白字符(或其他指定字符) 的内置函数,常用于数据清洗、文件名校验等场景。函数原型如下所示。

string trim ( string $str [, string $character_mask = " \t\n\r\0\x0B" ] )
  • 参数

    • $str:要处理的字符串。
    • $character_mask(可选):指定要删除的字符列表(默认去除空白符)。
  • 返回值

    • 返回处理后的字符串,不修改原字符串

trim() 默认会删除如下字符,具体如下所示。

字符描述
" "普通空格
"\t"制表符(Tab)
"\n"换行符(LF)
"\r"回车符(CR)
"\0"空字符(NULL byte)
"\x0B"垂直制表符(Vertical Tab)

三、源码分析

接下来对upload-labs 第 7 关的源码进行审计,很明显这一关卡又是黑名单过滤,与第6关卡一样,相对于第四关和第五关,将“.htacess和.ini”后缀均过滤了,故而无法用第四关和第五关的方法进行渗透。经过详细注释的代码如下所示。

<?php
// 初始化上传状态和消息变量
$is_upload = false;  // 布尔值,标记文件是否上传成功
$msg = null;         // 字符串,用于存储上传过程中的错误信息// 检查用户是否通过POST方法提交了表单(submit按钮被点击)
if (isset($_POST['submit'])) {// 检查上传目录是否存在if (file_exists(UPLOAD_PATH)) {// 定义禁止上传的文件扩展名黑名单(包含常见服务端脚本文件及其变体)$deny_ext = array(// PHP相关扩展名及大小写变体".php", ".php5", ".php4", ".php3", ".php2",".phtml", ".pht", ".pHp", ".pHp5", ".pHp4", ".pHp3", ".pHp2",// HTML相关扩展名及变体".html", ".htm",".Html", ".Htm", ".pHtml",// JSP相关扩展名及变体".jsp", ".jspa", ".jspx", ".jsw", ".jsv", ".jspf", ".jtml",".jSp", ".jSpx", ".jSpa", ".jSw", ".jSv", ".jSpf", ".jHtml",// ASP相关扩展名及变体".asp", ".aspx", ".asa", ".asax", ".ascx", ".ashx", ".asmx", ".cer",".aSp", ".aSpx", ".aSa", ".aSax", ".aScx", ".aShx", ".aSmx", ".cEr",// 其他危险文件类型".sWf", ".swf",    // Flash文件".htaccess",        // Apache配置文件".ini"              // 配置文件);// 获取上传文件的原始名称$file_name = $_FILES['upload_file']['name'];// 调用deldot函数删除文件名末尾的点(防御类似"evil.php."的绕过攻击)$file_name = deldot($file_name);// 获取文件扩展名(从最后一个点开始截取)$file_ext = strrchr($file_name, '.');// 将扩展名转换为小写(统一比较,避免大小写绕过)$file_ext = strtolower($file_ext);// 去除Windows NTFS备用数据流::$DATA(防御特殊绕过)$file_ext = str_ireplace('::$DATA', '', $file_ext);// 检查扩展名是否在黑名单中if (!in_array($file_ext, $deny_ext)) {// 获取上传文件的临时路径$temp_file = $_FILES['upload_file']['tmp_name'];// 生成目标文件名:当前日期时间+随机数+原扩展名(避免文件名冲突)$img_path = UPLOAD_PATH.'/'.date("YmdHis").rand(1000,9999).$file_ext;// 将临时文件移动到目标路径if (move_uploaded_file($temp_file, $img_path)) {$is_upload = true;  // 标记上传成功} else {$msg = '上传出错!';  // 文件移动失败(可能权限不足或磁盘已满)}} else {$msg = '此文件不允许上传';  // 文件类型被禁止}} else {$msg = UPLOAD_PATH . '文件夹不存在,请手工创建!';  // 上传目录不存在}
}
?>

与第6关对比,增加了strtolower故而无法使用大小写绕过方法,但是缺少了函数trim的处理。 正因为源码中没有$file_ext = trim($file_ext);//该语句可以将文件前后的空格过滤,所以可以在文件末尾添加一个空格,这样就可以绕过黑名单的限制。

例如:上传test.php文件,抓包后在文件名后添加一个空格。上传到服务器的时候,得到的后缀就是.php空格,从而绕过黑名单的限制,又因为.php空格不符合windows文件的命名规则,所以服务器存储的时候会将末尾的空格去掉,文件末尾就变回了.php(尾部无空格),这样文件名又恢复成为test.php,可以成功渗透。

四、渗透实战

1、构建脚本test7.php

<?php
phpinfo();
?>

 2、打开靶场

打开靶场第7关,浏览选择该脚本,但不点击上传。

3、bp开启拦截

4、点击上传

5、bp拦截

bp捕获到上传报文,下图红框的部分即为需要修改的文件名,需要将".php"后缀改为".php ",截图如下所示。

6、后缀名增加空格

test7.php后添加一个空格,修改后效果如下所示。

7、发包并获取脚本地址

将bp的inception设置为off,此时修改后的报文发送成功。

回到靶场的Pass07关卡,图片已经上传成功,右键图片获取图片地址。

如下所示获取到图片URL。

http://127.0.0.1/upload-labs/upload/202111191557116954.php

8、访问脚本

 如下所示访问脚本获取到服务器的php信息,证明文件上传成功。


文章转载自:

http://MrjWgk88.cnhgc.cn
http://xa6v8dK4.cnhgc.cn
http://rkZsMy12.cnhgc.cn
http://lpmPn28t.cnhgc.cn
http://Gx6vHF89.cnhgc.cn
http://QKL2Yi4z.cnhgc.cn
http://N3nk1Mjf.cnhgc.cn
http://IWBi9h7h.cnhgc.cn
http://3CGTx5NE.cnhgc.cn
http://KGZ8hlwp.cnhgc.cn
http://9qpBhMSN.cnhgc.cn
http://ULQxBocS.cnhgc.cn
http://F5vMpua8.cnhgc.cn
http://aIa01xOU.cnhgc.cn
http://5eObad2k.cnhgc.cn
http://HnRFCKlR.cnhgc.cn
http://MIpJO2T7.cnhgc.cn
http://s78KT4ou.cnhgc.cn
http://IwmqLfiP.cnhgc.cn
http://5kkCW83S.cnhgc.cn
http://PpZBwyLM.cnhgc.cn
http://dbD59iDK.cnhgc.cn
http://1J5ZncfG.cnhgc.cn
http://OZyqQgqr.cnhgc.cn
http://kzI4hQMA.cnhgc.cn
http://GMD0bbtU.cnhgc.cn
http://adDSuSd7.cnhgc.cn
http://OHUZ0HrJ.cnhgc.cn
http://cALcVsPy.cnhgc.cn
http://ckJNsFoT.cnhgc.cn
http://www.dtcms.com/wzjs/724231.html

相关文章:

  • 公司网站运营包括哪些方面企业微网站案例
  • 外贸大型门户网站建设网站seo可以做吗
  • 用ps做网站得多大像素网站ip域名查询
  • 一个公司可以做几个网站备案游戏网页代码
  • 怎么做免费的宣传网站凯里市企业建站公司
  • 名师工作室网站建设现状调查关键词列表
  • 申请免费网站主页空间企业做网站需要在通管局备案
  • 设计了网站计算机网站模板
  • 深圳网站设计建设传媒公司网站制作
  • 做网站如何选择颜色龙岩网站优化费用
  • 郑州的团购网站建设网站建设讲话稿
  • 网站建设内容和功能的介绍网站维护中怎么解决
  • 苏州建行网站首页烟台外贸网站建设公司
  • 衡水市住房和城乡建设局网站网络营销方案策划书
  • 网页设计公司建网站网站设计无锡微网站
  • 南昌网站推广¥做下拉去118cr娄底市住房和城乡建设局网站
  • 广州seo网站多少钱WordPress Demo演示
  • 成都网站建设优创智汇太阳能公司网站建设多少钱
  • 一个空间安装多个网站室内设计培训价格
  • 开发网站的工具有哪些下城区网站建设价格查询
  • 企业网站开发目的和意义editplus网站开发
  • 如何做外贸soho做网站wordpress 找不到文件路径
  • 个人可以建立网站吗没有域名的时候建网站
  • 做外链一定要淘宝网站吗青岛市城乡建设局网站
  • 没有做等保的网站不能上线对吗怎样做网站的轮播图片
  • 佛山做网站哪家公司最好电子商务网站开发 微盘下载
  • 中山市区做网站公司做食品网站需要什么资质
  • 济南网站建设咨询小七可以赚零花钱的小程序
  • 张家港早晨网站制作windows优化大师
  • 三星官网网站中国建设企业网站官网