Membaca log akses setelah serangan
Log sudah memuat seluruh ceritanya. Enam perintah satu baris mengubah sejuta baris menjadi: siapa, dari mana, dan apakah dia berhasil masuk.
5 min read
Cadangan adalah tindakan pengamanan
Cadangan yang duduk di server yang sama, dengan kredensial yang sama, bukanlah cadangan. Ia salinan kedua yang menunggu peristiwa yang sama.
4 min read
CSRF: formulir yang dikirim dari tempat lain
Pengunjung Anda sedang masuk, lalu situs lain membuat perambannya mengirim permintaan ke situs Anda. Satu token untuk tiap formulir menghentikannya.
4 min read
Cara mengetahui apakah sebuah situs sudah dibobol
Kebanyakan situs yang dibobol tampak sepenuhnya normal di mata pemiliknya. Tanda-tanda yang layak diperiksa, dan empat perintah yang menemukannya.
5 min read
fail2ban: apa yang dihentikannya dan apa yang tidak
Ia membaca log dan memblokir alamat yang mengulang sebuah pola. Berguna, sempit, dan gampang sekali disetel sampai memblokir kantor Anda sendiri.
5 min read
Izin yang benar, bukan sekadar yang berhasil
777 membuat galatnya hilang sekaligus membuka situs itu bagi siapa saja yang bisa menulis sebuah berkas. Apa arti angka-angka itu dan apa yang sebenarnya dibutuhkan sebuah situs.
5 min read
Membersihkan situs yang sudah dibobol
Urutan yang membuat situs yang diretas jadi bersih dan tetap bersih — dan langkah yang hampir semua orang lewatkan.
8 min read
Memperkeras SSH
Enam baris pengaturan mengubah layanan yang paling banyak diserang di server Anda menjadi layanan yang sama sekali tidak bisa ditebak.
4 min read
Perangkat perusak di basis data, bukan di berkasnya
Anda sudah memasang ulang intinya, mengganti setiap pengaya, dan pengalihannya masih ada juga. Ia ada di sebuah baris, bukan di sebuah berkas.
4 min read
Kepemilikan, umask, dan jebakan grup
chmod 777 menyembuhkan gejalanya dan membuka pintunya. Kepemilikan dan bit grup menyembuhkan sebabnya, sekaligus menjaga berkas baru tetap benar.
5 min read
Serangan paksa terhadap panel kendali
Ribuan percobaan masuk sehari adalah derau latar yang wajar. Ia baru menjadi pembobolan ketika satu kata sandi lemah dan tak ada yang menghitung.
4 min read
Menjaga PHP tetap tertambal tanpa merusak situs
Bertahan di versi PHP yang tak lagi didukung adalah kegagalan keamanan yang berjalan pelan. Rilis tambalan itu aman; versi besar butuh dua puluh menit persiapan.
4 min read
Mengapa satu cadangan bukanlah cadangan
Perangkat pemeras mencari cadangan lebih dulu, dan menemukan yang bisa dijangkau server itu. Aturan 3-2-1 ada justru karena itu.
4 min read
Membatasi laju sebuah halaman masuk
Menebak kata sandi berarti ribuan percobaan dalam sejam. Sebuah batas membuatnya sia-sia, dan ongkosnya satu blok di konfigurasi server.
4 min read
Injeksi SQL dengan bahasa yang terang
Datanya terbaca sebagai bagian dari pertanyaannya. Satu kebiasaan melenyapkan seluruh golongan ini, dan kebiasaan itu bukanlah pelolosan karakter.
5 min read
Kunci SSH sebagai ganti kata sandi
Sebuah kunci menamatkan percobaan paksa sepenuhnya. Buat satu, pasang, uji di jendela kedua, dan baru sesudah itu matikan kata sandinya.
5 min read
Dua faktor, dan di mana menyimpan kode pemulihannya
Ia membuat kata sandi yang dicuri tak lagi cukup. Memasangnya makan dua menit; bagian yang salah dikerjakan orang adalah apa yang terjadi kalau ponselnya hilang.
4 min read
Direktori unggahan tak boleh menjalankan apa pun
Memeriksa ekstensi berkas saja tidak cukup. Kalau server webnya mau menjalankan PHP dari folder unggahan Anda, satu unggahan buruk sudah berarti sebuah cangkang.
4 min read
Empat hal yang membuat situs WordPress dibobol
Bukan celah yang aneh-aneh. Empat kelalaian biasa menjelaskan hampir semua situs yang jebol, dan menutup tiap satunya cuma perlu beberapa menit.
6 min read
Cross-site scripting, dengan bahasa terus terang
Kode orang lain yang berjalan di halaman Anda, di dalam sesi pengunjung Anda. Satu kebiasaan mencegah hampir semuanya.
5 min read