20199315 2019-2020-2 《网络攻防实践》第2周作业
20199315 2019-2020-2 《网络攻防实践》第2周作业
前言
这个作业属于哪个课程:https://edu.cnblogs.com/campus/besti/19attackdefense
这个作业的要求在哪里:https://edu.cnblogs.com/campus/besti/19attackdefense/homework/10449
我在这个课程的目标是:学习网络攻防相关知识,提升专业技能
这个作业在哪个具体方面帮助我实现目标:学习了解攻防环境搭建过程
知识点梳理与总结————《网络攻防技术与实践》教材第二章
虚拟化网络攻防实验环境
虚拟化网络攻防实验环境介绍
-
一个基础的网络攻防实验环境需要如下组成部分:
-
靶机:包含系统和应用程序安全漏洞,并作为攻击目标的主机。根据目前操作系统的流行程度,基础环境中应包括Windows XP和Linux操作系统主机。
-
攻击机:安装一些专用的攻击软件,用于发起网络攻击的主机。Linux 操作系统平台.上拥有更多更强的攻击软件,相比较于Windows,更适合作为攻击机平台。
-
攻击检测、分析与防御平台:最佳位置是靶机的网关,可以基于Linux操作系统构建网关主机,并通过集成各种软件使其具备网络攻击检测、分析与防御的功能;此外靶机上也通过自带或附加的工具进行系统安全日志分析。
-
网络连接:通过网络将靶机、攻击机和具备检测分析防御功能的网关进行连接。
-
-
一个基础的网络攻防实验环境至少需要3-4台计算机,同时需要至少两个网段将其连接。
在网络攻防实验环境的结构设计方面,第三代蜜网(GenIII Honeynet)技术提供了一个非常好的参照。
蜜网是通过构建部署陷阱网络进行诱骗与分析网络攻击的一种技术手段,通过部署安装典型操作系统并存在安全漏洞的高交互式蜜罐,提供攻击目标环境,作为诱骗网络攻击的陷阱。
第三代蜜网技术中实现了一个作为透明网关的攻击行为捕获与分析平台一蜜网网关 (HoneyWall),并在蜜罐主机上通过Sebek软件记录系统攻击行为。
蜜网架构也可以基于虚拟机技术在单一主机上进行部署,被称为虚拟蜜网( Virtual Honeynet)。
基于虚拟蜜网的部署架构,我们可以同样在虚拟机软件中构建出基础的网络攻防实验环境,在陷阱网络中部署靶机作为攻击目标,利用蜜网网关作为网络攻击检测、分析与防御平台,并在网关外网口虚拟攻击网段和攻击机,从而构成个人版的虚拟化网络攻防实验环境。
网络攻防实验环境配置
书本提供的网络攻防实验环境,包含下表2-1中所列的6个不同类型的虚拟机镜像,分别为作为靶机环境的Linux Metasploitable 和Windows XP Metasploitable,作为攻击机的Back Track 4和Windows XP Attacker,作为检测与防御平台的HoneyWall,以及来自SEED Project的一个SEED虚拟机镜像。
网络攻防的活动与竞赛形式
-
网络攻防的活动与竞赛形式具体包括
-
演示
-
动手体验
-
实验
-
挑战
-
竞赛
-
绵羊墙
-
黑客们找出用户名及其不安全的口令、用户密码,引起人们对网络安全的关注,用以教育人们。
- 开源软件开发
黑客社区中最传统也可能是最重要的一项活动
实践作业
利用提供的虚拟机镜像和VMWare Workstations软件,在自己的笔记本电脑或者P上部署一套个人版网络攻防实践环境,至少包括一台攻击机、一台靶机、SEED虚拟机和蜜网网关,并进行网络连通性测试,确保各个虚拟机能够正常联通。撰写详细实验报告,细致说明安装和配置过程(截图)、过程说明、发现问题和解决问题过程,以及最后测试结果。
- 画出攻防环境的拓扑结构图(包含IP地址)
- 需要详细描述从开始安装到配置结束的环境搭建过程
- 测试攻击机、靶机、SEED虚拟机和蜜网网关的连通性,并截图。
- 需要详细描述攻击机、靶机、SEED虚拟机和蜜网网关的功能以及所包含相关攻防软件的功能
- 由于教材中提到的环境和相关软件均比较老(2010),仔细检查攻击机、靶机、SEED虚拟机和蜜网网关以及各个系统上的软件,如果比较老,请更新到比较新的便于后期攻防实验的版本,包括操作系统和相关软件,并详细说明更新过程。【可选】
网络拓扑图
VM网络设置
VM-【编辑】-【虚拟网络编辑器】
这里注意需要用管理员权限打开:
VMnet0、VMnet1与VMnet8设置如下:
NAT和DHCP设置如下:
linux攻击机Kali 安装
话虽如此,上面那个地址我下载速度是0KB/S,感谢刘琳杰同学的邮件帮助
kali以VM虚拟机vmx文件的形式提供,通过【文件】-【扫描虚拟机】可以直接导入,如下图
设置Kali的网卡,这里选择NAT模式,或者自定义VMnet8(两者等价)
开机进入系统,进行软件设置。Kali的默认用户名为kali,密码kali
root密码kali(先登录kali,后使用su进行提权,禁止直接root登录)下图显示了登录->提权->安装net-tools(ifconfig包)->查看网络信息
至此, Kali设置完成,记住Kali的ip地址!
windows靶机-win2kServer安装
win2kServer通过虚拟机镜像给予,导入方式和上文的导入Kali相同。
网卡设置如下:
开启虚拟机,ALT+CTRL+DEL进入系统,账号administrator,密码mima1234
双击桌面右下角两个小电脑,【属性】-【TCP/IP……】-【属性】
windows靶机安装完成。
windows攻击机-windows Attacker安装
WinXPattacker通过VM虚拟机镜像给定,导入方式与Kali相同。
网卡设置如下:
开启虚拟机,用户密码依旧是mima1234
此时系统已经通过DHCP获得IP地址,不需要手动配置,但需要找到具体IP。
通过ipconfig获得windowsattacker的ip地址:win+R—cmd
windowsAttacker配置完成。
Metasploitable2-Linux安装
Metasploitable2-Linux通过VM虚拟机镜像给定,导入方式与Kali相同。
网卡设置如下:
进入系统,账号msfadmin
,密码msfadmin
。
此处需要手动设置IP地址,具体命令如下:先通过sudo su
命令提升权限(密码msfadmin
)
后执行如下命令:
vim /etc/rc.local
按i键进入编辑模式,方向键控制光标方向(hjkl四个键也行)在文件倒数第二行exit0之前, 插入以下两句:
ifconfig eth0 192.168.200.125 netmask 255.255.255.128
route add default gw 192.168.200.1
ESC,:wq,回车
reboot
重启
重启后
Metasploitable2-Linux配置完成。
SEEDUbuntu安装配置
SEEDUbuntu通过VM虚拟机vmdk磁盘镜像给定,选择新建虚拟机->自定义安装->兼容XX随便选->稍后安装系统->选择linux、版本ubuntu->名称位置看自己心情->连续6个下一步->使用现有虚拟磁盘->选择seedubuntu的vmdk文件(我选的SEEDUbuntu9-000002-cl1.vmdk)->(然后我选了个保持现有格式)->下一步。
SEEDUbuntu的网卡设置如下:
开机, 账户为seed
密码为dees
,开机后通过su命令提权,密码为seedubuntu
ifconfig
查看相关网络信息。
SEEDUbuntu安装完成
蜜罐网关安装
roo-1.4给定的是ISO镜像需要自己安装,安装过程如下:
之后全部“下一步”
添加开机安装使用的镜像
【添加】-【网络适配器】,添加两个网卡,并修改设置
开机,这个界面直接回车即可
登录账号roo
,密码honey
。使用su -
提权,密码honey
,进入配置界面
default初始化
继续配置:
save:
.8
save一下,继续
.8
回到上面提到的windowsAttacker中(mima1234),浏览器打开https://192.168.200.8(s要有)(这里会告诉你证书过期存在风险,选择打开就行)。
(我一开始进成了192.169.200.8,打开了奇怪的新世界大门…)
第一次打开的账号roo
,密码honey
,然后重置密码为Qiren.141
。
测试
切换到roo中
通过su -提权(注意有横线),运行命令tcpdump -i eth0 icmp
Kali ping win2KServer
winattacker ping win2KServer
SEEDUbuntu ping Metasploitable2-Linux
win2KServer ping windowsattacker
roo中tcpdump的信息,可以看到网桥的功能正常
使用到的虚拟机镜像
镜像类型 | 镜像名称 | 用户名 | 密码 | su/su - 提权密码 | IP地址 |
---|---|---|---|---|---|
linux攻击机 | kali | kali | kali | - | 192.168.200.2 |
Linux靶机 | Metasploitable2-Linux | msfadmin | msfadmin | - | 192.168.200.125 |
linux攻击机/靶机 | SEEDUbuntu | seed | dees | seedubuntu | 192.168.200.4 |
windows攻击机 | windows Attacker | - | mima1234 | - | 192.168.200.3 |
windows靶机 | win2kServer | administrator | mima1234 | - | 192.168.200.124 |
蜜罐网关 | roo | roo | honey | honey | 192.168.200.8 |
详细描述攻击机、靶机、SEED虚拟机和蜜网网关的功能以及所包含相关攻防软件的功能
- 攻击机
模拟入侵者发起攻击。
-
kali包含一些信息收集工具,如dmitry、maltegoce等,web扫描工具,如wpscan等。
-
WindowsXP Attacker攻击机,可以作为网络扫描、渗透攻击、程序逆向分析的虚拟机。包含一些渗透攻击工具,如Metasploit 3.4.2-dev、Metasploit 2.7;网络扫描与嗅探工具,如Nmap/Zenmap 5.30 betal;静态分析工具Peid0.95等等。
-
靶机
在网络安全中,靶机是指一个存在漏洞的系统,互联网上所有的网站(系统)都可以说是“靶机”,但是不能直接对未授权的网站(系统)进行测试,于是就出现了靶机。
-
Linux Metasploitable用以测试Metasploit中渗透攻击模块的靶机虚拟镜像,包含了一些存在安全漏洞的软件包,如Tomcat、distcc等等,也存在一些弱口令等不安全配置。
-
SEED虚拟机
Seedubuntu是seedlab提供的一个实验环境,其本质为ubuntu12.04。
包含了netlib/netwox/netwag软件包,实践中用以进行TCP/IP协议栈攻击。还可以提供以及SQL注入和各种xss的漏洞。
- 蜜网网关
蜜网(Honeynet)是在蜜罐技术上逐步发展起来的,又可称为诱捕网络。蜜网技术实质上还是一种高交互型、研究型的用来获取广泛的安全威胁信息的蜜罐技术,其主要目的是收集黑客的攻击信息。但它又不同于传统的蜜罐技术,它不是单一的系统而是一个网络,即构成了一个诱捕黑客行为的网络体系架构,在这个架构中包含了一个或多个蜜罐。一个典型的蜜网通常由防火墙、网关、入侵检测系统和多个蜜罐主机组成,也可以使用虚拟化软件来构建虚拟蜜网。
在蜜网中充当网关的设备称为蜜墙(Honeywall),是出入蜜网的所有数据的必经关卡。在蜜网内部,可以放置任何类型的系统来充当蜜罐(例如不同类型操作系统的服务器、客户机或网络设备)和应用程序供黑客探测和攻击。特定的攻击者会瞄准特定的系统或漏洞,通过部署不同的操作系统和应用程序,可更准确地了解黑客的攻击趋势和特征以及使用的各种工具和战术。
HoneyWall 蜜网网关以桥接模式部署,拥有三个网络接口,其中eth0连接外网,eth1 连接蜜网。这两个接口以网桥模式连接,不需设置IP地址,同时也不对转发的网络数据包进行路由和TTL递减; eth2作为管理接口,连接内部管理监控网络,使得安全实验人员能够远程对蜜网网关进行控制,并对捕获的数据进行进一步分析。
在以ROO v1.4版本构建的HoneyWall蜜网网关中,集成了IPTables 防火墙、Snort 网络入侵检测系统和Tepdump网络嗅探工具对网络攻击数据进行捕获,并通过Sebekd接收蜜罐主机上由Sebek捕获的系统行为数据:基于IPTables防火墙和Snort_inline对外出攻击连接进行限制:通过hflowd 数据融合工具和基于浏览器的数据分析及系统管理工具Walleye,可根据捕获的数据查看网络流视图、进程树视图和进程详细视图。
存在的问题
- 开启虚拟机靶机和win攻击机时,提示无法连接虚拟设备
- 我都选了“是”,好像并不影响
参考资料
- 《网络攻防技术与实践》
- 课外辅助资料
特别鸣谢
非常感谢孙启龙同学,开始感觉很苦恼,是基本参照他的博客(https://www.cnblogs.com/sunmoyi/p/12432200.html) 一步步进行实验的,他还为蠢笨的我答疑解惑。
此外还要感谢刘琳杰同学,他给松宝发送了下好的kali压缩包,松宝又发给了我。写博客时,也时不时有瞄过几眼他的博客(https://www.cnblogs.com/llj76720197/p/12439301.html) 。
当然还要感谢宝贝跟我一起做实验❤
感激之辞无以言表,如果没有你们我势必不能够完成这次作业,Thanks♪(・ω・)ノ
此为本人网络攻防学习第二周的内容,如有不足,还请批评指正,不胜感激。
以上