บทนำ (Overview)
จากบทความก่อนหน้าที่กล่าวถึงโปรโตคอล SMB (How to find shared drive access using check_dir_file) ซึ่งเราสาามารถหา “Shared drive” ของภายในเครือข่ายได้อย่างรวดเร็ว ยังมีอีกวิธีในการค้นหาซึ่งเราเรียกว่าการ “enumerate” นอกจากจะหา “Shared Drive” และชื่อระบบปฎิบัติพร้อม “Version” แล้วถ้าเข้าไปได้จะทำการงัดชื่อไฟล์ออกมาให้เราด้วย เออดี!!! ไม่ต้องเสียเวลาเข้าไปเอง…
ขั้นตอน (Steps)
- เข้าใช้งานระบบปฎิบัติการ “Kali” หรือ “Backtrack” Linux
- ค้นหาตัวโปรแกรม “smb_enumshares”
msf > search smb_enumshares [!] Database not connected or cache not built, using slow search Matching Modules ================ Name Disclosure Date Rank Description ---- --------------- ---- ----------- auxiliary/scanner/smb/smb_enumshares normal SMB Share Enumeration
- เรียกใช้ “Module” ของ “smb_enumshares”
msf > use auxiliary/scanner/smb/smb_enumshares msf auxiliary(smb_enumshares) >
- ทำการแสดง “options” เพื่อแสดงค่าพารามิเตอร์ที่ต้องตั้ง
msf auxiliary(smb_enumshares) > show options Module options (auxiliary/scanner/smb/smb_enumshares): Name Current Setting Required Description ---- --------------- -------- ----------- LogSpider 3 no 0 = disabled, 1 = CSV, 2 = table (txt), 3 = one liner (txt) (accepted: 0, 1, 2, 3) MaxDepth 999 yes Max number of subdirectories to spider RHOSTS yes The target address range or CIDR identifier SMBDomain WORKGROUP no The Windows domain to use for authentication SMBPass no The password for the specified username SMBUser no The username to authenticate as ShowFiles false yes Show detailed information when spidering SpiderProfiles true no Spider only user profiles when share = C$ SpiderShares false no Spider shares recursively THREADS 1 yes The number of concurrent threads USE_SRVSVC_ONLY false yes List shares only with SRVSVC
- จากนั้นทำการ set ค่าพารามิเตอร์สำหรับการค้นหาดังนี้
msf auxiliary(smb_enumshares) > set RHOSTS 192.168.0.0/24 RHOSTS => 192.168.0.0/24 msf auxiliary(smb_enumshares) > set SMBDomain "" SMBDomain => msf auxiliary(smb_enumshares) > set ShowFiles true ShowFiles => true msf auxiliary(smb_enumshares) > set SpiderShares true SpiderShares => true msf auxiliary(smb_enumshares) > show options Module options (auxiliary/scanner/smb/smb_enumshares): Name Current Setting Required Description ---- --------------- -------- ----------- LogSpider 3 no 0 = disabled, 1 = CSV, 2 = table (txt), 3 = one liner (txt) (accepted: 0, 1, 2, 3) MaxDepth 999 yes Max number of subdirectories to spider RHOSTS 192.168.0.0/24 yes The target address range or CIDR identifier SMBDomain no The Windows domain to use for authentication SMBPass no The password for the specified username SMBUser no The username to authenticate as ShowFiles true yes Show detailed information when spidering SpiderProfiles true no Spider only user profiles when share = C$ SpiderShares true no Spider shares recursively THREADS 1 yes The number of concurrent threads USE_SRVSVC_ONLY false yes List shares only with SRVSVC
- จากพารามิเตอร์ข้างต้นสามารถอธิบายได้ดังนี้
- RHOSTS สำหรับการตั้งค่า IP เครื่องเป้าหมายสามารถ set เป็นช่วงของ IP ได้ จาก ตัวอย่าง /24 หมายถึง IP ตั้งแต่ 192.168.0.1 – 192.168.0.255
- SMBDomain สำหรับเครือข่ายที่ต้องช้ “Domain” เพื่อการ “Authentication” สำหรับการทดสอบอย่างเป็นคนไม่มีสิทธิเลยสามารถ Set ให้ว่างได้ โดยใช้คำสั่ง
msf auxiliary(check_dir_file) > set SMBDomain "" SMBDomain =>
- SMBPass รหัสผ่านของ “Account” ที่ใช้ในการ “Authentication” ซึ่งใช้ในการทดสอบเครือข่ายภายใน
- SMBUser ของ “Account” ที่ใช่ในการ “Authentication” ซึ่งใช้ในการทดสอบเครือข่ายภายใน
- ShowFiles แสดงข้อมูลของไฟล์ที่ถูกค้นหา (Spider)
- SpiderShares ทำการ “Spider” ไปยัง “Sub-Directory” จะลึกลงไปเรื่อย
- จากนั้นเรียกใช้คำสั่ง “run” และรอจนกว่าจะ “scan” ครบทุก IP
msf auxiliary(smb_enumshares) > run
- ผลจากการทดสอบสามารถตรวจสอบได้ดังภาพ
- ผลการทดสอบเมื่อปิด “SpiderShares”
ผลการทดสอบ (Conclusion)
บทสรุปยังคงเป็นเช่นเดิมคือ การเข้าเครื่องระบบปฎิบัติการจะต้องมีการ “Login” และเมื่อ “Login” แล้วและจะต้องมีการตั้งค่าสิทธิเฉพาะผู้มีสิทธิเท่านั้นที่สามารถเข้าไดเรกทรอรี หรือ ไฟล์