Ringkasan
Pada 14 Oktober 2020, antara pukul 02:41 dan 02:52 UTC, semua instance di AMS-01 tidak dapat diakses. Serangan volumetrik yang ditujukan pada satu alamat pelanggan memuncak pada 340 Gbit/s dan memenuhi uplink situs. Kami mengatasinya dengan meminta upstream untuk membuang semua lalu lintas ke alamat target, yang memulihkan situs dan membuat pelanggan tersebut offline selama lima puluh menit tambahan. Tidak ada data yang hilang dan tidak ada instance yang rusak. Situs saat itu tidak memiliki kapasitas scrubbing, dan itu adalah keputusan pembelian, bukan kecelakaan.
Linimasa
Semua waktu UTC, 14 Oktober 2020.
| Waktu | Kejadian |
|---|---|
| 02:41:04 | Lalu lintas ke satu alamat pelanggan naik dari sekitar 200 Mbit/s menjadi 90 Gbit/s dalam waktu kurang dari dua puluh detik. |
| 02:41:30 | Kedua uplink situs penuh. Kehilangan paket menjadi total di semua prefix di situs, bukan hanya target. |
| 02:42 | Alert otomatis menyala pada keterjangkauan dari tiga probe eksternal. |
| 02:44 | Engineer on-call online. Serangan terlihat pada grafik port dan tidak di tempat lain, karena sampling flow collection kami pada tingkat yang tidak dapat mengimbangi. |
| 02:46 | Puncak terukur pada 340 Gbit/s. Komposisinya adalah UDP refleksi, kebanyakan DNS dan NTP, dari puluhan ribu sumber. |
| 02:47 | Keputusan dibuat untuk meminta upstream membuang semua lalu lintas ke alamat target. Ini adalah satu-satunya alat yang tersedia bagi kami. |
| 02:49 | Pembuangan menyebar di upstream pertama. |
| 02:51 | Upstream kedua menerapkannya. Utilisasi uplink turun di bawah kapasitas. |
| 02:52:10 | Situs sepenuhnya dapat diakses. Total gangguan yang terlihat pelanggan, sebelas menit enam detik. |
| 03:20 | Pelanggan yang terkena dampak dihubungi dan ditawari alamat baru. |
| 03:42 | Pelanggan pindah ke alamat baru; layanan mereka kembali. |
Akar penyebab
Penyebab langsungnya adalah serangan yang tidak dapat kami serap. Yang sebenarnya menyebabkan ini adalah kami menjual hosting di kota di mana serangan sebesar ini rutin, dengan uplink dua ratus gigabit dan tanpa filtering sama sekali, dan memperlakukan perjanjian pembuangan upstream sebagai rencana.
Itu bukan nasib buruk. Itu adalah keputusan, dibuat pada 2019 untuk membelanjakan uang pada perangkat keras, dan itu salah.
Dua kesalahan sekunder memperburuknya. Sampling flow collection kami pada tingkat yang tidak memberi kami detail berguna selama kejadian nyata, sehingga empat menit pertama dihabiskan untuk membaca penghitung antarmuka. Dan pembuangan dilakukan manual, membutuhkan manusia yang terjaga, terautentikasi, dan percaya diri, yang merupakan tiga persyaratan terlalu banyak pada pukul tiga pagi.
Biaya yang ditanggung pelanggan
Terus terang: kami memperbaiki masalah kami dengan mematikan layanan mereka. Rute pembuangan adalah keputusan bahwa satu pelanggan tidak dapat dijangkau agar yang lain tidak. Itu adalah panggilan yang benar dengan alat yang kami miliki, tetapi tetap saja gangguan itu milik mereka, bukan milik kami, dan mereka tidak membeli produk dari kami yang menjanjikan sebaliknya.
Mereka tetap bertahan. Kami tidak menagih mereka untuk bulan Oktober.
Apa yang kami ubah
- Scrubbing selalu aktif di edge, dibeli dalam waktu tiga minggu, mulai dengan kapasitas 1.2 Tbit/s. Filtering berada permanen di jalur, sehingga tidak ada penundaan deteksi dan tidak ada tombol untuk ditekan siapa pun pada pukul 02:47. Ini sekarang standar di setiap situs, hingga 12 Tbit/s di yang terbesar.
- Uplink di AMS-01 dinaikkan, pertama ke 200 Gbit/s kapasitas tambahan dan kemudian ke 400 Gbit/s yang dimiliki situs saat ini.
- Telemetri flow tanpa sampling di setiap edge situs, disimpan untuk tujuan operasional selama tujuh hari. Ini adalah metadata lalu lintas untuk port kami sendiri; ini bukan lalu lintas instance dan bukan isi apa pun.
- Rute pembuangan menjadi otomatis, dengan ambang batas terdokumentasi, kebijakan yang diumumkan, dan email ke pelanggan yang terkena dampak dalam enam puluh detik, bukan tiga puluh sembilan menit.
- Serangan dipublikasikan di halaman status, dengan ukuran dan durasi, apakah ada yang memperhatikan atau tidak.
Apa yang tidak kami ubah, dan mengapa
Kami tidak mulai mengenakan biaya untuk filtering. Scrubbing dasar termasuk dalam setiap paket di setiap situs dan sudah sejak hari kami membelinya. Serangan bukan layanan yang diminta korban. Filtering layer-7 dengan aturan kustom ada sebagai add-on karena membutuhkan manusia di sisi kami, dan itu hal yang berbeda dari banjir volumetrik.
Kami tidak menghapus rute pembuangan. Dua belas terabit per detik adalah angka, bukan tak terhingga, dan berpura-pura tidak akan pernah membutuhkan alat kasar lagi adalah tidak jujur. yang berubah adalah sekarang menjadi pilihan terakhir yang terdokumentasi, bukan satu-satunya langkah.
Kami tidak memberlakukan batas lalu lintas per pelanggan. Membatasi setiap pelanggan ke fraksi aman dari uplink akan mencegah ini dan juga akan membatasi setiap lonjakan sah. Filtering seharusnya di edge, pada serangan, bukan pada pelanggan.
Kami tidak memindahkan pelanggan ke produk yang berbeda. Mereka menjalankan apa yang mereka bayar, pada paket yang sesuai, dan bukan kesalahan mereka bahwa seseorang mengarahkan botnet ke mereka.