การแก้ปัญหารหัสผ่านเข้า Bios

“ปัญหาอย่างหนึ่งที่ผู้ใช้คอมพิวเตอร์อาจติดเป็นนิสัยก็คือ เป็นคนขี้หลงขี้ลืมเมื่อมีการตั้งรหัสผ่านในไบออสเอาไว้ ซึ่งน่าจะเกิดจากความกลัวว่าคนอื่นมาแอบมาขโมยใช้เครื่อง หรืออาจจะโดนใครแกล้งตั้งค่าในไบออสแบบผิดๆ ซึ่งจะมีผลให้เครื่องเกิดอาการรวนได้เช่นกัน และนั่นเป็นสาเหตุที่ทำให้คุณต้องรหัสผ่านเอาไว้ป้องกันนั่นเอง!!”
หากวันหนึ่งคุณจำรหัสผ่านในไบออสไม่ได้ ลองคิดถึงความยุ่งยากในการเคลียร์ล้างรหัสผ่านดูสิครับ เคยคิดกันดูหรือไม่ว่ามันยุ่งยากเพียงใด และมีวิธีการง่ายๆ กว่าเดิมหรือไม่ ยิ่งถ้าคุณไม่ได้ชำนาญทางด้านช่างโดยตรงแล้ว การเคลียร์ค่าในไบออสอาจเป็นเรื่องหินที่สุดสำหรับคุณ
สำหรับการเคลียร์รหัสผ่านในไบออสนั้น ถ้าคุณคือผู้ใช้ที่ไม่กล้าเสี่ยงพอที่จะเปิดฝาเคส หรือสวมวิญญาณช่าง และไม่กล้าถอดถ่านแบตเตอรี่บนเมนบอร์ดด้วยตัวเอง พร้อมกับย้ายขาจัมเปอร์เพื่อเคลียร์รหัสผ่านของไบออสแล้วละก็ ลองเอาวิธีการแบบง่ายๆ ของผมไปใช้ก็แล้วกัน รับรองว่าได้ผล 100 เปอร์เซ็นต์ แบบไม่ต้องเปิดฝาเคสให้วุ่นวาย ซึ่งวิธีที่ว่านี้ก็คือ “ล้างไบออสผ่านสคริปต์ของคำสั่งแอสเซมบลี (Assembly)” โดยใช้ตัวโปรแกรม debug (ดีบั๊ก) ซึ่งไม่มีผลกระทบรุนแรงต่อไบออสหรือทำให้เสียหายเลย
สิ่งที่ต้องรู้ก่อนลงมือ
เห็นวิธีสะดวกและง่ายๆ แบบนี้แล้วเชื่อว่าทุกคนอยากรู้แล้วว่ามันทำงานยังไง แต่ผมขอบอกว่าข้อเสียของวิธีนี้ก็คือ อาจง่ายต่อการแฮกหรือแอบใช้เครื่องคนอื่นโดยไม่ได้รับอนุญาต การถอดรหัสไบออสแบบนี้ ห้ามนำไปใช้ในทางที่ผิดๆ นะครับ เก็บเอาไว้ใช้ในคราวจำเป็นเท่านั้น เช่น กรณีที่คุณจำรหัสผ่านไบออสไม่ได้ และเมื่อต้องการล้างรหัสผ่านของไบออสโดยที่ไม่ต้องใช้วิธีการถอดถ่านแบตเตอรี่ออกมา เพราะหากไม่เคยทำมาก่อนก็อาจจะไปทำให้ขั้วที่ล็อกถ่านแบตเตอรี่หัก หรือเผลอไปโดนทำเอาขาของจัมเปอร์หักก็เป็นได้!
และที่แน่ๆ ก็คือ หากคุณไม่รู้ตำแหน่งของขาจัมเปอร์ที่ใช้สำหรับเคลียร์ค่าในไบออส คุณก็ไม่สามารถล้างรหัสผ่านที่ตั้งเอาไว้ได้เช่นกัน นี่แหละครับคืออุปสรรคถ้าคุณไม่เคยมีประสบการณ์มาก่อนหรือไม่กล้าเสี่ยงพอ ซึ่งวิธีสุดท้ายคุณอาจต้องเสียเงินยกเครื่องให้ช่างจัดการให้แทน แต่ถ้าคุณไม่อยากเสียเงินก็ลองมาใช้วิธีของผมกันดูครับ รับรองว่าง่ายเหมือนปลอกกล้วย (แต่ตอนเอาเข้าปากเคี้ยวก็ต้องดูกันนิดหนึ่งด้วย)
พื้นฐานที่ควรมี :
1. รู้วิธีการใช้คำสั่ง Debug ของ DOS และพารามิเตอร์ของ Debug ในการใช้งาน (อ่านเพิ่มได้ในหนังสือคู่มือ DOS หรือในเว็บไซต์)
2. ควรมีพื้นฐานหรือศึกษาการใช้คำสั่งของภาษาเครื่องอย่างภาษาแอสเซมบลี (Assembly) เพิ่มเติม เพื่อให้เข้าใจผลการรันสคริปต์ของคำสั่งต่างๆ (ศึกษาเพิ่มเติมในหนังสือภาษาแอสเซมบลี)
3. รู้การใช้คำสั่ง DOS มาบ้าง หรือมีวิญญาณช่างเข้าสิงก็จะช่วยให้เข้าใจวิธีการได้เร็วมากขึ้น
การใช้ภาษาติดต่อกับเครื่องคอมพิวเตอร์
เครื่องคอมพิวเตอร์เป็นอุปกรณ์อิเล็กทรอนิกส์ ที่สามารถทำงานได้จากคำสั่งที่เราเขียนขึ้น ซึ่งคำสั่งเหล่านั้นก็คือ ภาษาในการเขียนโปรแกรม ดังนั้นในการที่เราจะติดต่อกันกับเครื่องคอมพิวเตอร์ เราจึงสามารถใช้ภาษาหรือคำสั่งที่เครื่องคอมพิวเตอร์เข้าใจได้ทันที ซึ่งก็เป็นวิธีหนึ่งที่ใช้กันมากในสมัยที่เริ่มใช้เครื่องคอมพิวเตอร์


ภาษาเครื่อง (Machine Language) : เป็นภาษาที่เครื่องคอมพิวเตอร์เข้าใจทันที เพราะโปรแกรมคำสั่งงานและข้อมูล อยู่ในลักษณะเลขฐานสอง
โปรแกรม : ชุดคำสั่งที่สั่งให้คอมพิวเตอร์ทำงานตามต้องการ

โปรแกรมที่เขียนด้วยภาษาเครื่องจะทำงานอย่างมีประสิทธิภาพสูงสุดเพราะว่าโปรแกรมควบคุมการทำงานของคอมพิวเตอร์โดยตรง
ภาษาแอสเซมบลี (Assembly Language) : เป็นภาษาที่ใช้สัญลักษณ์ในการสื่อสารความหมาย ภาษาแอสเซมบลีมีลักษณะคำสั่งที่ขึ้นกับเครื่องคอมพิวเตอร์ที่ใช้งานและมีการแปลคำสั่งให้เป็นภาษาเครื่อง
นอกจากภาษาเครื่องและภาษาแอสเซมบลีแล้ว ยังมีภาษาระดับสูงอื่นๆ เช่น Basic, Cobol, Fortran ซึ่งเป็นภาษาที่มีคำสั่งใกล้เคียงกับภาษาอังกฤษมากทำให้ผู้เขียนโปรแกรมสามารถเขียนโปรแกรมได้สะดวกและรวดเร็ว แต่ว่าโปรแกรมที่เขียนด้วยภาษาระดับสูงต้องใช้เนื้อที่เก็บในหน่วยความจำเป็นจำนวนมาก อีกทั้งทำงานได้ช้ากว่าภาษาแอสเซมบลี
ดังนั้นภาษาระดับสูงจึงไม่นิยมนำมาประยุกต์ใช้กับการทำงานที่ระดับรควบคุมที่มีความสำคัญมากๆ ซึ่งภาษาแอสเซมบลีจะเหมาะว่า และใช้เนื้อที่ในหน่วยความจำไม่มากนัก ทำงานได้รวดเร็ว สามารถสั่งการและควบคุมการทำงานของเครื่องคอมพิวเตอร์ได้โดยตรง
Debug คืออะไร?
ดีบั๊ก (debug) เป็นโปรแกรมที่มากับ DOS ใช้สำหรับตรวจสอบข้อผิดพลาดของโปรแกรม และแก้ไขโปรแกรมสั้นๆ แต่สามารถใช้โปรแกรมนี้เขียนภาษาแอสเซมบลีสั้นๆ ในระดับพื้นฐานได้ โดยโปรแกรมดีบั๊กจะมีตัวภาษาแอสเซมเบลอร์อยู่ภายในโปรแกรม เป็นตัวคอมไพเลอร์สคริปต์ต่างๆ ที่เราเขียนขึ้นมา หรืออาจจะใส่รหัสคำสั่งภาษาเครื่องเข้าไปเลยก็ได้ คำสั่งต่างๆ ในดีบั๊กมีหลายคำสั่ง โดยรายละเอียดสามารถศึกษาจากคู่มือหนังสือการสอนภาษาแอสเซมบลีโดยตรง
คำสั่งปฏิบัติการของภาษาแอสเซมบลี แบ่งออกเป็น 4 ชนิดคือ
1. Machine instruction : เป็นคำสั่งที่ทำให้เกิดการปฏิบัติการ (execution) ชุดของคำสั่งอยู่ใน assembler's instruction
2. Assembler instruction : เป็นคำสั่งที่บอกแอสเซมเบลอร์จัดการกับโค้ดโปรแกรม
3. Macro instruction : เป็นคำสั่งที่บอกแอสสเซมเบลอร์ให้ดำเนินการกับชุดของคำสั่งที่ได้บอกไว้ก่อนแล้ว ซึ่งจากชุดของคำสั่งนี้ แอสเซมเบลอร์จะผลิตชุดของคำสั่งซึ่งต่อไปจะดำเนินการเหมือนหนึ่งว่าชุดของคำสั่งนี้เป็นส่วนหนึ่งของ source program แต่เริ่มแรก
4. Pseudo instruction : เป็นคำสั่งที่บอกให้แอสเซมเบลอร์รู้ว่า ควรปฏิบัติการเช่นไรกับข้อมูลการ branch อย่างมีข้อแม้ แมคโคและ listing ซึ่งปกติแล้วคำสั่งเหล่านี้จะไม่ผลิตคำสั่งภาษาเครื่องให้
รู้จัก BIOS ก่อนลงมือ
อย่างที่ทราบกันไปแล้วว่า BIOS (Basic Input/Output System) เป็นโปรแกรมย่อยที่ทำหน้าที่ควบคุมอุปกรณ์อินพุต/เอาต์พุต ของคอมพิวเตอร์ (ทำหน้าที่คล้ายโปรแกรมย่อยของ DOS) แต่ไบออสจะเข้าถึงฮาร์ดแวร์ได้มากกว่าและควบคุมได้โดยตรง การทำงานของโปรแกรมย่อย DOS บางครั้งจะต้องเรียกโปรแกรมย่อยของ ไบออสให้ช่วยในการทำงานด้วย ซึ่งการเรียกใช้โปรแกรมย่อยของไบออสก็จะทำให้ได้โดยการเรียกอินเทอร์รัพต์ (Interrupt) ไปที่ตำแหน่งที่เก็บโปรแกรมย่อยนั้นอยู่ ซึ่งเรียกว่าอินเทอร์รัพต์เวกเตอร์ (interrupt vectors)
และจากนี้คุณจะได้พบกับ 4 สุดยอดวิธีการปลดรหัสผ่านในไบออสอย่างมือเซียน ที่ได้ผลเกิน 100 เปอร์ซ็นต์ ซึ่งผมกล้ายืนยันว่าได้ผลแน่นอน มาเริ่มจากวิธีแรกกันเลย
วิธีที่ 1 : ปฏิบัติการเคลียร์รหัสผ่านไบออสด้วย Debug
1. เตรียมแผ่นบูตดิสก์ไว้เลยอันดับแรก จากนั้นให้ก๊อบปี้ไฟล์ debug.exe ใส่แผ่นดิสก์เข้าไปด้วย
2. บูตเครื่องใหม่ โดยกดปุ่ม DEL เพื่อเข้าไปเซตไบออสให้เลือกบูตจากแผ่นดิสก์ เซฟค่าแล้วรีบูตเครื่อง
3. เมื่อหน้าจออยู่ที่ A: พรอมต์
4. ให้พิมพ์คำสั่ง debug และกด Enter
5. หน้าจอจะปรากฏเครื่องหมาย - (ขีดกลางขึ้นมา)
6. ให้พิมพ์ o 70 2e หรือพิมพ์ o 70 16 (เลือกใช้ตัวไหนก็ได้)
7. พิมพ์ o 71 ff หรือพิมพ์ o 71 16 (เลือกใช้ตัวไหนก็ได้)
8. พิมพ์ q เพื่อออกจากการดีบั๊ก
9. บูตเครื่องใหม่ ค่ารหัสผ่านในไบออสก็จะถูกล้างออกไป
อธิบายการทำงานของบรรทัดคำสั่ง :
-บรรทัดคำสั่ง o 70 2e เป็นการส่งค่า 70 ไปที่ตำแหน่ง 18
- บรรทัดคำสั่ง o 71 ff เป็นการส่งค่า 71 ไปที่ตำแหน่ง FF
หมายเหตุ : ‘o’ ที่ปรากฏในแต่ละข้อไม่ใช่เลขศูนย์นะครับ แต่เป็นตัวโอ (o) ซึ่งในที่นี้หมายถึง Output เป็นคำสั่งของดีบั๊ก และทุกขั้นตอนหลังจากพิมพ์คำสั่งเสร็จ ให้กดปุ่ม ตามด้วยทุกครั้ง
วิธีที่ 2 : เคลียร์รหัสผ่าน BIOS แบบ Advance
การเคลียร์รหัสผ่านไบออสแบบนี้ สามารถล้างรหัสผ่านไบออสได้ดี และสามารถล้างไวรัสที่ฝังตัวใน ไบออสได้อีกด้วย
1. อันดับแรก เตรียมแผ่นบูตดิสก์เอาไว้ก่อนเลย
2. บูตเครื่องใหม่ เข้าไปเซตค่าไบออสให้สามารถบูตด้วยแผ่นบูตดิสก์ได้
3. เมื่อหน้าจออยู่ที่ A: พร็อมท์
4. พิมพ์คำสั่ง debug กด Enter และพิมพ์คำสั่งต่อไปนี้ลงไป

158C:0100 MOV AX,0
158C:0103 MOV AX,CX
158C:0105 OUT 70,AL
158C:0107 MOV AX,0
158C:010A OUT 71,AL
158C:010C INC CX
158C:010D CMP CX,100
158C:0111 JB 103
158C:0113 INT 20
158C:0115
5. พิมพ์ g เพื่อรันผลการทำงานทั้งหมด
6. จากนั้นพิมพ์ q เพื่อออกจากการดีบั๊ก
7. บูตเครื่องใหม่ ค่ารหัสผ่านไบออสที่เซตไว้จะถูกล้างออกไป
หมายเหตุ : ทุกขั้นตอนหลังจากพิมพ์คำสั่งเสร็จอย่าลืมกดปุ่ม ตามด้วย
อธิบายการทำงานของบรรทัดคำสั่งโดยรวม :
เมื่อคุณสั่งรันสคริปต์ทั้งหมด จะเป็นการใช้คำสั่ง MOV AX, 0 นั่นคือการย้ายตำแหน่งตัวอักษรทั้งหมด เพื่อให้รหัสที่บันทึกทั้งหมดออกจากระบบหน่วยความจำของไบออส โดยตัวเลขเริ่มนับจาก 0 หลังเครื่องหมายคอมม่าในที่นี้จะเป็นเลขศูนย์นะครับ ไม่ใช่ตัวอักษรตัวโอ (o) ถ้าคุณพิมพ์ตัวโอ (o) แล้วกดปุ่ม Enter ก็จะไม่สามารถทำงานได้เลย และจะฟ้อง Error ณ ตำแหน่งขึ้นมาทันที

 

 

วิธีที่ 3 : เคลียร์รหัสผ่าน BIOS แบบมือช่าง
ถ่านแบตเตอรี่ของไบออส
http://www.itharem.com/workshop/clear_bios/BIOS-04.jpg
ลำดับขั้นตอนการใช้ไขควงแบนงัดถ่านแบตเตอรี่ออก
http://www.itharem.com/workshop/clear_bios/BIOS-05.jpg
ย้ายขาจัมเปอร์มาไว้ที่ขาที่ 2 กับ 3 ทิ้งเอาไว้ประมาณ 2-3 นาที
1. เปิดฝาเคสตัวเครื่องคอมฯ ออกมา
2. มองหาถ่านแบตเตอรี่ก้อนกลมๆ สีเงินในตัวเมนบอร์ด
3. ใช้ไขควงแบนงัดถ่านแบตเตอรี่ออกมา
4. ใช้คีมปากจิ้งจกคีบจัมเปอร์ย้ายออกจากตำแหน่งขาที่ 1 กับ 2
5. ย้ายจัมเปอร์มาตำแหน่งขาที่ 2 กับ 3 เพื่อเคลียร์หน่วยความจำในไบออสตัวเดิม
6. เสียบจัมเปอร์ทิ้งไว้ที่ขา 2 กับ 3 เอาไว้ประมาณ 2-3 นาที
7. จากนั้นเสียบขาจัมเปอร์กลับมาที่เดิมที่ขา 1 กับ 2 อีกครั้ง
5. โหลดเข้าไปในไบออสแล้วเซตค่าดีฟอลต์ของไบออสเสียใหม่

วิธีที่ 4 : เคลียร์รหัสผ่าน BIOS แบบเดาสุ่มด้วยเลขฐาน 16
การใส่รหัสผ่านแบบนี้ เป็นการทดลองป้อนคำสั่งที่ผมได้จากเว็บไซต์ และรหัสผ่านบางตัวเป็นรหัสพื้นฐานจากผู้ผลิตบ้าง ซึ่งสามารถใช้กับเครื่องคอมฯ ตั้งแต่รุ่น 286, 386, 486, เพนเทียมธรรมดา แต่ถ้าเป็น ไบออสรุ่นใหม่ๆ ต้องใช้วิธีการปลดรหัสผ่านด้วยวิธีการข้างต้น ลองทดสอบป้อนรหัสผ่าน ดังนี้
1. บูตเครื่องใหม่ แล้วกดปุ่ม DEL เพื่อเข้าโหมดไบออสเซตอัพ
2. จะปรากฏช่องให้กรอกรหัสผ่านในไบออสขึ้นมา
3. ใส่รหัสผ่านแบบเดาสุ่มเลขฐาน 16 เข้าไปแทน ดังต่อไปนี้
- ถ้าเป็นไบออสของค่าย Award ให้ลองป้อนรหัสแต่ละตัวในตารางเข้าไปดังนี้

AWARD SW

AWARD_SW

AWARD_PS

AWARD_PW

AWARD

ALFAROME

ALLY

AWKWARD

BIOSTAR

BIOSSTAR

Syxz

djonet

j262

HLT

SER

SKY_FOX

Lkwpeter

j256

AWARD?SW

LKWPETER

Syxz

589589

589721

awkward

CONCAT

d8on

CONDO

j64

Szyx

Q_L27&Z

- ถ้าเป็นไบออสของค่าย AMI ให้ป้อนรหัสผ่านแต่ละตัวเข้าไปดังนี้

AMI_SW

AMI SW

AMI!SW/

AMI?SW/

AW

AMI

AMI?SW

AMIDECODE

A.M.I.

AMIPSWD

BIOS

PASSWORD

HEWITT RAND

LKWPETER

CONDO

HEWITT

RAND

ODER

 

- ถ้าเป็น BIOS ของค่ายอื่นๆ ลองป้อนรหัสผ่านเดาสุ่มเข้าไปแทน ดังนี้


ALLY

AWKWARD

BIOSTAR

CONDO

HLT

LKW PETER

LKWPETER

SER

SETUP

SKY_FOX

SXYZ

SZYX

WODJ

MERLIN

COMPAQ

CENTRAL

JWILL

BELL9

TOSHIBA

ADMIN

BIOS

DELL

POSTERIE

- ถ้าเป็นไบออสของ Phoenix ให้ป้อนรหัสผ่านแต่ละตัวเข้าไป ดังนี้
BIOS, CMOS, PHOENIX
สำรับวิธีทั้ง 4 ที่ได้นำเสนอไปนั้น ถ้าคุณคือผู้ที่ต้องการปลดล็อกรหัสผ่านในไบออสด้วยตนเองแบบง่ายๆ คงต้องลองใช้ทุกวิธีที่กล่าวมาในข้างต้น แต่วิธีแรกนั้นรับรองว่าได้ผลเกิน 100 เปอร์เซ็นต์ครับ เพราะผมทดสอบด้วยเอง และไม่ต้องเสียเวลาเปิดฝาเคสให้เสียอารมณ์ และอีกอย่างเราไม่ใช่ช่างที่ชำนาญก็คงต้องใช้วิชามารสักหน่อย แต่คุ้มค่าครับเมื่อถึงคราวจำเป็นก็หยิบวิธีการปลดรหัสผ่านในไบออสที่กล่าวมาแล้วทั้งหมดนำมาใช้กันได้เลย