其他分享
首页 > 其他分享> > 20192418张曦 2021-2022-2 《网络与系统攻防技术》实验八实验报告

20192418张曦 2021-2022-2 《网络与系统攻防技术》实验八实验报告

作者:互联网

20192418张曦 2021-2022-2 《网络与系统攻防技术》实验八实验报告

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.实验过程

2.1 Web前端HTML

打开apache服务

输入127.0.0.1查看是否开启成功

进入apache所在的文件目录

创建一个含表单的html文件

在浏览器中输入 /var/www/html/simple_form.html,可以看到网页界面如下图

2.2 Web前端:javascipt

添加一段javascipt代码,创建一个新文件


在浏览器中输入访问 /var/www/html/login_test.html

若输入的格式不是邮箱格式,输入框提示会标红

输入正确时:

若不输入密码,则会弹窗提示:

再修改一段:

加入index.php

登录之后跳转欢迎界面

在登录界面将用户名改为<script>alert("hack!")</script>,则会显示"注入"弹窗

2.3 Web后端:MySQL基础

启动mysql数据库,使用默认root登录

show database;查看数据库基本信息

select user, password, host from user; 查看当前用户信息

修改数据库密码

创建新的数据库命名zx

创建表

查询表中所有数据

授权增删改查操作给zx用户

使用新用户进行登录,登录成功!

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

下载或更新php

编写php代码

将之前的login.html中的action改为login.php

打开html网页

2.5 最简单的SQL注入,XSS攻击测试

2.5.1 SQL注入

将email类型改为test

这样即可在用户名处输入' or 1=1#

1=1为永真式,#将后面内容注释掉,无论密码是多少都可以登录成功

2.5.2 XSS攻击

将一张图片命名为tutu.png放入文件夹/var/www/html中,在用户名处输入以下代码,密码任意

即可显示图片

2.6 Webgoat或类似平台的SQL注入、XSS、CSRF攻击各一例。

下载jdk14.0.1,将下载好的webgoat8.0.1放在目录下

输入指令安装并运行Webgoat

进入webgoat然后注册用户

SQL注入攻击

题目要求
在不需要知道任何用户名的情况下,得到整张表的内容。

本题练习的时SQL字符串注入,本段SQL语句构建成了一个动态语句,其目的为:根据删选条件查出表user_data中所有的数据(暴库),实现原理为:where接的条件中必须有一个永真条件,因此可以选择如下的下拉框选项,即可获取表单内容

XSS攻击

注入,弹出弹窗

CSRF攻击

题目要求获取flag

可以使用Burp的proxy抓包,也可以使用更便捷的方法:
使用浏览器界面的检查,找到包,选择包重发

即可在新包里获取flag

3.问题及解决方案

4.学习感悟、思考等

这次的实验内容非常多,但是都是web综合攻防的基础内容,涉及的知识面非常广,需要掌握的能力和操作也非常多。一份耕耘一份收获,虽然是一个漫长的过程,但是本次实验收获满满,不仅学到了很多知识,也掌握了很多网络攻防的基本操作,将实践内容和理论相结合,对SQL注入攻击、XSS跨站脚本攻击、CSRF跨站请求伪造攻击有了更深刻的理解。

标签:Web,张曦,20192418,XSS,攻击,html,2021,SQL,注入
来源: https://www.cnblogs.com/zhangxi2418/p/16339809.html