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

### 目录

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

    • 将用户名固定,尝试不同的密码组合。

      bash 复制代码
      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目录,设置访问权限
相关推荐
幽兰的天空5 小时前
介绍 HTTP 请求如何实现跨域
网络·网络协议·http
lisenustc5 小时前
HTTP post请求工具类
网络·网络协议·http
心平气和️5 小时前
HTTP 配置与应用(不同网段)
网络·网络协议·计算机网络·http
心平气和️5 小时前
HTTP 配置与应用(局域网)
网络·计算机网络·http·智能路由器
Mbblovey6 小时前
Picsart美易照片编辑器和视频编辑器
网络·windows·软件构建·需求分析·软件需求
北顾南栀倾寒7 小时前
[Qt]系统相关-网络编程-TCP、UDP、HTTP协议
开发语言·网络·c++·qt·tcp/ip·http·udp
GZ_TOGOGO7 小时前
PIM原理与配置
网络·华为·智能路由器
7ACE7 小时前
Wireshark TS | 虚假的 TCP Spurious Retransmission
网络·网络协议·tcp/ip·wireshark·tcpdump
大丈夫立于天地间8 小时前
ISIS基础知识
网络·网络协议·学习·智能路由器·信息与通信
hgdlip8 小时前
IP属地与视频定位位置不一致:现象解析与影响探讨
服务器·网络·tcp/ip