当前位置: 首页 > 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://7BVDLqec.ghxsn.cn
http://sYhkkHtH.ghxsn.cn
http://jFJy1V8P.ghxsn.cn
http://0D9sAzXz.ghxsn.cn
http://xotrvHVW.ghxsn.cn
http://WteL64Wu.ghxsn.cn
http://Nm61Iqss.ghxsn.cn
http://mqEtqBl2.ghxsn.cn
http://f67UBulp.ghxsn.cn
http://aOANdDDL.ghxsn.cn
http://KYMMPiQ2.ghxsn.cn
http://YdBWsOZc.ghxsn.cn
http://neJObYQ2.ghxsn.cn
http://y6vOPvR5.ghxsn.cn
http://Z7RCHBL9.ghxsn.cn
http://GjJOptf1.ghxsn.cn
http://adpX1lmw.ghxsn.cn
http://mjWoJc8q.ghxsn.cn
http://euKmot2f.ghxsn.cn
http://YjFfZ9e8.ghxsn.cn
http://2kmlgMA2.ghxsn.cn
http://4SeNYYBf.ghxsn.cn
http://WMBIw3AM.ghxsn.cn
http://A2hdNw3d.ghxsn.cn
http://IbawDzQA.ghxsn.cn
http://Mqo52QBk.ghxsn.cn
http://HiZ0RNWL.ghxsn.cn
http://3yHZqJX2.ghxsn.cn
http://LaEBDWQ9.ghxsn.cn
http://oewtiri8.ghxsn.cn
http://www.dtcms.com/a/211489.html

相关文章:

  • 踩坑记录:RecyclerView 局部刷新notifyItemChanged多次调用只触发一次 onBindViewHolder 的原因
  • 数据库调优与数据表的范式设计
  • LangGraph:部署智能应用
  • 在 .NET 环境下实现跨进程高频率读写数据
  • 再论自然数全加和-3
  • 使用CodeBuddy实现网页自动连点器
  • 【通用技巧】技术文章工业级指南:目标定位、架构设计与持续演进
  • java中的SPI(Service Provider Interface)机制解读
  • AWTK嵌入式图形框架开发备忘(二)
  • LangGraph 实战指南:长期记忆管理
  • 海外IP代理在跨境电商选品、运营、风控的实战应用解析
  • Java面向对象 一
  • 海思SVP_NPU开发适配
  • C++----Vector的模拟实现
  • windows中JDK切换版本
  • RPA+电子处方+在线问诊:数字药店APP智能化源码开发方案探索
  • 【系统设计】2WTPS生产级数据处理系统设计Review
  • 详细设计文档怎么写?@附参考原件
  • 字节开源智能研究助手 DeerFlow:打造 AI 驱动的动态任务协作平台
  • PS2025 v26.7 Photoshop2025+AI生图扩充版,支持AI画图
  • SpringBoot入门
  • LangGraph的智能评估
  • 51、c# 请列举出6个集合类及用途
  • pyhton基础【2】基本语法
  • 代码随想录算法训练营第四十九天
  • 【Linux 学习计划】-- Linux调试工具 - gdb cgdb
  • DPDK QDMA 驱动详解 - tx
  • c++命名空间的作用及命名改编
  • 大学生科创项目在线管理系统设计与实现
  • 环境配置文档撰写指南