Metasploit(后渗透攻击:权限提升)

    通常,我们在渗透攻击时很有可能只获得了一个系统的Guest或User权限。低的权限级别将使我们受到很多的限制,在实施横向渗透或者提权攻击时将很困难。在主机上如果没有管理者权限,就无法进行获取Hash、安装软件、修改防火墙规则和修改注册表等各种操作,所以必须将访问权限从Guset提升到User,再到Administrator,最后到System级别。

   渗透的最终目的是获取服务器的最高权限,即windows操作系统中管理员账号的权限,或linux操作系统中root账户的权限。提升权限的方式为以下俩类。

  •    纵向提权:低权限角色获得高权限角色的权限,例如,一个webshell权限通过提权之后拥有了管理员权限,那么这种权限就是纵向提权,也被称作权限升级。
  •    横向提权:获取同等级角色的权限。例如,通过已经攻破的系统A获取了系统B的权限,那么这种提权就是属于横向提权。

所以在成功获取目标机Meterpreter Shell后,我们要知道现在已经拥有了什么权限。

   在Meterpreter Shell下输入shell命令进入目标机的cmd命令行。

Metasploit(后渗透攻击:权限提升)_第1张图片

接着输入  whoami /groups 命令查看哦我们当前的权限(之前用w10系统做实验发现没用,这次用w7的)

Metasploit(后渗透攻击:权限提升)_第2张图片

     从图中可以看出,当前权限是Mandatory Lable\Medium Mandatory Level 说明我们是一个标准用户,那么就需要将用户权限从标准用户提升到管理员,也就是Mandatory Lable\High  Mandatory Level。

    下面我们就利用本地溢出漏洞来提升权限,也就是说通过运行一些现成的、能造成溢出漏洞的Exploit,把用户从User组或其他系统用户组中提升到Administrator组(或root)

   利用WMIC实战MS16-032本地溢出漏洞:

首先输入 getuid 命令查看已经获得的权限,可以看到现在的权限最低,是root权限,尝试输入 getsystem 命令提权,结果失败。

Metasploit(后渗透攻击:权限提升)_第3张图片

接着查看系统的已打补丁,传统的方法在目标机的cmd命令下输入systeminfo 命令,或者通过查询c:\windows\里留下的补丁号“.log”查看目标机大概打了哪些补丁。

Metasploit(后渗透攻击:权限提升)_第4张图片

可以看到目标机上打了2个补丁,要注意这些输出的结果是不能被直接利用的,使用的方式是去找提权的EXP,然后将系统已经安装的补丁编号与提权的EXP编号进行对比,然后使用没有编号的EXP进行提权。因为虚拟机不怎么打补丁,所以我们可以使用很多EXP来提权,这里我们就用最新的MS16-032来尝试提权,对应编号是KB3139914.

   接下来准备提权,同样需要用 background 命令将Meterpreter会话转为后台执行,然后用 search 命令搜索MS16-032.

Metasploit(后渗透攻击:权限提升)_第5张图片

接下来执行命令选中MS16-032这个漏洞,然后指定“sessions”进行提权操作,这里我们指定服务“sessions”为“1”,然后输入exploit或者run命令即可。

Metasploit(后渗透攻击:权限提升)_第6张图片

我这里由于某种原因,实验没成功。如果实验成功了,再次输入getuid 命令查看,发现已经是system级权限了。

防御方法:这个漏洞的安全补丁编号是KB3139914,我们只需要安装此补丁就可以了。

这里说下用msfvenom -p windows/meterpreter/reverse_tcp  默认是用32位模块的payload,如果需要是64位的必须改为 windows/x64/meterpreter/reverse_tcp。

令牌窃取:

     令牌简介及原理:令牌(token)就是系统的临时密铭,相当于账户名和密码,用来决定是否允许这次请求和判断这次请求和判断这次请求是属于哪一个用户的。他允许你在不提供密码或其他凭证的前提下,访问网络和系统资源。这些令牌将持续存在于系统中,除非系统重新启动。

     令牌的最大特点就是随机性,不可预测,一般黑客或软件无法猜测出来。令牌有很多种,比如访问令牌(Access token)表示访问控制操作主题的系统对象;密保令牌(security token),又叫做认证令牌或者硬件令牌,是一种计算机身份校验的物理设备,例如U盾;会话令牌(session token)是一种交互会话中唯一的身份标识符。

    在假冒令牌攻击中需要使用Kerberos协议。Kerberos是一种网络认证协议,其设计目标是通过密铭系统为客户机/服务器应用程序提供强大的认证服务。Kerberos的工作机制如下图:

Metasploit(后渗透攻击:权限提升)_第7张图片

Kerberos工作机制

  • 客户端向认证服务器(AS)发送请求,要求得到服务器的证书。
  • AS收到请求后,将包含客户端密铭的加密证书响应发送给客户端。该证书包括服务器ticket(包括服务器密铭加密的客户机身份和一份会话密铭)和一个临时加密密铭(又称会话密铭,session key)。当然认证服务器也会发送服务器一份该证书,用来使服务器认证登陆客户端的身份。
  • 客户端将ticket传送到服务器上,服务器确认该客服端的话,便允许他登陆服务器。
  • 客户端登陆成功后,攻击者就可以通过入侵服务器获取客户端的令牌

假冒令牌实战利用:

     此时已经成功获取到目标机的meterpreter shell,首先输入getuid命令查看已经获得的权限,然后输入getsystem,发现提权失败。

Metasploit(后渗透攻击:权限提升)_第8张图片

然后我们先输入 use incognito 命令,然后输入 list_tokens -u 

Metasploit(后渗透攻击:权限提升)_第9张图片

这里我们解释下(我们看到有俩种类型的令牌:一种是Delegation Tokens,也就是授权令牌,它支持交互式登陆,还有一种是Impersonation Tokens,也就是模拟令牌,它是非交互的会话。令牌的数量取决于meterpreter shell的访问级别)

接下来在incognito中调用impersonate_token命令假冒root用户进行攻击,

知识点:在输入hostname\username中需要加俩个反斜杠(\\)

运行成功后在meterpreter shell下运行shell命令并输入whoami ,就可以看见我们现在就是假冒的系统管理员了.

 

你可能感兴趣的:(Metasploit)