【网络安全】-文件上传漏洞实战-upload-labs(0~16)

准备:

一句话木马:<? php @eval($_REQUEST[cmd]); ?)>

格式:写入txt文本重命名后缀问.php /.php 格式,看具体要求上传。

Pass-01:

显示页面源代码,发现是js对不合法文件进行检查,上传修改为.jpg的php文件直接修改后缀名为.php,使用burpsuite工具抓包,再将jpg改为php,然后点击Forward即可完成上传

Pass-02:

上传一个1.php文件,用burp抓包。抓包后修改可上传文件类型,成功上传文件.

Pass-03:

显示页面源代码,黑名单验证,禁止上传.asp,.aspx,.php.jsp后缀的文件,我们可以php上传一个名为1.php5的文件,发现直接上传成功。

Pass-04:

显示页面源代码,黑名单验证增多,先上传一个.png文件,然后上传.htaccess后缀文件(内容:<IfModule mime_module>

AddHandler php5-script .gif

SetHandler application/x-httpd-php

</IfModule> ->把上传的png文件当成php5文件进行解读),再访问.png。

Pass-05:

显示页面源代码,发现可以用php. .绕过上传。

Pass-06:

显示页面源代码,发现这关有转换大小写的代码,可以上传大小写混合的后缀名来进行绕过。

Pass-07:

显示页面源代码, 发现有收尾去空,会去掉文件前后面加上的空格,但windows特性,文件名后空格会被直接删除,不能直接上传.php后加空格,所以我们要用burp抓包然后再添加空格。

Pass-08:

显示页面源代码,对比第四关,发现少了删除文件末尾的点一样使用burp抓包然后后缀加一个点,和第六关一样,windows文件后缀名不能加'.'所以我们要用burp抓包然后再添加点。

Pass-09:

显示页面源代码,发现有去除字符串,和前面关卡一样,在burp中抓包在文件名后加::$DATA。

Pass-10:

显示页面源代码,发现没有循环验证,也就是说转换大小写去除空格什么的它只验证一次,所以把后缀改为.phP. . ,直接开始实验,上传一个1.php抓包。

Pass-11:

显示页面源代码,黑名单验证,意思是如果上传了它这些后缀的文件,就会把后缀名删除所以我们只需要把后缀改为.pphphp,它删除掉中间的php后缀仍然为php。

Pass-12:

显示页面源代码,白名单绕过满足条件后先上传一个.png文件开始抓包,需要使用%00截断。

前置条件:

php版本小于5.3.4 ->无法下载

php_ini文件中的magic_quotes_gpc处于off状态。

步骤:

此电脑:phpstudy/www上方搜索php_ini

文档打开-查找-magic_quotes_gpc,on->off

Pass-13:

显示页面源代码,白名单绕过满足条件后先上传一个.png文件开始抓包,需要使用%00截断。

只是post请求不能自动编码%00,需要手动编码。

Pass-14:

上传图片马到服务器

显示页面源代码:只验证头部信息,只读2字节

图片码制作:直接页面截图,重命名为.txt文件,打开文件,将一句话木马黏贴进去,再进行重命名为3.png文件。

上传3.png文件,复制图像链接(http://upload-labs-master/upload/2720240909120007.png)构造使用include文件包含漏洞访问:http://upload-labs-master/include.php?file=upload/2720240909120007.png得到php解析。

注:有些浏览器对一句话木马敏感,不进行解析,需要把一句话木马换成无危害性的php输出函数:<?php phpinfo(); ?>

Pass-15:

显示页面源代码:

引入getimagesize函数对文件名前两位进行检查。

实质上与Pass-14 的只验证头部信息,只读2字节含义相同,做法也相同。

Pass-16:

显示页面源代码:

前置条件:

1.php>5.3

2.需要开启php_ini的allow_url_fopen模块 ->allow_url_fopen=On

3.需要开启php_exif模块

重启apache与mysql

接下来做法与上一关相同:

相关推荐
BenSmith10 小时前
从零上手嵌入式 RTOS:以 Raspberry Pi Pico 2 WH 为例的烧录、定制构建与多系统对比指南
安全
汇智信科11 小时前
训练安全管理系统:赋能军消装备训练,实现全流程智能化管控
安全·训练安全管理·装备训练智能化·军事训练保障·消防训练管理
其实防守也摸鱼14 小时前
CTF密码学综合教学指南--第三章
开发语言·网络·python·安全·网络安全·密码学
其实防守也摸鱼14 小时前
CTF密码学综合教学指南--第四章
网络·笔记·安全·网络安全·密码学·ctf
DevilSeagull14 小时前
电脑上安装的服务会自动消失? 推荐项目: localhostSCmanager. 更好管理你的服务!
测试工具·安全·react·vite·localhost·hono·trpc
@insist12315 小时前
信息安全-防火墙技术演进全景:从代理NAT 到下一代及专项防火墙
网络·安全·web安全·软考·信息安全工程师·软件水平考试
不会编程的懒洋洋17 小时前
C# P/Invoke 基础
开发语言·c++·笔记·安全·机器学习·c#·p/invoke
时空系18 小时前
第10篇:归属权与借用——Rust的安全保障 Rust中文编程
开发语言·安全·rust
Chockmans18 小时前
春秋云境CVE-2017-3506
安全·web安全·网络安全·系统安全·安全威胁分析·春秋云境·cve-2017-3506
开开心心就好18 小时前
近200个工具的电脑故障修复合集
安全·智能手机·pdf·电脑·consul·memcache·1024程序员节