概述
文件上传之getimagesize函数绕过
文章目录
- 文件上传之getimagesize函数绕过
- 前言
- 一、什么是getimagesize函数
- 二、文件上传之getimagesize函数绕过
- 1. getimagesize函数绕过
- 2. 通过文件包含漏洞解析获得webshell
- 总结
前言
一、什么是getimagesize函数
getimagegesize()函数用于获取图像代销及相关信息,成功返回一个数组,失败则返回一个错误信息,总之是一个判断图片大小和类型的一个函数,也避免了直接更改后缀名的绕过。
二、文件上传之getimagesize函数绕过
1. getimagesize函数绕过
我们先进行pikachu中的练习,打开代码审计看看
这里进行实验
只允许上传图片,而且我将后缀名.php改为.png,但是图片打不开。
我们将一句话木马php和png文件进行合并试一下,有两种方法可以试一下
第一种可以用cmd进行修改,执行命令
copy /b test.jpg+test.php ok.jpg
但是上传的时候报错了,可能文件大小不支持
所以我们这里进行工具,合成新图片上传
我们使用这个软件
只需将jpg图片放进去就会进行合成,只能输入jpg图片哦
输入一句话木马,点击ok,这时图片就插入一句话木马了
我们打开图片发现已经注入了,这时我们进行上传图片
图片上传成功
我们获得图片路径
uploads/2022/04/25/9173926266b8737e383119814519.jpg
下一步就进行打开获得shell的步骤了
2. 通过文件包含漏洞解析获得webshell
但是我们合成的只是jpg图片,在网站中是无法打开的
我们需要转换为php文件才可以打开,这里我们想到两种方法,一种是解析漏洞,另一种是文件包含漏洞
这里我们使用文件包含漏洞进行解析,来获取shell
首先我们找一个存在文件包含漏洞的平台
我们在pikachu中找一个实验,点击上传文件后,复制网址就行修改就可以了
http://192.168.222.4/pikachu/vul/fileinclude/fi_local.php?filename=file1.php&submit=%E6%8F%90%E4%BA%A4
我们只需要将file1.php修改为我们当前图片的路径就行了
找file1.php文件的位置,找当前的目录,往前推一直找到unsafeupload的目录
…/…/unsafeupload/uploads/2022/04/25/9173926266b8737e383119814519.jpg
这是我们file1.php文件的当前路径
D:phpStudyWWWpikachuvulfileincludeincludefile1.php
回两级回到文件上传的位置
进行修改,结果为这个路径
http://192.168.222.4/pikachu/vul/fileinclude/fi_local.php?filename=…/…/unsafeupload/uploads/2022/04/25/9173926266b8737e383119814519.jpg&submit=%E6%8F%90%E4%BA%A4
我们将路径进行打开看一下,是否可以打开
发现打得开,文件修改成功。
这时文件是php文件,我们可以打开蚁剑进行连接获取shell,
输入网址和密码
成功获取shell,实验结束。
总结
本次实验是对文件上传漏洞绕过方法的补充,引入了getimagesize函数的绕过方法,结合了图片合成木马技术,文件包含漏洞的知识方法进行绕过,从而获取shell的过程。
最后
以上就是轻松画笔为你收集整理的渗透测试-文件上传之getimagesize函数绕过文件上传之getimagesize函数绕过前言一、什么是getimagesize函数二、文件上传之getimagesize函数绕过总结的全部内容,希望文章能够帮你解决渗透测试-文件上传之getimagesize函数绕过文件上传之getimagesize函数绕过前言一、什么是getimagesize函数二、文件上传之getimagesize函数绕过总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复