如何防止SQL注入攻击?

您知道17 年前首次发现sql 注入攻击吗?然而,它仍然在OWASP 十大漏洞列表中名列前茅。这个漏洞是什么?它如何影响您的应用程序?你能为这个做什么?这是帮助您了解此 OWASP 十大漏洞及其业务影响的指南。如何停止 SQL 注入?您可以先通过AppTrana 免费试用了解您的网站是否存在 SQL 注入风险。,,数据库是一组描述的表,可以从中访问或存储数据。使用数据库的应用程序需要一种媒介来在前端和数据库之间进行通信。这就是 SQL 发挥作用的地方。结构化查询语言 (SQL) 是一种用于访问和操作数据库中数据的语言。应用程序可以使用 SQL 语句与数据库进行通信。使用 SQL 语句,应用程序可以执行一些标准的 SQL 命令,例如“SELECT”、“UPDATE”、“INSERT”、“DELETE”、“CREATE”、“DROP”。,大多数 .com/tag/web” target=”_blank”>Web 应用程序使用称为结构化查询语言 (SQL) 的机器可理解的语言与数据库进行交互。攻击者使用 Web 应用程序中的输入字段在服务器上运行任意查询(注入);因此,攻击过程称为 SQL 注入或SQLi 攻击。,常见的 SQL 注入攻击会导致知识丢失或拒绝访问。然而,多年来,黑客将这些攻击与身份验证不足、DNS 劫持、XSS 和 DDoS 相结合,造成严重的经济损失和绝对的主机接管。以下是近年来最著名的一些 SQL 攻击。,当未经适当验证的用户输入直接作为 SQL 查询传递给 SQL 解释器以进行处理时,应用程序很容易受到 SQL 注入的攻击。这导致执行用户输入并提供预期的结果。,下面的场景解释了一个 Web 应用程序,它接受用户的用户名和密码,并直接传入要执行的查询,案例 1:应用程序接受用户输入并传入 SQL 查询,,案例 2:在用户名参数中添加了单引号。结果,数据库运行以下查询,,由于 OR 1=1,’ WHERE 子句从表 users 中返回第一个 id。成功执行此 SQL 命令后,攻击者可以绕过身份验证。,攻击者怎么知道你的漏洞?,步骤1:,攻击者使用包括机器人和软件在内的自动化机制扫描数千个网站以寻找 SQL 注入。一些最常测试的字段是 URL 和表单。在这里很难停止 SQL 注入。,第2步:,审判。他分析漏洞的严重性并渗透到数据库中。,第 3 步:,精心设计了一个虚假输入命令,牢记漏洞,然后在该时间段内对其进行测试。如果它授予对数据库的访问权限,攻击者可以诱骗应用程序泄露所有记录。,第4步:,更致命的攻击者会寻找其他漏洞并同时利用它们来获取非法经济收益和主机控制权。,例子:,登录表单是验证用户的最常用方法之一。,,验证功能对应的服务器代码为:,现在,黑客只需在任一输入框中输入“或”“=”即可验证 SQL。它将为他提供表用户中的所有行。,,
,您知道17 年前首次发现SQL 注入攻击吗?然而,它仍然在OWASP 十大漏洞列表中名列前茅。这个漏洞是什么?它如何影响您的应用程序?你能为这个做什么?这是帮助您了解此 OWASP 十大漏洞及其业务影响的指南。如何停止 SQL 注入?您可以先通过AppTrana 免费试用了解您的网站是否存在 SQL 注入风险。,当未经适当验证的用户输入直接作为 SQL 查询传递给 SQL 解释器以进行处理时,应用程序很容易受到 SQL 注入的攻击。这导致执行用户输入并提供预期的结果。,

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《如何防止SQL注入攻击?》
文章链接:https://zhuji.vsping.com/337715.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。