20212402 2023-2024-2 《网络与系统安全技术》实验八报告

求数据集ing 2024-06-05 19:28:08

目录

  • 1. 实验内容
  • 1.1 相关知识点
  • 1.2 实验内容及要求
  • 2.实验过程
  • 2.1 Web前端HTML
  • 2.2Web前端javascipt
  • 2.3Web后端:MySQL基础:正常安装、启动MySQL,建库、创建用户、修改密码、建表
  • 2.4Web后端:编写PHP网页,连接数据库,进行用户认证
  • 2.5最简单的SQL注入,XSS攻击测试
  • 2.6安装Webgoat或类似平台,并完成SQL注入、XSS、CSRF攻击
  • 3.问题及解决方案
  • 4.学习感悟、思考等
  • 参考资料

1. 实验内容

1.1 相关知识点

  • Apache:Apache,全称为Apache HTTP Server,是世界使用排名第一的Web服务器软件。
  • DOM:DOM, 全称为Document Object Model,是一种编程接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。DOM 将文档(如 HTML 和 XML)解析为一个由节点(如元素节点、属性节点和文本节点)和对象(如 Document 对象、Element 对象、Attr 对象等)组成的树形结构。
  • GET与POST方法
  • GET:请求的数据会附加在 URL 之后
  • POST:请求将数据放在 HTTP 请求的 body 中发送,POST 请求不会将数据传输的数据暴露在 URL 中,比GET方法更加安全。

1.2 实验内容及要求

(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
  • service apache2 start启动Apache

img

  • 127.0.0.1火狐输入该地址,显示下图,表明 Apache打开成功

img

  • service apache2 restart重启Apache
  • service apache2 stop停止Apache
  1. 编写一个含有表单的HTML
  • vi /var/www/html/20212402.html编写

  • 火狐浏览器访问127.0.0.1/20212402.html

  • POST方法

img

  • 火狐浏览器访问127.0.0.1/202124022.html

img

  • GET方法

img

  • 火狐浏览器访问127.0.0.1/20212402.html,发现使用get方法登录会在URL中看到登录信息,而POST不会

img

2.2Web前端javascipt

  • vi /var/www/html/20212402.html编写JavaScript验证用户名、密码的规则

img

  • 火狐浏览器访问127.0.0.1/20212402.html,输入账号(zyx)、密码,确定,显示欢迎登录界面

img

  • 密码为空

img

  • 账号为空

img

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

  • systemctl start mysql启动mysql
  • sudo mysql -u root -p root进入

img

  • use mysql;
  • create database 20212402zyx;创建数据库
  • use 20212402zyx
  • create table login(username VARCHAR(10),password VARCMariaDBHAR(20));建表
  • 插入数据
  • insert into login values('zyx','20212402');
  • insert into login values('zhaoyi','2402');

img

  • grant select,insert,update,delete on 20212402zyx.* to zhaoyuxuan@localhost identified by "kali";将 20212402zyx 数据库中所有表的 selectinsertupdatedelete 权限授予 zhaoyuxuan 用户,密码为kali
  • mysql -u zhaoyuxuan -p使用该用户登录

img

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

  • vi /var/www/html/20212402l.php编写php

img

  • vi /var/www/html/20212402l.html修改html

img

  • 用户认证
  • 账号密码匹配正确

img

  • 账号密码匹配不正确

img

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

  1. SQL注入
  • 输入用户任意用户(zhaoyuxuan用户不在表中)
  • 输入密码or '1'='1

img

  • 登录成功,攻击成功
  1. XSS攻击
  • 输入用户<script> alert("20212402zyxXSS攻击") </script>(zhaoyuxuan用户不在表中)
  • 输入密码' or '1'='1

img

  • 弹出警告框,攻击成功

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

  • 安装pikachu

img

  1. SQL注入
  • 字符型注入(get)
  • 输入allen,猜测SQL语句为select * from 表名 where username '$name'

img

  • 输入allen' or 1=1#

img

  • 获得了所有id和电子邮件

img

  • 搜索型注入
  • 输入a,猜测SQL语句为select * from 表名 where username like '%$name%'

img

  • 输入a%' or 1=1#

img

  • 获得了所有id和电子邮件

img

  1. XSS攻击
  • 存储类型xss
  • 输入<script> alert("20212402zyx存储类型XSS攻击") </script>

img

  • 弹出警告框,攻击成功(并且之前尝试了<script> alert("20212402zyxXSS攻击") </script>也弹出了)

img

img

  • 反射型xss(post)
  • 输入<script> alert("20212402zyxXSS攻击") </script>

img

  • 弹出警告框,攻击成功

img

  1. CSRF攻击
  • CSRF(get)
  • 登录
  • 点击修改个人信息

img

  • 打开burpsuite抓包

img

  • 将上图urlGET /pikachu/vul/csrf/csrfget/csrf_get_edit.php?sex=nv&phonenum=20212402&add=lanxin&email=20212402&submit=submit HTTP/1.1中的lanxin改为lanxin608,访问该url,个人信息lanxin变为为lanxin608,攻击成功

img

3.问题及解决方案

  • 问题1:开启apache报错
  • 问题1解决方案:80端口被占用,杀死该进程;输入netstat -lnp lgrep 80查看,kill 358931杀死;之后重启就可以了。

img

  • 问题2:Burpsuit抓包不成功
  • 问题2解决方案:点击open browser,在打开浏览器中访问pikachu

img

4.学习感悟、思考等

  通过本次实验,加深了我对HTML的理解和掌握,学习了)Web后端PHP网页的编写。本次实验尝试了很多新东西,学习了PHP网页的编写,初次学习了pikachu和Burpsuit工具的使用。在本次实验中,实现了简单的SQL注入、CSRF攻击、XSS攻击,实践了学习到的理论知识。在pikachu平台上还有很多的攻击,我也进行了初略的探索,感觉还是挺有趣的。总之,这是本课程的最后一次实验了,通过这八次实验巩固了基础知识,同时也学习到了许多新知识和新工具,之后,依旧要认真学习、多加实践!

参考资料

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

98

社区成员

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

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