Web-based Exploits Web 应用利用

利用 web 应用编码缺陷的恶意代码或行为。是个统称,涵盖一大类针对 web 层的攻击。

不是某一种攻击,是一个家族。家族大头都在 OWASP Top 10 上。

常见成员

攻击简述
SQL Injection把恶意 SQL 拼进查询
XSS(跨站脚本)把恶意 JS 注入网页,在受害者浏览器里执行
CSRF(跨站请求伪造)利用受害者已登录会话替他发请求
SSRF(服务端请求伪造)让服务器替攻击者去访问内网资源
文件上传漏洞上传 webshell,拿到服务器执行权
路径遍历../../etc/passwd
命令注入把 shell 命令拼进系统调用
不安全反序列化反序列化时触发任意代码执行
认证 / 会话漏洞弱 token、可猜的 session ID、缺失登出

根因几乎都是同一句话

不要相信用户输入。

具体表现为:

  • 输入未做 sanitization
  • 输出未做编码(encoding)
  • 直接把字符串拼进 SQL / shell / HTML
  • 没用参数化查询、没用 ORM、没用框架的安全默认值

防御层次

  1. 写代码时 —— 用框架的安全 API,不要手撸字符串拼接
  2. 测试时 —— SAST(静态扫描)+ DAST(动态扫描)
  3. 上线后 —— WAF 拦截已知 payload,日志监控异常
  4. 持续 —— 定期 pentest + bug bounty