文件上传漏洞,从零基础到精通,收藏这篇就够了!_文件上传漏洞攻击

文件上传,听起来平平无奇,但一不小心就可能变成黑客入侵的“高速公路”!今天就带你扒一扒文件上传漏洞的那些事儿,让你在网络安全的世界里也能浪得飞起!

文件上传的流程,就像你去饭店点菜:

  • 第一种方式:前端/后端验证,就像服务员告诉你今天啥菜好吃,或者后厨告诉你哪些菜不能点。
  • 第二种方式:直接上传到云端,那就得小心云服务本身的漏洞了,比如云Key被盗、存储桶数据被篡改啥的!

要上传啥样的“木马”文件(比如php、js)?那得看网站用啥语言写的,就像你要根据饭店的菜系点菜一样。

怎么判断网站用的啥语言?

  1. 看后缀名

    就像看菜单上的菜名,.php 结尾的多半是PHP写的,.jsp 结尾的多半是Java写的。

  2. 看响应头

    服务器的响应头里,可能会暴露一些信息,比如版本号啥的,这就像服务员不小心说漏了嘴。

    友情提示: 这里说不定还能发现版本泄露漏洞!

  3. 用Wappalyzer插件

    这就像请了个“美食侦探”,能帮你快速识别网站用的技术。

前端?后端?傻傻分不清楚?

如果网站对上传的文件做了过滤,那就要看看这个过滤是在前端还是后端做的。如果是前端,那就像纸老虎,一捅就破!

判断+绕过姿势:

  • 姿势1:禁用JavaScript

    按下F12,再按F1,找到禁用JavaScript的选项。如果禁用了JS就能上传,那就是前端限制!这就像关掉了“烦人的服务员”,想点啥点啥!

  • 姿势2:JS Blocker插件

    用浏览器插件直接把JS全给禁了,简单粗暴!

  • 姿势3:修改HTML代码

    在F12里找到form表格,把里面的校验参数改成true,直接骗过前端!

  • 姿势4:BurpSuite抓包改后缀

    先把木马改成.png,然后用BurpSuite抓包,把后缀改成.php,瞒天过海!

后端校验:黑名单?白名单?

如果不是前端校验,那就是后端校验了。后端校验分两种:黑名单白名单

怎么判断黑白名单?

随便上传一个后缀名没见过的文件,比如 pm.kjrgrjkjhkrhk

  • 如果上传成功:那就是黑名单,说明它只禁止了常见的危险后缀。
  • 如果上传失败:那就是白名单,说明它只允许上传特定后缀的文件。

黑名单绕过大法:

黑名单就像“禁止入内”的名单,但总有办法钻空子!

  1. 等价后缀名

    有些后缀名和.php的功能一样,比如.php5.phtml,可以试试能不能用这些“替身”绕过。

  2. .htaccess文件

    上传一个.htaccess文件,可以修改Apache服务器的配置,让它把其他类型的文件当成PHP来解析!这就像给服务器下了个“降头”

    <FilesMatch "info.jpg"> AddType application/x-httpd-php .jpg </FilesMatch>

    划重点:Apache换行解析漏洞(CVE-2017-15715)

    利用换行符 可以绕过一些安全机制。

    Docker小技巧: 后面会单独出一篇文章详细讲解!

  3. 大小写绕过(仅限Windows)

    Windows系统对大小写不敏感,可以试试把后缀名改成.PHP.JSP

  4. 空格绕过(仅限Windows)

    在后缀名后面加个空格,比如shell.php

  5. 点号绕过(仅限Windows)

    在后缀名后面加个点,比如shell.php.

  6. ::$DATA绕过(仅限Windows)

    在后缀名后面加上::$DATA,比如shell.php::$DATA

  7. 空格+点号绕过

    组合拳,在后缀名后面加空格再加点,比如shell.php .

  8. 双写绕过(str_ireplace)

    如果程序用str_ireplace函数只替换一次黑名单后缀,那就双写后缀名,比如shell.pphphp

  9. 00截断

    把文件名改成evil.php%00.jpg,利用00字符截断,让服务器只读取到evil.php

    路径遍历攻击:

    结合路径跳转符号(如../)构造/var/www/upload/../../etc/passwd%00.jpg,截断后实际访问/etc/passwd

  10. PHP其他标签绕过

PHP支持多种标签,比如`<?php ?>`、`<?= ?>`、`<% %>`、`<script language="php">`,如果只过滤了`<?php`,可以试试其他的。

*   **短标签支持**:开启`short_open_tag=On`,`<? ?>`或`<?= ?>`可被解析为PHP代码。
*   **ASP风格标签**:启用`asp_tags=On`,`<% %>`标签可触发PHP解析。
  1. 文件头检测绕过
伪造文件头,让服务器误以为是图片或其他类型的文件。

![](https://i-blog.csdnimg.cn/img_convert/ea19c1aa705184f0e2c48d6d25765343.jpeg)

也可以用16进制编辑器修改文件头。

![](https://i-blog.csdnimg.cn/img_convert/730ba0aa01ccde6eb5851439e35109cf.jpeg)

![](https://i-blog.csdnimg.cn/img_convert/84146062172148b4b4367fdbb8147086.jpeg)
  1. .user.ini 绕过
上传一个`.user.ini`文件,可以控制PHP的配置,让它自动包含恶意文件!**这就像给PHP打了个“补丁”**!

`auto_prepend_file = muma.gif`

然后上传一个伪装成`.gif`的恶意脚本。

白名单绕过大法:

白名单就像“通行证”,只有名单上的文件才能通过。

  1. MIME绕过

    修改Content-Type,让服务器误以为是允许上传的文件类型。

  2. GET型00截断(仅限Windows,PHP版本小于5.3.4,magic_quotes_gpc=Off)

    在URL里用%00截断文件名。

    POST型00截断

  3. 二次渲染

    上传图片后,网站会对图片进行处理,可以把恶意代码插入到图片中不会被渲染的部分。这就像在照片里藏了个“秘密”

    图片马制作:

    2.php 存放木马代码:

    php <?php eval($_REQUEST[3]); ?>

    然后用命令 copy /b pai.png/b + 2.php ma.png 生成图片马。

    或者直接把木马插入到图片头部,用16进制编辑器修改。

  4. 条件竞争时间差

    在服务器删除文件之前,利用多线程访问恶意文件,抢在删除之前执行!这就像和服务器赛跑

    php <?php file_put_contents("info.php",'<?php phpinfo(); ?>') ?>

    上传fputs.php文件,然后用BurpSuite的Intruder模块设置多线程攻击。

    设置线程数:

    用浏览器不断访问fputs.php,直到成功为止。

  5. Apache的AddHandler配置解析漏洞

    Apache会从右往左解析文件后缀名,如果最右边的无法解析,就往左识别,直到识别到合法的后缀为止。

  6. 白名单配合文件包含漏洞

    文件包含漏洞会把任何类型的文件当成PHP来解析,如果文件中包含PHP代码,就会执行。

    php <?php

    简单来说,就是调用文件时会调用include.php里的函数,而这个函数会把任何文件当成PHP来解析。

最后,补充一个关闭Windows自动更新的小技巧:

  • win+r,输入regedit,打开注册表编辑器。
  • 找到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceswuauserv
  • 找到ImagePath键值,在其值前面添加前缀stop_,修改后样式为stop_svchost.exe -k netsvcs -p

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包,需要点击下方链接即可前往获取

读者福利 | CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)

👉1.成长路线图&学习规划👈

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
在这里插入图片描述

在这里插入图片描述

👉2.网安入门到进阶视频教程👈

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。(全套教程文末领取哈)
在这里插入图片描述

在这里插入图片描述

👉3.SRC&黑客文档👈

大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录

SRC技术文籍:

在这里插入图片描述

黑客资料由于是敏感资源,这里不能直接展示哦!(全套教程文末领取哈)

👉4.护网行动资料👈

其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!

在这里插入图片描述

👉5.黑客必读书单👈

在这里插入图片描述

👉6.网络安全岗面试题合集👈

当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。
在这里插入图片描述
所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或链接免费领取~

读者福利 | CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享 (安全链接,放心点击)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值