WebGoat中文介绍2.2
OWASP中国 器aP http://www.owasp.org.cn 目录 1 WebGoat简介 1.1 什么是 WebGoat 12什么是 OWASP 6 1.3 WebGoat部署 .:::..::::::::.:::a 6 1.4 用到的工具... 1.4.1 Webscarab 142 Firebug和| watch. 8 1.5 其他说明 8 2 WebGoat教程 .a::::::::::.: 2.1 综合( Genera|) 211HTTP基础知识(HttpBasics).... 212HTP拆分( Http Splitting 11 2.2 访问控制缺陷( Access Control flaws) 19 22.1使用访问控制模型( Using an Access Control Matrix).19 22.,2绕过基于路径的访问控制方案( Bypass a Path Based Access Control Scheme) 22 223基于角色的访问控制(LAB: Role based access contro)25 224远程管理访问( Remote admin access) 36 23Ajax安全( Ajax Security)...138 2.3.1同源策略保护(Sameσ rigin Policy Protection 38 232基于DOM的跨站点访问(LAB: DOM-Based cross- site scripting)...19 233小实验:客户端过滤(LAB: Client Side Filtering) 43 234DoM注入( DOM Injection .46 235XML注人( XML Injection) 49 2.3.6J50N江入( SON Injection) 237静默交易攻击( Silent transactions attacks) 54 23.8危险指令使用( Dangerous Use of Eva)......57 239不安全的客户端存储( Insecure Client Storage) 59 2.4 认证缺陷( Authentication f|aws) 241密码强度( Password Strength/...... 62 62 242忘记密码( Forgot Password) 64 243基本认证( Basic authentication) 66 244多级登求1( Multi Level Login1) 24.5多级登录2( Multi Level Login2) 73 2.5 缓冲区溢出( Buffer overflows) 74 251Of-byne缓冲区溢出(Of-by- One Overflows) n74 2.6 代码质量( Code Quality) 78 261在HTML中找线索( Discover clues in the html) 78 2.7 并发( Concurrency).179 27.1线稈安全问题( Thread Safety Problems).19 272购物车并发缺陷( Shopping cart Concurrency flaw 2.8 跨站脚本攻击( Cross-Site Scripting(XSs).... 82 /1 WAsP中圆 http://www.owasp.org.cn 281使用XSs钓鱼( Phishing with XSS)... 282小实验:跨站脚本攻击(LAB: Cross Site Scripting) .84 283存储型XSS攻击( Stored xss attacks) 着·着,看着着非,·L,看·自,丰着 90 284跨站请求伪造( Cross Site Request Forgery(CSRF)... 28.5绕过CSRF确认( CSRF Prompt By-Pass.93 28.6绕过 CSRE Token( CSRF Token By-Pass)∴98 28,7 HttpoNly测试( HttpoNly Test).102 28.8跨站跟踪攻击( Cross Site Tracing(XST) Attacks) 2.9 不当的错误处理( Improper Error Handling) 105 291打井认让失败方案( Fail Open Authentication Scheme)105 210注入缺陷( njection Flaws) 107 2101命令注入( Command Injection) 2102数字型SQL注入( Numeric SQL Injection) 2.10.3日志欺骗( Log Spoofing) 110 2104 XPATH型注入( XPATH Injection) 112 2105字符串型注入( String SQL Injection) 2106小实验:5QL注入(LAB: SQL Injection)... 115 2107通过SQL注入修改数据( Modify Data with SQL Injection).....119 210.8通过50注入添加数据( Add Data with SQL Injection)... 120 210.9数据库后门( Database backdoors 121 21010数字型盲注入(B| nd Numeric SQL Injection) 123 2.10.11 字符串型盲注入( Blind String SQL Injection)... 124 211拒绝服务( Denial of service) ...126 2111多个登录引起的拒绝服务( Denial of Service from Multip| e Logins) 126 212不安全的通信( Insecure Communication) ..127 2121不安全的登录( nsecure login)... 127 213不安全的配置( nsecure Configuration) 130 2131强制浏览( How to Exploit Forced browsing) 130 214不安全的存储( Insecure Storage)...131 2141强制浏览( How to Exploit Forced Browsing) 131 215恶意执行( Malicious execution) ∴132 2151恶意文什执行( Malicious file execution) ∴132 2.16 参数篡改( Parameter Tampering)...... 2161绕过HTML字段限制( Bypass HTML Field Restricti) 134 134 2162利用隐藏字段( Exploit Hidden Fields) 2163利用未检查的Emai( Exploit Unchecked Email)138 2164绕过客户端 JavaScript校验( Bypass client Side Java Script va| dation) 217会话管理缺陷( Session Management Flaws) 148 2171会话劫持( Hijack a Session) 148 2172认证 Cookie欺骗( Spoof an Authentication Cookie). .154 217.3会话团定( Session fixation)...58 2.18 Web服务( Web services) 162 2181创建SoAP请求( Create a SoAP Request)...12 2182WSDL扫描( WSDL Scanning) 168 /177 OWASP中国 器aP http://www.owasp.org.cn 2183 Web service sax注入( Web Service SAX Injection)... 170 2.18.4 Web Service SQL YiA(Web Service SQL Injection) 172 219管理功能( Admin functions) 175 2191报告卡( Report Card) .175 220挑战( Challenge)... 176 2201挑战( The challenge! 176 5/177 OWASP中国 器aP http://www.owasp.org.cn 1 Webgoat简介 11什么是 Webgoat WebGoat是 OWASP组织研制出的用于进行web漏洞实验的应用平台,用来说明web 应用中存在的安全漏洞。 WebGoat运行在带有java虚拟机的平台之上,当前提供的训练课 程有30多个,其中包括:跨站点脚木攻击(XSS)、访问控制、线程安全、操作隐藏字段、 操纵参数、弱公话 cookie、SQL盲沖、数宁型SL注入、宁符串型SL注入、web服务、Open Authentication大效、危险的HTML注释等等。 Webgoat提供了一系列web安全学习的教程, 某些课程也给出了视频演示,指导用户利用这些漏洞进行攻击 12什么是 OWASP OWASP是一个开放式Web应用程序安全项目( OWASP, Open Web Application Security Project)组织,它提供有关计算机和互联网应用程序的公正、实际、有成木效益的信息。其 目的是协助个人、企业和机构来发现和使用可信赖的软件。开放式Web应用程序安全项目 ( OWASP)是个非营利组织,不附属于任何企业或财团。因此,由 OWASP提供和丌发的 所有设施和文件都不受商业因素的影响。 关国联邦贸易委员会(FTC强烈建议所有企业需遵循 OWASP所发布的《十大Web弱点防 护》守则。 OWASP官方地址:htt:www.owasp.org OWASP中文官方:http:/www.owasp.org.cn 13 Webgoat部署 Webgoat可以在网上下载到,运行其中的“ webgoat_8080bat”即可。在运行前,需要 将代理设置为 localhost,端∏8080。 在浏览器中输入htte:/ oca lhost:8080/ WebGoat/ attack登录,如果启动了 Webscarab 则在浏览器输入htt:// ocalhost:8080/ WebGoat/ attack。初始用户名密码是 guest 可以在 \Web Goat-5.2\ tomcat\ conf\tomcat-users xm文件中修改用户名与密码。 也可以在 Webgoat52 tomcat\ conf\server_80.xm文件中修改端口号。 注意:具体文件路径可能因 Webgoat版本不同而有所区别。 6/1 OWASP中国 器aP http://www.owasp.org.cn 14用到的工具 4.1 Webscarab 1411介绍 WebScarab是一个用来分析由浏览器提交到服务器请求,以及服务器对浏览器做出的响 应的应用服务框架,也可以当做一个代理工具,或者说就是一个代理。使用者可以利用 Webscarab查看、分析、修改、创建所截取的浏览器与服务器之间的请求与响应,也可以用 来分析HTTP与Https协议。 网页的对话输入框中可能存在某些限制,比如长度,格式等等。现在使用者可以在 Webscarab截获请求对话框中对其进行修改;还可以利用 Webscarab对网站进行注入型攻击, 以测试网站的安全性。 Webscarab也是 Webgoat的一个辅助工具,在 Web goat进行某些漏洞攻击时,可以利 用 Webscarab分析,修改所提交的请求,以及返回的响应。 1412安装与配置 1.安装和运行的前提是JRE环境的支持,如果双击.ar文件不能运行,可以右击选 择打开程序为Java安装路径卜的jre(C:\ ProgramFiles java、jrel.6.002\bin) 2.安装:双击 webscarab- installer-20070504-1631.jar文件,按照安装向导进行相 应的安装。 3.运行:安装完成后可以通过桌面快捷方式或者安装目录下的 webscarab.jar文件进 行运行,运行后如下图 7/177 OWASP中国 器aP http://www.owasp.org.cn WebscarabLite file view Tools he Summary Intercept intercept requests:□ Case Sensitive Regular Expressions? ds Include paths matching: pUsI Exclude paths matching: HEAD ITGEO(CSS(s 0r099 PUT DELETE TRACE PROPFIND OPTIONS Intercept responses:□ Onby MllME-Types matching Used 1.94 of 63. 56B 4. Webscarab的安装比较简单,但是需要JRE环境。 Webscarab配置,主要是浏览器 网络链接的设置。 5.测试:勾选 Webscarab的拦截选项,打开一个页面时 Webscarab可以截获到请求, 说明配置正确。 142 Firebug和 sWatch Firebug是 Firefox下的一个括件,能够调试所有网站语言,如HTML,CSS等,但 FireBug 最吸引人的就是 JavaScript调试功能,使用起来非常方便,而且在各种浏览器下都能使用 (IE, Firefox,0pera, Safari)。除此之外,还有其他强大的功能,比如HML,CSS,DOM的 察看与调试,网站整体分析等等。总之,就是一套亢整而强大的WB开发工具。再有就是 其为开源的软件 IEWatch是一个微软IE的内置插件,可以查看和分析HTP/ Https头信息, cookies以及通 过CFT和PQST提交的数据 15其他说明 由于 Webgoat项目(包括中文)本身为 OWASP多名成员共同参与完成,因此可能出现 部分截图中或上枧名不一致的情况。建议使用时结合您的安装环境的具体情况做必要的 调整 8/177 OWASP中国 器aP http://www.owasp.org.cn 2 Webgoat教程 21综合( General) 211HTTP基础知识(HttpBasics) 2111技术概念或主题( Concept/ Topic To Teach) 该课目的在于了解浏览器和应用程序之间数据交互的基本知识。 2112技术原理( How It works) HTTP是如何工作的呢?所有的HTP传输都要遵循冋样的通用格式(需要使用IEWatch 或 Webscarab类插件协助进行学习)。每个客户端的请求和服务端的响应都有三个部分:请 求或响应行、个报头部分和实体部分。客户端以如下方式启动个交互: 客户端连接服务器并发送一个文件请求 接下来,客户端发送可选头信息,告知接收服务器其配置和文件格式 发送请求和报头之后,客户端可以发送更多的数据。该数据主要用于使用POST方法的 CG|程序。 2113总体目标( General goals) 请在页面下方的输入域中输入字符串,点击【Go!】按钮后提交数据。服务器接收请求 后会返回用户的输入,并回显给用户。该过程展现了HTIP请求的基本操作原理 用户应通过以下操作熟悉 WebGoat的特征,如:通过操作页面上方的按钮可以查看提 示信息、HTTP请求参数、HTTP请求Cookies以及Java源代码。您也可以在首次使用时尝 试使用工具 WebScarab 9/1 OWASP中国 器aP http://www.owasp.org.cn 2114操作方法( Solutions) 在浏览器设冒中増加一个 localhost的代理,然后可以启动 Webscarab 0连接设置 配置访问因特网的代理 O无代理(Y) O自动倫测此网络的代军设置 O傅厂系统代理设晋山 手动配置代理:(M HmP代:[ localhost N端:()[280 口怎所有协议使用相同代S SSL代理 ETP代理 端口:(B SOCKS主机 口:(T O SOCKS V42 SOCKS 不使用代理:(y)ocah127.01 的如: mozilla.org,net.nz,192168.1.0/24 O自动代理配置URL:A 重新截A但 帮助(H 消确定 我们需要在“拦截( Intercept)"选项下中选择“拦截请求( intercept request)"。 Eile view Toois Help sammy mercer Percept requests:E Case SensitIe Re uar Expressios? Methods ichida pathss matchi PosT Exchde paths matching: HEAD m (gil pgipnglesslispice aawd"5 PUT DRLETE TRACE PROPANE PiLoTS OnN MIME-TyHes matching: 在页面输入框中填写上您的名字(" Your name")后,单击【Go!】按钮提交数据。在 WebScarab的新窗冂中,我们可以找到参数 person。 10/177
暂无评论