专注Web及移动安全[红日安全40期]
字数 2361 2025-08-18 11:37:19

Web及移动安全教学文档

一、安全漏洞分析

1.1 重大漏洞预警

DynoRoot: Red Hat DHCP客户端命令执行漏洞(CVE-2018-1111)

  • 漏洞描述: Red Hat DHCP客户端存在命令注入漏洞,攻击者可利用此漏洞在目标系统上执行任意命令
  • 影响范围: Red Hat Enterprise Linux多个版本
  • 利用方式: 通过恶意DHCP服务器响应触发
  • 防护措施: 及时更新系统补丁

Janus签名漏洞(CVE-2017-13156)

  • 漏洞原理: Android应用签名验证机制缺陷,允许攻击者在APK文件中添加未经验证的内容
  • 影响范围: Android 5.0-8.0系统
  • 利用分析: 通过修改APK文件而不破坏原始签名
  • 防护建议: 应用应增加额外的完整性检查

CPU SSB/RSRE漏洞(CVE-2018-3639 & CVE-2018-3640)

  • 漏洞类型: 推测执行侧信道漏洞
  • 影响范围: 多种现代CPU架构
  • 攻击效果: 可能导致敏感信息泄露
  • 缓解措施: 应用微代码更新和操作系统补丁

1.2 Web安全漏洞

Struts2漏洞利用

  • 漏洞利用链: 通过构造特定请求绕过防火墙获取Root权限
  • 关键点: OGNL表达式注入
  • 防护措施: 及时更新Struts2框架

PHP文件包含漏洞

  • 常见利用方式:
    • 本地文件包含(LFI)
    • 远程文件包含(RFI)
    • 利用php://filter协议读取源码
    • 利用php://input执行代码
  • 防护建议: 禁用危险函数,严格校验包含文件路径

MySQL联合注入绕过安全狗

  • 绕过技术:
    • 注释符混淆
    • 大小写变异
    • 等价函数替换
    • 编码转换
  • GetShell方法: 利用into outfile/dumpfile写shell

GraphQL安全风险

  • 常见问题:
    • 信息泄露
    • 拒绝服务攻击
    • 授权缺陷
  • 测试技巧: 使用内省查询获取API结构

二、渗透测试技术

2.1 内网渗透技术

端口转发与代理工具

  • 常用工具:
    • SSH隧道
    • Earthworm
    • reGeorg
    • ngrok
    • frp
  • 应用场景: 穿透防火墙,建立内网通信通道

进程注入技术(CTRL-INJECT)

  • 技术原理: 通过控制目标进程执行恶意代码
  • 实现方式:
    • DLL注入
    • APC注入
    • 线程劫持
  • 检测方法: 监控异常进程行为

隐藏用户建立(Powershell)

  • 实现步骤:
    1. 创建隐藏用户账户
    2. 修改注册表隐藏用户
    3. 清除事件日志
  • 检测方法: 检查SAM注册表项

2.2 移动安全测试

ZipperDown漏洞分析

  • 漏洞原理: iOS应用解压缩路径遍历漏洞
  • 影响范围: 多个流行iOS应用
  • 防护实践:
    • 校验压缩文件内容
    • 使用安全解压API
    • 限制解压路径

手机验证码常见漏洞

  • 漏洞类型:
    • 验证码可预测
    • 验证码未绑定手机号
    • 验证码可暴力破解
    • 验证码未失效
  • 防护措施: 增加图形验证码,限制尝试次数

三、安全工具集

3.1 攻击工具

Sonar.js

  • 功能: 识别和攻击内网主机的框架
  • 特点: 基于浏览器,可绕过部分网络限制
  • 应用场景: 内网渗透测试

Gryffin

  • 类型: 网络安全扫描平台
  • 特点:
    • 大规模Web应用扫描
    • 支持分布式部署
    • 自动化漏洞检测

3.2 防御工具

DDoS Deflate

  • 功能: 通过Shell脚本阻止DDoS攻击
  • 原理: 监控网络连接数,自动封禁异常IP
  • 配置要点: 调整连接数阈值和封禁时间

Nipe

  • 用途: 将Tor网络设为默认网关
  • 应用场景: 匿名化渗透测试流量
  • 使用方法: 简单脚本控制Tor路由

四、代码审计与开发安全

4.1 智能合约安全

burnOverflow漏洞

  • 漏洞类型: 整数溢出
  • 影响: 可能导致代币异常增发
  • 审计要点: 检查所有算术运算的边界条件

4.2 Web代码审计

juice-shop项目

  • 特点: Node.js编写的Web安全漏洞测试平台
  • 包含漏洞:
    • SQL注入
    • XSS
    • CSRF
    • 不安全的直接对象引用
  • 学习价值: 实践各类Web漏洞的利用与防御

五、安全实践与技巧

5.1 信息收集

  • 关键方法:
    • 子域名枚举
    • 端口扫描
    • 指纹识别
    • 目录爆破
    • 搜索引擎技巧(Google Dork)

5.2 绕过技术

  • 内容安全策略(CSP)绕过:
    • 利用JSONP端点
    • 使用data:协议
    • 通过Wave文件注入
  • WAF绕过:
    • 注释混淆
    • 参数污染
    • 编码变异

5.3 漏洞复现

  • CVE-2018-1111复现步骤:
    1. 搭建恶意DHCP服务器
    2. 配置恶意响应包
    3. 触发目标客户端请求
    4. 验证命令执行结果

六、防御与加固

6.1 Linux系统加固

  • 基线检查项:
    • 账户与口令策略
    • 服务与端口管理
    • 文件权限设置
    • 日志审计配置
    • 内核参数调优

6.2 Windows防御

  • MS16-032本地提权防护:
    • 应用最新补丁
    • 限制普通用户权限
    • 监控异常进程创建

6.3 数据恢复

  • 文件误删恢复方法:
    • 使用extundelete(for ext文件系统)
    • TestDisk工具
    • Photorec(恢复特定文件类型)
    • 重要数据应建立备份机制

七、学习资源

7.1 推荐学习路径

  1. Web安全基础(OWASP Top 10)
  2. 网络协议与渗透工具使用
  3. 代码审计与漏洞挖掘
  4. 内网渗透技术
  5. 移动安全与新兴技术

7.2 实践平台

  • VulnHub靶场(Breach 1.0等)
  • CTF比赛(如0ctf-ezdoor)
  • 漏洞复现环境(CVE漏洞容器)

本教学文档涵盖了Web及移动安全的核心知识点,从漏洞分析到渗透技术,从攻击工具到防御措施,形成了完整的学习体系。建议学习者结合实际环境进行实践,逐步掌握各项安全技能。

Web及移动安全教学文档 一、安全漏洞分析 1.1 重大漏洞预警 DynoRoot: Red Hat DHCP客户端命令执行漏洞(CVE-2018-1111) 漏洞描述 : Red Hat DHCP客户端存在命令注入漏洞,攻击者可利用此漏洞在目标系统上执行任意命令 影响范围 : Red Hat Enterprise Linux多个版本 利用方式 : 通过恶意DHCP服务器响应触发 防护措施 : 及时更新系统补丁 Janus签名漏洞(CVE-2017-13156) 漏洞原理 : Android应用签名验证机制缺陷,允许攻击者在APK文件中添加未经验证的内容 影响范围 : Android 5.0-8.0系统 利用分析 : 通过修改APK文件而不破坏原始签名 防护建议 : 应用应增加额外的完整性检查 CPU SSB/RSRE漏洞(CVE-2018-3639 & CVE-2018-3640) 漏洞类型 : 推测执行侧信道漏洞 影响范围 : 多种现代CPU架构 攻击效果 : 可能导致敏感信息泄露 缓解措施 : 应用微代码更新和操作系统补丁 1.2 Web安全漏洞 Struts2漏洞利用 漏洞利用链 : 通过构造特定请求绕过防火墙获取Root权限 关键点 : OGNL表达式注入 防护措施 : 及时更新Struts2框架 PHP文件包含漏洞 常见利用方式 : 本地文件包含(LFI) 远程文件包含(RFI) 利用php://filter协议读取源码 利用php://input执行代码 防护建议 : 禁用危险函数,严格校验包含文件路径 MySQL联合注入绕过安全狗 绕过技术 : 注释符混淆 大小写变异 等价函数替换 编码转换 GetShell方法 : 利用into outfile/dumpfile写shell GraphQL安全风险 常见问题 : 信息泄露 拒绝服务攻击 授权缺陷 测试技巧 : 使用内省查询获取API结构 二、渗透测试技术 2.1 内网渗透技术 端口转发与代理工具 常用工具 : SSH隧道 Earthworm reGeorg ngrok frp 应用场景 : 穿透防火墙,建立内网通信通道 进程注入技术(CTRL-INJECT) 技术原理 : 通过控制目标进程执行恶意代码 实现方式 : DLL注入 APC注入 线程劫持 检测方法 : 监控异常进程行为 隐藏用户建立(Powershell) 实现步骤 : 创建隐藏用户账户 修改注册表隐藏用户 清除事件日志 检测方法 : 检查SAM注册表项 2.2 移动安全测试 ZipperDown漏洞分析 漏洞原理 : iOS应用解压缩路径遍历漏洞 影响范围 : 多个流行iOS应用 防护实践 : 校验压缩文件内容 使用安全解压API 限制解压路径 手机验证码常见漏洞 漏洞类型 : 验证码可预测 验证码未绑定手机号 验证码可暴力破解 验证码未失效 防护措施 : 增加图形验证码,限制尝试次数 三、安全工具集 3.1 攻击工具 Sonar.js 功能 : 识别和攻击内网主机的框架 特点 : 基于浏览器,可绕过部分网络限制 应用场景 : 内网渗透测试 Gryffin 类型 : 网络安全扫描平台 特点 : 大规模Web应用扫描 支持分布式部署 自动化漏洞检测 3.2 防御工具 DDoS Deflate 功能 : 通过Shell脚本阻止DDoS攻击 原理 : 监控网络连接数,自动封禁异常IP 配置要点 : 调整连接数阈值和封禁时间 Nipe 用途 : 将Tor网络设为默认网关 应用场景 : 匿名化渗透测试流量 使用方法 : 简单脚本控制Tor路由 四、代码审计与开发安全 4.1 智能合约安全 burnOverflow漏洞 漏洞类型 : 整数溢出 影响 : 可能导致代币异常增发 审计要点 : 检查所有算术运算的边界条件 4.2 Web代码审计 juice-shop项目 特点 : Node.js编写的Web安全漏洞测试平台 包含漏洞 : SQL注入 XSS CSRF 不安全的直接对象引用 学习价值 : 实践各类Web漏洞的利用与防御 五、安全实践与技巧 5.1 信息收集 关键方法 : 子域名枚举 端口扫描 指纹识别 目录爆破 搜索引擎技巧(Google Dork) 5.2 绕过技术 内容安全策略(CSP)绕过 : 利用JSONP端点 使用data:协议 通过Wave文件注入 WAF绕过 : 注释混淆 参数污染 编码变异 5.3 漏洞复现 CVE-2018-1111复现步骤 : 搭建恶意DHCP服务器 配置恶意响应包 触发目标客户端请求 验证命令执行结果 六、防御与加固 6.1 Linux系统加固 基线检查项 : 账户与口令策略 服务与端口管理 文件权限设置 日志审计配置 内核参数调优 6.2 Windows防御 MS16-032本地提权防护 : 应用最新补丁 限制普通用户权限 监控异常进程创建 6.3 数据恢复 文件误删恢复方法 : 使用extundelete(for ext文件系统) TestDisk工具 Photorec(恢复特定文件类型) 重要数据应建立备份机制 七、学习资源 7.1 推荐学习路径 Web安全基础(OWASP Top 10) 网络协议与渗透工具使用 代码审计与漏洞挖掘 内网渗透技术 移动安全与新兴技术 7.2 实践平台 VulnHub靶场(Breach 1.0等) CTF比赛(如0ctf-ezdoor) 漏洞复现环境(CVE漏洞容器) 本教学文档涵盖了Web及移动安全的核心知识点,从漏洞分析到渗透技术,从攻击工具到防御措施,形成了完整的学习体系。建议学习者结合实际环境进行实践,逐步掌握各项安全技能。