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、没用框架的安全默认值
防御层次
- 写代码时 —— 用框架的安全 API,不要手撸字符串拼接
- 测试时 —— SAST(静态扫描)+ DAST(动态扫描)
- 上线后 —— WAF 拦截已知 payload,日志监控异常
- 持续 —— 定期 pentest + bug bounty