【发布时间】:2025-12-21 20:50:06
【问题描述】:
我熟悉在 NodeJS 中使用模板(如 EJS)来转义 HTML 上下文的数据。
但是,从 API 安全输出的推荐方法是什么?由于不知道预期用途,因此无法使用 HTML 编码对其进行转义。
因为我目前基本上只是在为输出做res.json({})。
我在想,虽然可以验证传入数据的某些字段(例如“电子邮件”),但其他更模糊的字段(例如“描述”)可能包含有人可能用于 XSS 的任何字符。像 https://cheatsheetseries.owasp.org/cheatsheets/Nodejs_Security_Cheat_Sheet.html 像这样,但它最后一次更新是在 7 年前https://github.com/ESAPI/node-esapi
是否由收件人来处理?所以如果有人发送“alert(0);”作为他们的描述,我允许它通过,因为这是一个有效的 JSON {"description":"alert(0);"}
【问题讨论】: