การกู้คืนรหัสผ่าน
ผมไม่อยากเรียกวิธีการนี้ว่า การแฮก เพราะจุดประสงค์คือเอาไว้ใช้ในยามฉุกเฉิน เนื่องจากปัจจุบัน เราใช้สมองในการจำน้อยลง ส่วนมากมักใช้คุณสมบัติของโปรแกรมต่างๆ ในการจดจำ ไม่ว่าจะเป็นรหัสผ่านในเว็บบราวเซอร์ ในโปรแกรม หรือแม้กระทั่งเบอร์โทรศัพท์
บ่อยครั้งเมื่อต้องการใช้กับเครืองอื่นที่ไม่ใช่เครืองประจำ ก็มักเกิดอาการนึกไม่ออก ก็แหงหละครับ เพราะเราไม่เคยจำเลยนี่นา บางคนใช้รหัสผ่านหลายตัว จำไม่ได้ว่าตัวไหนใช้คู่กับตัวไหน วิธีการที่ทำได้คือรีเซทใหม่ซะเลย ตั้งใหม่จะง่ายกว่า
วันนี้ผมเลยเอาเทคนิคง่ายๆ ในการกู้คืนรหัสผ่าน ที่เราสั่งให้บราวเซอร์จำไว้ โดยใช้ javascript นี่เองครับ ซึ่งมีขั้นตอนไม่ซับซ้อนอะไรมาก
1. เริ่มต้นก็เปิดไปที่หน้า ที่มีฟอร์มเข้าระบบ (login form) เจ้าปัญหา
2. หากหน้าดังกล่าว มีฟอร์มมากกว่า 1 ฟอร์มก็ต้องแน่ใจว่าฟอร์มที่กรอกรหัสผ่าน คือฟอร์มในลำดับที่เท่าไหร่ โดยใช้ javascript ทดสอบดูครับ วิธีการก็ไม่ยากอะไร พิมพ์คำสั่งไปที่ address bar หรือช่องที่เราพิมพ์ url ของเว็บไซต์ ดังนี้
javascript:alert(document.forms.length)
เพื่อเช็คว่าในหน้านี้มีฟอร์ม อยู่ทั้งหมดเท่าไหร่ ซึ่งผลที่ได้จะเป็นตัวเลขปรากฏเป็น alert ขึ้นมา
javascript:alert(document.forms[x].name)
ในกรณีที่มีหลายฟอร์ม ก็ตรวจสอบดูจากชื่อ โดย x ในทีนี้คือลำดับนั่นเองครับ เริ่มต้นที่ 0 เช่น ถ้า length เป็น 2 ก็แสดงว่า x มีค่าเป็น 0 และ 1
ในขั้นตอนนี้ จะทำให้เรารู้ชื่อและลำดับของฟอร์มที่ต้องการ
javascript:alert(document.forms[x].elements.length)
เมื่อรู้แล้วว่าฟอร์มที่ต้องการอยู่ลำดับที่เท่าไหร่ ขั้นตอนต่อไปคือต้องรู้ว่าข้อมูลที่เราต้องการ ซึ่งในที่นี้ก็คือรหัสผ่าน อยู่ในลำดับที่เท่าไหร่ ในฟอร์มนั้น ซึ่งก่อนอื่นเรา ต้องตรวจสอบจำนวนข้อมูลในฟอร์มนั้นก่อนด้วยคำสั่งนี้ และผลที่ได้กลับมาจะเป็นตัวเลข
javascript:alert(document.forms[x].elements[y].name)
ดูว่าลำดับที่เท่าไหร่ (y) เป็นข้อมูลอะไร โดยดูจากชื่อ (name) ของแต่ละ field หรือ element นั่นเอง
ในบางฟอร์มอาจมีจำนวน element เยอะมาก แม้ว่าในหน้าเว็บจะมีแค่ช่องให้กรอกแค่ ชื่อผู้ใช้กับรหัสผ่าน แต่ที่เหลือถูกซ่อนไว้ ( hidden ) ดังนั้น จะไล่ดูทั้งหมดคงลำบากพอสมควร ก็อาจใช้วิธีคลิกขวาหรือเลือกจากเมนู เพื่อ View Source ดูจาก HTML code จะเร็วกว่า แต่ต้องมีความเข้าใจในภาษา HTML นิดหน่อย หรือพยายาม search หาชื่อ element ที่มี type เป็น password นั่นเองครับ ==> javascript:alert(document.forms[0].elements[y].type==”password”)
เมื่อเป็นที่แน่ชัดแล้วว่า รหัสผ่านอยู่ส่วนไหนของฟอร์ม ก็ใช้คำสั่ง
javascript:alert(document.forms[x].elements[y].value) หรือ javascript:alert(document.forms[x].elementname.value) ในกรณีที่เราสามารถระบุชื่อของ element ได้ครับ
เพียงเท่านี้ก็สามารถกอบกู้รหัสผ่าน กลับมาได้แล้ว โดยไม่ต้องรีเซท หรือขอรหัสผ่านใหม่
ทั้งหมดที่กล่าวมาเป็นการอธิบายในแต่ละขั้นตอน แต่ถ้าใครสับสน ก็ลอง copy code ข้างล่างนี้ไปลองวางใน address bar ทดสอบ ดูได้เลยครับ (อุตส่าห์นั่งเขียน ๕๕๕)
javascript:var x=0;var y=0;
for(x=0;x<document.forms.length;x++)
for(y=0;y<document.forms[x].elements.length;y++){
if(document.forms[x].elements[y].type==”password”){
alert(document.forms[x].elements[y].value);break;}}
ปล. เนื่องจาก font ที่ใช้ในเว็บนี้ แสดงตัวอักขระ ” (double quote) ที่คร่อมคำว่า “password” เป็นอีกตัวนึง ดังนั้นก่อนใช้ให้เปลี่ยนเป็น double code ธรรมดาก่อนนะครับ
ยากส์จัง
ขอแก้ไข อยากบอกว่าใช้งานง่ายมากมาย เยื่ยมๆ