Bagaimana cara berurusan dengan seseorang yang mencoba masuk sebagai admin?

14

Selama hari-hari terakhir ini, saya perhatikan di blog saya, bahwa seseorang telah mencoba untuk menyelinap.

Orang tersebut mencoba menemukan url login (situs web saya tidak terbuka untuk pendaftaran pengguna) sehingga mereka mencoba semuanya dari my-domain.com/admin, my-domain.com/administrator .. dan juga my-domain.com/wp- login (yang menunjukkan bahwa orang tersebut tidak mengenal drupal ..)

Begitu orang tersebut berakhir di / pengguna, ia mencoba masuk sebagai admin dengan mencoba nama pengguna yang berbeda: admin, administrator dll ... (Saya tidak pernah menggunakan 'admin' sebagai nama pengguna untuk pengguna root)

adakah cara untuk mencegah / melindungi situs web drupal dari hal-hal semacam ini?

Terima kasih

ps: Saya tertarik bagaimana melakukan ini untuk d6 dan d7.

amstram
sumber

Jawaban:

14

Probe semacam ini sangat umum di internet. Ada beberapa hal yang berpotensi dapat Anda lakukan untuk memblokir masalah ini dan mengurangi keberhasilan seorang penyerang.

Pertama, saya sarankan semua orang menggunakan Otentikasi Dua Faktor sehingga meskipun penyerang menebak nama pengguna dan kata sandi Anda, mereka tetap tidak bisa masuk. Ada hadiah sebesar $ 500 untuk mendobrak TFA dan meskipun para penyerang white-hat memiliki nama pengguna dan kata sandi yang tidak dapat mereka masuki.

The Modul peninjauan keamanan atau Droptor dapat membantu memantau ini login gagal. Jika itu sering terjadi maka Anda harus mulai mengambil tindakan lebih banyak. Brute serangan gaya pada password hanya bekerja jika seseorang melakukan mereka banyak jadi jika itu hanya terjadi beberapa puluh kali aku tidak akan khawatir.

Anda dapat melacak alamat IP yang digunakan oleh orang ini menggunakan entri anjing penjaga dan kemudian menggunakan Aturan Akses D6 bawaan (atau yang setara dengan d7 - http://drupal.org/project/user_restrictions ) untuk memblokir akses melalui IP tersebut. Anda juga bisa menolak akses ke IP di Apache atau firewall tingkat server lainnya. Firewall / server web adalah tempat yang lebih efisien untuk memblokir pengguna dalam hal memuat di server, tetapi biasanya membutuhkan sedikit usaha lebih.

Untuk Drupal 6 dan 7, AjitS telah memberikan jawaban dengan deskripsi yang baik tentang bagaimana menggunakan fitur pembatasan tingkat untuk mencegah upaya login berulang dari IP yang sama.

Greggles
sumber
6
Sekarang kedengarannya seperti jawaban dari seorang pria dari tim Keamanan Drupal ;-) +1
AjitS
Ide yang menarik. Saya akan mulai dengan memblokir alamat IP menggunakan aturan akses d6 selama beberapa hari dan melihat bagaimana itu membantu. Terima kasih semuanya !
amstram
Kudos untuk jawaban yang ditulis dengan baik, tetapi buang-buang waktu. Apa pun yang Anda lakukan, Anda akan selalu memiliki skrip ini mengikis situs Anda. Hanya melayani admin dan halaman login Anda di https dan memiliki kata sandi admin yang layak.
stefgosselin
Tidakkah Drupal 7 secara otomatis memblokir akses dari alamat IP tertentu setelah upaya login yang berulang gagal? Saya pernah punya klien memanggil saya mengatakan dia tidak bisa lagi login ketika dia mencoba penggunanya / lulus sekitar 5 kali dan gagal dan sekarang dia tidak bisa lagi login dan saya harus membersihkan beberapa tabel dari db untuk memberinya akses kembali. ..
Mario Awad
@stefgosselin https bukan pilihan bagi banyak orang, meskipun saya tentu setuju itu langkah yang baik. Saya juga tidak melihat bagaimana https benar-benar membantu masalah brute force. Saya pikir TFA sangat membantu bagi orang yang tidak bisa mendapatkan https dan / atau yang benar-benar mencari solusi untuk serangan brute force.
Greggles
3

Untuk Drupal 6 Anda harus memeriksa modul Keamanan Login .

Modul Keamanan Login meningkatkan opsi keamanan dalam operasi login situs Drupal. Secara default, Drupal hanya memperkenalkan kontrol akses dasar yang menolak akses IP ke konten penuh situs.

Dengan modul Keamanan Masuk, administrator situs dapat melindungi dan membatasi akses dengan menambahkan fitur kontrol akses ke formulir masuk (formulir masuk default di / pengguna dan blok yang disebut "blok formulir masuk"). Mengaktifkan modul ini, administrator situs dapat membatasi jumlah upaya login yang tidak valid sebelum memblokir akun, atau menolak akses berdasarkan alamat IP, untuk sementara atau secara permanen. Serangkaian pemberitahuan dapat membantu administrator situs untuk mengetahui kapan sesuatu terjadi dengan bentuk login situs mereka: menebak kata sandi dan akun, upaya masuk bruteforce, atau hanya perilaku tak terduga dengan operasi login.

Untuk Drupal 7, seperti yang dikatakan @saadlulu bahwa sudah ada fitur untuk mengunci akses setelah 5 upaya login yang gagal. Jika Anda ingin lebih banyak kontrol, Anda dapat mencoba modul Kontrol Banjir .

Proyek ini dimaksudkan untuk menambahkan antarmuka administrasi untuk variabel kontrol banjir tersembunyi di Drupal 7, seperti pembatas upaya login dan variabel tersembunyi apa pun di masa mendatang.

Ajit
sumber
3

Mungkin menggunakan penggantian nama jalur admin akan membantu?

Tujuan dari modul ini adalah untuk mengamankan backend drupal dengan mengganti jalur admin.

John
sumber
Ya, saya tahu "keamanan melalui ketidakjelasan" sama sekali tidak benar-benar keamanan, tapi saya sebenarnya bertujuan menjawab pertanyaan ...
John
jawaban yang bagus, penggantian nama / pengguna / login ke custom / login / path bisa sangat efisien untuk menghentikan bot agar tidak mencoba masuk pada url default
undersound
3

Saya ingin menangani ini dengan cara yang sama seperti gagal login dari sumber lain (misalnya ssh, ftp) ditangani, sehingga semuanya ditangani secara konsisten. Untuk itu saya akan melihat fail2ban , yang telah saya gunakan dengan sukses melawan brute force SSH login. Ia juga masuk dengan baik ke alat pemantauan, dan memblokir di tingkat firewall, yang umumnya lebih aman daripada mencegah hanya masuk Drupal karena itu umum untuk beberapa vektor serangan berasal dari tempat yang sama, misalnya jika mereka menjalankan hal-hal seperti metasploit .

Sinkron
sumber
Saya setuju tetapi instalasi drupal yang sedang 'ditargetkan' ini berjalan di server hosting bersama yang mencegah saya memiliki akses ke pengaturan level server, saya hanya dapat mencoba dan melindunginya dari dalam drupal. Tetapi saya sedang mempertimbangkan untuk beralih ke server khusus dalam beberapa minggu ke depan. Terima kasih
amstram
Satu keuntungan dari pergi ke tingkat firewall adalah bahwa Drupal hanyalah bagian dari permukaan serangan situs Anda. Jika seseorang tidak dapat masuk melalui Drupal, mereka kemungkinan akan melihat apakah ssh atau ftp atau ... layanan lain sedang berjalan dan kemudian mencoba masuk melalui metode-metode itu.
greggles
3

Ini sebenarnya perilaku yang benar-benar diharapkan. Setiap kali Anda mempublikasikan situs web di ip publik, dalam beberapa jam / hari Anda akan mulai mendapatkan traffic semacam itu. 99,99% dari waktu, ini hanya bot yang menjalankan skrip generik mencari aplikasi yang belum ditambal atau kata sandi mudah. Ini menjelaskan mengapa Anda melihat hit di domain.com/wp-login, host penyerang (otomatis) bahkan tidak tahu pada awalnya Anda menjalankan Drupal, ia mencoba semua jalur CMS, Wordpress, Drupal yang populer, dll ... .

Saya katakan jangan buang terlalu banyak waktu untuk mengkhawatirkan hal ini. Apa pun yang Anda lakukan, Anda akan selalu menemukan skrip ini mengikis situs Anda ... dari seluruh dunia.

Dua hal sederhana akan membuat aplikasi Anda relatif aman:

  1. Sajikan halaman login dan admin melalui https

  2. Memiliki kata sandi yang layak untuk admin

Apa pun skema keamanan yang Anda terapkan, SELALU memiliki cadangan barang-barang Anda baru-baru ini.

Selamat mencoba, teman tahun baru.

stefgosselin
sumber
2

Apa yang Anda minta tidak logis jika Anda bermaksud menghapus atau mencegah akses ke / halaman pengguna.

Jika Anda berhasil mencegah halaman itu, bagaimana Anda akan mengaksesnya?

Plus Drupal sudah menyediakan cara untuk menghentikan serangan seperti itu dengan mengunci akses ke pengguna setelah 5 upaya.

Anda dapat membatasi upaya untuk akun admin Anda.

saadlulu
sumber
Halo, Terima kasih telah membalas. Saya tidak meminta sesuatu yang spesifik. Saya hanya mencari ide tentang bagaimana menghadapi hal ini. Saya pikir '5 upaya gagal kunci' adalah fitur drupal 7 saja, benarkan? Apakah mungkin untuk mengimplementasikan fitur serupa di Drupal 6?
amstram
Saya tidak tahu karena latar belakang saya hanya Frupal 7. Saya akan menyerahkan ini kepada saudara-saudara saya dari Drupal 6 :). Anda dapat membantu saya dan menerima jawaban saya jika Anda suka.
saadlulu
Anda juga dapat memeriksa keamanan login
saadlulu
"Jawaban" ini tidak bagus karena 5 upaya penguncian hanya Drupal 7 dan selalu ada hal-hal yang harus dilakukan untuk mencegah masalah, bahkan lebih dari itu.
greggles