专注Web及移动安全[红日安全96期]
字数 2311 2025-08-18 11:38:52
Web及移动安全综合教学文档
一、安全动态与行业趋势
1.1 渗透测试法律风险
- 案例警示:某测评公司员工因未授权渗透测试被法律追究
- 合规要求:渗透测试必须获得书面授权,明确测试范围和方式
- 法律边界:区分安全测试与非法入侵的关键在于授权和目的
1.2 等保2.0相关技术
- CentOS安全审计:系统日志配置、用户行为监控、关键文件完整性检查
- 跨网文件交换:采用安全隔离设备、内容过滤、审批流程和加密传输
- 定级标准:根据系统重要性和受损影响确定保护等级
1.3 认证与职业发展
- CISSP认证:涵盖安全与风险管理、资产安全、安全工程等8个领域
- 职业方向选择:技术路线(渗透测试/安全研发)与管理路线(安全合规/风险管理)
- 学习体系:建立完整知识框架(网络/系统/应用/数据安全)比零散学习更重要
二、Web安全核心技术
2.1 常见漏洞类型
-
注入类漏洞:
- SQL注入:联合查询、布尔盲注、时间盲注、堆叠查询
- XXE(XML外部实体注入):文件读取、SSRF、拒绝服务攻击
- 反序列化漏洞:PHP/Java对象反序列化导致代码执行
-
客户端漏洞:
- XSS(跨站脚本):存储型、反射型、DOM型及绕过技巧
- CSRF(跨站请求伪造):Token验证、Referer检查等防御措施
-
服务端漏洞:
- 文件上传绕过:双写、00截断、Content-Type欺骗
- 命令执行:Webmin(CVE-2019-15107)、Squid(CVE-2019-12527)等案例
2.2 漏洞挖掘技术
-
代码审计:
- 敏感函数追踪:eval()、system()、unserialize()等危险函数
- 数据流分析:用户输入→危险函数的过程追踪
-
黑盒测试:
- 模糊测试:边界值、异常输入测试
- OOB(带外)攻击:DNS/HTTP外带数据验证漏洞存在
2.3 防御技术
- 输入验证:白名单过滤、参数化查询
- 输出编码:HTML实体编码、JavaScript编码
- 安全配置:关闭不必要服务、最小权限原则
三、渗透测试实战方法
3.1 渗透测试流程
-
信息收集:
- 子域名枚举(SubDomainsBrute等工具)
- 目录扫描(BBScan、WhatDir)
- 指纹识别(CMS/框架/中间件识别)
-
漏洞探测:
- 自动化扫描(Nmap脚本、VulnX等工具)
- 手动验证(结合业务逻辑测试)
-
权限提升:
- Linux提权:内核漏洞(CVE-2017-0213)、配置错误
- Windows提权:服务权限、令牌窃取
-
内网渗透:
- 横向移动:Pass-the-Hash、票据传递
- 权限维持:后门、计划任务、服务创建
3.2 典型场景案例
- 金融APP支付漏洞:金额篡改、订单重放、业务逻辑绕过
- 医院HIS系统渗透:弱口令→数据库访问→敏感数据泄露
- 内网域渗透:初始立足点→信息收集→域控攻陷
3.3 后渗透技术
- 隧道搭建:FRP、Ngrok等内网穿透工具
- 隐蔽通信:DNS隧道、ICMP隧道
- 痕迹清除:日志篡改、时间戳修改
四、安全工具详解
4.1 信息收集工具
- SubDomainsBrute:基于字典的子域名爆破
- BBScan:快速检测信息泄露(备份文件、SVN/Git泄露)
- WhatDir:多线程Web目录扫描
4.2 漏洞利用工具
- Metasploit Framework:模块化渗透测试平台
- 常用模块:exploit/multi/handler、post/windows/gather/credentials
- Setoolkit:社会工程学工具包
- 钓鱼攻击、网站克隆、凭证收集
4.3 密码破解工具
- Crunch:定制化字典生成
- 语法:
crunch <min> <max> <charset> -o <output>
- 语法:
- Hashcat:支持多种算法的GPU加速破解
五、安全开发实践
5.1 安全编码规范
- 输入处理:所有输入视为不可信,严格验证
- 错误处理:避免泄露堆栈信息等敏感数据
- 会话管理:使用安全的随机数生成会话ID
5.2 安全配置指南
- Apache/Tomcat:
- 删除默认页面和示例程序
- 配置严格的访问控制
- PHP:
- 禁用危险函数(exec、system等)
- 开启安全模式(php.ini配置)
六、应急响应与取证
6.1 Windows应急响应
- 异常进程检查:netstat、tasklist对比基线
- 持久化位置:注册表Run键、启动文件夹、服务
- 日志分析:安全事件日志(事件ID对应表)
6.2 Linux应急响应
- 隐藏进程检测:
ps -ef对比ls /proc - Rootkit检查:chkrootkit、rkhunter
- 时间线分析:通过文件时间戳重建攻击过程
七、高级攻防技术
7.1 免杀技术
- 代码混淆:加壳、加密、多态变形
- 内存注入:不落地执行恶意代码
- 合法工具滥用:PsExec、WMI等白名单程序利用
7.2 网络层攻击
- ARP欺骗:中间人攻击实现流量劫持
- 交换机漏洞:VLAN跳跃、MAC地址表溢出
八、安全学习资源
8.1 推荐学习路径
- 基础:网络协议、操作系统原理
- 进阶:Web安全、渗透测试技术
- 高级:代码审计、漏洞挖掘
8.2 实践平台
- Vulnhub:各类漏洞环境镜像
- CTF比赛:实战化学习场景
- SRC平台:合法漏洞挖掘实践
本教学文档涵盖了Web及移动安全的核心知识点,从基础概念到高级技术均有涉及。建议学习者按照自身水平选择适合的内容进行深入学习,并通过实验环境进行实践验证。安全技术更新迅速,需要持续关注最新漏洞和防御技术发展。