Dongeng : Dampak Berat Bug Security Local File Inclusion (LFI) Vulnerability

Kali ini saya akan cerita tentang teknik hacking. Saya menggunakan komputer saya sendiri sebagai contoh, agar tidak menimbulkan dampak di pihak lain.

Local File Inclusion, biasa terjadi pada web yang menggunakan teknik include, dengan masukan include ditentukan dari GET query string parameter. Contoh

Code tersebut akan diakses dengan menggunakan URL : http://namasitus.tld/index.php?page=halaman.php.  Jika parameter query string page pada URL tersebut kosong, maka akan diisi otomatis dengan home.php

Konsep pengambilan halaman dengan metode inklusi dengan masukan dari parameter GET, ternyata memiliki risiko. Berikut dongeng risiko LFI di bawah.
Continue reading “Dongeng : Dampak Berat Bug Security Local File Inclusion (LFI) Vulnerability”

Replikasi Session Untuk PHP antar Host

High Availability HTTP Server

Dalam artikel lalu ( https://blogit.bimosaurus.com/2018/05/16/setting-dasar-haproxy-sebagai-https-load-balancer/ ), telah kita pelajari bagaimana sebuah request HTTP, akan dibagikan bebannya ke beberapa server, dengan mekanisme HTTP Load Balancing. Metode LB nya dapat bermacam-macam, seperti Round Robin, First, Least Conn, Source. Metode itu dipilih untuk dapat membagikan beban akses HTTP secara merata.

haproxy-req-scheme
Continue reading “Replikasi Session Untuk PHP antar Host”

MySQL : Binary Logs Management

Prakata Binary Logs

MySQL sebagai database server, tidak lepas dari risiko-risiko masalah data. Risiko tersebut antara lain : kehilangan data, putus koneksi data, dan sejenisnya. Oleh karena itu MySQL memiliki fitur manajemen risiko data, salah satunya adalah dengan adanya Binary Logs. Binary Logs didesain untuk menyimpan seluruh data transaksional MySQL, baik sifatnya view (SELECT), hingga DELETE. Dalam operasionalnya, binary logs akan disimpan dalam sebuah file yang defaultnya berekstensi .bin. Lokasinya ada di datadir mysql. (Jika di linux defaultnya di /var/lib/mysql).

 
Continue reading “MySQL : Binary Logs Management”

Setting Dasar HaProxy sebagai HTTP[s] Load Balancer

A. Apa itu load balancer?

Load balancer artinya adalah pembagian beban. Dalam dunia web, HTTP Load Balancer artinya membagi beban server-server HTTP agar beban tidak terpusat pada satu server saja. Ya, atas alasan teknis pembagian beban, sebuah server web sering dibuat lebih dari satu. Jika salah satu mengalami beban penuh, dapat dioper beban ke server lainnya. Load balancer akan diletakkan pada bagian depan server-server tersebut, menjadi perantara client dan server.
Continue reading “Setting Dasar HaProxy sebagai HTTP[s] Load Balancer”

Mengamankan robot.txt dan sitemap.xml Melalui Config Apache

Apakah robot.txt itu?

Robot.txt adalah sebuah file yang digunakan oleh sebuah aplikasi web, untuk memberikan instruksi pada Search Engine Bot, tentang apa saja yang boleh diindex dan apa saja yang tidak boleh diindex. Search Engine Bot, adalah browser milik search engine yang berguna untuk menelusuri semua link URL di seluruh dunia, untuk kemudian hasilnya dicatatkan pada database search engine. Contoh Search Engine Bot adalah : GoogleBot, YandexBot, YahooBot, Bing Bot, dan lain sebagainya.

Kadang untuk meningkatkan keamanan kita, maka pada file robot.txt akan dituliskan beberapa hal antara lain :

  1. Nama UserAgent (browser, bot)
  2. Allow/Disallow (ijin akses)
  3. Direktori yang dikenai Allow/Disallow
  4. Sitemap

Contoh file robot.txt adalah:
Continue reading “Mengamankan robot.txt dan sitemap.xml Melalui Config Apache”

Fakta Tentang Proses Produksi yang Bernama : Penetration Testing

Penetration Testing itu Apa?

Salah satu risiko dalam dunia data dan teknologi informasi adalah : keamanan data dan informasi. Ancaman keamanan itu antara lain : kerusakan hardware, keamanan hardware, gangguan keamanan digital seperti virus, malware, hingga ancaman cracking. Proses membangun aplikasi web dapat diibaratkan seperti membangun sebuah rumah, yang di dalamnya berisi peralatan kehidupan kita. Apapun yang berada di dalam rumah tersebut, wajib untuk dilindungi keberadaannya. Salah satu cara melindunginya adalah dengan memastikan ketangguhan semua bagian rumah. Demikian juga dengan layanan transaksi data.
Continue reading “Fakta Tentang Proses Produksi yang Bernama : Penetration Testing”

Apache : Menonaktifkan Fungsi PHP pada Direktori

Pada model webserver dengan Apache, PHP berjalan atas ‘perintah’ Apache. PHP dapat berjalan dengan beberapa mode :

1. mod_php

2. CGI mode

3. FPM mode

PHP akan menjalankan sintaks-sintaks PHP, dan akan memberikan hasil keluarannya sebagai masukan bagi Apache. Apache akan mengeluarkan hasilnya dengan mengirimkan hasilnya pada browser, dengan format HTML.

Sebuah aplikasi berbasis web biasanya memiliki sebuah direktori (folder) tempat upload file. Direktori ini selalu harus dapat ditulisi oleh webserver (apache writable). Karena sifat writable inilah, sebuah uploadable-directory memiliki potensi risiko bahaya serangan inject. Serangan-serangan hacking, pada umumnya akan mengarah lebih dulu pada direktori-direktori sejenis itu. Penyerang melakukan upload backdoor, php-shell atau sejenisnya yang dapat digunakan untuk mengontrol seluruh direktori dan database, pada uploadable directory tersebut. Hal ini yang akan membuat dilema seorang pengelola server. Jika direktori tidak dapat ditulis (not-writable) maka file gambar dan sejenisnya tidak dapat diupload. Namun jika dapat ditulisi, akan menjadi sasaran bagi para penyerang.
Continue reading “Apache : Menonaktifkan Fungsi PHP pada Direktori”