专注Web安全与移动安全
字数 2314 2025-08-18 11:37:12
Web与移动安全综合教学文档
一、安全动态分析
1. DNS隧道通信木马
- 原理:利用DNS协议进行隐蔽通信,绕过传统防火墙检测
- 特征:
- 异常频繁的DNS查询请求
- 查询非常规域名(长随机字符串子域名)
- 数据通过TXT记录或CNAME记录传输
- 检测方法:
- 监控DNS查询频率和模式
- 分析DNS负载内容
- 使用机器学习检测异常DNS行为
2. 火狐浏览器远程代码执行漏洞
- 漏洞类型:内存破坏漏洞
- 影响版本:特定版本的火狐浏览器
- 利用场景:
- 通过恶意网页触发
- 可能导致任意代码执行
- 修复措施:
- 及时更新到最新版本
- 禁用不必要的浏览器功能
3. 帝友P2P借贷系统SQL注入
- 漏洞位置:V4.1版本
- 注入类型:基于错误的SQL注入
- 利用方法:
- 通过用户输入参数构造恶意SQL
- 获取数据库敏感信息
- 防御方案:
- 参数化查询
- 输入验证和过滤
4. DTD实体XXE漏洞
- XML外部实体注入:
- 通过恶意XML文件读取系统文件
- 可能导致服务器端请求伪造(SSRF)
- 利用方式:
<!DOCTYPE foo [ <!ENTITY xxe SYSTEM "file:///etc/passwd"> ]> <foo>&xxe;</foo> - 防护措施:
- 禁用外部实体解析
- 使用安全的XML解析器配置
二、安全技能精要
1. 渗透测试方法论
- 流程阶段:
- 信息收集
- 漏洞分析
- 漏洞利用
- 权限提升
- 维持访问
- 痕迹清除
2. 信息泄露漏洞挖掘
- 常见泄露点:
- 备份文件(.bak, .swp)
- 版本控制文件(.git, .svn)
- 错误信息暴露
- 目录列表
- 注释中的敏感信息
3. CTF逆向工程
- 常规逆向技术:
- 静态分析(IDA Pro, Ghidra)
- 动态调试(OllyDbg, GDB)
- 反编译工具(JD-GUI, dnSpy)
- 二进制补丁技术
4. 子域名枚举技术
- 枚举方法:
- 字典爆破(dnsrecon, sublist3r)
- 搜索引擎查询(Google dork)
- 证书透明度日志(crt.sh)
- DNS区域传输测试
- 暴力破解(Brute Force)
5. Smarty PHP代码执行漏洞(CVE-2017-1000480)
- 影响版本:<= 3.1.32
- 漏洞原理:
- 模板引擎中的不安全反序列化
- 通过精心构造的模板文件执行任意PHP代码
- 修复方案:升级到3.1.33或更高版本
三、数据库安全
1. MySQL手工注入
- 基本流程:
- 识别注入点
- 判断数据库类型
- 确定字段数(ORDER BY)
- 联合查询获取数据
- 提取系统信息(user(), database(), version())
- 获取表名和列名
2. Oracle SQL经典查询
- 常用语句:
-- 获取所有表 SELECT * FROM ALL_TABLES WHERE OWNER='SCHEMA_NAME'; -- 获取表结构 SELECT COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE TABLE_NAME='TABLE_NAME';
3. Redis未授权访问
- 利用方式:
- 写入SSH公钥
- 写入Webshell
- 数据泄露
- 防护措施:
- 设置访问密码
- 绑定特定IP
- 禁用危险命令
四、Web应用漏洞
1. CSRF漏洞攻防
- 攻击原理:
- 利用用户已认证状态执行非预期操作
- 防御方案:
- 使用CSRF Token
- 检查Referer头
- 关键操作二次验证
2. WordPress插件漏洞
- YITH WooCommerce Wishlist SQL注入:
- 未过滤的用户输入直接拼接SQL
- 影响电子商务网站安全
3. PHP常见漏洞函数
- 危险函数列表:
eval()system()/exec()unserialize()include()/require()(无过滤)preg_replace()(带/e修饰符)
五、移动安全
1. Android全局注入方案
- 技术要点:
- 动态库注入
- Xposed框架利用
- Frida工具使用
- 防护措施:
- 代码混淆
- 完整性校验
- 反调试技术
2. 跨平台间谍软件CrossRAT
- 特征:
- 支持Windows, Linux, macOS
- 通过Java实现跨平台
- 持久化技术
- 检测方法:
- 监控异常Java进程
- 检查可疑计划任务
六、漏洞利用技术
1. 路由器漏洞分析(CVE-2017-17215)
- 分析流程:
- 固件提取
- 模拟运行
- 漏洞定位
- 利用开发
- 调试工具:
- QEMU
- IDA Pro
- GDB
2. Windows提权技术
- 常见方法:
- 服务配置错误
- DLL劫持
- 令牌窃取
- 内核漏洞利用
3. 格式化字符串漏洞
- 利用原理:
- 控制格式化字符串参数
- 读写任意内存
- 覆盖返回地址
- 防御措施:
- 使用固定格式字符串
- 编译器保护机制
七、安全工具集
1. Powershell混淆框架(Invoke-Obfuscation)
- 功能:
- 字符串编码
- 命令拆分
- 随机变量名
- 检测方法:
- 脚本块日志记录
- AMSI扫描
2. Earthworm内网渗透
- 功能特点:
- SOCKS5代理建立
- 端口转发
- 内网穿透
- 使用场景:
- 内网横向移动
- 绕过防火墙限制
3. DnsLog利用与改造
- 原理:
- 通过DNS查询记录外带数据
- 用于盲注漏洞验证
- 自定义实现:
- 搭建DNS服务器
- 日志记录与分析
八、区块链安全
1. 智能合约审计要点
- 常见漏洞:
- 重入攻击
- 整数溢出
- 未检查返回值
- 权限控制缺失
2. 黑产挖矿技术
- 传播方式:
- 漏洞利用
- 恶意软件捆绑
- 水坑攻击
- 检测指标:
- 异常CPU使用率
- 可疑网络连接
- 计划任务变更
九、漏洞修复建议
- 及时更新:保持系统和应用最新版本
- 最小权限:服务运行使用最低必要权限
- 输入验证:对所有用户输入进行严格过滤
- 安全配置:禁用不必要的服务和功能
- 日志监控:建立完善的日志记录和分析系统
- 纵深防御:实施多层安全防护措施
本教学文档涵盖了Web与移动安全的核心知识点,可作为安全学习和实践的参考指南。实际应用中需注意法律法规,所有安全测试应在授权范围内进行。