网络安全
HTTPS 原理

❓ 三次握手、四次挥手
中间人攻击 MITM
是指攻击者在通信双方之间秘密窃听或篡改数据的行为
攻击者通过劫持通信信道(如公共 Wi-Fi、DNS 劫持),伪装成客户端或服务端,窃取敏感信息(如密码、Cookie)或注入恶意内容典型步骤:
- 拦截:攻击者控制通信链路(如 ARP 欺骗、伪造 Wi-Fi 热点)
- 解密(可选):若通信未加密(如 HTTP),直接读取明文数据;若使用加密(如 HTTPS),需破解或伪造证书
- 篡改/窃取:修改传输内容(如注入恶意脚本)或窃取会话信息
如何防御?
- 客户端升级到 HTTPS 协议
- 使用 Web Crypto API 加密
- 服务端只接受 HTTPS 不接受 HTTP
XSS
向网页注入恶意脚本,利用用户浏览器执行攻击代码,分为三类:
- 存储型 XSS:恶意脚本存储到服务器(如评论区)
- 反射型 XSS:恶意脚本通过 URL 参数直接反射到页面
- DOM 型 XSS:纯前端 DOM 操作导致的漏洞
如何防御?
- 内容转义
- 使用 CSP 限制资源的来源
CSRF
利用用户已登录状态,诱导用户访问恶意页面发起伪造请求
如何防御?
- Token 验证
- 服务端阻止第三方网站请求
- Cookie 设置 SameSite
综合防御策略
- 输入过滤 + 输出编码
- 关键 Cookie 设置 Secure/HttpOnly/SameSite
- 敏感操作增加二次验证(2FA)
- 定期安全审计(XSS/CSRF 测试)
.innerHTML = userInput // 高风险
document.write() // 高风险
eval() // 极高风险