文件上传漏洞及防_3 | 学习笔记

简介: 学习笔记 文件上传漏洞及防_3

开发者学堂课程【网络安全攻防 - Web渗透测试 文件上传漏洞及防_3学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/630/detail/9899


文件上传漏洞及防_3


内容介绍:

一、高安全级别

二、认识木马程序


一、高安全级别

1、方法:

将上传的文件删除,再设置为高安级别,先找到 upload,再找到源码查看,会发现高安全级别限制的是文件的扩展名,使文件的后缀必须是 jpg 或者是大写的 jpg

2、缺点:

如果用这种方法来限制图像,会造成使用不便,会有许多种的图片无法上传。

3、优点:

尽管这种方法,限制过多,但仍非常好用。

4、再次演示:

现在状态(代理工程是打开的,拦截是关闭的)。浏览一个图片,然后再浏览到 shell1,再 upload 是不可以的。

image.png

进行调整:

将代理工程开启,再次选择 shell1,点击 upload,然后等待,接着来到另一边。若无响应,可通过钩住并摇晃鼠标来使其响应。另外它的类型即使更改也不会有任何作用,因为此法限制的不是文件的类型,而是文件的后缀,所以若后缀并非 jpg JPG,一定完成不了。

5、更改的演示(加 jpg)

进行更改,但仍不可正常使用,如图。

image.png

如图,演示后显示无此图片。但正常情况下此图片,应该存在,然后进行回推,查找错误。

首先复制链接,在 caidao 进行尝试,新建一个 shell,密码依旧是 chopper,被要求选择脚本类型,如下图。选择脚本类型 PHP,进行添加,然后进行如下选择

image.png

后,发现是复制出错,接着再次进行回推,发现在复制时少了’..‘,导致出错。

再次进行操作,复制链接,新建shell,选择PHP的脚本类型,为防止不建议申许,将第二个文件删除,

再进行如下操作

image.png

能看到网站的结构,但还不能进行一些操作。如尝试下载一个文件,但无法下载。

然后找到 backable uploads,尝试进行删除,但仍无法删掉。

image.png

所以由此得出,通过更改文件的后缀这种方法,是行不通的。

6、回顾:

在第一安全级别,未作任何限制;在中安全级别,对文件类型进行了一定的限制;在高安全级别,限制文件的后缀。


二、认识木马程序

1、常见木马程序:

大马(代码量和功能比小马多,一般会进行二次编码机密,防止被安全防火墙或入侵系统检测到)、小马(一句话,木马也叫小马,即整个 shell 代码量只有一行,一般是系数执行汉书)。

2、木马一般调用一些函数,如图,若使用 eval 则只能调用自身一些函数;若使用 system 则调用 Linux。进行试验,由于没有一个叫 shell2的文件,那便新建一个文件,在改变一个格式,进行保存。

由于是在高安全级别,因而不可上传,为了演示,将拦截功能关闭,改为低或中安全级别,点击浏览,进行 upload,显示成功。随后复制路径,验证文件是否存在。

image.png

加参数进行执行,如图(添加函数为了打印 php 信息,php 有很多函数。但为了执行,此处必须与方括号对应)

3、如果将 eval 换成 system,其他均不变。

先复制一份 shell2,将其命名为 shell3,再将内容稍作更改后将 shell3传上去,浏览,然后选择 upload,出现如下反应

image.png

由于在此之前使用的是 system,回车返回一下,查看路径是否正确,结果发现不通,可以认定它是个命令,

image.png

先找到它的 id,如图

image.png

4、作为此机器 www-data 是个普通用户,拿到的是 webshell,拿到的是 www-data 用户的权限,若需其他权限则需要提权。

image.png

如想在 tmp 下建立一个 file1的文件,如图

image.png

发现设置的命令,只要有权限,便可以执行。但这种执行方法较中国菜刀相比没有那么便利,此方法需要在搜索栏逐字输入,比较麻烦。所以里面的请求方法尽量用 post,这个方法较前面的方法更加便利。

5、利用 post 再次进行演示,新建一个 shell5,选择记事本的打开方式,记事本之中的不再是 request 而是 post,然后传上去,浏览,选择 shell5,点击 upload

随后复制链接,在中国菜刀使用,选择 caidao,随后输入密码,再检验是否成功,选择 dvwa,然后选择 backable,随后点击 uploads,尝试是否可以删除文件,发现可以正常删除文件,证明成功

image.png

相关文章
|
6月前
|
存储 JSON Java
你会不会5种牛犇的yml文件读取方式?
我是小假 期待与你的下一次相遇 ~
165 5
|
分布式计算 DataWorks 调度
oss数据同步maxcompute报错
在使用阿里云DataWorks同步OSS数据至MaxCompute时,遇到“Input is not in the .gz format”的报错。问题源于目标目录中存在一个空文件,导致同步时识别错误。
|
存储 算法 Unix
文件系统基础 (二)——文件的物理结构
文件系统基础 (二)——文件的物理结构
971 1
|
存储 JavaScript 前端开发
Vue中实现图片上传,上传后的图片回显,存储图片到服务器 【使用对象存储OSS】
这篇文章介绍了在Vue中实现图片上传到阿里云OSS对象存储服务的完整流程,包括服务端签名直传的前提知识、后端设置、前端组件封装以及图片上传和回显的效果展示。
|
jenkins Java 持续交付
运用Jenkins实现Java项目的持续集成与自动化部署
在新建的Jenkins Job中,我们需要配置源码管理,通常选择Git、SVN等版本控制系统,并填入仓库地址和凭据。接着,设置构建触发器,如定时构建、轮询SCM变更、GitHub Webhook等方式,以便在代码提交后自动触发构建过程。
528 2
|
12月前
|
机器学习/深度学习 人工智能 自然语言处理
师资研修|AI技术赋能教材建设和课程开发——乌鲁木齐某教育部门
近日,TsingtaoAI派出AI专家为乌鲁木齐中职院校的教师团队,举办“AI技术赋能教材建设与课程开发”的师资研修。此次培训由TsingtaoAI的AI专家高寒和教育专家刘建老师亲自授课,面对的是来自乌鲁木齐的教育工作者,特别是中职院校的教学骨干。整个活动不仅涉及人工智能技术本身的深度解析,还深入探讨了如何将这些前沿技术高效应用于教材和课程体系的创新。
432 0
|
开发框架 前端开发 小程序
跨平台开发框架的选择应该考虑哪些因素?
【10月更文挑战第25天】综合考虑以上因素,能够帮助您更准确地选择适合项目需求的跨平台开发框架,从而提高项目的成功率和开发效率,为用户提供更好的应用体验。
|
机器学习/深度学习 数据采集 监控
深度学习之可视化工具
基于深度学习的可视化工具旨在帮助研究人员和实践者更好地理解和解释深度学习模型的行为、性能和决策过程。这些工具通过图形界面和可视化技术,使得复杂的模型和数据变得更为直观和易于理解。
361 0
|
编译器
LabVIEW使用数据引用减少内存
LabVIEW使用数据引用减少内存
280 2