Windows μ격 μ¦λͺ 보νΈ
Tip
AWS ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:
HackTricks Training AWS Red Team Expert (ARTE)
GCP ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:HackTricks Training GCP Red Team Expert (GRTE)
Azure ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks μ§μνκΈ°
- ꡬλ κ³ν νμΈνκΈ°!
- **π¬ λμ€μ½λ κ·Έλ£Ή λλ ν λ κ·Έλ¨ κ·Έλ£Ήμ μ°Έμ¬νκ±°λ νΈμν° π¦ @hacktricks_liveλ₯Ό νλ‘μ°νμΈμ.
- HackTricks λ° HackTricks Cloud κΉνλΈ λ¦¬ν¬μ§ν 리μ PRμ μ μΆνμ¬ ν΄νΉ νΈλ¦μ 곡μ νμΈμ.
WDigest
The WDigest νλ‘ν μ½μ Windows XPμμ λμ λμμΌλ©° HTTP Protocolμ ν΅ν μΈμ¦μ μν΄ μ€κ³λμμ΅λλ€. μ΄ νλ‘ν μ½μ Windows XPλΆν° Windows 8.0 λ° Windows Server 2003λΆν° Windows Server 2012κΉμ§ κΈ°λ³Έμ μΌλ‘ νμ±νλμ΄ μμ΅λλ€. μ΄ κΈ°λ³Έ μ€μ μΌλ‘ μΈν΄ LSASS (Local Security Authority Subsystem Service)μ νλ¬Έ λΉλ°λ²νΈκ° μ μ₯λ©λλ€. 곡격μλ Mimikatzλ₯Ό μ¬μ©νμ¬ μ΄ μ격μ¦λͺ μ μΆμΆν μ μμ΅λλ€:
sekurlsa::wdigest
μ΄ κΈ°λ₯μ λκ±°λ μΌλ €λ©΄, UseLogonCredential λ° Negotiate λ μ§μ€νΈλ¦¬ ν€κ° HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\WDigest μμμ β1βλ‘ μ€μ λμ΄μΌ ν©λλ€. μ΄λ¬ν ν€κ° μκ±°λ λλ β0βμΌλ‘ μ€μ λμ΄ μλ€λ©΄, WDigestλ λΉνμ±νλ©λλ€:
reg query HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential
LSA λ³΄νΈ (PP & PPL 보νΈλ νλ‘μΈμ€)
Protected Process (PP) λ° **Protected Process Light (PPL)**μ Windows 컀λ μμ€ λ³΄νΈλ‘, LSASSμ κ°μ λ―Όκ°ν νλ‘μΈμ€μ λν λ¬΄λ¨ μ‘μΈμ€λ₯Ό λ°©μ§νλλ‘ μ€κ³λμμ΅λλ€. Windows Vistaμμ λμ λ PP λͺ¨λΈμ μλ DRM κ°μ λ₯Ό μν΄ λ§λ€μ΄μ‘μΌλ©°, νΉμ λ―Έλμ΄ μΈμ¦μλ‘ μλͺ λ λ°μ΄λλ¦¬λ§ λ³΄νΈλ μ μμμ΅λλ€. PPλ‘ νμλ νλ‘μΈμ€λ λμΌνκ² PPμ΄κ±°λ λ λμ λ³΄νΈ μμ€μ κ°μ§ λ€λ₯Έ PP νλ‘μΈμ€λ§ μ κ·Όν μ μμΌλ©°, κ·Έ κ²½μ°μλ λͺ μμ μΌλ‘ νμ©λμ§ μμΌλ©΄ μ νλ μ κ·Ό κΆνλ§ νμ©λ©λλ€.
PPLμ Windows 8.1μμ λμ
λ λ³΄λ€ μ μ°ν λ²μ μ PPμ
λλ€. λμ§νΈ μλͺ
μ EKU (Enhanced Key Usage) νλλ₯Ό κΈ°λ°μΌλ‘ ν **βλ³΄νΈ μμ€β**μ λμ
νμ¬ LSASS, Defender λ±μμ λ λμ μ¬μ© μ¬λ‘λ₯Ό νμ©ν©λλ€. λ³΄νΈ μμ€μ EPROCESS.Protection νλμ μ μ₯λλ©°, μ΄λ λ€μμ ν¬ν¨νλ PS_PROTECTION ꡬ쑰체μ
λλ€:
- Type (
ProtectedorProtectedLight) - Signer (μ:
WinTcb,Lsa,Antimalwareλ±)
μ΄ κ΅¬μ‘°μ²΄λ λ¨μΌ λ°μ΄νΈλ‘ ν¨νΉλμ΄ λκ° λꡬμ μ κ·Όν μ μλμ§λ₯Ό κ²°μ ν©λλ€:
- Higher signer values can access lower ones
- PPLs canβt access PPs
- Unprotected processes canβt access any PPL/PP
곡격 κ΄μ μμ μμμΌ ν μ
- LSASSκ° PPLλ‘ μ€νλ λ, μΌλ° κ΄λ¦¬μ 컨ν
μ€νΈμμ
OpenProcess(PROCESS_VM_READ | QUERY_INFORMATION)λ‘ μ΄λ €κ³ νλ©΄SeDebugPrivilegeκ° νμ±νλμ΄ μμ΄λ **0x5 (Access Denied)**λ‘ μ€ν¨ν©λλ€. Process Hackerκ°μ λꡬλ₯Ό μ¬μ©νκ±°λEPROCESS.Protectionκ°μ μ½μ΄ νλ‘κ·Έλλ°μ μΌλ‘ LSASS λ³΄νΈ μμ€μ νμΈν μ μμ΅λλ€.- LSASSλ μΌλ°μ μΌλ‘
PsProtectedSignerLsa-Light(0x41)λ₯Ό κ°μ§λ©°, μ΄λWinTcb(0x61λλ0x62)μ κ°μ λ λμ μμ€μ signerλ‘ μλͺ λ νλ‘μΈμ€λ§ μ κ·Όν μ μμ΅λλ€. - PPLμ Userland μ μ© μ νμ΄λ©°, 컀λ μμ€ μ½λλ‘λ μμ ν μ°νν μ μμ΅λλ€.
- LSASSκ° PPLμ΄λΌ νλλΌλ kernel shellcodeλ₯Ό μ€νν μ μκ±°λ μ μ ν μ κ·Ό κΆνμ κ°μ§ κ³ κΆν νλ‘μΈμ€λ₯Ό μ΄μ©ν μ μλ€λ©΄ credential dumpingμ λ°©μ§νμ§ λͺ»ν©λλ€.
- PPL μ€μ λλ μ κ±°λ μ¬λΆν λλ Secure Boot/UEFI μ€μ μ νμλ‘ νλ©°, λ μ§μ€νΈλ¦¬ λ³κ²½μ λλλ¦° νμλ PPL μ€μ μ΄ μ§μλ μ μμ΅λλ€.
λ°μΉ μ PPL νλ‘μΈμ€ μμ± (λ¬Έμνλ API)
Windowsλ νμ₯λ μμ μμ± λͺ©λ‘(extended startup attribute list)μ μ¬μ©ν΄ μμ± μ€μ μμ νλ‘μΈμ€μ λν΄ Protected Process Light μμ€μ μμ²νλ λ¬Έμνλ λ°©λ²μ μ 곡ν©λλ€. μ΄λ μλͺ μꡬμ¬νμ μ°ννμ§ μμΌλ©° β λμ μ΄λ―Έμ§λ μμ²λ signer ν΄λμ€μ λ§κ² μλͺ λμ΄ μμ΄μΌ ν©λλ€.
Minimal flow in C/C++:
// Request a PPL protection level for the child process at creation time
// Requires Windows 8.1+ and a properly signed image for the selected level
#include <windows.h>
int wmain(int argc, wchar_t **argv) {
STARTUPINFOEXW si = {0};
PROCESS_INFORMATION pi = {0};
si.StartupInfo.cb = sizeof(si);
SIZE_T attrSize = 0;
InitializeProcThreadAttributeList(NULL, 1, 0, &attrSize);
si.lpAttributeList = (PPROC_THREAD_ATTRIBUTE_LIST)HeapAlloc(GetProcessHeap(), 0, attrSize);
if (!si.lpAttributeList) return 1;
if (!InitializeProcThreadAttributeList(si.lpAttributeList, 1, 0, &attrSize)) return 1;
DWORD level = PROTECTION_LEVEL_ANTIMALWARE_LIGHT; // or WINDOWS_LIGHT/LSA_LIGHT/WINTCB_LIGHT
if (!UpdateProcThreadAttribute(
si.lpAttributeList, 0,
PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL,
&level, sizeof(level), NULL, NULL)) {
return 1;
}
DWORD flags = EXTENDED_STARTUPINFO_PRESENT;
if (!CreateProcessW(L"C\\Windows\\System32\\notepad.exe", NULL, NULL, NULL, FALSE,
flags, NULL, NULL, &si.StartupInfo, &pi)) {
// If the image isn't signed appropriately for the requested level,
// CreateProcess will fail with ERROR_INVALID_IMAGE_HASH (577).
return 1;
}
// cleanup
DeleteProcThreadAttributeList(si.lpAttributeList);
HeapFree(GetProcessHeap(), 0, si.lpAttributeList);
CloseHandle(pi.hThread);
CloseHandle(pi.hProcess);
return 0;
}
λ ΈνΈ λ° μ μ½:
STARTUPINFOEXλ₯ΌInitializeProcThreadAttributeListμUpdateProcThreadAttribute(PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL, ...)μ ν¨κ» μ¬μ©ν λ€μ,EXTENDED_STARTUPINFO_PRESENTλ₯ΌCreateProcess*μ μ λ¬ν©λλ€.- 보νΈ
DWORDλPROTECTION_LEVEL_WINTCB_LIGHT,PROTECTION_LEVEL_WINDOWS,PROTECTION_LEVEL_WINDOWS_LIGHT,PROTECTION_LEVEL_ANTIMALWARE_LIGHT, λλPROTECTION_LEVEL_LSA_LIGHTμ κ°μ μμλ‘ μ€μ ν μ μμ΅λλ€. - μμ νλ‘μΈμ€λ ν΄λΉ μ΄λ―Έμ§κ° κ·Έ signer classλ‘ μλͺ
λ κ²½μ°μλ§ PPLλ‘ μμν©λλ€. κ·Έλ μ§ μμΌλ©΄ νλ‘μΈμ€ μμ±μ΄ μ€ν¨νλ©°, μΌλ°μ μΌλ‘
ERROR_INVALID_IMAGE_HASH (577)/STATUS_INVALID_IMAGE_HASH (0xC0000428)λ‘ λνλ©λλ€. - μ΄κ²μ μ°νκ° μλλλ€ β μ μ ν μλͺ λ μ΄λ―Έμ§μ λν΄ μλλ μ§μ APIμ λλ€. λꡬλ₯Ό κ°ννκ±°λ PPLλ‘ λ³΄νΈλ ꡬμ±μ μ ν¨μ±μ κ²μ¬νλ λ° μ μ©ν©λλ€.
μ΅μ λ‘λλ₯Ό μ¬μ©ν CLI μμ:
- Antimalware signer:
CreateProcessAsPPL.exe 3 C:\Tools\agent.exe --svc - LSA-light signer:
CreateProcessAsPPL.exe 4 C:\Windows\System32\notepad.exe
Bypass PPL protections options:
PPLμλ λΆκ΅¬νκ³ LSASSλ₯Ό λ€ννλ €λ©΄ μ£Όμ μ΅μ μ΄ 3κ°μ§ μμ΅λλ€:
- **Use a signed kernel driver (e.g., Mimikatz + mimidrv.sys)**λ₯Ό μ¬μ©νμ¬ LSASSμ λ³΄νΈ νλκ·Έλ₯Ό μ κ±°ν©λλ€.

- μ·¨μ½ν λλΌμ΄λ²λ₯Ό μ체μ μΌλ‘ κ°μ Έμ(BYOVD) 컀μ€ν 컀λ μ½λλ₯Ό μ€ννκ³ λ³΄νΈλ₯Ό λΉνμ±νν©λλ€. PPLKiller, gdrv-loader, λλ kdmapperμ κ°μ λꡬλ€μ΄ μ΄λ₯Ό κ°λ₯νκ² ν©λλ€.
- λ€λ₯Έ νλ‘μΈμ€(μ: AV νλ‘μΈμ€)κ° μ΄μ΄λ κΈ°μ‘΄ LSASS νΈλ€μ νμ³μ(steal) κ·Έ νΈλ€μ μμ μ νλ‘μΈμ€λ‘ 볡μ (duplicate) ν©λλ€. μ΄κ²μ΄
pypykatz live lsa --method handledupκΈ°λ²μ κΈ°λ°μ λλ€. - μμμ μ½λλ₯Ό ν΄λΉ μ£Όμ 곡κ°μ΄λ λ€λ₯Έ κΆνμλ νλ‘μΈμ€ λ΄λΆμ λ‘λνλλ‘ νμ©νλ μΌλΆ κΆνμλ νλ‘μΈμ€λ₯Ό μ μ©νμ¬ PPL μ νμ μ°νν©λλ€. μ΄μ λν μμλ bypassing-lsa-protection-in-userland λλ https://github.com/itm4n/PPLdumpμμ νμΈν μ μμ΅λλ€.
LSASSμ λν LSA 보νΈ(PPL/PP)μ νμ¬ μν νμΈ:
reg query HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA /v RunAsPPL
When you running mimikatz privilege::debug sekurlsa::logonpasswords itβll probably fail with the error code 0x00000005 becasue of this.
- For more information about this check https://itm4n.github.io/lsass-runasppl/
Credential Guard
Credential Guard, a feature exclusive to Windows 10 (Enterprise and Education editions), enhances the security of machine credentials using Virtual Secure Mode (VSM) and Virtualization Based Security (VBS). It leverages CPU virtualization extensions to isolate key processes within a protected memory space, away from the main operating systemβs reach. This isolation ensures that even the kernel cannot access the memory in VSM, effectively safeguarding credentials from attacks like pass-the-hash. The Local Security Authority (LSA) operates within this secure environment as a trustlet, while the LSASS process in the main OS acts merely as a communicator with the VSMβs LSA.
By default, Credential Guard is not active and requires manual activation within an organization. Itβs critical for enhancing security against tools like Mimikatz, which are hindered in their ability to extract credentials. However, vulnerabilities can still be exploited through the addition of custom Security Support Providers (SSP) to capture credentials in clear text during login attempts.
To verify Credential Guardβs activation status, the registry key LsaCfgFlags under HKLM\System\CurrentControlSet\Control\LSA can be inspected. A value of β1β indicates activation with UEFI lock, β2β without lock, and β0β denotes it is not enabled. This registry check, while a strong indicator, is not the sole step for enabling Credential Guard. Detailed guidance and a PowerShell script for enabling this feature are available online.
reg query HKLM\System\CurrentControlSet\Control\LSA /v LsaCfgFlags
For a comprehensive understanding and instructions on enabling Credential Guard in Windows 10 and its automatic activation in compatible systems of Windows 11 Enterprise and Education (version 22H2), visit Microsoftβs documentation.
Further details on implementing custom SSPs for credential capture are provided in this guide.
RDP RestrictedAdmin Mode
Windows 8.1 and Windows Server 2012 R2 introduced several new security features, including the Restricted Admin mode for RDP. This mode was designed to enhance security by mitigating the risks associated with pass the hash attacks.
μ ν΅μ μΌλ‘ RDPλ₯Ό ν΅ν΄ μ격 μ»΄ν¨ν°μ μ°κ²°ν λ, μ¬μ©μμ μ격 μ¦λͺ μ λμ λ¨Έμ μ μ μ₯λ©λλ€. μ΄λ κΆνμ΄ λμ κ³μ μ μ¬μ©ν λ νΉν ν° λ³΄μ μνμ μ΄λν©λλ€. κ·Έλ¬λ _Restricted Admin mode_κ° λμ λλ©΄μ μ΄ μνμ μλΉν μ€μ΄λ€μμ΅λλ€.
mstsc.exe /RestrictedAdmin λͺ λ ΉμΌλ‘ RDP μ°κ²°μ μμνλ©΄, μ격 μ»΄ν¨ν°μ λν μΈμ¦μ΄ ν΄λΉ μ격 μ¦λͺ μ κ·Έκ³³μ μ μ₯νμ§ μκ³ μνλ©λλ€. μ΄λ κ² νλ©΄ μ μ±μ½λ κ°μΌ λλ μ격 μλ²μ μ μμ μ¬μ©μκ° μ κ·ΌνλλΌλ μ격 μ¦λͺ μ΄ μλ²μ μ μ₯λμ§ μμΌλ―λ‘ λ ΈμΆλμ§ μμ΅λλ€.
μ€μν μ μ Restricted Admin modeμμλ RDP μΈμ μμ λ€νΈμν¬ λ¦¬μμ€μ μ κ·Όνλ € ν λ κ°μΈ μ격 μ¦λͺ μ μ¬μ©νμ§ μκ³ λμ μ»΄ν¨ν° μ μμ΄ μ¬μ©λλ€λ κ²μ λλ€.
μ΄ κΈ°λ₯μ μ격 λ°μ€ν¬ν± μ°κ²°μ 보νΈνκ³ λ³΄μ μΉ¨ν΄ μ λ―Όκ°ν μ λ³΄κ° λ ΈμΆλλ κ²μ λ°©μ§νλ λ° μ€μν μ§μ μ μλ―Έν©λλ€.

μμΈν μ 보λ this resourceλ₯Ό μ°Έμ‘°νμΈμ.
Cached Credentials
Windowsλ domain credentialsμ ν΅ν΄ **Local Security Authority (LSA)**λ‘ λ³΄νΈνλ©°, Kerberos λ° NTLMκ³Ό κ°μ 보μ νλ‘ν μ½λ‘ λ‘κ·Έμ¨ νλ‘μΈμ€λ₯Ό μ§μν©λλ€. Windowsμ μ£Όμ κΈ°λ₯ μ€ νλλ μ¬μ©μκ° domain controllerκ° μ€νλΌμΈμΈ κ²½μ°μλ μ»΄ν¨ν°μ μ‘μΈμ€ν μ μλλ‘ λ§μ§λ§ 10κ°μ λλ©μΈ λ‘κ·ΈμΈμ μΊμνλ κΈ°λ₯μ λλ€. μ΄λ νμ¬ λ€νΈμν¬μμ μμ£Ό λ¨μ΄μ Έ μλ λ ΈνΈλΆ μ¬μ©μμκ² λ§€μ° μ μ©ν©λλ€.
μΊμλ λ‘κ·ΈμΈ μλ νΉμ registry key λλ group policyλ₯Ό ν΅ν΄ μ‘°μ ν μ μμ΅λλ€. μ΄ μ€μ μ νμΈνκ±°λ λ³κ²½νλ €λ©΄ λ€μ λͺ λ Ήμ μ¬μ©ν©λλ€:
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\WINLOGON" /v CACHEDLOGONSCOUNT
μ΄ μΊμλ μ격 μ¦λͺ
μ λν μ κ·Όμ μ격ν ν΅μ λλ©°, ν΄λΉ μ 보λ₯Ό λ³Ό μ μλ κΆνμ μ€μ§ SYSTEM κ³μ μλ§ μμ΅λλ€. μ΄ μ 보μ μ κ·Όν΄μΌ νλ κ΄λ¦¬μλ SYSTEM μ¬μ©μ κΆνμΌλ‘ μ κ·Όν΄μΌ ν©λλ€. μ격 μ¦λͺ
μ λ€μμ μ μ₯λ©λλ€: HKEY_LOCAL_MACHINE\SECURITY\Cache
Mimikatzλ₯Ό μ¬μ©ν΄ lsadump::cache λͺ
λ ΉμΌλ‘ μ΄ μΊμλ μ격 μ¦λͺ
μ μΆμΆν μ μμ΅λλ€.
μμΈν λ΄μ©μ μλ¬Έ sourceμμ νμΈνμΈμ.
Protected Users
Protected Users groupμ ꡬμ±μ μ격μ μ¬μ©μμκ² μ¬λ¬ 보μ κ°ν κΈ°λ₯μ μ μ©νμ¬ μ격 μ¦λͺ νμ·¨ λ° λ¨μ©μΌλ‘λΆν° λ λμ μμ€μ 보νΈλ₯Ό μ 곡ν©λλ€:
- Credential Delegation (CredSSP): Group Policyμ Allow delegating default credentials μ€μ μ΄ νμ±νλμ΄ μμ΄λ, Protected Usersμ νλ¬Έ μ격 μ¦λͺ μ μΊμλμ§ μμ΅λλ€.
- Windows Digest: Windows 8.1 and Windows Server 2012 R2λΆν°λ Windows Digest μνμ κ΄κ³μμ΄ Protected Usersμ νλ¬Έ μ격 μ¦λͺ μ μΊμνμ§ μμ΅λλ€.
- NTLM: μμ€ν μ Protected Usersμ νλ¬Έ μ격 μ¦λͺ μ΄λ NT one-way functions (NTOWF)μ μΊμνμ§ μμ΅λλ€.
- Kerberos: Protected Usersμ κ²½μ° Kerberos μΈμ¦μ DES λλ RC4 keysλ₯Ό μμ±νμ§ μμΌλ©°, μ΄κΈ° Ticket-Granting Ticket (TGT) νλμ λμ΄μ νλ¬Έ μ격 μ¦λͺ μ΄λ μ₯κΈ° ν€λ₯Ό μΊμνμ§ μμ΅λλ€.
- Offline Sign-In: Protected Usersλ λ‘κ·ΈμΈ λλ μ κΈ ν΄μ μ μΊμλ κ²μ¦μ(verifier)κ° μμ±λμ§ μμΌλ―λ‘ μ€νλΌμΈ λ‘κ·ΈμΈμ μ§μλμ§ μμ΅λλ€.
μ΄λ¬ν 보νΈλ μ¬μ©μκ° Protected Users groupμ ꡬμ±μμΌλ‘ κΈ°κΈ°μ λ‘κ·ΈμΈνλ μκ° μ μ©λ©λλ€. μ΄λ λ€μν μ격 μ¦λͺ μΉ¨ν΄ λ°©λ²μΌλ‘λΆν° 보νΈνκΈ° μν μ€μν 보μ μ‘°μΉκ° νμ±νλλλ‘ ν©λλ€.
μμΈν μ 보λ 곡μ documentation λ₯Ό μ°Έμ‘°νμΈμ.
Table from the docs.
| Windows Server 2003 RTM | Windows Server 2003 SP1+ |
Windows Server 2012, | Windows Server 2016 |
|---|---|---|---|
| Account Operators | Account Operators | Account Operators | Account Operators |
| Administrator | Administrator | Administrator | Administrator |
| Administrators | Administrators | Administrators | Administrators |
| Backup Operators | Backup Operators | Backup Operators | Backup Operators |
| Cert Publishers | |||
| Domain Admins | Domain Admins | Domain Admins | Domain Admins |
| Domain Controllers | Domain Controllers | Domain Controllers | Domain Controllers |
| Enterprise Admins | Enterprise Admins | Enterprise Admins | Enterprise Admins |
| Enterprise Key Admins | |||
| Key Admins | |||
| Krbtgt | Krbtgt | Krbtgt | Krbtgt |
| Print Operators | Print Operators | Print Operators | Print Operators |
| Read-only Domain Controllers | Read-only Domain Controllers | ||
| Replicator | Replicator | Replicator | Replicator |
| Schema Admins | Schema Admins | Schema Admins | Schema Admins |
| Server Operators | Server Operators | Server Operators | Server Operators |
μ°Έκ³ μλ£
- CreateProcessAsPPL β minimal PPL process launcher
- STARTUPINFOEX structure (Win32 API)
- InitializeProcThreadAttributeList (Win32 API)
- UpdateProcThreadAttribute (Win32 API)
- LSASS RunAsPPL β background and internals
Tip
AWS ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:
HackTricks Training AWS Red Team Expert (ARTE)
GCP ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:HackTricks Training GCP Red Team Expert (GRTE)
Azure ν΄νΉ λ°°μ°κΈ° λ° μ°μ΅νκΈ°:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks μ§μνκΈ°
- ꡬλ κ³ν νμΈνκΈ°!
- **π¬ λμ€μ½λ κ·Έλ£Ή λλ ν λ κ·Έλ¨ κ·Έλ£Ήμ μ°Έμ¬νκ±°λ νΈμν° π¦ @hacktricks_liveλ₯Ό νλ‘μ°νμΈμ.
- HackTricks λ° HackTricks Cloud κΉνλΈ λ¦¬ν¬μ§ν 리μ PRμ μ μΆνμ¬ ν΄νΉ νΈλ¦μ 곡μ νμΈμ.


