Main Logo
  • Home
  • About
  • Kursus
    • Paket Kursus
    • Roadmap Profesi
  • Elearning
  • Blog
Daftar
Main Logo
  • Home
  • About
  • Kursus
    • Paket Kursus
    • Roadmap Profesi
  • Elearning
  • Blog

Serangan DOS di .htaccess dan Solusinya

  • July 16, 2012
  • oleh Edusoft Center

Jika Anda memiliki akses lokal dan diperbolehkan menulis .htaccess sendiri, ada berbagai hal menarik yang bisa dicoba. .htaccess merupakan perpanjangan dari httpd.conf, yaitu konfigurasi Apache di tiap tingkat direktori.

Misalkan file-file situsku.com ditaruh sebagai milik user situsku di /home/situsku/www.

Apache tidak membatasi ukuran .htaccess, sehingga Anda dapat meluncurkan DOS dengan membuat file .htaccess yang besar.

$cd /home/situsku/www$perl -e'print "# allow from all\n" x 200_000' > .htaccess

Baris di atas akan menulis sebuah file akses berukuran sekitar 3MB. Cobalah mengakses halaman depan situsku.com dari jaringan lokal. Jika respon menjadi lambat, maka permainan kita bisa berlanjut. Jika tidak, maka server telah dikonfigurasi untuk mengabaikan .htaccess.

Kita dapat melipatgandakan efek ini dengan membuat banyak tingkat direktori, atau loop direktori. Apache pun memperbolehkan .htaccess berupa symlink, sehingga kita dapat melakukan seperti ini:

$cd/home/situsku/www$mkdir www2$cd www2$ln -s ../.htaccess .htaccess

Akses ke www2 akan semakin lambat karena Apache memroses dulu .htaccess di www/, baru ke www2. Demikian seterusnya.

Apache sebelum 1.2.5 belum mengecek tipe file .htaccess. Sehingga dapat diserang dengan DOS seperti berikut (contoh di bawah untuk .htpasswd):

AuthType Basic
AuthName DoS Attack
AuthUserFile /dev/zero
require valid-user

Ketika mencoba membaca file password dan mencari tanda titik dua pembatas username dan password, Apache akan tersesat di rimba nol selamanya, dan menghabiskan CPU dan RAM.

Apache setelah 1.2.5 mengecek hal ini, namun belum mengecek fifo atau pipa bernama. Kita dapat membuat .htaccess sebagai file pipa bernama:

$mknod.htaccess p

Dan saat Apache mencoba membaca file akses ini, ia akan menunggu selamanya, karena tidak ada yang menulis ke pipa kita tadi. Masukkan URL ke direktori yang berisi pipa ini di browser berulang kali, maka proses Apache lama-lama akan habis karena masing-masing tergantung membaca .htaccess.

Berbagai kelemahan konfigurasi lain juga dapat dimanfaatkan melalui .htaccess. Misalnya, jika AllowOverride FileInfo aktif dan webserver memiliki mod_status, maka berikan.htaccess berikut untuk melihat halaman status Apache:

<Files /server-status>
SetHandler server-status
</Files>

Halaman status ini berguna untuk mengetahui tingkat kesibukan Apache Anda, dan juga bisa digunakan oleh penyerang agar lebih efektif dalam melakukan tugasnya.

Atau, jika Options FollowSymlinks hidup, Anda dapat melihat source code CGI/PHP user lain. Misalnya, user yang ingin diintip adalah korban. Perintah berikut dimasukkan oleh user penjahat.

$cd/home/penjahat/www$mkdir korban; cd korban$ln -s /home/korban/www www$echo -e " directoryindex none sethandler default-handler forcetype text/plain" > .htaccess

Akses direktori /home/penjahat/www/korban/www dari browser. Maka Anda akan melihat seluruh file www milik korban sebagai source. Anda dapat mencuri program yang berharga, password database, dsb.

Ada beberapa kombinasi menarik lainnya dalam bermain-main dengan .htaccess. Silakan cari dan temukan sendiri.

Solusi 5

Nomor satu, apakah Anda membutuhkan .htaccess? Jika tidak, matikan. AllowOverride None. Semua masalah beres. Bukan hanya sistem lebih aman dari user, kinerja Apache juga akan meningkat. Lanjut ke Cara 6.

Jika Anda perlu memberikan akses membuat .htaccess bagi user, maka terapkan patch ini: limit_htaccess.patch. Patch tersebut dapat membatasi kenakalan user dengan memperkenalkan tiga direktif baru.

  • LimitAccessFileSize, untuk membatasi ukuran maksimum .htaccess. Perhatikan bahwa nilai standarnya adalah 8k. Untuk mematikan pembatasan ukuran, berikan nilai 0.
  • LimitAccessFileType, untuk membatasi jenis file yang diperbolehkan. Misalnya, kita hanya mengizinkan file biasa dan tidak pipe, soket, device, atau bahkan symlink. Maka tambahkan baris LimitAccessFileType regular ke httpd.conf Anda.
  • LimitAccessFileToRoot, untuk mewajibkan .htaccess dimiliki root. Ini berarti, Apache tetap dapat menjalankan .htaccess, tapi si user tidak diperbolehkan membuatnya sendiri. Anda dapat membuat antarmuka Web semacam control panel misalnya, agar user dapat membuat .htaccess, tapi hanya perintah-perintah tertentu saja dalam jumlah terbatas.

Berikan juga direktif Options -FollowSymlinks jika Anda ingin mencegah orang agar tidak dapat membuat loop direktori.

Seleksi perintah-perintah yang boleh diberikan di .htaccess melalui direktif AllowOverride. Misalnya, jika Anda menggunakan mod_perl, sangat tidak dianjurkan menghidupkanAllowOverride FileInfo, karena si user dapat membuat .htaccess untuk menjalankan handler Perl sendiri, yang berjalan sebagai user Apache dan memiliki akses ke isi perut webserver.

Tags: kursus jaringankursus linuxkursus linux securitykursus networkingkursus ubuntu serverkursus web serverlinux forensic
Previous Post
Next Post

Post comment

Cancel reply

Your email address will not be published. Required fields are marked *

Recent Posts

  • Membuat Animasi Sederhana di Flutter: Panduan Lengkap untuk Pemula
  • Tutorial Lengkap Flutter dengan API: Panduan Praktis untuk Pemula
  • Serangan Brute Force pada DVWA 1.8: Penjelasan, Simulasi, dan Mitigasi
  • Membuat Tampilan Responsive di Flutter: Panduan Lengkap
  • Menghubungkan Flutter dengan API

Arsip

  • September 2025
  • August 2025
  • July 2025
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • February 2018
  • January 2018
  • December 2017
  • November 2017
  • October 2017
  • September 2017
  • August 2017
  • July 2017
  • June 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • September 2016
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • February 2016
  • January 2016
  • December 2015
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • July 2015
  • June 2015
  • May 2015
  • April 2015
  • March 2015
  • February 2015
  • January 2015
  • December 2014
  • November 2014
  • October 2014
  • September 2014
  • August 2014
  • July 2014
  • June 2014
  • May 2014
  • April 2014
  • March 2014
  • February 2014
  • January 2014
  • December 2013
  • November 2013
  • October 2013
  • September 2013
  • August 2013
  • July 2013
  • June 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
  • October 2012
  • September 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • December 2011
  • November 2011

Tags

apache web server dns server kursus android kursus database kursus dns dan web server kursus dns server kursus ethical hacking kursus hacking kursus jaringan kursus jaringan linux Kursus Komputer kursus komputer di solo kursus komputer di solo / surakarta kursus komputer di surakarta kursus linux Kursus Linux Forensics kursus linux networking kursus linux security kursus linux server kursus mikrotik kursus mysql kursus networking kursus network security kursus php Kursus PHP dan MySQL kursus php mysql kursus proxy kursus security kursus ubuntu kursus ubuntu server kursus web kursus web security kursus web server kursus wordpress kursus wordpress theme linux MySQL pelatihan komputer di solo PHP security training komputer training komputer di solo tutorial php ubuntu wordpress

© Edusoft Center - Kursus Komputer di Solo | 2010 - 2025 | Privacy Policy | Site Map

All Right Reserved

WhatsApp us