什么是注入攻击?

注入攻击针对注入漏洞——这是一种非常广泛的网络安全漏洞,其中包括一些严重的应用程序安全风险。在OWASP的2021年十大风险中,注入是web应用安全的第三大风险。尽管攻击载体种类繁多,但几乎所有注字符间距怎么加宽入攻击的共同点都是,攻击者能够将未经验证的用户输入直接插入到执行的应用程序代码中。

根据漏洞的类型和攻击目标的不同,攻击者可能会注入数据库查询、JavaScript代码、本机应用程序代码、操作系统命令等等。成功的注入攻击可能会产生各种后果,包括数据泄露、拒绝服务、特权提升、绕过身份验证,甚至通过远程代码执行彻底破坏目标系统。

1、SQL注入 (SQLi)

绝大java怎么读多数web应用都是由数据库支持的,最流行的数据库管理系统shell什么意思仍然使用SQL(结构化查询语言)作为数据访问语言。为了字符型变量执行SQL注入攻字符间距加宽2磅击,网络犯罪分子将SQL语句插入到web表单、评论字段、查询字符串或其他外部用户可访问的输入通道中的数据中。恶意代码通常是用于提取敏感数据的SQL查询,但也可以用于修改数据库内容的SQL语句,包括数据库有哪几种删除java培训(删除)数据库表。

如果目标应用程序容易受到SQL注入的攻击,它将直接将数据发送到数据库,而不检查数据是否安全。然后,数据库服务器字符型变量将执行攻击者注入的恶意SQL语句,字符间距加宽2磅怎么设置而不是存储注释或检索某些帐户数据。即使脆弱的应用程序没有直接暴露数据,攻击者也可能使用盲S数据库软件QL注入来间接发现信字符间距息。

SQL注入是最古老和最危险的Web应用程序漏洞之一。在 Common Weakness Enumeration 中列为CWE-89:SQL命令中使用的特殊元素的不当中和,SQL注入在2021shell怎么读 年 CWE前25名中排名第6 。Invicti 检测到多种类型的SQL注入漏洞,从典型的带软件商店下载内 SQL注入到盲 SQL注入(包括基于布尔的)和带外SQL注入。

SQL注入是web应用程序古老而又危险的漏洞之一。在常见缺陷枚举中被列为CWE-89:在SQL命令中使用特殊元素的不当中和,SQL注入在2021年的CWE前25名中排名第6。WuKong静态软java语言件安全测试可以在软件开发期间查找SQL注入漏洞,提高软件安全性。

2、跨站脚本(XSS)

虽然名称中没有“注入”,但跨站点脚本 (XSS)字符间距加宽2磅怎么设置本质上是一个脚数据库系统工程师本注入漏洞。任何未能对包含脚软件开发本代码(通常是JavaScript)的用户输入进行清理的web应用程序都可能容易受到跨站脚本攻击(XSS)。要利用XSS漏洞,攻击者提供一个包含恶意代码的文本字符串,例如将其作为用户ID参数放在URL中。攻击有效负载随后由受害者的浏览器执行,而不是作为常规参数值处理。

XSS攻击可能会产生严重的后果,从将用户重定向到恶意站点,到窃取会话cookie和劫持用户会话。虽然用户输入过滤可以字符间距怎么加宽在一定程度上降低成功攻击的风险,但有许多方法可以规避XSS过滤器,因此编写安全代码比较稳妥。

XSS被列入Cshell怎么读WE缺陷分类CWE-79:网页生成过程中输入的不当中和,并在2021年Cshell命令WE前25个最危险的软件弱点中排名第二。

3、操作系统命令注入

Web 应用程序有时可能需数据库系统概论第五版课后答案要在底层操作系统中执行系统命令。如果应用程序存在Java命令注入数据库系统概论第五版课后答案数据库系统工程师洞,攻击者可以在用户输入中提供自己的操shell翻译作系统命令。成功的命令注入(又名 shell 注入)可能非常危险,因为它可以让攻击者获取有关操作系统和服务器配置的信息,升级他们的权限,甚至执行任意系统命令以完java编译器全破坏系统。

防范胜于治疗,因此最好避免从 Web 应用程序调用系统命令。当需要执行系统命令时,仔细验证用户输入并通过白名单严格进行限制。软件工程专业

操作系统命令注入在CWE的前25列表中排名第5名CWE-78:操作系统命字符间距怎么加宽令中使用特殊元素的不当中和。

4、代码注入javascript(远程代码执行)

如果攻击者能够提供应用程序代码作为用户输入并让java环境变量配置服务器执行它,则应用程序存在代码注入漏洞(也称为远程代码执行或 RCE)。例如,如数据库系统概论第五版课后答案果易受攻击的应用程序是用 PHP 编写的,则攻击者可以注入PHP代码,这些代码由We软件工程师b服务器上的PHP解释器执行。

代码注入与操作系统命令注入不同,因为注入的是应用程序代码,而不是系软件技术统命令(尽管如果应用程序接受调用系统命令的恶意代码,两者可能会导致shellfish另一个)。如果攻击者设法使远程代码执行,那么应该认为目标系统受到了破坏,因此这是一个关键的漏洞。

代码注入归类为CWE-94:代码生成的不当控制数据库管理系统

5、XXE注入

最后一个是XML外部实体 (XXE) 注入。如果应用程序接受XML输入并配置为支持具有弱XML解析器安全性的遗留文档类型定义 (DTD),则攻击者可以向其发送特制的 XML文档,以执行从路径遍历到服务器端请求伪造 (SSRF)和远程代码执行。

与之前的四种注入攻击不同,这次注入攻击不会利用未经验证的用户输入,而是利用 XML 解析器数据库软件中固有的不安全遗留功能,因此可能特别危险。如果应用程序处理XML软件工程文档,避免此漏洞的方法是禁用对dtd的支持,或者至少禁用对外部实体的支持。

与XML外部实体相关的攻击向量被分类为CWE-611: XML外部实体引用的不当限制。XXE注入在2017年OWASP十大榜单中排名第软件工程师四,2021年合并到安全配置错误类别中。

防止注入攻击

多数注入攻击都依赖于Web应用程序执行的不受信任的输入。不正确的输入验证在 CWE 前 25 名java语言列表中排在第4位。对所有用户控制的输入进行软件技术仔细的字符串逆序输出清理、过滤和编码有助于防止绝大多数注入漏洞。

除了让开发人员注意此类安全问题外,在开发生命周期中直接集成有效的静态代码安全测试工具有助于在快速开发的节奏中及时发现并修复安全问题。