ข้อมูลเว็บ Ashley Madison ถูกปล่อยออกมาเดือนกว่า โดยก่อนหน้านี้เชื่อกันว่ารหัสผ่านที่หลุดออกมาพร้อมกับฐานข้อมูลมีความปลอดภัยสูงเพราะใช้การเข้ารหัสแบบ bcrypt ทำให้กระบวนการแกะแฮชน่าจะยากมาก แต่นักวิจัยที่ใช้ชื่อบนเว็บว่า CynoSure Prime ก็ออกมารายงานว่ามีบัญชีจำนวนหนึ่งมีข้อมูลรหัสผ่านที่แกะรหัสได้ง่ายอยู่ด้วย
ข้อมูลตัวแปร loginkey ที่สร้างก่อนกลางปี 2012 จะเป็นการแฮชด้วยฟังก์ชั่น MD5 โดยข้อมูลที่แฮชคือชื่อผู้ใช้และรหัสผ่าน ที่แย่กว่านั้นคือโค้ดกำหนดให้ปรับชื่อผู้ใช้และรหัสผ่านกลายเป็นอักษรเล็กก่อนแฮช ในซอฟต์แวร์บางเวอร์ชั่นมีการเพิ่มอีเมลและค่า salt เพิ่มเติมไปในการสร้าง loginkey อย่างไรก็ตาม ข้อมูล loginkey ที่ถูกแฮชอย่างไม่ปลอดภัยนี้มีทั้งหมดถึง 15.6 ล้านบัญชี ที่สามารถย้อนหาค่ารหัสผ่านเริ่มต้นได้
รายงานล่าสุดทาง CynoSure Prime ระบุว่าแกะรหัสออกมาได้แล้ว 11.7 ล้านบัญชี รหัสผ่านส่วนมากยาว 6-8 ตัวอักษร มีผู้ใช้ถึง 630,000 คนใช้ชื่อผู้ใช้เป็นรหัสผ่านโดยตรง ผู้ใช้บางคนใช้รหัสผ่านว่า correcthorsebatterystaple ตามการ์ตูน XKCD บางคนก็ตั้งรหัสเพิ่มคำขึ้นไปเรื่อยๆ เช่น mypasswordispassword
ตอนนี้ทาง CynoSure Prime ส่งสถิติรหัสผ่านต่างๆ ออกไปให้สื่อรายงานแล้ว
ที่มา - CynoSure Prime 1, 2, ArsTechnica
Comments
ผม มีความสงสัย ครับ
ดูจากภาพ เข้าใจว่า การบังคับให้ ใส่ตัวเลข กับ สัญญลักษณ์พิเศษ
ถ้า pw 8ตัวอักษร ก็ โดนแกะได้ ในเวลาไม่กี่วัน
แต่ถ้า ทุกคน เปลี่ยนไป ใช้ random word
ซึ่งความยาวอาจถึง 20ตัวอักษร ก็ โดนแกะยากขึ้นมา
ที่จริงคือ pw ต้องยาวมากมาก ถูกต้องมั้ยครับ
แต่ คนจำไม่ได้ เลยใช้ words มาแทน
ก็ อาจทำให้ เดาได้ง่ายอีก เพราะ word ก็ เป็นคำเฉพาะ
ถ้าใช้ 4words ก็อาจเป็น4ตัวอักษร ตัวนั้น
เพียงแต่ ฐานจำนวนตัวอักษรนั้น มหาศาล
เช่นคนอาจคิดง่ายง่าย เอาหมวด เครื่องเขียน
pen pencil ruler rubber paper
ก็อาจซวย เพราะ ฐานจำนวนอักษร มันน้อยมาก ตัวนี้ ก็แค่ 5ตัวอักษร
ถ้าใช้word จากหลายหมวด
เช่น ฟิสิกส์ เคมี ชีวะ คณิต สถิติ บัญชี การเงิน มนุษย การตลาด
แบบนี้ น่าจะ แกะยากกว่า
แต่ ก็ยัง มี คำที่ คนนิยมมากกว่า คำอื่นอื่นอีก
ดูเหมือน จากหลากหลายแต่ ก็ กลับแคบลงอีก
ไม่แน่ใจว่าผมเข้าใจถูกรึเปล่านะ
คือพอมันต่อกันเป็น password แล้ว เราก็ไม่มีทางรู้ได้ว่าคนตั้งใช้กี่ตัวอักษรรึเปล่าครับ? เช่น Password ยาว 20 ตัวอักษร แต่เป็น 4 อักษร 5 คำ หรือ 5 อักษร 4 คำล่ะ?
และก็ไม่มีทางรู้เลยเหมือนกัน ว่าคนตั้ง pw ใช้แต่ word ไม่ได้ใช้สัญลักษณ์หรือตัวเลขอะไรเลย ดังนั้นคนเดา (กรณี brute force) ก็ต้องเดาสัญลักษณ์กับตัวเลขเข้าไปด้วยอยู่ดี ยกเว้นแต่เขาจะเดาแต่ตัวอีกษรล้วน ๆ ก่อน อันนี้ก็คงจะใช้เวลาลดลงมากมายเลย
เทคโนโลยีไม่ผิด คนใช้มันในทางที่ผิดนั่นแหละที่ผิด!?!
กำลังศึกษาเรื่องนี้อยู่นะครับ
แต่โดยรวมๆ คือ คนเรามีแนวโน้มจะใช้รหัสผ่านตามความเคยชินแบบแคบๆ บางอย่าง อย่างที่คุณบอก คือบังคับสี่คำ ก็จะได้คำที่นิยมสูงๆ (pencil tree ...) มากกว่าคำแปลกๆ ความแข็งแกร่งของรหัสผ่านจึงไม่เป็นไปตามที่บอกว่ามันยากขนาดนั้น แฮกเกอร์จะไล่เดาจากคำยอดนิยมก่อนเสมอ
ต่อให้เป็นสัญลักษณ์ที่คุณบอกว่าจำได้ยาก เอาเข้าจริงคนเราก็มีรูปแบบการใช้งานบางอย่างที่พบบ่อย เช่น บอกว่ารหัสผ่านต้องมีสัญลักษณ์กับตัวเลข ก็จะได้ "[รหัสผ่านแย่ๆ]#1" เสมอๆ อะไรแบบนั้น
lewcpe.com, @wasonliw
ของผมเปิดตารางธาตุแล้วก็สุ่มตามใจชอบเลยครับ
ผมพิมพ์เลื่อนไป 1 ปุ่มนะครับ ตัวอย่าง password "เก่า" จากเวปการเงิน"แห่งหนึ่ง" โดย"ไม่บอก username"
เริ่มต้น
cake is a lie
เอาช่องว่างออก
cakeisalie
เลื่อนไป 1 ปุ่ม
vslrods;or
แกะยากนะคงจะ dict ไม่ใด้ด้วย "vslrods;or"
samsung ใหญ่แค่ใหน ?
https://youtu.be/6Afpey7Eldo
ก็การ์ตูนบอกแพทเทินมาซะขนาดนั้นอ่ะนะ แฮคเกอมาอ่านก็ใช้แพทเทินนี้ในการเดาก่อนเพราะมันไม่นานถ้าใช้คำในดิกมาเรียงกันแบบสุ่ม เผื่อมีคนทำตามการ์ตูน ถ้ายังไม่ถูกก็เปลี่ยนเป้าหมาย
ปรากฎว่าตามข่าวก็มีคนใช้แม้กระทั่ง พาสที่การ์ตูนยกตัวอย่างมาตรงๆ และบางคนก็ช้แพทเทินเดียวกัน แทนที่จะประยุกต์เพิ่มตัวใหญ่หรือใส่ตัวพิเศษปนเข้าไปบ้าง ก็ขนมหวานเลย
ผมเคยสงสัยเรื่องนี้นะครับ สงสัยเรื่องประเด็นด้วยว่าการมั่วแบบนี้มันง่ายขึ้นหรือเปล่า
ถ้าอยากอ่านอะไรละเอียดๆ ลองหาอ่านที่ Explain xkcd ดูครับ
ผมลองคิดแบบง่ายๆ ดูนะครับ สมมติพาสเวิร์ดที่จะถูกนำมามั่วใน dictionary มีอยู่ 6000 คำ และสมมติว่าในหนึ่งคำมีสระสองที่ และสระสองที่สามารถแทนที่ได้ด้วยตัวอักษรอื่นสองตัว (เช่น 3xamp1e56, 5ometh1ng+&, bl0gnon3#%) หากเติมอักษรเข้าไปสองตัวท้ายอีกที่ละ 94 แบบ ความน่าจะเป็นคือ 6000x3x3x(94^2) = 477144000 แบบ
ในขณะเดียวกัน ถ้ามั่วคำได้ 6000 คำมาสี่คำ จะได้ 6000^4 = 1.296e15 แบบ
ถ้า brute force รหัสแบบแรก ตีให้ยาวสิบหลัก ก็จะได้ 94^10 = 5.38e19 แบบ และมั่ว a-z แบบหลังได้ 26^40 (สี่คำ คำละสิบตัว) = 3.97e56 ครับ
ปล. ลองกรอกรหัส correct horse battery staple ในหน้าสมัคร Dropbox ดูครับ ;3
Blog | Twitter