问题描述
我们正在使用称为FASTAPI的python框架开发REST API。 html注入的代码安全性测试失败。他们在后负载中发送一些html标记代码,我们将其插入数据库中,并在GET Response中发送。在FASTAPI中处理请求时,有什么方法可以防止这种HTML注入。
解决方法
是的。在没有明确说明的情况下,没有框架可以神奇地更改您获得的内容。 (想象一下,如果它是一个REST API,用于从内部系统记录 HTML片段,以用于在另一个端点中呈现网页:您将需要使用HTML)
在将输入数据放入数据库之前,只需对输入数据调用转义函数即可。
在这种情况下,Python的标准库html.escape
函数就足够了。
您的问题中没有代码,我也不是很了解FASTAPI-但是,如果它不通过您编写的任何代码就将有效负载放入数据库中,那么您应该对此进行自定义并放入对预处理您的数据,或添加将为您执行此操作的触发阶段(即事件订阅者)。