20202425 2022-2023-2 《网络与系统攻防技术》实验八实验报告

20202425李朝瑭 2023-06-21 23:12:04

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

1.开启Apache。

systemctl start apache2

 

 

2.在浏览器中输入127.0.0.1,发现显示了apache的界面,证明服务开启成功。

 

 

3.进入 /var/www/html路径,新建一个表单的html文件。

4.编写一个带表单的html代码。

 

5.在浏览器输入 /var/www/html/20202425login.html,打开网页,就是编写的html。

 

 

2.2 Web前端javascipt

1.在原有的html的基础上,添加一段JavaScript代码,判断用户是否输入账号、密码。

<!DOCTYPE html> 
<html> 
<head> 
<title>20202425lctLogin System</title> 
</head> 
<body> 
<h2>20202425lctLogin System</h2> 
<form action="login.php" method="post"> 
<label for="username">Username:</label>
<input type="text" id="username" name="username" required>
<br><br> 
<label for="password">Password:</label>
<input type="password" id="password" name="password" required>
<br><br> 
<input type="submit" value="Login"> 
</form>
</body>
</html>

 

2.效果如下。

尝试登录:

 

 

3.尝试注入攻击:利用回显用户名注入HTML及JavaScript。
(1)注入HTML
在用户名处输入:<p>20202425lctHTML注入</p>

 

 

如图所示,注入成功。
(2)注入JavaScript
输入用户名:<script type="text/javascript"> alert("20202424ljcJavaScript注入") </script>

 

如图所示,注入成功。

2.3 Web后端:MySQL

2.3.1 准备工作

1.下载mariadb。

2.打开MySQL服务,并查看服务状态。

3.进入mysql数据库,查看现有的数据库。

4.查看用户表数据,修改root密码并更新权限。

5.修改root密码后重新登录,进入数据库并查看用户表数据。

2.3.2 建立数据库,添加表

1.创建数据库20202424。

2.在数据库中创建loginuser 登录用户表,并添加一条记录。

2.4 Web后端:PHP

1.编写login.php。

2.输入刚刚的账号密码,登录成功。

 

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

1.sql注入。
输入' or '1'='1

 

 

2.xss攻击。
输入<script> alert("ljcXSS攻击") </script> # 弹出警告

 

 

2.6 安装Webgoat或类似平台,完成SQL注入、XSS、CSRF攻击

用Webgoat平台完成“通关”。
1.SQL注入

2.XSS攻击

 

利用进行XSS攻击。

3.CSRF攻击

首先按“F12”进入开发者模式,随后可以看到在浏览器下方出现了一大堆网页源代码。接下来先点击最左侧的小方框图标,随后我们把鼠标移动到页面上方的“Submit Query”时,页面下方的代码框就会显示出与之对应的form表单的代码,如下图。

 

 我把这段代码copy下来,复制到新创建的html文件中,并在开头结尾加上html标签和body标签,并把action部分改为"http://127.0.0.1:8080/WebGoat/csrf/basic-get-flag"。

 

 然后再用浏览器打开2425crsf.html,可以看到页面中只有一个提交框"Submit Query",点击"Submit Query",就可以成功获取flag值。

 然后回到WebGoat提交flag,即可验证该部分实践成功完成。

3.问题及解决方案

问题1:进入mysql数据库查看现有的数据库时不显示。

 

问题1解决方案:语句末尾要输入“;”!

4.学习感悟、思考等

通过这八次实验(划重点)我深刻认识到了网络安全的重要性和攻防技术的实用性。在本次实验中,我们模拟了黑客攻击与防御的情景,通过实际操作和思考,我对黑客攻击手段和如何防范这些攻击有了更深的认识。在防御方面,我们学习了多种防御技术,如网络安全措施的规划、防火墙、入侵检测系统等。在实验中,我们实践了如何运用这些安全措施来防范攻击,并及时发现并处理攻击行为。通过这些实验,我了解到了很多实用的防范措施,有助于我提高自己的网络安全意识和防范能力。也成为了企业和机构进行业务促进和信息传播的关键手段。然而,网络安全问题也随之壮大,各种类型的网络攻击在每天都在发生。因此,网络安全需要得到越来越多的重视和保护。

...全文
126 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

93

社区成员

发帖
与我相关
我的任务
社区描述
网络与系统攻防技术课程作业
网络安全系统安全 高校
社区管理员
  • blackwall0321
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧