Tech Knowledge

Password นั้นสำคัญไฉน พร้อมวิธีตั้งรหัสผ่านให้ปลอดภัย

Published : April 19, 2024Time : 5 min read

เหตุการณ์สมมติ

ณ บริษัทแห่งหนึ่ง พนักงานฝ่ายปฏิบัติการรอบเช้าได้รับแจ้งจากเซลล์ให้ติดตั้งระบบปฏิบัติการวินโดวส์ให้กับลูกค้า หลังจากที่ติดตั้งเสร็จก็ส่งข้อมูลการเข้าถึงให้ลูกค้า ได้แก่ IP, user, password ซึ่งทางลูกค้าสามารถรีโมทเข้าใช้งานได้ปกติ


เมื่อถึงช่วงเวลาเปลี่ยนกะ พนักงานรอบเช้าได้แจ้งพนักงานรอบค่ำว่า

“พี่ ผมลงวินโดวส์ให้ลูกค้านะ ส่งมอบงานไปแล้ว...”

แม้จะดูเหมือนจะไม่มีอะไร แต่กลับเกิดปัญหาขึ้นในคืนนั้นเอง


ลูกค้าโทรเข้ามาที่ฝ่าย support

ลูกค้า : สวัสดีครับ ผมรีโมทเข้าเครื่องไม่ได้ครับ พอดีกำลังย้ายข้อมูลอยู่ อยู่ๆ ก็หลุดออกมา จากนั้นก็ล็อกอินเข้าไม่ได้ครับ

พนักงานฝ่ายปฏิบัติการรอบค่ำ : สวัสดีครับ ขอทราบหมายเลข IP และชื่อลูกค้าครับ

ลูกค้า : IP xxx.xxx.xxx.xxx ชื่อ xxx

พนักงานฝ่ายปฏิบัติการรอบค่ำ : ครับผม ตรวจสอบสักครู่แล้วจะโทรกลับไปแจ้งนะครับ


หลังจากรับเรื่องก็ระลึกได้ว่า “เอ IP นี้มันคุ้นๆ นะ”

ว่าแล้วก็ลองรีโมทเข้าเครื่องที่มีปัญหา ผลคือรีโมทไม่ได้ แต่ตัวเครื่องไม่ดับ จึงอ่านบันทึกการทำงานดู ผลปรากฏว่าพบสุดยอด password เข้าแล้ว โดยในใบส่งงานระบุไว้ว่า

pass: Admin1234 หลักจากล็อกอินกรุณาเปลี่ยนรหัส

พนักงานคนดังกล่าวคิดในใจ ‘เอ่อ ลูกค้าไม่เปลี่ยนรหัสแน่นอน’


ดังนั้นแล้วก็รีบติดต่อลูกค้าทันที เพื่อถามเรื่องการเปลี่ยนรหัสผ่าน และขอ access เข้าไปตรวจสอบโดยการเข้าที่หน้าเครื่องโดยตรง ทางลูกค้าแจ้งว่าจะเปลี่ยนรหัสหลังจากที่ย้ายข้อมูลเสร็จแล้วและให้เข้าไปตรวจสอบได้


เมื่อ access เข้าระบบแล้ว พนักงานปฏิบัติการตรวจสอบเบื้องต้น พบว่า

  1. ระบบเครือข่ายของเครื่องสามารถทำงานปกติ

  2. รีโมทเซอร์วิสใช้งานได้ปกติ

  3. มีโปรแกรมแปลก ๆ เป็นโปรแกรมยอดนิยมสำหรับ FTP server แต่หน้าตาไม่เหมือน

  4. โปรแกรมที่ติดตั้งบางโปรแกรมเขียนระบุว่า “Crack”

  5. ไม่สามารถเปิดดู process การทำงานของระบบปฏิบัติการได้ (ระบบแจ้งว่าถูกปิดการใช้งานจากผู้ดูแลระบบ)

หลังจากตรวจสอบก็ได้โทรไปแจ้งลูกค้า

พนักงานฝ่ายปฏิบัติการรอบค่ำ : ลูกค้าครับ จากการตรวจสอบแล้ว ระบบภายในปกติ แต่ไม่สามารถตรวจสอบ process ของระบบปฏิบัติการได้ครับ และเนื่องจากลูกค้าไม่ได้เปลี่ยนรหัสผ่านและพบโปรแกรมแปลก ๆ ติดตั้งในเครื่อง จึงความเป็นไปได้ว่าลูกค้าจะถูกแฮกครับ การแก้ปัญหาคือต้องติดตั้งระบบปฏิบัติการใหม่ครับ

ลูกค้า : ต้องติดตั้งใหม่เลยหรือครับ พอดีว่ารีบใช้ด้วยครับ

พนักงานฝ่ายปฏิบัติการรอบค่ำ : ครับ เพราะไม่ทราบว่าแฮกเกอร์เข้าไปทำอะไรที่เครื่องเราแล้วบ้าง การตรวจสอบเสียเวลามากกว่าติดตั้งใหม่ครับ

ลูกค้า : โห ทำไมมันแฮกเร็วอย่างนี้ เพิ่งให้ติดตั้งใหม่ แต่ทำไมโดนแฮกแล้วล่ะ

พนักงานฝ่ายปฏิบัติการรอบค่ำ : แฮกเกอร์โจมตีทุกวัน ทุกชั่วโมง ทุกนาทีครับ เขาเขียนสคริปไว้แล้ว ตั้งค่าให้มันหาเหยื่อตลอดเวลาครับ

ลูกค้า : ผมรีบใช้งานด้วยสิ ต้องใช้งานพรุ่งนี้เช้าเลย

พนักงานฝ่ายปฏิบัติการรอบค่ำ : งั้นทางผมจะติดตั้งให้ใหม่ แล้วจะแจ้งทางเซลล์ให้คิดค่าบริการเพิ่มไปนะครับ

หลังจากวางสาย ก็ดำเนินการทันที

เมื่อติดตั้งระบบปฏิบัติการเสร็จแล้วยังพบปัญหาอีกคือ user admin ที่เป็น default user ของระบบปฏิบัติการไม่สามารถรีโมทได้ ระบบปฏิบัติการแจ้งว่ามีปัญหาด้านความปลอดภัย จึงต้องตรวจสอบที่หน้าเครื่อง

เมื่อตรวจสอบแล้วพบว่า default user ถูกระบบล็อกไปแล้ว การถูกระบบล็อกเป็นมาตรการรักษาความปลอดภัยของทางระบบปฏิบัติการ เมื่อมีผู้พยายามล็อกอิน user นั้น ๆ มากกว่าจำนวนที่กำหนด (ตามเวลาที่ตั้งไว้) ทางระบบจะล็อก user นั้น ๆ ไว้ ไม่ให้รีโมท ต้องปลดล็อกที่หน้าเครื่อง หรือใช้ user อื่นที่มีสิทธิ์ระดับ super user รีโมทเข้ามาแก้ไขเท่านั้น การพยายามล็อกอินดังกล่าวน่าจะเกิดจากแฮกเกอร์ไม่สามารถรีโมทเข้ามาที่เครื่องได้ (ก่อนหน้านี้ทำได้) จึงพยายามล็อกอินเข้ามาอย่างต่อเนื่องทำให้ระบบปฏิบัติการต้องล็อก user


พนักงานฝ่ายปฏิบัติการรอบค่ำจึงสร้าง user ใหม่และให้สิทธิ์ระดับ super user เพื่อให้ทางลูกค้าใช้รีโมทเข้ามาจัดการเครื่อง และส่งมอบงานให้ลูกค้า ทางลูกค้าก็สามารถใช้งานได้ปกติ ไม่มีปัญหาแจ้งเข้ามาเกี่ยวกับการรีโมทอีก





วิเคราะห์เหตุการณ์/ปัญหา

  • พนักงานฝ่ายปฏิบัติการรอบเช้าติดตั้งระบบปฏิบัติการใช้ default user และ weak password

  • ลูกค้ารีโมทเข้าใช้งานแล้วไม่แก้ไข weak password

  • ลูกค้าติดตั้งโปแกรมละเมิดลิขสิทธิ์ (Crack)

  • ระบบถูกโจมตี แฮกเกอร์เข้าไปปิดการตรวจสอบ รวมถึงติดตั้งโปรแกรมไม่พึงประสงค์ พร้อมที่จะขโมยข้อมูล หรืออาจจะเข้ารหัสข้อมูลเพื่อเรียกค่าไถ่


วิธีการแก้ปัญหา

  • คาดการณ์จากข้อมูลที่มีว่าน่าจะมีสาเหตุจากอะไร ในที่นี้น่าจะโดนแฮก

  • ตรวจสอบเพื่อยืนยันสาเหตุว่าโดนแฮกจริงหรือไม่ โดนแฮกจริง ให้ล้างข้อมูลทั้งหมด แล้วติดตั้งระบบปฏิบัติการใหม่ วิธีนี้จะเร็วกว่าตรวจสอบว่าถูกทำอะไรไปบ้าง

  • หลีกเลี่ยงการใช้ default user และใช้ strong password


Best Practice

  • เปิดการใช้งาน service เท่าที่ใช้ ไม่ใช่เปิดทุกอย่าง

  • เปิด firewall เท่าที่ใช้งานไม่ใช่ให้เข้ามาหมด

  • สร้าง user ใหม่ขึ้นมาสำหรับรีโมทใช้แทน default และใช้ strong password -> นอกจากที่แฮกเกอร์ต้องสุ่มรหัสให้ถูกแล้ว เขายังต้องสุ่ม user ด้วย ทำให้ระบบยิ่งถูกแฮกยากขึ้นไปอีก

  • ข้อนี้เป็นส่วนเสริมคือ เปลี่ยนรีโมทพอร์ต ไม่ใช้ well-known ports[1]


คำถาม

Weak password คืออะไร ทำไมถึงเรียกอย่างนั้น? จากเหตุการณ์สมมติข้างต้น แฮกเกอร์จะมีสคริปสำหรับโจมตีตลอดเวลา เขาไม่มานั่นเหนื่อยลองรีโมทเองเรื่อยๆ แต่ทางแฮกเกอร์จะมีเครื่องที่ถูกแฮก (Zombies[2]) และติดตั้งสคริปเพื่อโจมตี สคริปดังกล่าวแล้วส่วนใหญ่จะเป็น Dictionary attack [3] ซึ่งรหัสผ่านที่ง่ายๆ สามารถแฮกได้ภายในไม่ถึงวินาที


Strong password มีลักษณะอย่างไร?

  • ควรมีความยาวที่เหมาะสม ประมาณ 10-14 characters ไม่ยาวเกินไปจนจำไม่ได้ ใช้ทุกอย่างบนแป้นพิมพ์ ได้แก่ ตัวอักษรเล็ก (abcd) ตัวอักษรใหญ่ (ABCD) ตัวเลข (1234) และอักขระพิเศษ ($#!?)

  • ไม่ใช้ข้อมูลส่วนตัวในการตั้งรหัสผ่าน เช่น วันเกิด หมายเลขโทรศัพท์ ไปจนถึงชื่อของตัวเอง

  • ไม่ควรใช้รหัสผ่านเดียวกัน กับทุกบัญชีออนไลน์

  • เทคนิคการตั้งรหัสผ่านมีหลายวิธีลองไปศึกษาได้หลายที่ เช่น https://www.ttbbank.com/th/fin-tips/detail/password


จะรู้ได้อย่างไรว่ารหัสผ่านของเราดีมั้ย ใช้ได้รึเปล่า?

เราสามารถไปลองกันดูได้ว่ารหัสผ่านของเราหากถูกโจมตีจะถูกแฮกภายในเวลาเท่าไรจากเว็บ https://www.passwordmonster.com/

ตัวอย่างรหัสผ่านจากเหตุการณ์สมมติ

Admin1234 จะได้ผลคือ Time to crack your password: 0.22 seconds

อะไรกันนี่!


หากเราลองเอาท่อนเพลงที่เราชอบสักเพลงนึงมาใส่ เช่น ท่อนหนึ่งของเพลง “โต๊ะริม” พบว่าได้ผลลัพธ์คือ ต้องใช้เวลาในการสุ่มรหัส 4 พันล้านล้านปี ด้วยวิธี brute force attack[4]


เรื่องนี้สอนให้รู้ว่า

เมื่อได้รับมอบบ้านพร้อมกุญแจ (แบบว่าพร้อมจะโดนขโมยของ) เราไม่ควรจะเก็บของเข้าบ้านก่อน แล้วปล่อยกุญแจไว้อย่างนั้น เพราะในระหว่างที่เก็บของ จัดของในบ้าน โจรอาจจะเข้ามาในบ้านเรียบร้อยแล้วก็ได้


ควรจัดการกับกุญแจก่อนไหมครับบบบบบบบ




[1] The well-known port numbers are the port numbers that are reserved for assignment by the Internet Corporation for Assigned Names and Numbers (ICANN) for use by the application end points that communicate using the Internet's Transmission Control Protocol (TCP) or the User Datagram Protocol (UDP). Each kind of application has a designated (and thus "well-known") port number. https://www.techtarget.com/searchnetworking/definition/well-known-port-numbers

[2] In terms of Cyber Security the term “Zombie” denotes a computer or electronic device compromised by malware or malicious software. Whenever a computer gets affected by malicious software then that computer can be controlled by the attacker sitting at some different location and the owner won’t know about this. These infected computers are termed to be ‘zombies’. https://www.geeksforgeeks.org/what-are-zombies-in-cyber-security/

[3] In cryptanalysis and computer security, a dictionary attack is an attack using a restricted subset of a keyspace to defeat a cipher or authentication mechanism by trying to determine its decryption key or passphrase, sometimes trying thousands or millions of likely possibilities[1] often obtained from lists of past security breaches. https://en.wikipedia.org/wiki/Dictionary_attack

[4] In cryptography, a brute-force attack consists of an attacker submitting many passwords or passphrases with the hope of eventually guessing correctly. The attacker systematically checks all possible passwords and passphrases until the correct one is found. Alternatively, the attacker can attempt to guess the key which is typically created from the password using a key derivation function. This is known as an exhaustive key search. https://en.wikipedia.org/wiki/Brute-force_attack

AUTHOR
Author
Threepob Chunhasun
NIPA Support Team

I am Gundam!!!