1. 支持中心
  2. 问题定义
  3. SQL注入

SQL注入

什么是SQL注入?

SQL注入(或SQLI)是导致许多备受瞩目的数据泄露的严重脆弱性。

SQL注入通常允许攻击者从脆弱网站中提取整个数据库,包括用户信息,加密密码和业务数据。beplay体育能用吗随后,这可能导致用户帐户的大规模妥协,被加密并保留给赎金或被盗的数据被出售给第三方。使用现成的工具可以轻松地发现和滥用许多SQL注入漏洞,这使得它们很可能比需要熟练攻击者的漏洞被利用。

当应用程序以不安全的方式将用户数据合并到数据库查询中时,通常会出现SQL注入漏洞。攻击者可以操纵数据以使其自己的数据库查询执行,从而使他们可以读取或修改数据库的内容。

成为SQL注射攻击受害者的组织通常不知道该脆弱性已被利用。在某些情况下,受害者在攻击者利用攻击者以窃取组织的数据几个月或几年后意识到漏洞。

描述:SQL注射

当将用户控制数据以不安全的方式合并到数据库SQL查询中时,SQL注入漏洞就会出现。攻击者可以提供精心设计的输入,以突破其输入出现的数据上下文并干扰周围查询的结构。

通常可以通过SQL注入来传递各种破坏性攻击,包括读取或修改关键应用程序数据,干扰应用程序逻辑,在数据库中升级特权并控制数据库服务器。

修复:SQL注入

防止SQL注入攻击的最有效方法是为所有数据库访问使用参数化查询(也称为准备的语句)。该方法使用两个步骤将潜在的污染数据合并到SQL查询中:首先,应用程序指定查询的结构,将占位符留给每个用户输入的项目;其次,申请指定每个占位符的内容。由于查询的结构已经在第一步中定义了,因此在第二步中不可能畸形的数据干扰查询结构。您应该查看数据库和应用程序平台的文档,以确定可以使用参数化查询的适当API。强烈建议您进行参数化每一个即使没有明显污染数据库查询的可变数据项,也可以防止发生监督,并避免应用程序代码库中其他地方的更改引入漏洞。

您应该知道,一些常见的和建议缓解SQL注射漏洞并不总是有效的:

  • 一种常见的辩护是将用户输入中出现的任何单个引号加倍,然后将输入纳入SQL查询。该防御旨在防止畸形数据终止其插入的字符串。但是,如果将数据合并到查询中是数字的,则辩护可能会失败,因为数字数据可能不会被封装在引号中,在这种情况下,只有一个空间才能突破数据上下文并干扰查询。此外,在二阶SQL注入攻击中,随后将最初插入数据库中插入数据库的数据已被安全逃脱,然后从数据库中读取,然后再次传递回数据库。当数据重复使用时,最初已加倍的引号将返回其原始表格,从而绕过辩方。
  • 另一个经常引用的防御是使用存储过程进行数据库访问。尽管存储程序可以提供安全福利,但不能保证防止SQL注入攻击。如果在存储过程中动态构建任何SQL,则会在标准动态SQL查询中出现的相同类型的漏洞。此外,即使该过程是合理的,如果使用可控制的数据以不安全的方式调用该过程,则可能会出现SQL注入。

参考

脆弱性分类

典型的严重程度

高的

类型索引(HEX)

0x00100200

类型索引(十进制)

1049088

bepaly下载

打扫扫描仪

这个问题 - 还有更多类似的问题 - 可以使用我们的bepaly下载

bepaly下载
bepaly下载app

打bur

仅从beplay体育能用吗$ 399.00

bepaly下载app

每日SWIG关于SQL注入的故事beplay2018官网