网络安全领域的服务器端过滤器
过滤器是对用户输入执行的验证检查,以确保用户输入的输入遵循预期的输入。
例如,下面是描述对用户输入进行过滤检查的图片。
如上图所示,输入应为字母,即字母>=('a'或'A')和字母<=(z或'Z'),任何其他键输入都不会被网页接受。在这里,名称@abhi1jith 不会被网页接受,因为有一个与输入字段相关的过滤检查,即 - 名称的字母必须只包含字母,在这里,输入包含整数以及根据其后面编程的过滤器不允许的字母数字字符。
Web 应用程序过滤器的类型
基本上有两种类型的 Web 应用程序过滤器:
- 客户端过滤器:这里输入的验证发生在客户端本身,因为客户端的浏览器包含所需的过滤器。如果用户输入的数据满足过滤条件,则用户的数据被浏览器接受,否则通过显示基本错误消息被拒绝。客户端过滤器更容易被入侵者或黑客篡改或绕过,因为客户端浏览器很容易被他们访问,因此它无法为数据提供更好的安全性,也不能保护数据免受篡改。由于过滤器存在于客户端浏览器中,因此与服务器端过滤器相比,响应时间逐渐减少,因为必须从计算机用户的浏览器来回发送输入数据和有效性检查。客户端过滤器用 HTML、 Java等编写的代码。
- 服务器端过滤器:这些是服务器中存在的过滤器检查。服务器检查输入是否遵循公认的标准。与客户端过滤器不同,用户输入的数据或信息直接转发到服务器,浏览器不进行检查。如果用户的输入满足服务器中存在的过滤器,则接受数据,否则通过显示基本错误消息将其拒绝。服务器端过滤器很难被入侵者或黑客篡改或绕过,因为他们不容易访问服务器,因此它通过保护数据免受篡改来提供更好的数据安全性。由于过滤器存在于服务器中,因此与客户端过滤器相比,响应时间逐渐变长,因为输入数据和有效性检查必须从服务器到计算机用户来回发送。因此,它增加了服务器的额外开销。服务器端过滤器用PHP,c++ 编写的代码。
让我们通过一个示例来了解服务器端过滤器。
- 假设我们输入了错误的格式,假设我们在输入电子邮件时没有输入“@”。
- 我们输入的输入将被转发到服务器。
- 服务器中存在的服务器端过滤器将检查我们提供的输入是否遵循正确的输入标准。
- 服务器端过滤器将检测电子邮件输入中缺少“@”,这是与正确标准的偏差。
- 在发现错误时,服务器端过滤器不会接受我们的输入。
- 它将带有正确消息的错误转发回我们的网络浏览器。
- 将向用户显示错误消息“电子邮件中缺少@”。
服务器端过滤器的特点:
- 服务器端攻击很难执行,因为我们手中的代码不容易访问,而且我们不知道如何使用服务器端过滤器验证输入。因此,黑客或入侵者发现很难通过利用服务器端过滤器对服务器端进行全面攻击。
- 服务器端过滤器无法轻易绕过,因为黑客无法直接访问服务器。因此,服务器端过滤器确保检测到可疑请求并立即阻止它们,从而阻止黑客入侵它们。
- 用户输入的数据不会被浏览器或客户端检查,而是直接转发到服务器进行验证,因此浏览器不会获得任何额外的开销,因为过滤器存在于服务器端而不是服务器端客户端。因此服务器有责任检查用户的数据并验证它是否遵循正常的标准程序。
服务器端过滤器的优点:
与客户端过滤器相比,服务器端过滤器具有更多优势。服务器端过滤器的优点如下 -
- 作为服务器执行数据的速度被认为是强大的机器。
- 另外,过滤后的数据是指海量数据中有用的数据较少,直接影响客户端和服务器之间的传输速度。
- 过滤后的数据量较小,因此它有助于减少流量
- 它确保数据的适当安全性,因为它不容易被黑客捕获。
- 当可用资源未知时,服务器端过滤器工作得最好,从而减少客户端浏览器过滤数据的负载。