10 Projetos 前端安全保障

2025-05-28

10 Projetos 前端安全保障

1. Evite Guardar 代币 JWT(ou tokens importantes)在本地存储

LS é vulneravel a ataques XSS。如果您希望设置 Http Only Signed Cookie 令牌,则可以在会话中获取本地存储以保护敏感信息。

第 1 项的休闲参考:

这就是为什么将 JWT 存储在本地主机存储中是一个巨大的错误
https://medium.com/kanlanc/heres-why-storing-jwt-in-local-storage-is-a-great-mistake-df01dad90f9e

2. 解释对象或 HTML 开发并进行清理和/或逃避

Qualquer 输入/输出所见即所得、富编辑器、Markdown 编辑器等示例。 Isso evita ataque XSS(e roubo de tokens da storage rs)

第 2 项的休闲参考:

不要消毒,要逃跑!
https://benhoyt.com/writings/dont-sanitize-do-escape/

3. 无前端无后端输入验证

Jamais uma is uma validação commenta ou de regra de negocio deve ser front.例如:输入电子邮件是否有效?有效无正面和背面。没有前面的 pra evitar 请求 desnecessária,没有后面的 pra evitar ataques ao DB。

关于第 3 项的休闲参考:

什么是 No-SQL 注入
https://www.invicti.com/blog/web-security/what-is-nosql-injection/

4. 通过 URL 中的查询参数获取敏感信息

示例:https://yoursite.com?token={important_token} - 可以在 estiver 协助或嗅探 trafego da vitima 或 fazendo sniffing,将 esse 令牌发送到 sera criptografado 和 sera exposto numa conexão 仅 http。可以使用 SSL、查询字符串、主体、服务器日志、浏览器历史记录和可能的 XSS JS 历史对象。

关于第 4 项的休闲参考:

URL 中的会话令牌 - 漏洞
https://www.acunetix.com/blog/web-security-zone/session-token-in-url-vulnerability/

5. 通过API Evite retornar/consumir um Array JSON diretemente

类型:

回复: ”[{ ... }]”

Juro 揭露了“原始对象覆盖攻击”漏洞,涉及数组方法的覆盖方法。 Pra saber mais、leia o link abaixo

第 5 项休闲参考

为什么 Facebook 的 API 以 for 循环开头?
https://dev.to/antogarand/why-facebooks-api-starts-with-a-for-loop-1eob

Essa 问题是在现代操作系统浏览器中完成的修正。 Vc nao precisa se preocupar com isso a menos que ofereça support para "old browsers"

6. 在没有 DOM 的元素中设置 innerHTML

请务必设置innerHTML,而不是使用常用的算法输入来验证原则。请务必确保消毒或逃逸或继续进行。如果可能,请先使用innerText/textContent。

关于第 6 项的休闲参考:

DOM 操作和 innerHTML 的危险
https://betterprogramming.pub/dom-manipulation-the-dangers-of-innerhtml-602f4119d905

7. 取消允许使用或输入 URL 或加载 SVG

例如:usuario inputar url a ser usado numa tag IMG。 Diversos ataques podem acontecer, desde XSS via SVG or PDF, or Sniffing apontar o GET pra uma URL maliciosa
Referencia de leitura sobre o item 7 (embora fale sobre svg, a dinamica pra outros artefatos eh parecida: algo vem junto seja via request ou binary).

您是否允许用户加载 SVG?您存在 XSS 漏洞
https://research.securitum.com/do-you-allow-to-load-svg-files-you-have-xss/

8.利用 noreferrer e noopener para links cross-origin (de outro dominio)

Quando vc abre uma nova aba,依赖于浏览器环境或对象窗口前部或新渲染的上下文,允许阿西姆乌玛斯奇怪,视频链接 abaixo。
关于第 8 项的休闲参考:

外部锚点和 rel noopener
https://web.dev/external-anchors-use-rel-noopener/

9. Adicione a Header "X-Frame-Options: DENY" a seu front se possivel

您可以在 iframe 中嵌入服务并在网站上“点击劫持”,然后将其插入到拦截器或组合中。

关于第 9 项的休闲参考:

应用程序安全:点击劫持攻击
https://www.imperva.com/learn/application-security/clickjacking/

10. Essa é a mais simples de todas

获取作为依赖项和 ficar esperto com 的信息作为 NPM 包中的漏洞报告。

文章来源:https://dev.to/felipperegazio/10-dicas-de-seguranca-para-projetos-front-end-2385
PREV
伪代码 如何编写伪代码
NEXT
使用 TailwindCSS 制作导航抽屉/滑动侧边栏(蓝图)