93
社区成员




(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攻击。
打开Apache服务
浏览器中输入127.0.0.1,显示apache界面,成功开启
新建表单html文件,编写一个带表单的html代码
浏览器输入 /var/www/html/20202426xsxrlogin.html
添加一段JavaScript代码,判断用户是否输入账号、密码
尝试注入攻击:利用回显用户名注入HTML及JavaScript
打开mysql服务
使用Mysql
mysql -u root -p
use mysql;
select host, user, password from user;
建库,创建用户,建表
PHP网页:
登陆成功
用户名输入20202401 ' or 1= 1; -- 不需要输入正确密码,可以通过验证:
XSS攻击测试:
下载地址:https://github.com/WebGoat/WebGoat/releases
在kali中打开网址:http://127.0.0.1:8080/WebGoat
SQL注入攻击在左侧的页框中选择injection->SQL injection(info)
XSS注入攻击:
CSRF攻击:
F12”进入开发者模式,在浏览器下方出现网页源代码;先点击左上角小方框,点击“Submit Query”,页面下方代码框显示出对应form表单的代码。
浏览器打开20202401jdcrsf.html,页面中只有提交框"Submit Query";点击"Submit Query",获取flag值.
可以看到flag值为8977
问题一:在mysql的使用部分一直报错,显示42000错误。经过上网查找发现是说明输入格式有错误,经过查改,发现是单引号的格式错误。
问题二:在最后csrf攻击时,一直显示如下画面:
发现是f12copy下来的代码有问题,导致一直点击submit query不能获取flag值,中间使用burp实在是不会操作,一头雾水,最后把html文件修改得到正确结果。
本次实验在Linux下编写了前端和后端,搭建了网页,进行了一些攻击,使用了用来说明WEB应用中存在的安全漏洞的靶场WebGoat,进行了SQL注入、XSS攻击和CSRF攻击,对攻防的知识与一些具体操作结合的更加紧密,领悟的更深刻了,也对Web开发和网络安全有了更深入的理解,受益匪浅。