是否有可能实现通用输入消毒?

时间:2014-11-10 15:06:10

标签: java validation code-injection sanitize

之前我已经完成了输入清理,以防止客户端上的HTML注入和后端的SQL注入。我现在得到了一个点,我存储的数据并非特别适用于任何客户端,它是一个通用数据存储,但我负责从我的商店消耗的恶意数据。如果你问我,我觉得有点不公平,但这就是生活。

我去了OWASP网站,我找到了我所期待的,没有。在我的头脑中,消毒必须针对一个给定的语法/解释器,并且运行一个通用的,这是不可行的,因为你要么在验证上有漏洞,要么你将使有效的语法成为无效的语法,而另一个是为了消毒另一个语言。

所以我考虑以下几个选项:

捆绑消毒

只需运行您可以想到的主要清理,例如HTML和SQL。对我来说似乎很奇怪,第一个消毒剂可能会破坏第二个消毒剂的输入反之亦然

白名单

在某些时候,这会导致冲突,如果给定的语言需要char,我出于安全原因不支持。

有什么想法?这到底只是一种折衷吗?

0 个答案:

没有答案