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

web安全测试渗透案例知识点总结(下)——小白入狱

在这里插入图片描述

目录

    • @[TOC](目录)
    • 一、更多详细的实际案例教程
      • 案例1:文件上传漏洞利用
      • 案例2:目录遍历(Path Traversal)漏洞检测
      • 案例3:暴力破解登录密码
      • 案例4:命令注入漏洞
      • 案例5:身份认证绕过(Password Reset Bypass)
      • 案例6:弱加密存储(Weak Encryption)
      • 案例7:子域名接管(Subdomain Takeover)
      • 案例8:API接口未授权访问
      • 案例9:信息泄露(Sensitive Data Exposure)

一、更多详细的实际案例教程

案例1:文件上传漏洞利用

目标:利用文件上传功能执行恶意代码。

步骤

  1. 信息收集

    • 查找网站中的文件上传入口(如用户头像上传、图片上传)。
  2. 漏洞检测

    • 上传一个无害的文件,如.txt文件,确认上传路径或系统对文件格式的限制。
    • 尝试上传一个包含PHP代码的文件,如webshell.php,内容如下:
      <?php echo "File uploaded"; system($_GET['cmd']); ?>
      
    • 如果文件上传成功,并且可以通过webshell.php访问文件,那么说明存在文件上传漏洞。
  3. 漏洞利用

    • 访问文件,并通过cmd参数执行命令,例如:
      http://example.com/uploads/webshell.php?cmd=ls
      
    • 如果可以执行命令,可以进一步获取文件目录、读取敏感文件或提权。

防御措施

  • 限制上传文件类型,仅允许图片等特定格式。
  • 对上传目录设置权限,防止执行文件中的代码。

案例2:目录遍历(Path Traversal)漏洞检测

目标:通过路径遍历漏洞访问服务器上的敏感文件,如/etc/passwd

步骤

  1. 信息收集

    • 寻找URL中的文件路径参数(如page=about.html)。
  2. 漏洞检测

    • 修改参数,尝试输入../来访问上级目录,如page=../../etc/passwd
    • 如果服务器未正确过滤,可能会返回系统文件内容,验证存在路径遍历漏洞。
  3. 漏洞利用

    • 继续遍历目录结构,查找其他敏感文件,如/etc/shadow、配置文件等。

防御措施

  • 严格限制用户输入路径,过滤../等特殊字符。
  • 使用绝对路径,避免接受用户输入的相对路径。

案例3:暴力破解登录密码

目标:通过暴力破解方法获取用户登录密码。

步骤

  1. 信息收集

    • 获取登录页面URL和参数,确认是否有失败次数限制或验证码机制。
  2. 漏洞检测

    • 使用工具Hydra或Burp Suite的Intruder模块进行暴力破解。
    • 将用户名固定,尝试不同的密码组合。
      hydra -l admin -P /path/to/passwords.txt http://example.com/login.php
      
  3. 漏洞利用

    • 如果找到正确的密码,则可以进入管理员账户。

防御措施

  • 实施强密码策略,增加密码复杂性。
  • 添加验证码,限制尝试次数,使用账户锁定机制。

案例4:命令注入漏洞

目标:通过输入恶意命令,使服务器执行未授权操作。

步骤

  1. 信息收集

    • 查找可以输入系统命令的接口,如IP地址的ping检测、域名解析等。
  2. 漏洞检测

    • 在输入框中输入127.0.0.1; ls127.0.0.1 && ls
    • 如果服务器返回目录列表,说明存在命令注入漏洞。
  3. 漏洞利用

    • 利用漏洞执行其他系统命令,获取系统信息或进一步尝试提权。

防御措施

  • 不接受用户可控的输入作为命令执行内容。
  • 使用白名单限制输入内容,或通过脚本语言的安全模式运行系统命令。

案例5:身份认证绕过(Password Reset Bypass)

目标:通过未授权的方式重置用户密码。

步骤

  1. 信息收集

    • 找到密码重置页面,观察是否有邮箱或安全问题验证环节。
  2. 漏洞检测

    • 在密码重置请求中,拦截并修改验证信息,如更改邮箱参数为攻击者的邮箱。
    • 检查系统是否仅依赖可修改的参数进行重置验证。
  3. 漏洞利用

    • 如果系统没有二次验证,通过修改后的邮箱链接重置密码,登录目标账户。

防御措施

  • 在密码重置流程中增加身份验证环节,确保邮箱不易被篡改。
  • 生成单一有效的重置链接并设置过期时间。

案例6:弱加密存储(Weak Encryption)

目标:通过加密弱点破解密码或敏感信息。

步骤

  1. 信息收集

    • 查找服务器中的密码存储方式,确认是否采用MD5、SHA-1等不安全的加密方法。
  2. 漏洞检测

    • 使用哈希破解工具如John the Ripper或hashcat暴力破解哈希密码。
    • 使用预先生成的彩虹表对已知哈希值进行匹配。
  3. 漏洞利用

    • 获取明文密码后,尝试登录或进一步访问敏感信息。

防御措施

  • 使用强加密算法(如bcrypt、Argon2)存储密码。
  • 添加盐值(Salt)增加密码的安全性。

案例7:子域名接管(Subdomain Takeover)

目标:接管一个未使用的子域名,冒充官方网站。

步骤

  1. 信息收集

    • 使用工具Sublist3r或dnsrecon查找目标网站的所有子域名。
    • 检查子域是否指向不存在的外部资源(如GitHub、Heroku等)。
  2. 漏洞检测

    • 访问子域名,观察是否出现404错误或相关错误页面,表示未被使用。
    • 若未指向有效资源,则可能存在子域接管风险。
  3. 漏洞利用

    • 在子域指向的服务商平台上创建具有同名的服务,实现子域名接管。

防御措施

  • 定期检查DNS记录,移除未使用的子域名解析。
  • 不要将子域名指向暂时不使用的外部资源。

案例8:API接口未授权访问

目标:通过未授权的API接口获取敏感信息。

步骤

  1. 信息收集

    • 查找系统中可访问的API接口(如/api/users/1)。
  2. 漏洞检测

    • 直接访问API接口,观察是否能获取敏感数据。
    • 尝试在请求头中加入不同的参数,如User-Agent、Referer等,检查访问权限控制是否严格。
  3. 漏洞利用

    • 获取用户敏感信息后,利用其他API接口进行操作,如账户修改或数据导出。

防御措施

  • 实施严格的身份验证和权限管理,确保每个接口仅允许特定用户访问。
  • 不要将敏感信息直接暴露在未经授权的API接口中。

案例9:信息泄露(Sensitive Data Exposure)

目标:通过未保护的文件或信息泄露敏感数据。

步骤

  1. 信息收集

    • 使用Dirbuster或GoBuster查找隐藏文件或目录。
    • 查找敏感文件,如.git目录、配置文件(如config.php)、备份文件等。
  2. 漏洞检测

    • 访问这些文件或目录,观察是否包含敏感数据(如数据库连接信息、API密钥)。
  3. 漏洞利用

    • 获取敏感信息后,尝试进一步攻击,如连接数据库或调用受保护的API。

防御措施

  • 不将敏感文件暴露在Web根目录,定期检查并删除不必要的文件。
  • 使用访问控制限制敏感信息的访问权限。

以下是针对上述内容的概括数据表,列出了每种漏洞的名称、目标、检测步骤、利用方法以及防御措施。

漏洞类型目标描述检测步骤描述利用方法防御措施
文件上传漏洞利用文件上传功能执行恶意代码上传文件测试格式限制,尝试上传包含代码的文件执行恶意代码或命令限制文件类型、权限配置
目录遍历漏洞通过路径遍历访问敏感文件修改路径参数为../检测是否可访问上级目录获取系统敏感文件信息限制输入路径、过滤特殊字符
暴力破解登录通过暴力破解获取用户密码使用Hydra等工具进行密码组合测试使用破解得到的密码登录强密码策略、验证码、限制尝试次数
命令注入漏洞通过命令注入执行未授权系统命令在输入框中加入命令符号(如;&&执行系统命令获取系统信息限制用户输入、不使用动态命令构造
密码重置绕过通过绕过验证重置用户密码修改重置请求中的邮箱参数检测是否存在二次验证利用篡改后的链接重置密码增加验证环节,防止参数篡改
弱加密存储破解弱加密的敏感信息查找是否使用MD5或SHA-1等不安全的哈希算法破解哈希获取明文密码使用强加密算法,如bcrypt或Argon2
子域名接管接管未使用的子域名查找未使用的子域名并验证其是否存在404错误在外部平台上创建相同名称的服务实现接管定期检查并删除未用子域名
未授权API访问利用未授权的API接口获取敏感数据直接访问接口或修改请求头进行访问测试获取敏感数据,尝试进一步访问实施严格的身份验证和权限管理
信息泄露通过未保护的文件访问敏感信息使用工具查找隐藏目录或文件(如.git或备份文件)获取敏感文件内容,尝试进一步攻击不将敏感文件暴露在Web目录,设置访问权限

相关文章:

web安全测试渗透案例知识点总结(下)——小白入狱

目录 [TOC](目录)一、更多详细的实际案例教程案例1&#xff1a;文件上传漏洞利用案例2&#xff1a;目录遍历&#xff08;Path Traversal&#xff09;漏洞检测案例3&#xff1a;暴力破解登录密码案例4&#xff1a;命令注入漏洞案例5&#xff1a;身份认证绕过&#xff08;Passwor…...

【专题】数据库的安全性

1. 数据库安全性概述 数据库存在的不安全因素&#xff1a; 非授权用户对数据库的恶意存取和破坏&#xff1b; 数据库中重要或敏感的数据被泄露&#xff1b; 安全环境的脆弱性。 数据库的安全性与计算机系统的安全性&#xff0c;包括计算机硬件、操作系统、网络系统等的安全…...

【含开题报告+文档+源码】基于Java的房屋租赁服务系统设计与实现

开题报告 随着城市化进程的加速和人口流动性的增加&#xff0c;租房需求不断增长。传统的租赁方式往往存在信息不对称、流程不规范等问题&#xff0c;使得租户和房东的租赁体验不佳。而而房屋租赁系统能够提供便捷、高效的租赁服务&#xff0c;满足租户和房东的需求。房屋租赁…...

数据结构模拟题[十]

数据结构试卷&#xff08;十&#xff09; 一、选择题 (24 分) 1&#xff0e;下列程序段的时间复杂度为&#xff08; &#xff09;。 i0 &#xff0c;s0&#xff1b; while (s<n) {ssi &#xff1b;i &#xff1b;} (A) O(n 1/2 ) (B) O(n 1/3 ) (C) O(n) (D) O(n 2 ) …...

Java基于微信小程序的美食推荐系统(附源码,文档)

博主介绍&#xff1a;✌程序猿徐师兄、8年大厂程序员经历。全网粉丝15w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…...

基于CNN-RNN的影像报告生成

项目源码获取方式见文章末尾&#xff01; 600多个深度学习项目资料&#xff0c;快来加入社群一起学习吧。 《------往期经典推荐------》 项目名称 1.【PaddleNLP的FAQ问答机器人】 2.【卫星图像道路检测DeepLabV3Plus模型】 3.【GAN模型实现二次元头像生成】 4.【CNN模型实现…...

MacOS如何读取磁盘原始的扇区内容,恢复误删除的数据

MacOS 也是把磁盘当成一个文件&#xff0c;也是可以使用 dd来读取&#xff0c;命行令行如下&#xff1a; sudo dd if/dev/disk2 bs512 count1 skip100 ofsector_100.bin 这个就是读取 /dev/disk2这个磁盘每100这个sector, bs表示扇区大小是512. 但是你直接用读&#xff0c;应…...

创客匠人:打造IP陷入迷茫?20位大咖直播如何破局,实现财富增长

就在明天&#xff01; 11月4日-8日&#xff0c;全球创始人IP领袖峰会线上启动会——《2025年知识IP创新增长训练营*20位各界大咖标杆集体赋能》直播活动&#xff0c;即将重磅来袭&#xff01; 20位行业大咖5大篇章主题内容的强大组合&#xff0c;将为你逐一精彩呈现&#xff…...

视觉目标检测标注xml格式文件解析可视化 - python 实现

视觉目标检测任务&#xff0c;通常用 labelimage标注&#xff0c;对应的标注文件为xml。 该示例来源于开源项目&#xff1a;https://gitcode.com/DataBall/DataBall-detections-100s/overview 读取 xml 标注文件&#xff0c;并进行可视化示例如下&#xff1a; #-*-coding:ut…...

clion远程配置docker ros2

CLION与docker中的ROS2环境构建远程连接 设备前提开启SSH服务CLION配置CLION配置CLION IDE远程连接过程实现CLION SSH 远程部署 开启fastlio2debug之旅 设备前提 本地宿主机&#xff1a;UBUNTU 20.04 docker container:ros2_container (内置环境ROS2 humble) 通过之前的tcp连接…...

微信小程序 uniapp 腾讯地图的调用

/* 提前在您的app.json上加上这些代码 "permission": { "scope.userLocation": { "desc": "你的位置信息将用于地图中定位" } …...

OLAP平台架构演化历程

OLAP平台架构演化历程 0 导读 随着大数据的持续发展及数字化转型的兴起&#xff0c;大数据OLAP分析需求越来越迫切&#xff0c;不论是大型互联网企业&#xff0c;还是中小型传统企业&#xff0c;都在积极探索及实践OLAP引擎选型及平台架构建设&#xff0c;大数据技术的蓬勃发展…...

OmniGen: Unified Image Generation(代码的复现)

文章目录 论文简介模型的部署需要下载的预训练权重 模型的生成效果图像编辑的效果风格迁移的效果 总结 论文简介 OmniGen的github项目地址 OmniGen: Unified Image Generation。OmniGen 在各种图像生成任务中都表现出了卓越的性能&#xff0c;并可能大大超过现有扩散模型的极…...

keepalive+mysql8双主

1.概述 利用keepalived实现Mysql数据库的高可用&#xff0c;KeepalivedMysql双主来实现MYSQL-HA&#xff0c;我们必须保证两台Mysql数据库的数据完全一致&#xff0c;实现方法是两台Mysql互为主从关系&#xff0c;通过keepalived配置VIP&#xff0c;实现当其中的一台Mysql数据库…...

C#-基础构造函数、析构函数

一&#xff1a;基础的构造函数 实例化对象时 调用的函数&#xff0c;主要是用来初始化成员变量的。 在构造函数时&#xff0c;对象的初始化是自动完成的&#xff0c;为默认值&#xff0c;但为满足一些特殊数据的初始化操作。可不使用系统默认给的构造函数 基本语法&#xff…...

Ubuntu删除docker

文章目录 安装依赖1.安装操作系统&#xff1a;2.CPU支持 安装docker1.查看系统版本2.执行卸载 安装依赖 1.安装操作系统&#xff1a; 高于 Ubuntu 20.04(LTS) 版本 2.CPU支持 ARM和X86_64 安装docker 1.查看系统版本 cat /etc/*releas*uname -a2.执行卸载 检查本地dock…...

系统地介绍Qt的QtConcurrent模块

本文使用了AI生成的内容&#xff0c;请注意甄别&#xff01; 本文系统地介绍Qt的QtConcurrent模块&#xff0c;它允许开发者无需使用低级线程原语&#xff08;如互斥锁、读写锁、等待条件或信号量&#xff09;即可编写多线程程序。下面将由浅入深地逐步介绍这一内容&#xff1a…...

【进阶sql】复杂sql收集及解析【mysql】

开发时会出现&#xff0c;必须写一些较复杂sql的场景 可能是给会sql的客户 提供一些统计sql 或是临时需要统计数据信息但是 开发一个统计功能有来不及的情况 也可能是报表系统组件 只支持 sql统计的情况 特地记录下这些sql 作为积累 substring 截取查询出的字符串&#xff…...

达梦检查工具dmdbchk的性能

摘要&#xff1a; 本文介绍了dmdbchk的基础使用&#xff0c;例如检查信号量&#xff0c;其性能大约是10GB/分钟&#xff0c;新版本的会更快。 当数据库出问题时&#xff0c;可能会考虑用dmdbchk工具检查数据文件和库内部是否出现异常。对于450G的库会耗时多久&#xff1f; 答&…...

Docker是什么

docker是什么 docker本质docker和虚拟机的区别docker架构Docker Registry镜像仓库分类镜像仓库工作机制docker Hub docker本质 Docker 本质其实是 LXC 之类的增强版&#xff0c;它本身不是容器&#xff0c;而是容器的易用工具。容 器是 linux 内核中的技术&#xff0c;Docker 只…...

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇&#xff0c;在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下&#xff1a; 【Note】&#xff1a;如果你已经完成安装等操作&#xff0c;可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作&#xff0c;重…...

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建

制造业采购供应链管理是企业运营的核心环节&#xff0c;供应链协同管理在供应链上下游企业之间建立紧密的合作关系&#xff0c;通过信息共享、资源整合、业务协同等方式&#xff0c;实现供应链的全面管理和优化&#xff0c;提高供应链的效率和透明度&#xff0c;降低供应链的成…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

Qt Widget类解析与代码注释

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码&#xff0c;写上注释 当然可以&#xff01;这段代码是 Qt …...

基于Uniapp开发HarmonyOS 5.0旅游应用技术实践

一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架&#xff0c;支持"一次开发&#xff0c;多端部署"&#xff0c;可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务&#xff0c;为旅游应用带来&#xf…...

抖音增长新引擎:品融电商,一站式全案代运营领跑者

抖音增长新引擎&#xff1a;品融电商&#xff0c;一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中&#xff0c;品牌如何破浪前行&#xff1f;自建团队成本高、效果难控&#xff1b;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...

前端开发面试题总结-JavaScript篇(一)

文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包&#xff08;Closure&#xff09;&#xff1f;闭包有什么应用场景和潜在问题&#xff1f;2.解释 JavaScript 的作用域链&#xff08;Scope Chain&#xff09; 二、原型与继承3.原型链是什么&#xff1f;如何实现继承&a…...

ip子接口配置及删除

配置永久生效的子接口&#xff0c;2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...

SQL慢可能是触发了ring buffer

简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...