论攻击Web应用的常见技术

应用HTTP协议的服务器和客户端、以及运行在服务器上的Web应用等。

攻击基础:

HTTP是一种通用的单纯协议机制。在Web应用中,从浏览器那接受到的HTTP请求的全部内容,都可以在客户端自由地变更、篡改,Web应用可能会接收到和服务器完全不相同的、被刻意篡改的内容。

攻击对象:

URL查询字段或表单、HTTP首部、Cookit等。

在HTTP的请求报文内加载攻击代码,就能发起Web应用的攻击,通过URL查询字段或表单、HTTP首部、Cookit等途径把攻击代码传入,若代码存在安全漏洞,则会被攻击者拿到管理权限,然后请求内容被更改或获取。

攻击方式:

主动攻击和被动攻击

 

主动攻击:以服务器为目标的主动攻击

主动攻击是指攻击者通过直接访问Web应用,把攻击代码传入的攻击模式。由于该模式是直接针对服务器上的资源进行攻击的,因此攻击者需要能够访问到那些资源。

主动攻击模式里具有代表性的攻击是SQL注入攻击和OS命令注入攻击。

 

SQL注入攻击

该攻击主要是针对Web应用使用的数据库,通过运行非法的SQL而产生的攻击。

攻击模式:当Web应用对数据库表内的数据进行检索、添加或删除等操作时,会使用SQL语句连接数据库进行相应的操作,所以如果在调用SQL语句的时候存在漏洞的话,将会被恶意注入非法的SQL语句。所以可以在Web的地址栏部分进行相应的攻击处理。如:在URL中,加--,在SQL语句中--表示注释的意思,会将一部分内容注释掉,达到攻击者的攻击目的。

攻击影响:非法查看或篡改数据库内的数据、规避认证、执行和数据库服务器业务关联的程序

 

OS命令注入攻击

该攻击是通过Web应用,执行非法的操作系统命令达到攻击目的,只要在能调用Shell函数的地方就存在被攻击的风险。

攻击模式:从Web应用中通过Shell来调用操作系统命令,如果在Shell调用时存在漏洞,就可以执行攻击者的非法OS命令,也就是说,可以通过OS注入攻击执行OS上安装的各种程序。如发送咨询邮件来注入攻击。

 

被动攻击:以服务器为目标的被动攻击

被动攻击时指利用圈套策略执行攻击代码的攻击模式,在被动攻击的过程中,攻击者不直接对目标Web应用程序发起攻击,一般的攻击手法是设置陷阱让用户去触发,中招后的用户浏览器会把含有攻击代码的HTTP请求发送给作为攻击目标的Web应用,运行攻击代码。攻击者借助这个攻击代码为基础,可以窃取用户个人信息、篡改滥用用户的信息等。该攻击模式连企业内网都同样会受到攻击。

被动攻击中具有代表性的攻击是跨站脚本攻击和跨站点请求伪造、HTTP首部注入攻击等。

 

跨站脚本攻击

XSS,Cross-Site Scripting,是通过安全漏洞的Web网站注册用户的浏览器内运行非法的HTML代码或者JavaScript进行的一种攻击。

攻击模式:攻击者编写脚本设下陷阱,用户在自己的浏览器上运行时,一不小心就会受到被动攻击。

攻击影响:利用虚假输入表单骗取用户个人信息、利用脚本窃取用户的Cookit值,被攻击者在不知情的情况下,帮助攻击者发送恶意请求、显示伪造的文章或图片

XSS是攻击者利用预先设置好的陷阱触发的被动攻击。如:在URL中加入特定的script代码来获取登录者的个人登陆信息、对用户Cookit的窃取攻击(通过Js获取)。

 

跨站点请求伪造

CSRF,是指攻击者通过设置好的陷阱,强制对已完成认证的用户进行非预期的个人信息或设定信息等某种状态更新,属于被动攻击。影响:利用已通过认证的用户权限更新设定信息、利用已通过认证的用户权限购买商品、利用已通过认证的用户权限在留言板上发表言论。等

 

HTTP首部注入攻击

该攻击模式是指攻击者通过响应首部字段被插入换行、添加任意响应首部或主体的一种攻击。属于被动攻击模式。向首部主体添加内容的攻击称为HTTP响应截断攻击。

攻击模式:Web应用有时会将从外部接收到的数值,赋给响应首部字段Location和Set-Cookit。HTTP首部注入通过在某些响应首部字段需要处理输出值的时候,插入换行发动攻击。

攻击影响:设置任何Cookit信息、重定向至任意URL、显示任意的主体(HTTP响应截断攻击)

攻击案例:

1、在URL后添加以%0D%0A(HTTP报文中的换行符),后紧接着攻击者自己编写的首部攻击字段进行信息获取,如Set-Cookit来获取相应Cookit的值。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/774ce38196cc14012f08e60be4f32bfe.html