title: http 理解(下)
date: 2018-05-16 10:13:42
tags: http
Web的攻击技术
简单的HTTP协议本身并不存在安全性问题。目前来自互联网的攻击大多是冲着Web站点来的,他们大多把Web应用作为攻击目标。
在客户端即可篡改请求。
在Web应用中,从浏览器拿接受到的HTTP请求的全部内容,都可以在客户端自由地变更、篡改。所以Web应用可能会接受到与预期数据不同相同的内容。
在HTTP请求报文内加载攻击代码,就能发起对Web应用的攻击。通过URL查询字段或表单、HTTP首部、cookie等途径把攻击代码传入。
针对Web应用的攻击模式
- 主动攻击
- 被动攻击
主动攻击模式里主要是攻击服务器上的资源进行攻击,代表性的攻击是SQL注入攻击和OS命令注入攻击。
被动攻击 主要攻击用户的资源和权限
因输出值转义不完全引发的安全漏洞
- 客户端的验证
- Web应用端(服务器端)的验证
- 输入值验证
- 输出值转义
跨站脚本攻击
跨站脚本攻击(Cross-Site Scripting,XSS)是指通过存在安全漏洞的Web网站注册用户的浏览器内运行非法的HTML标签或JS进行的一种攻击。动态创建的HTML部分有可能隐藏着安全漏洞。就这样,攻击者编写脚本设下陷阱,用户在自己的浏览器上运行时,一不小心就会受到被动攻击。
跨站脚本攻击有可能造成以下影响。
- 利用虚假输入表单片区用户个人信息
- 利用脚本窃取用户的Cookie值,被害者在不知情的情况下,帮助攻击者发送恶意请求。
- 显示伪造的文章或图片
SQL注入攻击
如果在调用SQL语句的方式上存在疏漏,就有可能执行被恶意注入(Injection)非法SQL语句。
SQL注入攻击有可能会造城以下等影响
- 非法查看或篡改数据库内的数据
- 规避认证
- 执行和数据库服务器业务关联的程序。
OS命令注入攻击
OS命令注入攻击(OS Command Injection)是指通过Web应用,执行非法的操作系统命令达到攻击的目的。只要在能调用Shell函数的地方就有存在被攻击的风险。
HTTP首部注入攻击
HTTP首部注入攻击(HTTP header Injection)是指攻击者通过在响应首部字段内插入换行。添加任意响应首部或主体的一种攻击。属于被动攻击模式。
Location:'xxxxx'
Set-Cookie:UID=123445
这里的123445就是插入之
可能造成的影响:
- 设置任何Cookie信息
- 重定向至任意URL
- 显示任意的主体(HTTP响应截断攻击)
邮件首部注入攻击
目录遍历攻击
远程文件包含漏洞
因设置或设计上的缺陷引发的安全漏洞
强制浏览
强势浏览 是指 从安置在Web服务器的公开目录下的文件中,浏览那些原本非自愿公开的文件
强制浏览可能会造成以下一些影响:
- 泄露顾客的个人信息等重要情报
- 泄露原本需要具有访问权限的用户才可查阅的信息内容
- 泄露未外连到外界的文件
不正确的错误消息处理
web应用的错误信息内包含对攻击者有用的信息,与web应用有关的主要错误信息:
- php或asp等脚本错误
- 数据库或中间件
- web服务器错误
开放重定向
开放重定向功能,假如指定的重定向URL到某个具有恶意的Web网站,那么用户就会被诱导至那个Web网站
因会话管理疏忽引发的安全漏洞
会话劫持
通过某种手段拿到了用户的会话ID,并非法使用此会话ID伪装成用户,达到攻击的目的。
会话固定攻击
该攻击会强制用户使用攻击者指定的会话ID,属于被动攻击
跨站点请求伪造
跨站点请求伪造攻击是指攻击者通过设置好的陷进,强制对已完成认证的用户进行非预期的个人信息或设定信息等某些状态更新,属于被动攻击。
其他安全漏洞
密码破解
点击劫持
DoS攻击
DoS攻击是一种让运行中的服务呈停止状态的攻击,Dos攻击的对象不仅限于Web网站,还包括网络设备及服务器等。
主要有一下两种DoS攻击方式。
- 集中利用访问请求造成资源过载,资源用尽的同时,实际上服务也就呈停止状态。
- 通过攻击安全漏洞使服务停止。
当多台计算机发起的Dos攻击称为DDoS攻击
后门程序
通常后门程序分为3中类型
- 开发阶段作为Debug调用的后门程序
- 开发者为了自身利益植入的后门程序
- 攻击者攻击者通过某种方法设置的后门程序