----- Original Message ----- From: "Hari Purnama" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Friday, December 17, 2004 12:14 PM Subject: Re: [tanya-jawab] nge-root dengan apache
> On Thursday 16 December 2004 04:43, Kalpin Erlangga Silaen wrote: > | Dear Imam, > | untuk menjalankan httpd/apache haruslah root apalagi karena portnya > | dibawah 1024 (yang notabene katanya harus root yang jalanin :-)). Tetapi > | saat pemanggilan, proses akan diberikan ke userid nobody (default) atau > | ada yang wwwrun (biasanya SuSe) tergantung systemnya. Jadi kalau ada > | yang berhasil mengexploit apache (contoh kasih kombinasi apache dengan > | OpenSSL 0.9.6b kebawah) yang didapat userid nobody/wwwrun. Apakah yang > | Anda maksud menjalankan apache dengan uid root ? sangat beresiko :-) > | sekali diexploit langsung root, kecuali ada pakai jail root :-) coba > | Anda cari di google bagaimana mengenable jail root. > | > | imam prakoso wrote: > | >dear millist, > | >saya ingin bertanya ke rekan-rekan millist. bagaimana > | >ya caranya supaya apache yang dijalankan di mesin > | >saya(linux) dapat berjalan sebagai root, dengan tetap > | >memperhatikan sekuritas sistemnya ? apakah saya harus > | >menjalankan apache dengan user root ? atau adakah cara > | >lain ? saya minta saran-saran yang mungkin saja bisa > | >membantu. > > Kali aja mas imam mau bermain2 apache dgn suid root.. :) > Tapi ya memang beresiko sih kalo menjalankan apache dgn suid-root. > Saran mas kalpin mungkin bisa dipertimbangkan dgn membuat jail root utk > apache. > Lebih bagus lagi kalo ruang memori utk operasional apache di-chroot-kan juga > misal dgn penggunaan kernel-patch grsecurity (http://www.grsecurity.net/). > Utk lebih detilnya bisa googling dan melihat2 url di atas. Yang jadi pertanyaan, apa yang hendak dicapai dengan design tersebut? Apakah tidak ada workaround sehingga harus root? mungkin workaround inilah yang sebaiknya didiskusikan/ditanyakan daripada menjalankan httpd sebagai root. UID root untuk httpd relatif aman apabila 0. seluruh halaman web yang dilayani adalah statis 1. tidak ada virtual domain 2. seluruh fungsi dynamic page processing (cgi, ssi, scripting) dimatikan. 3. tidak ada celah (known atau zero-day) yang memungkinkan eksekusi shellcode Tapi, apabila semua syarat tersebut terpenuhi maka httpd yang running sebagai nobody pun sudah mencukupi. Apabila memang harus root untuk melayani dynamic page, maka ada beberapa alternatif: 0. suid untuk script cgi 1. sudoers untuk specific user/httpd user 2. compile apache dengan env BIG_SECURITY_HOLE, dan set httpd untuk running dengan user root. Baca src/main/http_core.c. Seluruh alternatif di atas, cepat atau lambat, akan berakhir dengan server hostile take-over. You have been warned. FYI, SuEXEC tidak akan mau berjalan apabila target switchingnya adalah root. Baca src/support/suexec.c. Kesimpulannya, carilah pendekatan/design lain yang tidak mengharuskan httpd running sebagai root. Rgds, Rizky Prasetya -- Unsubscribe: kirim email kosong ke [EMAIL PROTECTED] Arsip, FAQ, dan info milis di http://linux.or.id/milis.php Tidak bisa posting? Baca: http://linux.or.id/wiki/index.php?pagename=ProblemMilisDanSolusi http://linux.or.id/wiki/index.php?pagename=TataTertibMilis
