Howto Secure Mysql With GreenSql

By | February 17, 2009

GreenSQL adalah aplikasi yang berfungsi sebagai “firewall” untuk MySQL database yang dapat membantu melindungi data dari serangan SQL injection.
Sekarang semakin Banyaknya jumlah serangan pada situs web dan aplikasi web yang langsung berhubungan dengan Database Mysql dikenal sebagai SQL injection vulnerabilities.

Ini adalah masalah yang sangat berat karena beberapa aplikasi yang struktur coding kurang memperhatikan masalah keamanan data memungkinkan remote user untuk mengirim acak perintah SQL langsung ke database tanpa ada validasi terhadap perintah SQL query database dijalankan oleh aplikasi web.


Dengan GreenSQL maka setiap perintah SQL yang dikirim ke MySQL, akan di periksa terlebih dahulu hanya query yang di anggap baik yang akan di teruskan ke MySQL.

GreenSQL menyediakan dua buah paket aplikasi greensql-console dan greensql-fw. Untuk menginstal dari source, jalankan perintah sebagai berikut, setelah kedua file didownload:

# Tar xvzf greensql-fw-0.9.4.tar.bz2
# Cd greensql-fw-0.9.4
#. / Build.sh
# Greensql-create-db.sh

Perintah Terakhir akan membuat database MySQL yang diperlukan oleh GreenSQL, sehingga Anda harus memastikan bahwa MySQL berjalan (pastikan bahwa “skip-networking” tidak ada dalam / etc / my.cnf ).

Untuk memulai dan menguji GreenSQL, gunakan perintah :

# Greensql-fw-p / etc / greensql &
# Mysql-u root-h 127.0.0.1-P 3305-p


GreenSQL proxy menggunakan port 3305. Oleh karena itu setiap aplikasi web harus di konfigurasi agar konek ke GreeSQl terlebih dahulu tidak langsung ke Mysql di port 3306 .

Ubah semua Script PHP, seperti di contoh di bawah :

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
Ubah ke :
$link = mysql_connect('127.0.0.1:3305', 'mysql_user', 'mysql_password');

Greensql-console menyediakan web interface yang dapat digunakan untuk melihat query telah diblokir, dan Anda juga dapat menggunakannya untuk mengatur apa saja query yang akan diblokir oleh GreenSQL. Cara instalasi cukup mudah hanya dengan perintah berikut :


Edit file config.php, sesuaikan dengan setting nama database.
QreenSQL sudah siap digunakan selamat mencoba 🙂