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

DVWA文件上传笔记

写在前面

首先感谢大佬网运少年在kali上配置DVWA的文章,完美解决了我的问题,相见恨晚
7.7、kali linux环境下搭建DVWA
7.8、linux 搭建dvwa时创建数据库显示Access denied for user‘dvwa‘@localhost (using password: YES)的解决办法

第一关

在这里插入图片描述
查看原始代码后发现对文件没有任何过滤,我们随意上传一个一句话木马

编写一个一句话木马,并将后缀名改为允许通过的内容

在这里插入图片描述

成功上传
在这里插入图片描述

手动连接,检测连通性,发现成功
在这里插入图片描述

第二关

在这里插入图片描述
可以看到源代码只是对文件后缀进行了过滤在这里插入图片描述

成功上传
在这里插入图片描述
用burp suit测试发现可以正常连接
在这里插入图片描述

第三关

在这里插入图片描述

查看源码好像还是对文件类型进行的限制,将第二关的图片传上去,发现报错了,所以一定有其他的障碍,这个障碍就是 getimagesize检测文件的真实类型在这里插入图片描述
使用burp suit进行抓包得到如下情况,可以看到,这一关对指定上传文件的 MIME 类型。这个 MIME 类型表明上传的文件是一个 JPEG 图像文件。
在这里插入图片描述
采用文件包含漏洞将一句话木马嵌入到图片的后面,得到一个新的图片

(ps:得到这样的提示是因为使用的图片太大了,源码中第17行限制了图片大小)
在这里插入图片描述

选取小图进行合成
在这里插入图片描述
成功上传
在这里插入图片描述

第四关

主要采取了四种过滤方法:
1、不信任报文,将文件生成独一无二的id后,做md5
在这里插入图片描述

2、对上传图片的真实类型做过滤
在这里插入图片描述
3、删除文件中注释部分,在合成新的图片,攻击者没有办法将木马写到注释中去,更不可能写道正文 getimagesize( $uploaded_tmp ) ) 会不满足
在这里插入图片描述
3、将原始图片删除掉,将恶意连接的可能彻底断绝,达到了安全的效果
在这里插入图片描述

在这里插入图片描述
可以看到当我上传一个正常的图片时,图片名会被转变为hash值另存到网站中
在这里插入图片描述

http://www.xdnf.cn/news/624169.html

相关文章:

  • SDL2常用函数:SDL_Surface 数据结构及使用介绍
  • Java核心基础
  • Python爬虫实战:研究Newspaper框架相关技术
  • [创业之路-376]:企业战略管理案例分析-战略制定/设计-市场洞察“五看”:看宏观之当前的社会发展趋势与战略应对
  • AtCoder Beginner Contest 407(ABCDE)
  • ⭐️⭐️⭐️白嫖的阿里云认证⭐️⭐️⭐️ 第三弹【课时2:RAG应用的构建和优化】for「大模型Clouder认证:RAG应用构建及优化」
  • 【Excel 支持正则的方法】解决VBA引入正则的方法和步骤
  • MFC:获取所有打印机的名称(打印机模块-1)
  • OpenHarmony外设驱动使用 (十四),WLAN
  • 基于51单片机红外人体检测、防盗报警
  • 【C/C++】线程状态以及转换
  • RabbitMQ 概述与安装
  • Spring AI 之结构化输出转换器
  • Python实现对大批量Word文档进行自动添加页码(16)
  • 使用腾讯云3台轻量云服务器快速部署K8s集群实战
  • 如何制作可以本地联网搜索的MCP,并让本地Qwen3大模型调用搜索回答用户问题?
  • Appium+python自动化(五)- 模拟器
  • axios报错: Uncaught ReferenceError: axios is not defined
  • Qt基础:数据容器类
  • 算法中的数学:费马小定理
  • redis配置带验证的主从复制
  • Windows 中动态库.dll 的 .lib 文件有什么作用?
  • x64_ubuntu22.04.5安装:cuda driver + cuda toolkit
  • 【Linux手册】Linux权限:系统世界的“门禁卡”
  • SOC-ESP32S3部分:10-GPIO中断按键中断实现
  • MySQL快速入门篇---联合查询
  • Vanna.AI:用检索增强技术革新SQL查询生成
  • Spark 中,map和foreach的区别
  • Spark on YARN 的运行架构总览
  • 构建跨平台C/C++项目的基石:现代构建套件设计指南