在OWASP Top10中,注射排在第一位,xss排在第七位,所以出现了问题。 既然sql注入和xss注入都是注入,为什么要单独取出xss并命名呢? 他们俩到底有什么区别,各自的特点是什么? 本文不要对那两个人做详细的说明,稍后会给出详细说明的文章。 本文只从概念、注入方式、危害三个方向进行比较。
概念简介
sql注入
百度表示,SQL注入是指web APP应用程序无法判断用户录入的数据的合法性,或者过滤不严格。 攻击者可以通过在web APP应用中预定义的查询语句的末尾添加附加SQL语句,并在管理员不知道的情况下实现非法操作,来欺骗数据库服务器执行非法的任意查询,进而获得适当的数据信息。
我个人的理解是,通过某种方式将恶意sql语句卷入到原来的sql语句中,然后一起传递到数据库中,所有从数据库角度看语法上没有错误的语句都是正常语句,所以可以执行,获取本来不能获取的数据。
xss注入
百度说,XSS攻击通常是指利用网页开发时留下的漏洞,通过巧妙的方法将恶意指令代码注入网页,让用户加载和执行攻击者恶意编写的网页程序。 这些恶意web程序通常是JavaScript,但实际上也可以包含Java、VBScript、ActiveX、Flash或常规HTML。 攻击成功后,攻击者可以包括但不限于更高的权限(如执行一些操作)、各种内容(如专用web内容、会话和cookie )。
我个人的理解是,攻击者以某种方式将恶意脚本或命令嵌入到用户访问的页面中,并在普通用户访问页面时触发嵌入的恶意脚本/命令,这就是xss注入
注入类别(上文的某种方式)
两个注入类别的理由相同而不同。 同样,由于APP应用没有充分验证用户名,给了攻击者可用的机会。 不同的是,这两种“验证不足”的利用方法不同。
sql注入类别
以下按执行效果分类
1、联合注入
2、百叶窗注
3、错误注入
4、时间注入
5、堆栈查询注入
6、http要求头部注入
xss注入类别
1、反射型
2、内存类型
3、DOM类型
注入的危害
sql注入的危害
1、攻击者非法获取数据库中的数据,引起数据泄露
2、攻击者可以篡改数据库内容。 例如,将一部分内容篡改为非法内容
3、攻击者可以操作(添加/删除)数据库中的数据。 例如,添加后门用户
4、攻击者甚至可以提取权限,获取服务器管理员权限,设置后门,为所欲为
xss注入的危害
1、xss蠕虫;
2、击键
3、钓鱼诈骗
4、劫持用户网络行为,监控用户浏览记录
5、盗取用户cookie,窃取用户信息,窃取用户身份
危害摘要:为了清楚地比较,sql为APP应用程序提供了许多数据库,而xss则面向许多APP应用程序用户。
总结: sql注入和xss注入本质上是注入,但注入对象、注入方法、受害者不同。 正文的比较分析到此结束。 之后,我们将继续对两者进行详细解说,敬请期待~