专注Web及移动安全|61期
字数 1592 2025-08-18 11:37:42

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

一、SSH端口安全防护技巧

1.1 基础防护措施

  • 修改默认端口:将默认22端口改为高位端口(建议1024-65535)
  • 禁用root登录:修改/etc/ssh/sshd_configPermitRootLogin为no
  • 使用密钥认证:禁用密码登录,仅允许公钥认证
  • 限制登录尝试:配置MaxAuthTries(建议3-5次)

1.2 高级防护技术

  • 端口敲门(knockd):实现动态端口开放
  • 双因素认证:结合TOTP或硬件令牌
  • IP限制:通过AllowUsersAllowGroups限制访问源
  • Fail2Ban集成:自动封禁暴力破解IP

1.3 监控与审计

  • 日志集中收集:/var/log/auth.log/var/log/secure
  • 实时告警配置:针对异常登录行为
  • 定期审计:检查authorized_keys文件完整性

二、Web安全核心知识体系

2.1 SQL注入防御

Access数据库注入

  • 手工检测
    ' and 1=1 --
    ' and 1=2 --
    ' union select 1,2,3 from admin --
    
  • 防御方案
    • 参数化查询
    • 最小权限原则
    • 输入过滤(白名单)

修复方案

  • 使用ORM框架
  • 存储过程参数化
  • 正则过滤特殊字符

2.2 文件上传漏洞

WAF绕过技术

  • 内容混淆
    • 双扩展名(.php.jpg)
    • 大小写混合(.PhP)
    • 空字节(%00)
  • 内容欺骗
    • 修改Content-Type
    • 添加垃圾数据
    • 图片马制作

防御措施

  • 文件头校验
  • 重命名上传文件
  • 禁用脚本执行权限

2.3 XSS跨站脚本

攻击类型

  • 存储型XSS
  • 反射型XSS
  • DOM型XSS

防御方案

  • CSP策略配置
  • HttpOnly标记
  • 输入输出编码

三、渗透测试实战方法论

3.1 远程命令执行漏洞

挖掘流程

  1. 输入点识别(参数、header、cookie)
  2. 命令分隔符测试:
    ; | & $() ` `
    
  3. 延时验证:
    sleep 5
    
  4. DNS外带验证:
    nslookup xxx.dnslog.cn
    

修复建议

  • 禁用危险函数(如system、exec)
  • 使用白名单过滤
  • 沙箱环境执行

3.2 SQLMap高级应用

实战技巧

  • 数据获取
    sqlmap -u "url" --dbs
    sqlmap -u "url" -D dbname --tables
    sqlmap -u "url" -D dbname -T tablename --dump
    
  • 绕过技术
    • --tamper=space2comment
    • --random-agent
    • --delay=2

防御对策

  • 预编译语句
  • WAF规则优化
  • 错误信息屏蔽

四、安全工具深度解析

4.1 Burp CO2扩展

核心功能

  • 自动化数据采集
  • 智能参数识别
  • 测试用例生成

使用场景

  • 大规模应用扫描
  • API安全测试
  • 漏洞验证辅助

4.2 ParameterFuzz工具

技术特点

  • 多参数组合测试
  • 智能payload生成
  • 结果自动分析

典型应用

  • Web应用模糊测试
  • 边界条件验证
  • 异常处理检测

五、代码审计专项技术

5.1 PHP代码审计

审计流程

  1. 危险函数定位:
    eval(), system(), preg_replace("/e")
    
  2. 输入跟踪:
    $_GET/$_POST/$_COOKIE
    
  3. 逻辑漏洞分析:
    • 越权检查
    • 条件竞争
    • 二次验证缺失

zzzphp案例

  • 未过滤的include:
    include($_GET['page']);
    
  • SQL拼接漏洞:
    $sql = "SELECT * FROM table WHERE id=".$_GET['id'];
    

5.2 修复方案

  • 使用filter_var过滤
  • 添加CSRF令牌
  • 会话固定防护

六、内网渗透专题

6.1 SSRF漏洞利用

攻击手法

  • 端口扫描:
    http://internal/api?url=127.0.0.1:22
    
  • 协议利用:
    file:///etc/passwd
    gopher://
    
  • 云元数据获取:
    http://169.254.169.254/
    

防御方案

  • 白名单域名限制
  • 禁用危险协议
  • 请求目标验证

七、安全开发规范

7.1 中间件安全

常见漏洞

  • Tomcat管理界面弱口令
  • Nginx解析漏洞
  • Apache重定向漏洞

加固措施

  • 删除默认页面
  • 关闭目录列表
  • 更新到最新版本

7.2 系统级防护

安全配置

  • 关闭不必要服务
  • 定期打补丁
  • 配置适当的SELinux策略

八、持续安全实践

8.1 漏洞管理

  • 建立漏洞响应流程
  • 定期漏洞扫描
  • 补丁验证机制

8.2 安全监控

  • 日志聚合分析
  • 异常行为检测
  • 实时告警系统

本教学文档基于FreeBuf第61期内容整理,涵盖了Web及移动安全的核心知识点和实践技术。建议结合具体工具和环境进行实践练习,并持续关注安全社区的最新动态和漏洞公告。

Web及移动安全综合教学文档 一、SSH端口安全防护技巧 1.1 基础防护措施 修改默认端口 :将默认22端口改为高位端口(建议1024-65535) 禁用root登录 :修改 /etc/ssh/sshd_config 中 PermitRootLogin 为no 使用密钥认证 :禁用密码登录,仅允许公钥认证 限制登录尝试 :配置 MaxAuthTries (建议3-5次) 1.2 高级防护技术 端口敲门(knockd) :实现动态端口开放 双因素认证 :结合TOTP或硬件令牌 IP限制 :通过 AllowUsers 和 AllowGroups 限制访问源 Fail2Ban集成 :自动封禁暴力破解IP 1.3 监控与审计 日志集中收集: /var/log/auth.log 和 /var/log/secure 实时告警配置:针对异常登录行为 定期审计:检查authorized_ keys文件完整性 二、Web安全核心知识体系 2.1 SQL注入防御 Access数据库注入 手工检测 : 防御方案 : 参数化查询 最小权限原则 输入过滤(白名单) 修复方案 使用ORM框架 存储过程参数化 正则过滤特殊字符 2.2 文件上传漏洞 WAF绕过技术 内容混淆 : 双扩展名(.php.jpg) 大小写混合(.PhP) 空字节(%00) 内容欺骗 : 修改Content-Type 添加垃圾数据 图片马制作 防御措施 文件头校验 重命名上传文件 禁用脚本执行权限 2.3 XSS跨站脚本 攻击类型 存储型XSS 反射型XSS DOM型XSS 防御方案 CSP策略配置 HttpOnly标记 输入输出编码 三、渗透测试实战方法论 3.1 远程命令执行漏洞 挖掘流程 输入点识别(参数、header、cookie) 命令分隔符测试: 延时验证: DNS外带验证: 修复建议 禁用危险函数(如system、exec) 使用白名单过滤 沙箱环境执行 3.2 SQLMap高级应用 实战技巧 数据获取 : 绕过技术 : --tamper=space2comment --random-agent --delay=2 防御对策 预编译语句 WAF规则优化 错误信息屏蔽 四、安全工具深度解析 4.1 Burp CO2扩展 核心功能 自动化数据采集 智能参数识别 测试用例生成 使用场景 大规模应用扫描 API安全测试 漏洞验证辅助 4.2 ParameterFuzz工具 技术特点 多参数组合测试 智能payload生成 结果自动分析 典型应用 Web应用模糊测试 边界条件验证 异常处理检测 五、代码审计专项技术 5.1 PHP代码审计 审计流程 危险函数定位: 输入跟踪: 逻辑漏洞分析: 越权检查 条件竞争 二次验证缺失 zzzphp案例 未过滤的include: SQL拼接漏洞: 5.2 修复方案 使用filter_ var过滤 添加CSRF令牌 会话固定防护 六、内网渗透专题 6.1 SSRF漏洞利用 攻击手法 端口扫描: 协议利用: 云元数据获取: 防御方案 白名单域名限制 禁用危险协议 请求目标验证 七、安全开发规范 7.1 中间件安全 常见漏洞 Tomcat管理界面弱口令 Nginx解析漏洞 Apache重定向漏洞 加固措施 删除默认页面 关闭目录列表 更新到最新版本 7.2 系统级防护 安全配置 关闭不必要服务 定期打补丁 配置适当的SELinux策略 八、持续安全实践 8.1 漏洞管理 建立漏洞响应流程 定期漏洞扫描 补丁验证机制 8.2 安全监控 日志聚合分析 异常行为检测 实时告警系统 本教学文档基于FreeBuf第61期内容整理,涵盖了Web及移动安全的核心知识点和实践技术。建议结合具体工具和环境进行实践练习,并持续关注安全社区的最新动态和漏洞公告。