******## 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.实验过程
(1)Web前端HTML
使用指令service apache2 start启动apache服务

在浏览器输入kali的ip显示正常

在 /var/www/html目录下,新建一个含有表单的html文件20192407login.html

在浏览器中打开显示正常

(2)Web前端javascipt
创建一个含表单的HTML

在用户点击登陆按钮后回显“欢迎+输入的用户名

(3)Web后端:MySQL基础:正常安装、启动MySQL,建库、创建用户、修改密码、建表
开启mysql并登录

建库

查看数据库

建立表logininfo,插入“xjy”和“20192407”并查看数据库内容


修改密码


创建用户

新用户可以正常登录

(4)Web后端:编写PHP网页,连接数据库,进行用户认证
编写前端和后端代码:


进入网页运行成功


附:数据库

******(5)最简单的SQL注入,XSS攻击测试 ******
sql注入:

XSS攻击测试:输入

(6)安装Webgoat或类似平台,并完成SQL注入、XSS、CSRF攻击。
下载Webgoat并使用java -jar webgoat-server-8.2.2.jar指令加载

登录webgoat

sql注入:得到表的内容

xss攻击

CSRF攻击
通过csrf的方式跨站点提交请求,然后填入响应的flag。


将GET请求的头部referer字段要去掉,在burpsite里面提交一下,然后就获得了flag,

******## 3.问题及解决方案 ******
- 问题1:数据库无法正常启动:


** 问题1解决方案:在网上查询执行代码:flush privileges即可。**

4.学习感悟、思考等

本次实验难度适中但内容较为繁琐,kali和数据库也在使用中出现了不少小毛病好在得以解决。本次实验让我对前端的HTML,后端的PHP,数据库以及SQL注入攻击、XSS攻击、CSRF攻击有了更深的理解。对网上的攻击手段也有了进一步的了解。

posted on 2022-06-10 19:02  火柴地狱2407  阅读(40)  评论(0编辑  收藏  举报