[x] ปิดหน้าต่างนี้
ก้าวทุกวินาที กับ... สหวิชา ดอท คอม
ชื่อผู้ใช้ :
รหัสผ่าน :
   
   
หมวดหมู่ : การงานอาชีพ และเทคโนโลยี
ลืมพาสเวิร์ด admin ของ joomla ทำอย่างไรดี
จันทร์ ที่ 28 เดือน ธันวาคม พ.ศ.2552

จะทำอย่างไรหากลืมพาสเวิร์ด admin ของ Joomla ต้องลง Joomla ใหม่? แล้วข้อมูลเก่าล่ะ? หรือว่ามีวิธีแก้อย่างอื่น?   

เมื่อวานผมกำลังจะ login เข้าไปเพื่อปรับปรุงเว็บไซต์ที่สร้างด้วยจุมล่า (Joomla) [1] แต่ปรากฎว่าดันลืมพาสเวิร์ด! หลังจากพยายามลองอยู่หลายครั้ง (รู้แล้วว่าพาสเวิร์ดที่ตั้งไว้แข็งมาก ประมาณว่ามีทั้งตัวเลข ตัวอักษรทั้งพิมพ์เล็กพิมพ์ใหญ่ ตัวอัขระพิเศษ ผสมปนเปกันยุ่งไปหมด) ก็เลยตัดใจ งั้นจะทำอย่างไรถึงจะสามารถมีสิทธิกลับเข้าเป็น admin ในเว็บไซต์จุมล่าอีกครั้ง

      โชคยังดีที่จำ user และ password สำหรับเข้าใช้ MySQL ได้อยู่ เลย login เข้าไปผ่านทาง phpmyadmin [2] แล้วดูในฐานข้อมูล jos_user ดังรูปที่ 1



                                         รูปที่ 1 ข้อมูลในตาราง jos_user ของ Joomla

      อย่างที่เห็นในรูปที่ 1 ครับว่ามีฟิลด์ username และ password ตรงฟิลด์ username ไม่มีปัญหาครับ แต่ตรงฟิลด์ password นี่สิครับมันถูกเข้ารหัสไว้ ทำให้อ่านไม่ออกครับ
     
      ทำอย่างไรล่ะคราวนี้?
     
      เหตุที่เป็นเช่นนี้ เพราะ Joomla ได้ใช้ฟังก์ชั่น MD5() กับฟิลด์ที่เป็นพาสเวิร์ดเพื่อเข้ารหัสก่อนแล้วจึงบันทึกลงฐานข้อมูลครับ เป็นการรักษาความปลอดภัยอย่างหนึ่ง

      ผมลองค้นๆ ว่ามีวิธีไหนบ้างที่จะสามารถถอดรหัส (decode) ออกมาได้บ้าง ก็ไปพบข้อมูลจากเว็บไซต์ของ http://dev.mysql.com [3] ซึ่งได้อธิบายเกี่ยวกับฟังก์ชั่น MD5() เอาไว้ดังรูปที่ 2



                                            รูปที่ 2 คำอธิบายเกี่ยวกับฟังก์ชั่น MD5() ของ MySQL

      เห็นเงาความยุ่งยากมารางๆ แล้วครับ
     
      ทำไมผมถึงบอกว่าเห็นเงาความยุ่งยากรางๆ แล้วนั้นเหรอครับ ถ้าลองอ่านคำอธิบายดูแล้วจะเห็นว่าฟังก์ชั่น MD5() นั้นเป็นการเข้ารหัสทางเดียวครับ encryption is one-way (not reversible) ไม่สามารถถอดรหัสออกมาได้

      ผมลองเข้าไปลบข้อมูลที่อยู่ในฟิลด์ password ออก แล้วลอง login ดูปรากฎว่าไม่ได้ครับ
ลองอีกวิธีเปลี่ยนใส่รหัสผ่านตัวใหม่ลงไปเป็น 123456 บันทึกแล้วก็ไปลอง login อีกที ก็ไม่ได้ครับ
    

                                       รูปที่ 3 ไม่สามารถ login เข้าไปได้

      เอาใหม่คราวนี้รู้แล้วว่ามันใช้ฟังก์ชั่น MD5() งั้นเพิ่มให้มันหน่อย



                                               รูปที่ 4 เพิ่มฟังก์ชั่น MD5() เข้าไปในฟิลด์ password

      ก็ยังไม่ได้

      ที่ไม่ได้เพราะได้บอกไว้แล้วข้างต้นว่าจะ Joomla (ที่จริงเป็น MySQL) จะเอาคำที่เป็นรหัสไปเข้ารหัสก่อนแล้วจึงบันทึกลงฐานข้อมูล เวลาที่ผู้ใช้ทำการ login ก็จะเอารหัสที่ผู้ใช้ป้อนไปเข้ารหัสก่อนแล้วจึงเอาไปเปรียบเทียบกับที่บันทึกไว้ในฐานข้อมูล

      แล้วจะทำอย่างไรต่อไป

      งานนี้ต้องใช้ SQL ช่วยครับ

      ในเมื่อเราสามารถเข้ามาได้ถึงขั้นนี้แสดงว่าเราสามารถจะทำอะไรได้หลายอย่าง หนึ่งในนั้นก็คือ การจัดการข้อมูลด้วยคำสั่ง SQL



                                    รูปที่ 5 การจัดการข้อมูลด้วย SQL

      ในเมื่อเราสามารถสั่งงานด้วยคำสั่งของ SQL ได้นั้นก็แสดงว่าเราสามารถที่จะเพิ่ม ลบ หรือแก้ไข อะไรต่างๆ ได้ แน่นอนครับว่า ผมจะแก้ไขฟิลด์รหัสผ่านของ admin ในตาราง jos_user

      คำสั่งสำหรับแก้ไขของ SQL คือ UPDATE  ซึ่งเมื่อเขียนออกมาเป็นรหัสคำสั่งของ SQL ก็จะได้ประมาณนี้

      UPDATE jos_users SET password='xx' WHERE name='Administrator';

      ตรง password='xx'  นั้นคือส่วนสำคัญที่นั้นจะเปลี่ยนครับ พูดง่ายๆ ก็คือใส่รหัสผ่านตัวใหม่แทนที่ xx นั้นแหละครับ
   
      แต่อย่างที่บอก เราจะใส่เป็นคำลงไปเลยไม่ได้ ต้องเอาไปเข้ารหัสด้วยฟังก์ชั่น MD5() ซะก่อน ซึ่งได้ชุดคำสั่งออกมาเป็นแบบนี้

      UPDATE jos_users SET password=MD5('demo') WHERE name='Administrator';
 



                                               รูปที่ 6    รายงานผลการ update

      เมื่อก่อนรหัสผ่านเป็นอะไรไม่รู้ครับ (เพราะจำไม่ได้เลยต้องมาทำแบบนี้) แต่ตอนนี้รหัสผ่านได้เปลี่ยนเป็น “demo” แล้ว คราวนี้ลองเอาไป Login ดูครับ   
 


รูปที่ 7 หน้าเพจ login ด้วย user admin และ password เป็น demo

      ปรากฎว่าผ่านฉลุย สามารถเข้าไปหน้า Administrator ได้ปกติแล้วครับ

      เอาเป็นว่าเราน่าจะจบเรื่องนี้กันได้แล้วน่ะครับ

      แต่.....

      ยังครับยังไม่จบ

      คนมันมืออยู่ไม่นิ่งครับ

      ผมลองเข้าไปที่ฐานข้อมูลที่เก็บข้อมูลต่างๆ ของ MySQL

      หุหุ

      ใครพอจะเดาออกบ้างว่าผมกำลังจะทำอะไร

      ใช่แล้วครับ ผมกำลังเอาวิธีการเดียวกันนี้ไปใช้กับฐานข้อมูล MySQL ครับ และแน่นอนตาราง user เช่นเดิม
 
   
                               รูปที่ 8 ข้อมูลตาราง user ในฐานข้อมูล MySQL

        จากรูปที่ 8 จะเห็นว่าฟิลด์ Password ก็ถูกเข้ารหัสเหมือนกัน จะรอช้าอยู่ใย ลองมันสัก user ดีกว่า
 


                                          รูปที่ 9  การอัพเดทรหัสผ่านของ user “web”

      อิอิ

      คราวนี้ก็ลองเอาไป login เข้าใช้ MySQL ดู
 


                          รูปที่ 10  ทดลอง login เข้าใช้งาน

      ปรากฎว่า...  ไม่ผ่าน!

      เป็นเพราะอะไรนั้นเหรอ

      ก็เป็นเพราะว่าการเข้ารหัสฟิลด์ Password ของ MySQL กับฟิลด์รหัสผ่านของ Joomla ใช้คนละเทคนิคกันครับซึ่งถ้าหากลองเอาฟิลด์ที่ถูกเข้ารหัสของทั้ง 2 มาเปรียบเทียบกัน จะเห็นว่าแตกต่างกันครับ

     

      เรารู้แน่ๆ แล้วว่า Joomla ใช้ฟังก์ชั่น MD5() ในการเข้ารหัส แต่ MySQL นี่สิใช้อะไร

      ลองค้นๆ ดูก็พอจะทราบว่าใช้ฟังก์ชั่น PASSWORD() [3] และก็แน่นอนว่าเป็นการเข้ารหัสทางเดียวเช่นกัน
 


                                                      รูปที่ 11 คำอธิบายฟังก์ชั่น PASSWORD()

      เมื่อรู้แล้วอย่างนี้ ก็ไม่ยากแล้วล่ะครับ

      ก็แค่เปลี่ยนจาก MD5() เป็น PASSWORD() ก็เรียบร้อย

      อิอิ

      ขอทิ้งท้ายไว้หน่อยน่ะครับว่า บทความนี้มิได้ส่งเสริมหรือตั้งใจให้เอาความรู้ที่ได้ไปใช้ในทางที่ผิดๆ หรือสร้างความเดือดร้อนให้กับผู้อื่นครับ วิธีการที่นำเสนอไปเพียงแค่เป็นการแนะนำวิธีการแก้ปัญหาในกรณีที่ลืมพาสเวิร์ด (ของเรา) เท่านั้น และอีกอย่างหนึ่งเราคงไม่มีสิทธิที่จะได้รับอนุญาตให้เข้าไปดูฐานข้อมูลที่ไม่ใช่ของเราแน่นอน เพราะ admin คงไม่อนุญาตแน่ๆ
  
      แต่หากใครสามารถเข้าไปได้ล่ะก็ ตัวใครตัวมันครับ ผมไม่เกี่ยว!



แหล่งข้อมูลอ้างอิง

[1] www.joomla.org
[2] www.phpmyadmin.net
[3] http://dev.mysql.com/doc/refman/5.1/en/encryption-functions.html#function_password

เข้าชม : 8550
นำเสนอโดย : อารี บุญธรรมโม
โรงเรียนหาดใหญ่รัฐประชาสรรค์
สพท.สงขลา เขต 2
อยู่ในขั้น : ผู้คุมกฎ

แชร์ไปที่ Facebook

  หมวดหมู่ การงานอาชีพ และเทคโนโลยี ล่าสุด
เผยแพร่งานวิจัยของนายนาม สุขสวัสดิ์
โดย : [เข้าชม : 9444 ]
เผยแพร่งานวิจัย นางวนิดา สุขเกิด
โดย : [เข้าชม : 17835 ]
บทคัดย่อ เรื่องการศึกษาคุณธรรมในการทำงานร่วมกันอย่างมีคุณธรรม
โดย : [เข้าชม : 5431 ]
บทคัดย่อ เรื่องการพัฒนาทักษะกระบวนการแก้ปัญหา
โดย : [เข้าชม : 5297 ]
บทคัดย่อ การพัฒนาครูด้วยระบบออนไลน์ ในการเตรียมความพร้อมสู่ประชาคมอาเซียน
โดย : [เข้าชม : 9072 ]
บทคัดย่อ การพัฒนาหลักสูตรสาระการเรียนรู้ท้องถิ่น วิชา การทำนาดำข้าวหอมมะลิอินทรีย์
โดย : [เข้าชม : 8919 ]
16 รายการในร่างกายที่อาจจะยังไม่รู้
โดย : [เข้าชม : 14597 ]
แค่ปรับเปลี่ยนความคิด ชีวิตก็ดีขึ้น จริงรึ?
โดย : [เข้าชม : 14239 ]
เราพร้อมหรือยัง ? ในการจะเข้าสู่ประชาคมอาเซียน ตอนที่ 2
โดย : [เข้าชม : 15524 ]
เราพร้อมหรือยัง ? ในการจะเข้าสู่ประชาคมอาเซียน ตอนที่ 1
โดย : [เข้าชม : 15616 ]
 10 บทความ Text Random
ผลศึกษาชี้ "ผักปลอดสารพิษ" ไม่ได้ดีต่อสุขภาพมากกว่าผักธรรมดา
"สมเด็จพระราชินี" ทรงเป็นต้นแบบหญิงไทย
“ในหลวง” ทรงพระราชทานชื่อเขื่อนแควน้อยใหม่
เพลง อุ้ยคำ กับความหมายของแม่
ตะลึง! ฟอสซิลหนอนยักษ์ยาวร่วมเมตร เก่าแก่ที่สุดถึง 475 ล้านปี
ออสซี่ตื่นเต้นเจอกระดูกไดโนเสาร์ยักษ์เยอะกว่าครั้งไหนๆ
พระผู้ทรงงานเพื่อพัฒนาแผ่นดิน
ผู้บริหารยอด โรงเรียนเยี่ยม
ราชินีพระราชทานคำขวัญวันแม่ ทรงย้ำให้ “ลูกไทยรักแผ่นดินแม่”
นักวิจัยแนะนำอาหาร 8 อย่างที่ควรกินหลังออกกำลังกาย
 
     "สหวิชา ดอท คอม" เป็นแหล่งรวมเนื้อหาความรู้ต่าง ๆ บอกเล่าประสบการณ์เกี่ยวกับเนื้อหา และการจัดกิจกรรมการเรียนการสอนจากครูทั่วประเทศ นำมาแลกเปลี่ยนในเว็บไซต์แห่งนี้ ซึ่งเนื้อหาทั้งหมดได้ถูกกลั่นกลรองมาจากความรู้ ประสบการณ์ในการทำงานของทีมงานทุกคน...ดังนั้น ทุกเรื่องราว ทุกเนื้อหาสาระจึงเป็นลิขสิทธิ์ของผู้เขียนและสำนักเทคโนโลยีเพื่อการเรียนการสอน สำนักงานคณะกรรมการการศึกษาขั้นพื้นฐาน กระทรวงศึกษาธิการ หากบุคคลใดที่มีความประสงค์จะนำเนื้อหาเรื่องราวใด ๆ ในเว็บไซต์แห่งนี้ไปนำเสนอในรูปแบบใด ๆ จึงควรที่จะอ้างอิงและให้เครดิตกับ "สหวิชา ดอท คอม" เพื่อเป็นการสนับสนุนและเป็นกำลังใจในการทำงานแก่ทีมงานทุกคนที่เพียรค้นคว้าหาความรู้มานำเสนอ ขอขอบคุณผู้ที่ให้ความสนใจทุกท่านที่เล็งเห็นความสำคัญในสาระการเรียนรู้ต่าง ๆ ...เราขอน้อมรับทุกคำติชมและจะนำไปพัฒนาปรับปรุงในการทำงานให้ดียิ่งขึ้น ขอขอบคุณ Maxsite 1.10 CMS ที่พัฒนาโดยคนไทย ขอขอบคุณทุก ๆ คลิกที่แวะมาเยี่ยมชมเรา "สหวิชา ดอท คอม"

| เกี่ยวกับสหวิชา.คอม | สาระการเรียนรู้ | บทความ | สื่อการเรียนการสอน | แบบฝึกทักษะ | เล่าสู่กันฟัง | คำถามยอดนิยม | Links น่ารู้ | ทีมงานสหวิชา.คอม | ติดต่อเรา |