วันพฤหัสบดีที่ 3 ธันวาคม พ.ศ. 2552

Logon Account Process on Windows XP

Log on Account Process on Windows XP

หลังจากที่เปิดเครื่องคอมพิวเตอร์ ผ่านกระบวนการ POST และ Boot loader เรียบร้อยมาแล้วนั้น ขั้นต่อไปเราจะต้อง Logon เข้าสู่ระบบ ซึ่งจะโหลด WINLOGON.EXE และ LSASS.EXE (Local Security Authority) ซึ่งเป็น Kernel ของระบบขึ้นมาทำงาน เพื่อให้ผู้ใช้ ป้อน ชื่อ username และ password ซึ่งไฟล์ที่เก็บรวบรวมรายละเอียดดังกล่าวก็คือ ไฟล์ SAM (Security Account Manager) ซึ่งจะอยู่ภายใน directory ย่อย /WINDOWS/system32/config

โดยปกติแล้ว Windows XP จะทำการเข้ารหัส password ของผู้ใช้ โดยใช้ Algorithm Hash ของ lanman encryption (LmHash)ซึ่งจะใช้ทั้งในการ Local login หรือ Remote login ผ่านทาง NetBIOS ซึ่งในปัจจุบันนับได้ว่าไม่มีความปลอดภัยแล้ว เนื่องจาก lanman ใช้การเข้ารหัสเพียง 14 byte เท่านั้น ทำให้สามารถ Crack หา password ได้ภายในเวลาไม่นาน ซึ่งในปัจจุบันได้มี Algorithm ใหม่เพื่อเพิ่มความยากในการ Crack นั่นคือ NTHash ซึ่งโดยค่า Default แล้ว Windows จะใช้ LmHash ในการเข้ารหัส ซึ่งเราสามารถเข้าไปแก้ไข การเข้ารหัสดังกล่าว โดยแก้ไขที่ registry ในส่วนของHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa โดยการแก้ไขไฟล์ nolmhash จากค่า 0 เป็นค่า 1 จากนั้นต้องทำการเปลี่ยน password ของ user แต่ละ user ด้วย จึงจะมีผลโดยสมบูรณ์ หรือ จะเข้าไปแก้ไขใน Local Security Setting à Security Option ในส่วนของ Network Security: LAN Manager level authentication level

ไฟล์ SAM นั้น ถือเป็น Kernel ส่วนหนึ่งของระบบปฎิบัติการ ทำให้ถูก Lock ไว้ไม่ให้มีการใช้งาน ดังนั้นการที่จะได้มาซึ่งไฟล์ SAM นั้นคือ ต้องทำการ Restart ระบบแล้ว Boot เข้าโดยระบบปฎิบัติการอื่น เพื่อมา Copy ไฟล์ดังกล่าวมาทำการถอดรหัส จึงจะสามารถทราบถึง password ของแต่ user ได้ ทำให้วิธีการ Logon แบบ Remote นั้นไม่สามารถนำไฟล์ SAM ดังกล่าวไป Crack ได้ หรือถ้าหากไม่ต้องการบูตระบบปฎิบัติการใหม่ ก็สามารถหาโปรแกรมที่สามารถ Dump file ดังกล่าวได้ อาทิเช่น LC4 , Cain&able เป็นต้น

กลไกในการเข้ารหัสของ Windows มีอยู่ 2 แบบ คือ 1.LmHash 2.NTHash ซึ่งในปัจจุบัน NTHash มี version2 แล้ว


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

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