20221915 2022-2023-2 《网络攻防实践》实践十报告

1.知识点的梳理与总结

一、SEED SQL注入攻击与防御实验
我们已经创建了一个Web应用程序,并将其托管在www.SEEDLabSQLInjection.com。该Web应用程序是一个简单的员工管理应用程序。员工可以通过此Web应用程序查看和更新数据库中的个人信息。此Web应用程序主要有两个角色:管理员是特权角色,可以管理每个员工的个人资料信息。员工是一般角色,可以查看或更新自己的个人资料信息。

熟悉SQL语句: 我们已经创建了一个名为Users的数据库,其中包含一个名为creditential的表。该表存储了每个员工的个人信息(例如,eid,密码,薪水,ssn等)。在此任务中,您需要使用数据库来熟悉SQL查询。

对SELECT语句的SQL注入攻击:上述Web应用存在SQL输入漏洞,任务是在不知道密码的情况下登陆该Web应用程序。

对UPDATE语句的SQL注入攻击:通过员工的更新个人界面实施UPDATE语句的SQL注入攻击。

SQL对抗:修复上述SQL注入攻击漏洞。

二、SEED XSS跨站脚本攻击实验(Elgg)
为了演示攻击者可以利用XSS漏洞做什么,我们在预先构建的Ubuntu VM映像中设置了一个名为Elgg的Web应用程序。在本实验中,学生需要利用此漏洞对经过修改的Elgg发起XSS攻击,攻击的最终目的是在用户之间传播XSS蠕虫,这样,无论是谁查看的受感染用户个人资料都将被感染。

发布恶意消息,显示警报窗口:在您的Elgg配置文件中嵌入一个JavaScript程序,以便当另一个用户查看您的配置文件时,将执行JavaScript程序并显示一个警报窗口。

弹窗显示cookie信息:将cookie信息显示。

窃取受害者的cookies:将cookie发送给攻击者。

成为受害者的朋友:使用js程序加受害者为朋友,无需受害者干预,使用相关的工具了解Elgg加好友的过程。

修改受害者的信息:使用js程序使得受害者在访问Alice的页面时,资料无需干预却被修改。

编写XSS蠕虫。

对抗XSS攻击。

2.实验过程

  1. SEED SQL注入攻击与防御
    熟悉SQL语句
    打开终端输入命令mysql -u root -p seedubuntu
    默认密码为:seedubuntu

请添加图片描述
输入show databases命令查看库的所有用户
请添加图片描述
输入use User;使用其数据库
输入show tables; 查看数据库中的所有表
请添加图片描述
输入命令select * from credential 即可查看credential表中的全部数据。

请添加图片描述
输入select * from credential where Name=‘Alice’;。

请添加图片描述
对SELECT语句的SQL注入攻击
输入命令vim /var/www/SQLInjection/unsafe_home.php
请添加图片描述
请添加图片描述
我们打开www.seedlabsqlinjection.com, 我们从上方可知当username=Admin‘#时,Password可以是任意值。

请添加图片描述

请添加图片描述
我们开始修改数据
使用命令:Salary='20221915’where name=‘Admin’
我们使用vim/var/www/SQLInjection/unsafe_edit_backend.php
进行查看,我们可以发现关于UPDATE的sql语句。
请添加图片描述

请添加图片描述

.

我们回车后查看结果,salary修改成功,说明注入成功。
请添加图片描述
SEED XSS 攻击实验
为了演示攻击者如何利用XSS漏洞,我们在预先构建的Ubuntu VM映像中设置了一个名为Elgg的web应用程序。Elgg是一个非常流行的面向社交网络的开源web应用程序,它已经实现了许多应对XSS威胁的措施。为了演示XSS攻击是如何工作的,我们在安装的Elgg中评论了这些对策,故意使Elgg易受XSS攻击。如果没有对策,用户可以向用户配置文件发布任意消息,包括JavaScript程序。在这个实验室里,学生们需要利用这个漏洞对修改后的Elgg发起XSS攻击,其方式类似于2005年Samy Kamkar通过臭名昭著的Samy蠕虫对MySpace的攻击。此攻击的最终目标是在用户中传播XSS蠕虫,这样,查看受感染用户配置文件的人将受到感染,而受感染的人将把您(即攻击者)添加到他/她的朋友列表中。任务如下
1.做一个弹窗。
我们可以登录alice用户 密码为seedalice 查看个人简介的界面。
请添加图片描述
在Brief description 中插入XSS攻击代码
在这里插入图片描述
确定后,成功弹窗。
请添加图片描述
2.当然我们可以在Brief description中插入XSS代码。从而显示当前网页的cookie
请添加图片描述
请添加图片描述
3.获取cookie
输入ifconfig 查看ip 注入时需要
请添加图片描述
当然获取到的cookie不能发送给自己。所以我们要发送给自己,我们进行一个监听(端口为8888) 在Brief description 中输入如下命令,
然后再终端中使用命令nc -l 8888 -v
请添加图片描述
发现终端中的GET /?后的就是拦截后的cookie信息
请添加图片描述
4.成为受害者的朋友
我们在Alice用户的about me 中添加JS代码 ,记得点击edit HTML
请添加图片描述
我们使用boby访问alice的主页,我们会发现boby用户会自动添加alice为好友。这说明刚刚的js代码生效了。

请添加图片描述
5.修改受害者的信息
于上面相同在about me中接着构造。
请添加图片描述
我们用boby访问Alice的主页,可以发现成功修改boby的主页
请添加图片描述
6.编写XSS蠕虫
< id=“worm” type =“text/javascript”>
var headerTag = “<script id=“worm” type=“text/javascript”>”;
var jsCode = document.getElementById(“worm”).innerHTML;
var tailTag = “</” + “script>”;
var wormCode = encodeURIComponent(headerTag + jsCode + tailTag);
alert(jsCode);

注入成功
请添加图片描述
7.对抗XSS攻击
登录管理员账户admin 找到浏览器中的插件HTMLawed 并且关闭
请添加图片描述
我们查看alice的主页,发现此时的XSS的攻击已经没有效果了,代码也成为about me 从而显示出来。
请添加图片描述

三、学习中遇到的问题及解决

问题1:没有安装vmware tools
解决方案:在网上找Ubuntu tools的安装方法

四、实践总结

本次实践让我学习SQL注入和XSS攻击的方法,了解其中的攻击原理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值