webGoat实验

 

WEBGOAT 综述

 webGoat的本质就是搭建的目标网站,webscarab实质就是个代理服务器.

安全风险
应对工具
第一位: 注入式风险
SQL Inject Me
第二位: 跨站点脚本 (简称XSS)
ZAP
第三位: 无效的认证及会话管理功能
HackBar
第四位: 对不安全对象的直接引用
Burp
第五位: 伪造的跨站点请求(简称CSRF)
Tamper Data
第六位: 安全配置错误
Watobo
第七位: 加密存储方面的不安全因素
N/A
第八位: 不限制访问者的URL
Nikto/Wikto
第九位: 传输层面的保护力度不足
Calomel
第十位: 未经验证的重新指向及转发
Watcher

HTTP基础

  HTTP(Hypertext transfer protocol)是一种详细规定了浏览器和万维网服务器(www)之间互相通信的规则,运行于OSI模型的应用层,由请求和响应两部分构成。HTTP协议是无状态的协议。无状态指HTTP协议对于事务处理没有记忆力。缺少事务状态意味着若后续处理需要前面的信息,则必须重传,可能导致每次连接传送的数据量增大。基于事务处理的需要,出现了cookiesession技术。

HTTP拆分攻击的基本原理

许多网络协议,包括HTTP也使用CRLF来表示每一行的结束。这就意味着用户可以通过CRLF注入自定义HTTP header,导致用户可以不经过应用层直接与Server对话。

攻击者控制参数并发送一个将产生两次响应的请求;这两次响应都由攻击者组织,并以服务器为目标。

缓存区中毒------服务器缓存机制。当新的请求过来验证资源的最新资源的日期。缓存原理:

1客户端请求一个页面(A.html)。

 2服务器返回页面A.html,并在给A.html加上一个Last-Modified/ETag

 3客户端展现该页面,并将页面连同Last-Modified/ETag一起缓存。

 4客户再次请求页面A,并将上次请求时服务器返回的Last-Modified/ETag写在If-Modified-Since一起传递给服务器。

服务器检查该Last-ModifiedETag,并判断出该页面自上次客户端请求之后是否未被修改。如果没有修改(If-Modified-Since>=最后一次修改的时间),直接返回响应304和一个空的响应体。如果已经修改,则发送新页面。 

参考文献:http://security.ctocio.com.cn/485/12178985.shtml

AJAX 安全

在同源策略下,在某个服务器下的页面是无法获取到该服务器以外的数据的,但imgiframescript等标签是个例外,这些标签可以通过src属性请求到其他服务器上的数据。

档对象模型(DOM)从安全的角度展现了一个有趣的问题。它允许动态修改网页内容,但是这可以被攻击者用来进行恶意代码注入攻击。XSS,一种恶意代码注入,一般会发生在未经验证的用户的输入直接修改了在客户端的页面内容的情况下。

参考攻击代码如下:












XSS 跨站攻击

1反射型

2存储型

3Dom型

http://www.rising.com.cn/newsletter/news/2012-04-25/11387.html

http://www.2cto.com/Article/201310/250553.html

注入缺陷

参考文献:http://blog.sina.com.cn/s/blog_ae3a14c001015lhe.html

会话管理缺陷

1会话劫持

 

综合参考文献:

http://netsecurity.51cto.com/art/201108/287651.htm

http://sebug.net/node/t-38

http://zhanzhang.anquan.org/vul-detail/517a6f4e6856be5066e43957/

http://www.2cto.com/Article/201212/178668.html    [Web的脆弱性:各种注入、攻击]

你可能感兴趣的:(信息安全)