Tutorial Ganti Password Project PHP yang Terkunci (Tanpa Tahu Password Lama)

Sambil Baca Artikel

 



Anda pasti pernah mengalaminya: semangat men-download source code PHP gratis, menjalankannya di XAMPP, tapi saat mencoba login sebagai admin dengan username dan password admin/admin atau admin/12345, ternyata gagal total. Dokumentasinya tidak ada, dan si pembuat project entah kemana.

Lalu bagaimana? Apakah project-nya tidak bisa dipakai?

Tenang, jangan dihapus dulu! Ada sebuah "pintu belakang" yang bisa kita gunakan untuk mengambil alih akun admin. Caranya bukan dengan menebak password lama, melainkan dengan membuat password baru dan menimpanya langsung di dalam database.

Sebelum kita ke tutorialnya, mari pahami dulu satu konsep penting dengan sangat sederhana.

Kenapa Password di Database Terlihat Seperti Kode Aneh? (Konsep Hashing)

Jika Anda membuka database, Anda akan melihat password tidak tersimpan sebagai 123456, melainkan sebagai kode acak seperti e10adc3949ba59abbe56e057f20f883e. Proses inilah yang disebut Hashing.

Bayangkan Hashing itu seperti blender.

  • Password Asli (123456) adalah buah-buahan.

  • Proses Hashing adalah saat Anda menekan tombol "ON" pada blender.

  • Hasil Hash (e10adc39...) adalah jus yang sudah jadi.

Anda tidak akan pernah bisa mengubah jus kembali menjadi buah-buahan utuh, kan? Begitu pula dengan hashing. Ini adalah proses satu arah yang dirancang untuk mengamankan password. Jika database dicuri, pencuri tidak akan langsung tahu password asli pengguna.

Nah, trik kita adalah tidak mencoba mengubah jus kembali jadi buah, tapi membuat jus baru dengan resep kita sendiri dan mengganti jus yang lama.

Tentu, ini draf artikel kedua yang sudah saya tulis ulang.

Sama seperti sebelumnya, saya merombaknya agar lebih fokus pada solusi, mudah diikuti oleh pemula, dan menghilangkan bagian-bagian teknis yang tidak relevan dengan tujuan utama (seperti unhashing), sehingga lebih berkualitas di mata pembaca dan Google.

Tutorial Ganti Password Admin via phpMyAdmin

Kita akan langsung praktik. Prosesnya sangat mudah, ikuti langkah demi langkah.

Langkah 1: Buka "Brankas Data" (phpMyAdmin)

Pertama, akses database project Anda. Jika menggunakan XAMPP, buka browser dan ketik http://localhost/phpmyadmin. Pilih database yang digunakan oleh project Anda di menu sebelah kiri.



Langkah 2: Cari Tabel Pengguna (Tabel users, admin, dll.)

Setelah masuk ke database, cari tabel yang kemungkinan besar menyimpan data login pengguna. Biasanya nama tabelnya sangat jelas, seperti:

  • users

  • tb_admin atau admin

  • login

  • pengguna

Klik pada tabel tersebut, dan Anda akan melihat daftar pengguna. Cari baris yang username-nya adalah admin atau sejenisnya. Perhatikan kolom password yang berisi kode hash aneh itu.



Langkah 3: Buat "Kunci Baru" (Generate Hash MD5)

Sekarang, kita akan membuat password baru. Misalkan, kita ingin password barunya adalah admin123. Kita perlu mengubahnya menjadi hash terlebih dahulu.

Banyak project PHP lama atau sederhana menggunakan jenis hash bernama MD5.

  1. Buka situs generator MD5, contohnya: https://md5hashing.net/

  2. Ketikkan password baru Anda (misal: admin123) ke dalam kolom yang tersedia.

  3. Klik "Calculate" atau "Generate".

  4. Anda akan mendapatkan hasilnya. Hash MD5 untuk admin123 adalah: 0192023a7bbd73250516f069df18b500

  5. Copy kode hash tersebut.



Langkah 4: Ganti "Kunci Lama" dengan yang Baru

Kembali ke phpMyAdmin.

  1. Pada baris user admin, klik tombol Edit.

  2. Cari kolom password. Hapus semua kode hash lama yang ada di dalamnya.

  3. Paste kode hash MD5 baru yang sudah kita copy tadi (0192023a7bbd73250516f069df18b500).

  4. Scroll ke bawah dan klik tombol Go atau Kirim untuk menyimpan perubahan.

Selesai! Sekarang coba login ke aplikasi Anda menggunakan:

  • Username: admin

  • Password: admin123

Seharusnya Anda sudah bisa masuk sebagai administrator.



PENTING! Tidak Semua Project Menggunakan MD5

Cara di atas sangat efektif untuk project-project PHP yang lebih tua atau sederhana. Namun, project PHP modern menggunakan metode hashing yang jauh lebih aman bernama Bcrypt (dihasilkan oleh fungsi password_hash()).

Anda bisa mengenalinya dengan mudah. Hash Bcrypt terlihat jauh lebih panjang dan diawali dengan $2y$10$.... Jika Anda menemukan hash seperti ini, JANGAN menimpanya dengan hash MD5 karena pasti tidak akan berfungsi. Solusi untuk hash Bcrypt sedikit lebih rumit, biasanya dengan menjalankan script PHP khusus untuk men-generate hash yang valid.

Kesimpulan

Kehilangan akses admin ke source code yang baru di-download bukanlah akhir dari segalanya. Dengan akses ke database melalui phpMyAdmin, Anda memiliki kendali penuh untuk "mereset" password dengan cara mengganti hash lama dengan hash baru yang sudah Anda siapkan.

Trik ini adalah penyelamat bagi para programmer dan mahasiswa yang sering bereksperimen dengan berbagai source code. Semoga bermanfaat!


Terima Kasih

Posting Komentar

Lebih baru Lebih lama