Serangan SSH menguras 4GB dalam 10 jam. Bisa jadi?

10

Saya telah diperingatkan bahwa server saya melanggar batas transfernya. Saya mengira bahwa simpul Tor saya menjadi populer sehingga saya memilih untuk menonaktifkannya bulan ini (bukan pilihan terbaik untuk komunitas tetapi saya harus turun). Kemudian saya perhatikan bahwa server mentransfer sekitar 4GB malam ini. Saya telah memeriksa log Apache dengan Awstats, tidak ada lalu lintas yang relevan (dan saya tidak meng-host situs yang sangat populer di sana). Saya sudah memeriksa log surat, tidak ada yang mencoba mengirim sampah. Saya telah memeriksa messageslog dan menemukan banyak dari ini

Apr 29 10:17:53 marcus sshd[9281]: Did not receive identification string from 85.170.189.156
Apr 29 10:18:07 marcus sshd[9283]: Did not receive identification string from 86.208.123.132
Apr 29 10:18:24 marcus sshd[9298]: Did not receive identification string from 85.170.189.156
Apr 29 10:18:39 marcus sshd[9303]: Did not receive identification string from 86.208.123.132
Apr 29 10:18:56 marcus sshd[9306]: Did not receive identification string from 85.170.189.156
Apr 29 10:19:11 marcus sshd[9309]: Did not receive identification string from 86.208.123.132
Apr 29 10:19:18 marcus sshd[9312]: Did not receive identification string from 101.98.178.92
Apr 29 10:19:27 marcus sshd[9314]: Did not receive identification string from 85.170.189.156
Apr 29 10:19:41 marcus sshd[9317]: Did not receive identification string from 86.208.123.132
Apr 29 10:20:01 marcus sshd[9321]: Did not receive identification string from 85.170.189.156
Apr 29 10:20:13 marcus sshd[9324]: Did not receive identification string from 86.208.123.132
Apr 29 10:20:32 marcus sshd[9327]: Did not receive identification string from 85.170.189.156
Apr 29 10:20:48 marcus sshd[9331]: Did not receive identification string from 86.208.123.132
Apr 29 10:21:07 marcus sshd[9336]: Did not receive identification string from 85.170.189.156
Apr 29 10:21:20 marcus sshd[9338]: Did not receive identification string from 86.208.123.132
Apr 29 10:21:35 marcus sshd[9341]: Did not receive identification string from 85.170.189.156
Apr 29 10:21:51 marcus sshd[9344]: Did not receive identification string from 86.208.123.132
Apr 29 10:22:06 marcus sshd[9349]: Did not receive identification string from 85.170.189.156
Apr 29 10:22:23 marcus sshd[9353]: Did not receive identification string from 86.208.123.132
Apr 29 10:22:39 marcus sshd[9359]: Did not receive identification string from 85.170.189.156
Apr 29 10:22:54 marcus sshd[9361]: Did not receive identification string from 86.208.123.132
Apr 29 10:23:10 marcus sshd[9367]: Did not receive identification string from 85.170.189.156
Apr 29 10:23:29 marcus sshd[9369]: Did not receive identification string from 86.208.123.132
Apr 29 10:23:45 marcus sshd[9375]: Did not receive identification string from 85.170.189.156
Apr 29 10:24:10 marcus sshd[9387]: Did not receive identification string from 86.208.123.132
Apr 29 10:24:16 marcus sshd[9388]: Did not receive identification string from 85.170.189.156

Setiap beberapa detik bot mencoba untuk meretas SSH saya, yang tidak mungkin karena saya memerlukan otentikasi pubkey. Pertanyaan saya adalah: dapatkah lalu lintas ini, pada frekuensi ini, mengkonsumsi 4GB (katakanlah 3,5) dalam 10 jam serangan terus menerus?

Saya telah mengubah port SSH saya dan menghentikan serangan ini, tetapi saya tidak yakin tentang konsumsi jaringan saya. Saya tidak memiliki layanan di luar kendali menjalankan-firewall saya agak membatasi-, atau berbagi server dengan seseorang yang melakukan P2P atau apa pun. Kekhawatiran saya adalah di bawah 400GB / bulan.

Ada tips?

usr-local-ΕΨΗΕΛΩΝ
sumber

Jawaban:

16

4 GB adalah mungkin, tetapi sangat tidak mungkin mempertimbangkan tingkat serangan. Saya menyarankan untuk menginstal OSSEC, mendeteksi gangguan dalam upaya dan memblokir IP secara otomatis untuk waktu tertentu.

Lucas Kauffman
sumber
1
Saya sudah memiliki fail2ban, berhasil memblokir login yang buruk tetapi tampaknya mengabaikan pesan-pesan ini. Mungkin saya akan menyetelnya.
usr-local-ΕΨΗΕΛΩΝ
1
Diterima Fail2ban membutuhkan penyetelan untuk menerima pesan log itu sebagai upaya pembobolan. +1 ke @lain juga karena saya tidak dapat menerima 2 jawaban
usr-local-ΕΨΗΕΛΩΝ
@djechelon: Harap beri tahu kami jika ini memang menyelesaikan masalah. Entah bagaimana saya ragu itu karena paket akan jatuh setelah tiba di sistem Anda.
user9517
@Sebagian besar penyerang menyerah ketika mereka dijatuhkan.
Lucas Kauffman
3
@LucasKaufman: 4Gb / 10Hrs adalah ~ 120Kb / detik. Saya tidak melihat ada banyak throughput dari upaya yang gagal dan cuplikan di atas menunjukkan tingkat serangan yang jauh lebih rendah (26 dalam ~ 7 menit).
user9517
14

Jika ini adalah penyebab dari penggunaan bandwidth maka bandwidth sudah dikonsumsi pada saat Anda berurusan dengan mereka di sistem Anda. Anda dapat menggunakan alat seperti iptraf untuk memberi Anda uraian tentang apa yang terjadi pada setiap antarmuka / port dan kemudian Anda dapat mengambil tindakan yang sesuai berdasarkan fakta.

user9517
sumber
Jelas saya dapat berupaya mencegah konsumsi bandwidth di masa depan, mulai dari bulan mendatang
usr-local-ΕΨΗΕΛΩΝ
1
Dan ... jawaban yang sangat membantu, tetapi iptraf tidak bekerja dengan OpenVZ (referensi webhostingtalk.com/showthread.php?t=924814 ) dan saya tidak menyebutkannya :)
usr-local-ΕΨΗΕΛΩΝ
Ide dasarnya tetap sama. Temukan sesuatu yang akan memberi tahu Anda di mana penggunaannya dan kemudian selesaikan masalahnya. Yang lainnya adalah dugaan.
user9517
4

Tidak, upaya koneksi sekali per detik ini sendiri tidak akan menambah hingga 4GB dalam sepuluh jam. Apakah Anda pikir Anda dapat mengunduh file 4GB dalam 10 jam dengan mendapatkan paket kecil sekali per detik? Ada 3600 detik dalam satu jam, jadi jika Anda mendapatkan satu kilobyte per detik selama sepuluh jam, itu akan menjadi 36000 Kb, atau 36 megabyte.

Bandwidth Anda diukur berdasarkan apa yang turun dari penyedia Anda ke router eksternal Anda, bukan yang menjangkau server Anda. Anda harus melihat omong kosong yang tidak mencapai server Anda, bahwa sebagian besar peralatan eksternal ditolak.

Sejauh apa yang mencapai server Anda, Anda tidak dapat mengandalkan log aplikasi. Bahkan paket yang diam-diam dijatuhkan oleh firewall lokal adalah bandwidth. Statistik antarmuka (ditunjukkan oleh ifconfig) akan memberi tahu Anda byte Tx / Rx.

Kaz
sumber
Tidak yakin. Dari sudut pandang saya, pesan log menunjukkan bahwa klien membuka soket ke port 22 tetapi ditolak karena "apa yang mereka kirimkan" tidak diakui sebagai jabat tangan SSH yang tepat. Saya tidak ingin menyadap port 22 untuk melihat muatan aktual yang dikirim oleh pemindai, tetapi secara teori mereka bisa mengirim banyak sampah sampai SSH turun. Pertanyaannya adalah: kapan openSSH menjatuhkan jabat tangan yang tidak valid? Kedua, saya menghabiskan malam dengan Tor dinonaktifkan dan lalu lintas masih meningkat (Apache tidak menunjukkan lalu lintas yang signifikan), ketika lalu lintas fail2ban yang dikonfigurasi ulang hampir berhenti
usr-local-ΕΨΗΕΛΩΝ
1
Biarkan saya ulangi sedikit, untuk berjaga-jaga. Jika saya ingin menguras 4GB bandwidth dari server saya bisa membuat botnet yang membuka koneksi HTTP dan mengirimkan payload POST tanpa batas untuk setiap permintaan. Log akan menunjukkan bahwa permintaan gagal terjadi dengan tarif rendah, tetapi masing-masing sangat berat. Tapi ini mulai kehilangan akal. Saya telah terbiasa dengan pemindaian SSH ("otentikasi gagal untuk root, admin ...") karena tujuannya adalah untuk mengambil kendali dari node. Mengapa penyerang keberatan menguras bandwidth melalui SSH? Tidak masuk akal. Kecuali seseorang membenci simpul Tor ...
usr-local-ΕΨΗΕΛΩΝ