วันอังคารที่ 31 พฤษภาคม พ.ศ. 2554

การเจาะระบบ Windows 2000

การเจาะระบบ Windows 2000

ไมโคร ซอฟต์ค่อนข้างมั่นใจในระบบปฏิบัติการ Windows 2000 แต่ยังมีการโจมตีด้วย Denial of Service ซึ่งจะวิ่งผ่านทาง Guestbook ที่รันอยู่บน Windows 2000

ระบบปฏิบัติการ Windows 2000 ได้รับการป้องกันมากกว่าระบบเครือข่ายอื่นๆ โดยได้มีการเพิ่มความปลอดภัยเช่น IP Security, Encryption file System (EFS) มีการใช้ Group Policy, Security Templates, และ Security Configuration and Analysis tools การเข้าใช้ด้วย Remote Authentication Dial-in User Service (RADIUS) และโปรโตคอลที่ตรวจสอบรายชื่อด้วย Kerberos-based Authentication ซึ่งมีการป้องกันเฉพาะตัวของ Microsoft เอง

ความ ต้องการต่างๆที่กล่าวมานี้เป็นความต้องการในกลุ่มผู้ใช้ Windows NT และยังมีการใช้ Active Directory เป็นรากฐานของระบบโครงสร้างฐานข้อมูลรายชื่อ คาดว่าระบบจะมีความปลอดภัยที่สมบูรณ์เมื่อออก Service pack 3 หรือมากกว่า

โดย Service Pack 1 ได้มีการป้องกันระบบถึง 17 จุด เริ่มจากการแกะรอย, การตรวจสอบ, การเจาะระบบ, การปฏิเสธการให้บริการ, การยกระดับสิทธิ, การขโมยข้อมูล, การอำพราง, การสร้าง Back door สำหรับอนาคต

การแกะ รอย

โดยแหล่งข้อมูลที่ใช้คือ DNS

ดังนั้นผู้เจาะระบบต้อง รู้จักกับ Windows 2000 DNS Service

โดยการป้องกัน Zone Transfer



การส แกน

เป็นสิ่งที่เกิดขึ้นในการตรวจสอบ Port และพอร์ตต่างๆที่ใช้เป็นเป้าหมายในการโจมตีทั้งสิ้น เช่น ดูได้จาก Services ใน %systemroot%\System32\Drivers\etc\services

มาตรการป้องกัน

คือ การเอาบริการที่ไม่จำเป็นออก และป้องกันไม่ให้เข้าถึงบริการ ซึ่งพอร์ต 80 กับ 443 ให้ใช้ firewall จากภายนอกในการป้องกัน

พอร์ต 389 ที่เป็น LDAP และ 3268 ที่เป็น GC Service รวมถึง 139 ที่เป็น NetBIOS Session Service รวมถึงพอร์ต 445 เป็นเรื่องที่พิจารณา

บริการต่างๆเช่น DNS, DHCP ที่ติดตั้งจะมีพอร์ตเพิ่ม ดังนั้นเครื่อง DC จึงไม่ควรที่จะมีบริการต่างๆมารัน และให้ใช้เครื่องอื่นๆที่ไม่ใช่ DC บริการงานต่างๆแทน

การกำหนดพอร์ตที่ให้ใช้ทำได้โดยใช้ TCP filter หรือใช้ IPSec filter

คำสั่งที่ใช้ ipsecpolexe เป็นการเรียก Ipsec filters มีการใช้งานที่ง่ายเพราะเป็นสคริปต์ ใน W2KRK จะมี IPSecpol.exe

ตัวอย่าง

Ipsecpol \\ชื่อเครื่อง -w REG –p “web” –o

Ipsecpol \\ชื่อเครื่อง -x –w reg –p “web” –r “BlockAll” –n Block –f 0+*

Ipsecpol \\ชื่อเครื่อง -x –w REG –p “Web” –r “okHTTP” –n PASS –f 0:80+*::TCP

กำหนดชื่อ Web มีการกำหนดกฎคือ Blockall กับ OKHTTP ผ่านพอร์ต 80 ใช้คำสั่ง Ping ได้โดยใช้

Ipsecpol \\ชื่อเครื่อง -x –w REG –p “web” –r “OkICMP” –n PASS –f 0+*::ICMP

-f เป็นการกำหนดหมายเลขที่ใช้ในการตรวจสอบ ถ้าสงสัยให้ใช้ Ipsecpol -?



Ipsec filter ไม่สามารถกรองพอร์ต 500 ได้ ถ้าบน Windows 2000 พอร์ตหมายเลข 88 ก็ไม่สามารถถูกบล็อกได้ เพราะจำเป็นในการใช้ IPSec Authentication (88 คือ Kerberos และพอร์ต 500 เป็น Internet Key Exchange ซึ่ง SP1 สามารถกำหนดค่าในการยกเลิก Kerberosได้ด้วยการยกเลิก IPSec ด้วย

HKLM\System\CurrentControlSet\Service\IPSEC\NoDefaultExempt

Type: DWORD

Max: 1

Min: 0

Default: 0

ส่วนได ร์ฟเวอร์ IKE ต้องทำงานอยู่เสมอ และไม่มีผลต่อค่าด้านบน Kerberos และ RSVP ถูกยกเลิกไม่ให้ทำงานต่อถ้าค่า Registry ถูกกำหนดเป็น 1

ทิปต่างๆใน การใช้ IPSec filter

-         ถ้าต้องการลบ Policy ออกให้ Disable Policy นั้นด้วยพารามิเตอร์ –y ก่อนลบด้วย –o ในบางครั้ง Policy ที่ลบแล้วยังมีผลจนกว่า disable

-         ใช้เครื่องมือ Ipsecpol.exe ที่เป็นคำสั่ง หรือใช้ IPSec filter ที่เป็น GUI อย่างใดอย่างหนึ่ง การใช้เครื่องมือสลับอาจมีผลต่อการแก้ไข

-         พยายามลบกฎฟิลเตอร์ที่ไม่ใช้งานออกเพื่อไม่ให้ขัดแย้งกับกฎอื่นๆ



การ ค้นหา และรวบรวมข้อมูล

โดยระบบสามารถตรวจสอบข้อมูลจาก Null session ได้ดังนั้นให้ไป Disable NetBIOS over TCP/IP ออก (ซึ่งเป็นเพียงการปิดพอร์ต 139)

ซึ่งระบบปฏิบัติการ Windows 2000 ยังใช้ SMB over TCP (พอร์ต 445) ได้ในการแชร์ไฟล์ ซึ่งถ้าผู้เจาะระบบรู้สามารถรัน user2sid/sid2user และอื่นๆที่พอร์ต 445 ได้



การดิสเอเบิล NetBIOS และ SMB บน Windows 2000

การ ปิดสามารถใช้การ Binding ได้กับ NIC ซึ่งต้องหาแท็บ Binding ก่อน



การ เจาะระบบ

Windows 2000 ก็ยังมีจุดอ่อนอยู่ ซึ่งเหมือน Windows NT 4

การ คาดเดารหัสผ่านจากแพ็คเก็ตของ NetBIOS และ SMB

SMBGrind เป็นการคาดเดารหัสผ่านซึ่งถ้า NetBIOS หรือ SMB/CiFS ยังใช้อยู่ก็สามารถคาดเดาได้อยู่

การดักจับค่าแฮซของรหัสผ่าน

SMB Packet Capture เป็นเครื่องที่ตรวจสอบบริการของ LanMAN หรือ NTLM  ก็ยังทำได้ถ้ายังใช้ NT หรือ 9x อยู่

เทคนิคในการเจาะระบบ Windows 2000 คือการทำลายกลไกตรวจสอบชื่อ Kerberos ด้วยการส่ง SYN Flooding ไปที่พอร์ต 88 บน DC เพื่อให้ Windows 2000 ใช้ NTLM ในการตรวจสอบเพื่อการแฮซ



การเจาะระบบเข้าทาง IIS5

ข้อ บกพร่องของ SMB ใช้ IIS จะยังใช้ได้

การใช้เทคนิค Translate:f เพื่อล้วงเอาซอร์สโค้ดจาก IIS5

ที่ผ่านมา IIS ยังมีปัญหาเรื่องการแสดงโค้ด ซึ่งยังมีปัญหาต่อไปในเรื่อง Translate:f  โดยแฮกเกอร์อาศัยความบกพร่องของ HTTP Get Request ที่ไม่เหมาะสม เช่น ASP หรือ Global.asa ไฟล์เหล่านี้ไปทำงานบนเครื่องเซิร์ฟเวอร์ แต่เทคนิคนี้คือให้ส่งไฟล์ .asp ให้ทำงาที่เครื่องโดยใช้ Translate:f ต่อท้ายไฟล์ และมีเครื่องหมาย “\” ต่อท้ายไปใน URL ที่ร้องขอ

ตัวอย่าง เช่น

Get /global.asa \HTTP/1.0

Host: 192.168.20.10

User-Agent: SensePostData

Content-Type: application/x-www-form-urlencoded

Translate: f

[CRLF]

[CRLF]

ซึ่งถ้าใช้กับ netcat ก็จะได้

Type trans.txt | nc –nvv 192.168.0.11 80



ซึ่งการทำดังกล่าว ถ้า global.asa มีข้อมูลที่น่าสนใจก็มีความเป็นไปได้สูงที่จะดึง .asa จากเครื่องแม่ข่ายอย่างเช่นรหัสผ่านในการเข้าถึง LDAP Server

สคริปต์ ของ Perl ฉวยประโยชน์จากข้อบกพร่องนี้ในการทำงานร่วมกับ netcat เพื่อดาวน์โหลดจากอินเตอร์เน็ต

สาเหตุของ “Translate:f” –WebDAV และ Canonicalization ซึ่งมีการพูดถึงการอย่างมากในข้อเสียของ IIS นี้

WebDAV เป็นการยอมให้มีการสร้าง ลบ เคลื่อนย้ายใน RFC 2518 และ F ที่พูดถึงคือ False ถ้ามีการ Translate จะทำให้สคริปต์ทำงานบนเครื่องลูก

โดยทีม ไมโครซอฟต์ ได้พัฒนา httpext.dll เพื่อรองรับ WebDAV โดยตีความที่เครื่องแม่ข่ายก่อน เฮดเดอร์ Translate:f จะส่งไปบอก httpext.dll เพื่อจัดการการร้องขอนี้ และเครื่องหมาย \ เป็นการทำให้การกรองเกิดความสับสน เพื่อส่งไปยัง Windows 2000 โดยตรง ไม่ผ่าน IIS 5

ตัวอย่างของ Canonicalization ให้ดูที่ fp00-057.asp โดยเป็นกระบวนการการแปลงชื่อเล่นหลายๆชื่ที่แตกต่างกันให้เป็นชื่อเดียว โดยระบุชื่อเล่นทั้งหมดไปในการร้องขอได้รับหลายรูปแบบจากกัน IIS หรือระบบปฏิบัติการเอง จะเปิดเผยซอร์ต ::$DATA  โดยปัญหานี้คล้ายกับ WebDAV คือทำให้ระบบเกิดความสับสน

มาตรการป้องกัน Translate:f

วิธี การป้องกันคือให้คิดว่า .asp และ .asa สามารถที่ให้ผู้ใช้เห็นได้ ซึ่งอ่านได้ใน MS0058 และติดตั้ง Patch ใน Service patch 1 ซึ่งบังคับให้ .asp และ .asa เองในทุกกรณีทำ Scripting engine ของต้นเอง ไม่ว่าส่งอะไรมาร้องขอ

ทั้งใน IIS4 และ IIS5 ให้แก้ปัญหาตาม MS00-019

ถ้าเป็น IIS5 ให้ติดตั้ง patch จากคำแนะนำ MS00-058 หรือ SP1


Remote Buffer Overflows

เป็นข้อบกพร่องในเรื่องของ แอพพลิเคชั่นที่รันอยู่ใน NT/2000



Denial of Service (DoS)

ได้ รับการแก้ไขใน NT SP6a ซึ่งทนต่อการโจมตี ดูได้จาก win2000test.com

การ โจมตีด้วย SYN Flooding และ IP Fragment Flooding

ซึ่งเป็นการส่ง IP Fragment Flooding มหาศาลเพื่อทำลายความสามารถในการรวมแพ็ตเก็ต และยังโจมตีด้วย SYN Flooding เพื่อให้ไม่สามารถรับการเชื่อมต่อได้ โดยเปิดแบบครึ่งๆกลางๆ

มาตรการป้องกัน Dos

ใช้ Firewall หรือกำหนดค่าคีย์เพื่อต่อการการโจมตี

HKLM\System\CurrentControlSet\Services

กำหนด ค่าดังนี้

Tcpip\Parameters\SynAttackProtect                 2

Tcpip\Parameters\EnableDeadGWDetect         0

Tcpip\Parameters\EnablePMTUDiscovery        0

Tcpip\Parameters\KeepAliveTime                     300,000

Tcpip\Parameters\Interfaces\<interface>NoNameReleaseOnDemand    0

Tcpip\Parameters\Interfaces\<interface>PerformRouterDiscovery          0


DoS-ing Win2000’s Telnet Server

ใช้วิธีการ ส่งสตริงเลขฐานสองเป็น 0 ไปยัง Telnet Service ผลคือ Telnet เสียหาย ซึ่งทำให้เกิดตลอดเวลาเครื่องจะชัตดาวน์

Nc target.host 23 < /dev/zero

การติดตั้ง patch เพื่อแก้ปัญหา Telnet DoS

การลง Service pack 1 ป้องกับปัญหานี้ทำให้ไม่เกิดความรำคาญ

การโจมตีด้วย DoS เข้าทาง NetBIOS Name Service

คือส่ง NetBIOS Name Release ไปยังเครื่อง NBNS ที่ UDP 137 บนเครื่องเป้าหมาย เครื่องได้รับก็จะทำให้ยกเลิกการใช้ และตัดขาดจากการใช้เครือข่าย

หรือ ส่ง NetBIOS Name Conflict ไปที่ NBNS เพื่อให้ยกเลิกชื่อเช่นเดียวกัน

Sir Dystic ได้เขียนโปรแกรม nbname ซึ่งส่ง NetBIOS Name Release ไปยังทุก NetBIOS Name Table เพื่อให้เกิดปัญหา ทำให้ระบบไม่เสถียร

มาตรการ ป้องกันการโจมตีด้วย DoS เข้าทาง NetBIOS Name Service

ให้ติดตั้ง SP1 กับ MS00-047.asp ซึ่งเป็น Patch ต่างหากจาก SP1 คือเมื่อมีการส่ง NetBIOS Name Release หรือ Conflict ไม่สนใจซึ่งการตอบสนองเกิดขึ้นต่อเมื่อการลงทะเบียนเท่านั้น

ถ้าต้อง การแก้ปัญหาระยะยาวให้เลิกใช้ NetBIOS ไป



การยกระดับให้ได้ รับสิทธิพิเศษ

ในระบบปฏิบัติการ Windows 2000 แข็งแรงกว่า Windows NT 4.0 ซึ่งป้องกัน getadmin และ sechole ซึ่งปัจจุบัน Windows 2000 กำหนดให้ผู้ใช้ล็อกออนเครื่องโดยตรงโดยใช้ Terminal Service อาจสร้างปัญหาได้

ใช้ช่องโหว่ Named Pipe ทำงานภายใต้ System Account

การสร้างบริการ Named pipe ใน Server, Workstation, Alerter, และ Clipbook ทำงานภายใต้ System Account

ซึ่งอยู่ที่ HKLM\System\CurrentControlSet\control\ServiceCurrent ผู้ใช้มีสิทธิคาดเดาชื่อของ Named Pipe ที่เกิดขึ้นได้จากการสร้าง Name Pipe ใหม่ ซึ่งเลียนแบบของเดิม ทำงานภายใต้ System Account ทำให้สามารถทำงานใดๆได้

RID 500 เป็นของ Administrator ถ้าผู้ใช้ล็อกออนใน Operators โดยใช้ WhoamI จาก W2KRK แล้วจึงค่อยรันโปรแกรม Main ในช่องโหว่ดังกล่าว

Whoami /groups

Main

การ ติดตั้ง Patch เพื่ออุดช่องโหว่ของ Name Pipe นี้

สิทธิการกำหนด Log on locally right ต้องจำกัดอย่างเข้มงวด


Cross-Winstation Access Violation

Windows Station (Winstation) เป็นโมเดลความปลอดภัยของ Windows 2000 ซึ่งกำหนดลำดับชั่นที่เก็บหลายชั้นเพื่อสร้างอาณาเขตความปลอดภัย โดยมี Session -> Winstation -> Desktop จากอาณาเขตใหญ่ไปเล็ก

หนึ่ง เซสชั่นประอบด้วยหลาย Winstation เป็นต้น

การพัฒนาที่ผิดพลาดทำให้โป รเซสที่มีสิทธิต่ำทำงานอยู่ใน Desktop หนึ่งไปอ่านข้อมูลในอีก Desktop ได้ใน Winstation อื่นๆภายใต้ Session เดียวกัน

ผลสุดท้ายผู้เจาะ ระบบก็สามารถที่จะอ่านหน้าจอการล็อกออน Windows 2000 ติดต่อโปรเซสได้ใน Session เดียวกัน ซึ่งแฮกเกอร์ทำการสร้าง Process ภายใต้ Winstation อื่นๆ

การ ป้องกันให้ไปดูที่ ms00-020.asp ซึ่งเก็บใน SP1 แล้ว



การ ขโมยข้อมูล (Pilfering)

ทันที่ได้รับสิทธิผู้ดูแลระบบแล้ว ก็ทำกิจกรรมต่างๆที่เป็นไปได้



การดักขโมยค่า hash ของรหัสผ่านในเครือข่าย Windows 2000

ค่าดีฟอลท์ของ LanMan ถูกกำหนดเป็นดีฟอลท์ใน Windows 2000 เพื่อรองรับระบบปฏิบัติการเดิม แต่สิ่งที่จะขโมยข้อมูลทำได้ยากขึ้นกว่า Windows NT เพิ่มเสริมความสามารถเช่น Syskey เข้าไป

การขโมย SAM

บน เครื่อง Windows 2000 ที่เป็น DC เก็บข้อมูลใน ntds.dit ซึ่งเข้ารหัส

ส่วน เครื่อง Windows 2000 ธรรมดาจะมี SAM อยู่ใน %systemroot%\Ssytem32\config สามารถบูตดอสเข้าไปนำ SAM ได้โดยใช้ NTFSDOS หรือใช้ Rdisk ในการดึงมา

ถ้า ใช้ RegBack ก็ดูใน %windir%\Repair\RegBack ซึ่งมีสิทธิในการอ่านอย่างเดียว ไฟล์ SAM ที่ใช้ Syskey จะมีการเข้ารหัสเพิ่มอีกอ่านไม่ได้ทันที

มาตรการป้องกัน

หมั่น คอยดูแลโฟลเดอร์ Repair\RegBack โดยไปเก็บไว้ในฮาร์ดดิสก์ที่เคลื่อนย้ายได้ อย่าคลิกเลือก Also backup the registry to repair directory เมื่อรัน Rdisk



การดูข้อมูลด้วย pwdump2

Syskey เป็นการกำหนดค่าดีฟอลท์ของ Windows 2000 ซึ่ง pwdump ธรรมดาอ่านไม่ได้ ต้องใช้ pwdump2 เก็บค่าเป็นไฟล์เพราะ DC จัดเก็บค่าแฮซใน AD

มาตรการ ป้องกัน

ถ้า DLL Injection ทำงานอยู่ป้องกัน pwdump2 ไม่ได้ร้อยเปอร์เซ็นต์ แต่อย่าลืมคนที่รัน Pwdump2 ได้ต้องเป็น Administrator หรือใช้จากเครื่องโดยตรง



การอัดฉีดค่าแฮ ซเข้าใน SAM ด้วย chntpw

ถ้ามีเวลาในเครื่องที่เจาะระบบพอควร สามารถกำหนดค่าแฮซผ่านใน SAM ขณะที่ระบบปฏิบัติการไม่ได้ใช้งาน เพื่อให้ใครบางคนสามารถเปลี่ยนแปลงรหัสผ่านของผู้ใช้ใดๆก็ได้

โดย สร้างแผ่นบูตดิสก์ของ Linux ที่บุต NT/2000 ได้เพื่อเปลี่ยนรหัสผ่านของ Administrator แม้จะเปลี่ยนเป็นชื่ออื่น แล้วลองเข้าไปใหม่

เทคนิค DLL Injection ยังได้ผลแม้จะมีการใช้ Syskey  ซึ่งหลายคนเคยได้ยินว่า Syskey มีการเข้ารหัสด้วยกุญแจ 128 บิตยังได้รับการป้องกัน แล้วจะมีใครที่อัดฉีดค่าแฮซที่แปลกปลอมลงไปใน SAM ได้ทั้งๆที่ไม่ทราบคีย์

Peter ได้อธิบายถึงขั้นตอนการ disable Syskey โดยใช้อัลกอริทึมของ Syskey เวอร์ชั่นเก่าไปใน SAM จะเปลี่ยนเป็น Syskey ปัจจุบันหลังจากที่บูตเครื่อง สิ่งที่ทำต่อคือ

   1. กำหนดค่าคีย์ HKLM\System\CurrentControlSet\Control\Lsa\SecureBoot ให้เป็น 0 เพื่อยกเลิก Syskey (0 ไม่ใช้, 1 ไม่เข้ารหัส, 2 เข้ารหัส,3 เก็บในดิสก์)
   2. กำหนดค่าแฟลก HKLM\SAM\Domain\Account\F ให้อยู่ในโหมดเดียวกับค่าคีย์ SecureBoot ในข้อ 1 ค่าคีย์นี้เข้าไม่ได้ถ้าระบบทำงานอยู่
   3. บนเครื่อง Windows 2000 ที่ HKLM\Security\Policy\PolSecretEncryptionKey\<default> key ยังจำเป็นต้องกำหนดเป็นค่าเดียวกันกับทั้งสอง

ค่าที่ 1 กับ 2 บน NT4 ที่ติดตัง SP6 เกิดความไม่สอดคลองทำให้ syskey มีผลมาใหม่ Windows 2000 ไม่สอดคล้องกับค่าคีย์ทั้งสามทำให้รีเซตใหม่เป็นค่าที่มากที่สุด

บาง ครั้งอาจทำให้ SAM เสียหาย

มาตรการป้องกัน Chntpw

คือการ ป้องกันการเซตที่มีการระบุรหัสผ่านของ Syskey ก่อนที่เครื่องรีบูตเก็บรหัสผ่านในแผ่นดิสก์



การลบ SAM เพื่อให้รหัสผ่านของ Administrator ว่างเปล่า

ใช้ NTFSDOS หรือติดตั้ง Windows 2000 อีกชุดในเครื่องที่ต้องการ แต่อย่าลืมในเรื่อง EFS ด้วย

การหยุดยั้งการลบไฟล์ SAM ในขณะที่ระบบไม่ทำงาน

คือ เก็บไว้ในแผ่นดิสก์ หรือเก็บเครื่องในที่ปลอดภัย
EFS

เป็นการ รักษาความปลอดภัยที่ใช้การเข้ารหัสบน NTFS โดย EFS จะเข้ารหัสด้วยกุญแจเดียว โดยใช้ File Encryption Key (FEK) เป็นคีย์ที่สุ่มในเวอร์ชั่นแรกๆใช้ Extended Data Encryption Standard (DESX) เป็นอัลกอริทึมในกาเข้ารหัส ซึ่ง FEK เก็บเป็น attribute ของไฟล์

Key recover agent เป็นสิ่งที่สำคัญ

การเรียกใช้คือคลิกขวาที่ไฟล์เลือก เช็กบ็อกซ์ หรือใช้คำสั่ง cipher.exe

ระวังถ้ามีการเข้ารหัสแล้วใช้ การสำรองและกู้คืนในระบบใหม่ไม่ได้เนื่องจาก FEK คนละตัวกัน



การ เปิดไฟล์โดยใช้กุญแจของ Recovery Agent

ถ้า Administrator เป็นดีฟอลท์ เมื่อได้รหัสผ่านทุกอย่างก็จะง่าย คือเมื่อรหัสผ่านว่างเปล่าก็สามารถเปิดได้หมด และสามารถทำการถอด FEK ได้

เนื่อง จากระบบมีการใช้กุญแจอีกตัวหนึ่งคือ Recovery Agent ซึ่งเรียกว่า Data Decipher Field (DDF) และเก็บใน Attribute ชื่อ Data Recovery Field (DRF)

ถ้า Recovery Agent ไม่ใช่ administrator ให้ทำการรีเซต Recovery Agent ให้ว่างเปล่าแล้วทำการรีบูต

อีกวิธีหนึ่งคือปลอมตัวเป็นเจ้าของไฟล์ จะง่ายกว่า



การ Export กุญแจ Private ให้เป็น Account ที่ไปเก็บในที่ปลอดภัย

ใช้คำสั่ง Export ใน Recovery Agent แล้วเลือก Delete the Private key if Export is successful ทำให้การขโมยกุญแจของ Recovery Agent แทบเป็นไปไม่ได้เลย ในการกำหนดถ้าเป็นสมาชิกของโดเมนให้กำหนดใน Default Domain Policy



การ ฉวยโอกาสจาก Trust Relationships

ใช้ LSA Secret เป็นการฉวยโอกาส

คำ สั่งที่ใช้คือ lsadump2 เป็นการถอดรหัสใน NT+SP3 หรือ SP4 กับ Windows 2000

มาตรการ ป้องกัน Isadump2

Isadump2 ต้องใช้สิทธิพิเศษที่ชื่อ SeDebugPrivilege ซึ่งจะอนุญาตให้กับ Administrator เท่านั้น วิธีป้องกันคือรักษารหัสผ่านของ Administrator



MultiMaster Replication และการ Trust แบบใหม่

เป็นการวางโครงสร้าง Directory Service แบบใหม่ของ Microsoft รองรับการทำงานเป็น Tree และมี OU ในโดเมน ซึ่งรองรับ Kerberos ด้วย



การอำพรางตัวเองเพื่อป้องกันการ ดักจับจากผู้ดูแลระบบ

ในเทคนิคของ NT4 สามารถมาใช้กับ Windows 2000 ได้

การ disable Audit

ในที่นี้กำหนดใน Secpol.msc หรือ gpedit.msc ซึ่งเป็นการกำหนดการบันทึกทำงานได้ง่ายกว่า Windows NT ใช้ Auditpol เพื่อความสะดวกใน NTRK

การเคลียร์ล็อก

ใช้ Elsave –s \\ชื่อเครื่อง -l “file replication service” –c



การ ซ่อนไฟล์

ใช้คำสั่ง Attrib และการใช้ File Streaming



โปรแกรม Back door

ซ่อนใน HKLM\Software\Microsoft\Windows\CurrentVersion: \Run, \RunOnce, \RunOnceEx, \RunServices

ตำแหน่งของ Startup

ประตู กับดักที่นำไปสู่โปรแกรม Backdoor

การกำหนดชื่อเดียวกับ Explorer

การ อ่านทำดังนี้

   1. ตำแหน่งที่โหลดแอพพลิเคชั่น
   2. ตำแหน่งที่ใช้งาน
   3. ที่ %systemroot%\system32
   4. ที่ %systemroot%\system
   5. %windir%
   6. Path ที่กำหนดในตัวแปร

ซึ่ง ถ้าทราบก็ให้กำหนดก่อน Explorer.exe

ซึ่งค่าที่อ่านใน HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell กำหนดค่า Explorer ซึ่งถ้าเปลี่ยนตำแหน่งไม่ให้พบก็จะเริ่มไล่อ่าน

สำเนา เชลล์ไปในตำแหน่งที่ต้องการล็อกออฟ และล็อกออน ELitewrap เป็นการจัดการรันคำสั่งไม่ให้ใครเห็น และใช้ Back Orifice 2000 เข้ากับ explorer ปลอม

หรือใช้หลักการคือการอัพโหลดผ่าน Telnet หรือ FTP ไปไว้ตำแหน่งที่ต้องการ

การป้องกันต้องคอยสังเกต Path เหล่านี้ที่เรารู้จัก หรืออัพเดต MS00-052 ไม่มีใน SP1 และกำหนด Path ที่แท้จริงในตำแหน่งไฟล์ทุกไฟล์


Remote Control

จะมีคำ สั่งต่างๆเช่น Rcmd, NetBUS, WinVNC, Back Orifice 2000
Terminal Server

เป็น การสร้างเซสชั่นบนเครื่องแม่ข่ายใช้พอร์ต 3389 ติดตั้ง Terminal Service Client จาก %Systemroot%\System32\Clients\ ใช้การเดารหัสผ่าน Administrator จาก Brute force

ป้องกันโดยใช้ passprop /adminlockout กำหนดให้ Administrator ถูกล็อคด้วย



การแย่ง ชิงการเชื่อมต่อ Terminal Server

ถ้า Administrator ไม่ได้ล็อกเอาท์มีคนเข้ามาใช้ Administrator สามารถที่เข้าไปดูข้อมูลที่เราทิ้งไว้ได้

มาตรการป้องกันคือให้ล็อก ออฟ



Keystroke Logger

ยังใช้งานได้อยู่

การ ป้องกันในระบบปฏิบัติการ Windows 2000

มี Group Policy ที่ควบคุมค่าต่างๆได้ทั้งโครงสร้าง

คำสั่งในการรีเฟรซค่า Secedit /refreshpolicy Machine_policy

Secedit /refreshpolicy User_policy



การ กำหนดค่าใน Security Configuration Tools

สามารกใช้กับ Security Configuration and Analysis (SCA) ในการกำหนด หรือ Secedit

สร้าง ไฟล์ด้วย Security Template เพื่อโหลดใน SCA

การใช้คำสั่ง Runas

เพื่อ ป้องกันข้อมูลของผู้บริการระบบใช้คำสั่งในการ Runas เมื่อต้องการที่จะบริหารระบบ



สรุป

ระบบปฏิบัติการ Windows 2000 มีความแข็งแกร่ง และมีโครงสร้างในการบริหารงานได้ง่ายกว่าระบบปฏิบัติการ Windows NT Server อย่างมาก

โดยการป้องกันให้ดูจากระบบปฏิบัติการ Windows NT

ตรวจ สอบรายการความปลอดภัยจากเว็บไมโครซอฟต์ http://www.microsoft.com/security

ใน SQL ไปดูที่ http://www.microsoft.com/technet/sql/technote/secure.asp

ระวัง เรื่องแอพพลิเคชั่นที่ทำงานบน Windows 2000

ตรวจสอบว่าใช้ระบบ Windows 2000 ใดอยู่เพื่อกำหนดค่าการเชื่อมต่อในระบบ

ให้สิ่งต่างๆ น้อยที่สุดเพื่อความปลอดภัยสูงสุด เช่น การทำ Zone Transfer

ไม่ใช้ NetBIOS over TCP/IP และปล่อยแชร์น้อยที่สุด

ใช้ TCP/IP Filter หรือ IPSec filter

ป้องกันเครื่องโดยใช้ firewall จาก SYN Flood

อัพ เดต Patch และ Hotfix ใหม่ๆ

จำกัดสิทธิให้น้อยที่สุด

ใช้การ ล็อกออฟแทนที่การ Disconnect เพื่อปิด Session

เครื่องมือบริหาร Group Policy และ Security Configuration and Analysis มีความสะดวกอย่างมากในการกำหนดค่าติดตั้งควบคุม

ป้องกันการเข้าถึง ไฟล์ SAM และเข้ารหัสด้วย EFS และกำหนด SYSKEY

ปฏิบัติตามคำแนะนำการ ใช้ EFS

สมัครสมาชิกข่าวกับ Ntbugtraq

กำหนดเป็นกลุ่มเมล์ เพื่อดูที่ http://www.ntsecurity.net

ไม่มีความคิดเห็น:

แสดงความคิดเห็น