其他分享
首页 > 其他分享> > 9.2 确保输入过滤

9.2 确保输入过滤

作者:互联网

过滤用户数据是Web应用安全的基础。它是验证数据合法性的过程。通过对所有的输入数据进行过滤,可以避免恶意数据在程序中被误信或误用。大多数Web应用的漏洞都是因为没有对用户输入的数据进行恰当过滤所引起的。

我们介绍的过滤数据分成三个步骤:

识别数据

“识别数据”作为第一步是因为在你不知道“数据是什么,它来自于哪里”的前提下,你也就不能正确地过滤它。这里的数据是指所有源自非代码内部提供的数据。例如:所有来自客户端的数据,但客户端并不是唯一的外部数据源,数据库和第三方提供的接口数据等也可以是外部数据源。

由用户输入的数据我们通过Go非常容易识别,Go通过r.ParseForm之后,把用户POST和GET的数据全部放在了r.Form里面。其它的输入要难识别得多,例如,r.Header中的很多元素是由客户端所操纵的。常常很难确认其中的哪些元素组成了输入,所以,最好的方法是把里面所有的数据都看成是用户输入。(例如r.Header.Get("Accept-Charset")这样的也看做是用户输入,虽然这些大多数是浏览器操纵的)

过滤数据

在知道数据来源之后,就可以过滤它了

标签:用户,过滤,9.2,识别,数据,输入,客户端
来源: https://blog.csdn.net/Kaitiren/article/details/113947971