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

【DVWA系列】——File Upload——low详细教程(webshell工具冰蝎)

本文仅用于技术研究,禁止用于非法用途。
Author:枷锁

文章目录

  • 一、环境准备
  • 二、漏洞利用步骤
    • 1. 上传冰蝎WebShell
    • 2. 冰蝎连接WebShell
  • 三、避坑指南
  • 四、防御建议(开发者视角)
  • 总结

以下是 DVWA File Upload (Low级别) 配合冰蝎(Behinder)的完整实战教程,涵盖环境配置、漏洞原理、WebShell上传及冰蝎连接全流程,附带避坑指南:


一、环境准备

  1. DVWA配置

    • 确保DVWA安全级别设为Low(访问 http://你的IP/dvwa/security.php 设置)。
      在这里插入图片描述

    Linux环境检查上传目录权限(避免报错 Folder is not writable):

    chmod 777 /var/www/html/dvwa/hackable/uploads  # Linux
    

    Windows环境需手动设置uploads文件夹完全控制权限。

  2. 冰蝎工具准备

    • 下载冰蝎客户端:
      官网地址:https://github.com/rebeyond/Behinder/releases(推荐v3.0,兼容Java 8)。
    • 安装JDK 8并配置环境变量(冰蝎3运行必需)。
      双击打不开的情况解决方案:
      定位到冰蝎目录结构下,右击空白出——>在终端中打开——>输入java -jar Bebinder.jar
      避免忘记,可以做一个简单的标注。
      在这里插入图片描述

二、漏洞利用步骤

1. 上传冰蝎WebShell

  • 获取WebShell文件
    解压冰蝎安装包 → 进入 server 文件夹 → 复制 php 目录下的 shell.php(默认密码 rebeyond)。
  • 上传至DVWA
    • 访问DVWA的 File Upload 模块 → 点击 Browse 选择 shell.php → 点击 Upload
      在这里插入图片描述

    • 成功提示

      /dvwa/hackable/uploads/shell.php succesfully uploaded!
      
    • 复制文件路径:http://你的IP/dvwa/hackable/uploads/shell.php

2. 冰蝎连接WebShell

  1. 启动冰蝎

    • 运行 Behinder.jar → 右键空白处 → 选择 新增
  2. 配置连接

    • URL:粘贴复制的 shell.php 路径(如 http://192.168.1.100/dvwa/hackable/uploads/shell.php)。
    • 密码:输入 rebeyond(默认密码,位于WebShell源码中)。
    • 脚本类型:选择 PHP → 点击 保存
      在这里插入图片描述
      在这里插入图片描述
  3. 连接验证

    • 双击新增的记录 → 状态显示 已连接 → 进入管理界面(可操作文件、命令、数据库等)。
      在这里插入图片描述

三、避坑指南

  1. 上传失败处理

    • 报错 Your image was not uploaded:检查 uploads 目录权限(必须可写)。
    • 冰蝎连接超时:关闭防火墙或放行冰蝎流量(Windows Defender/iptables)。
  2. 冰蝎连接问题

    • 密码错误:用文本编辑器打开 shell.php,确认 $key 的值(默认 e45e329feb5d925b)。
    • Java版本冲突:卸载高版本JDK,确保系统仅安装 JDK 8

四、防御建议(开发者视角)

  1. 禁用危险函数:在 php.ini 中禁用 systemeval 等函数。
  2. 文件类型白名单:仅允许 .jpg, .png 等非可执行格式。
  3. 重命名文件:对上传文件使用随机文件名(如 md5(原文件名 + 时间戳).jpg)。
  4. 存储隔离:将上传目录设为不可解析(如Nginx配置 location ~* /uploads/.*\.php$ { deny all; })。

总结

  • 漏洞本质:Low级别无任何过滤 → 直接上传.php即可获取服务器权限。
  • 冰蝎优势:流量加密(AES)绕过WAF检测,功能远超传统菜刀。
  • 实战意义:理解无防护场景的危害性,强化“代码校验 + 存储隔离”的防御意识。

宇宙级免责声明​​
🚨 重要声明:本文仅供合法授权下的安全研究与教育目的!🚨
1.合法授权:本文所述技术仅适用于已获得明确书面授权的目标或自己的靶场内系统。未经授权的渗透测试、漏洞扫描或暴力破解行为均属违法,可能导致法律后果(包括但不限于刑事指控、民事诉讼及巨额赔偿)。
2.道德约束:黑客精神的核心是建设而非破坏。请确保你的行为符合道德规范,仅用于提升系统安全性,而非恶意入侵、数据窃取或服务干扰。
3.风险自担:使用本文所述工具和技术时,你需自行承担所有风险。作者及发布平台不对任何滥用、误用或由此引发的法律问题负责。
4.合规性:确保你的测试符合当地及国际法律法规(如《计算机欺诈与滥用法案》(CFAA)、《通用数据保护条例》(GDPR)等)。必要时,咨询法律顾问。
5.最小影响原则:测试过程中应避免对目标系统造成破坏或服务中断。建议在非生产环境或沙箱环境中进行演练。
6.数据保护:不得访问、存储或泄露任何未授权的用户数据。如意外获取敏感信息,应立即报告相关方并删除。
7.免责范围:作者、平台及关联方明确拒绝承担因读者行为导致的任何直接、间接、附带或惩罚性损害责任。

🔐 安全研究的正确姿势:
✅ 先授权,再测试
✅ 只针对自己拥有或有权测试的系统
✅ 发现漏洞后,及时报告并协助修复
✅ 尊重隐私,不越界

⚠️ 警告:技术无善恶,人心有黑白。请明智选择你的道路。

希望这个教程对你有所帮助!记得负责任地进行安全测试。

http://www.lryc.cn/news/587212.html

相关文章:

  • Vue Router 完全指南:从入门到实战,高效管理前端路由
  • 12.I/O复用
  • 光盘处理难题不用愁,DVDFab 来救场
  • 博客项目 laravel vue mysql 第五章 标签功能
  • 从 Intel MacBook 迁移到 ARM MacBook 的完整指南
  • 【牛客刷题】四个选项:高考选择题方案统计(并查集+动态规划)
  • 【基于开源大模型(如deepseek)开发应用及其发展趋势的一点思考】
  • 时序预测 | Matlab代码实现VMD-TCN-GRU-MATT变分模态分解时间卷积门控循环单元多头注意力多变量时序预测
  • 【Linux系统】进程状态 | 进程优先级
  • 未来航空电子系统
  • C语言基础知识--文件读写(一)
  • 移动端设备本地部署大语言模型(LLM)
  • React强大且灵活hooks库——ahooks入门实践之状态管理类hook(state)详解
  • [Plecs基础知识系列]基于Plecs的半导体热仿真方法(实战篇)_1.建立电路模型
  • Linux修炼:开发工具
  • 《每日AI-人工智能-编程日报》--2025年7月12日
  • 使用Starrocks替换Clickhouse的理由
  • LeetCode经典题解:21、合并两个有序链表
  • Mybatis自动创建数据库表,并根据创建的表自动生成Mvc框架基础代码
  • CentOS系统下前后端项目部署攻略
  • Extended Nested Arrays for Consecutive Virtual Aperture Enhancement
  • C++——static成员
  • win10下的wsl2扩充空间
  • CUDA 编程笔记:使用 CUDA 加速矩阵乘法
  • 代码随想录算法训练营第三十二天|动态规划理论基础、LeetCode 509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯
  • 终极剖析HashMap:数据结构、哈希冲突与解决方案全解
  • 热点代码探测确定何时JITTest01
  • 深度学习图像分类数据集—水质量识别分类
  • 【计算机网络架构】环型架构简介
  • js入门01