3 poin oleh GN⁺ 2024-04-15 | 1 komentar | Bagikan ke WhatsApp
  • Pada masa ketika belum ada rotasi on-call resmi, sekitar pukul 3 dini hari seekor kucing membangunkan orang yang sedang tidur, sehingga peringatan AWS CloudWatch dan gangguan situs web bisa segera diketahui
  • Setelah peringatan unhealthy targets pada load balancer, situs tidak bisa dibuka, dan terlihat banyak request dalam jumlah besar dari banyak IP yang terhubung dengan berbagai negara
  • Karena produk hanya tersedia untuk pengguna di AS, traffic internasional dianggap tidak normal, dan dari situasinya dinilai sebagai serangan DDoS
  • Memblokir IP satu per satu di server bisa jadi tidak efisien, tetapi dengan aturan pemblokiran negara di AWS WAF yang sudah dikonfigurasi, ratusan ribu request berhasil diblokir selama sekitar 1 jam
  • Sekitar saat serangan dimulai, inbox customer support menerima email ancaman yang mengklaim telah menghentikan situs lewat celah Apache dan meminta 5.000 dolar dalam Bitcoin; perusahaan tidak membalas

Gangguan yang terungkap pada pukul 3 dini hari

  • Saat itu startup tersebut belum memiliki rotasi on-call resmi, dan operasionalnya dilakukan dengan cara tim bersama-sama memantau notifikasi darurat
  • Sekitar pukul 3 dini hari, kucing menggrooming rambut sehingga membangunkan pemiliknya; ketika melihat ponsel, ada peringatan AWS CloudWatch yang masuk beberapa menit sebelumnya
  • Penyebab peringatan adalah unhealthy targets pada load balancer, dan situs web memang tidak bisa dimuat
  • Dashboard monitoring menunjukkan request dalam jumlah besar yang masuk dari banyak alamat IP yang terhubung dengan berbagai negara
  • Karena produk hanya disediakan untuk pengguna di AS, traffic internasional tidak seperti biasanya, dan berdasarkan situasinya dinilai sebagai serangan DDoS

Lonjakan request yang dibendung dengan AWS WAF

  • Respons pertama yang terpikir adalah memblokir alamat IP di level server, tetapi jika penyerang bisa memakai lebih banyak IP asal, cara itu bisa merepotkan dan efektivitasnya terbatas
  • Dengan memanfaatkan AWS Web Application Firewall yang sudah disiapkan, ditambahkan aturan untuk memblokir request dari negara lain sebagai langkah respons gangguan segera
  • Setelah aturan diterapkan, ratusan ribu request diblokir selama sekitar 1 jam, dan situs web mulai berfungsi kembali
  • Lonjakan request juga berhenti, sehingga gangguan langsung teratasi

Email ancaman yang tiba setelah serangan

  • Pagi itu, mereka memeriksa email yang masuk ke inbox customer support sekitar saat serangan dimulai
    • Pengirim mengklaim telah menemukan kerentanan situs web dan membuat Apache crash, tetapi perusahaan tidak menggunakan Apache
    • Ia mengklaim telah menghentikan semua traffic ke situs web dan bisa mempertahankannya selama berbulan-bulan, lalu meminta 5.000 dolar dalam Bitcoin sebagai imbalan untuk memberikan “solution file”
    • Perusahaan tidak membalas
  • Karena ponsel berada dalam mode Jangan Ganggu pada malam hari, penjelasan bahwa getaran atau suara notifikasi AWS lebih dulu membangunkan kucing tidaklah tepat
  • Orang tersebut merasa kucingnya somehow mendeteksi sesuatu yang tidak bisa menunggu sampai pagi, dan menganggapnya sebagai cara bangun yang jauh tidak lebih menyebalkan dibanding alarm PagerDuty

1 komentar

 
GN⁺ 2024-04-15
Komentar Hacker News
  • Seperti biasa, ancaman dari orang dalam mudah terlewat. Email ancaman dengan tata bahasa mencurigakan? Minta tebusan Bitcoin? Tapi apakah kamu pernah mempertimbangkan bahwa dalang serangan itu sebenarnya bisa saja seekor kucing?

    • Jadi ternyata teleponnya berasal dari dalam rumah!
    • Semacam menambahkan “Bite” ke Bitcoin ya
    • Benar, kucing memang terkenal tidak bisa menulis tata bahasa yang baik
  • Di Kansas jarang ada gempa, tapi aku masih ingat satu-satunya gempa pertama yang pernah kurasakan
    Aku sedang tidur nyenyak ketika kucing Siamese menepuk wajahku dengan kakinya sampai aku bangun, lalu duduk di ujung ranjang sambil menggeram agresif tidak seperti biasanya
    Tidak sampai 30 detik kemudian semuanya mulai berguncang. Aku tidak tahu bagaimana dia bisa tahu, tapi itu cukup menakjubkan, dan dia pergi pada 2020 tapi aku masih merindukannya

    • Kucing dan anjing memang dikenal bisa mendeteksi gempa sebelum manusia merasakannya
      Saat gempa NYC baru-baru ini juga ada video anjing melolong sebelum orang-orang merasakan getarannya, dan menurutku itu cukup umum terjadi
    • Turut sedih. Tapi itu kenangan yang indah tentang kucing itu
      Beberapa minggu lalu saat aku mengalami gempa 7,4 di Taipei, satu-satunya pikiranku adalah bahwa aku harus kembali ke anjingku seperti yang sudah kujanjikan. Sebelum aku pergi dia tampak gelisah, tapi aku tidak tahu apakah dia merasakan aku akan pergi atau merasakan gempa yang sedang kutuju
    • Ada penjelasan yang masuk akal soal bagaimana dia bisa tahu
      Pada batuan ada dua jenis gelombang, gelombang P dan gelombang S. Gelombang P adalah gelombang tekanan sehingga lebih cepat, sedangkan gelombang S bergerak ke kiri dan kanan dan sedikit lebih lambat. Kemungkinan besar kucing itu terbangun oleh suara mendesis dari gelombang P yang datang sedikit lebih dulu daripada gempa yang bisa dirasakan manusia
      Bahwa ada dua jenis gelombang dan gelombang P datang lebih dulu bisa dilihat di https://manoa.hawaii.edu/exploringourfluidearth/physical/oce...
  • Ponselnya mungkin dalam mode senyap, tapi layarnya bisa saja tetap terus berkedip. Punyaku juga begitu dalam mode itu
    Di pekerjaan pertamaku ada seseorang yang bisa menyadari lebih dulu dari dashboard monitoring bahwa akan ada gangguan. Dia sendiri tidak bisa menjelaskan atau memahami apa yang sebenarnya dia lihat, dan orang lain juga tidak bisa menirunya, tapi kalau dia bilang ada sesuatu yang aneh, biasanya tidak lama kemudian alert memang datang

    • Jika seseorang cukup lama melihat data yang mengalir, mereka akan selaras dengan polanya. Manusia memang dibuat untuk mencari pola, dan tidak harus bisa dijelaskan secara sadar. Pada titik tertentu sinyalnya terasa begitu saja “tidak pas”
    • Orang seperti itu disebut kenari, dan ditempatkan jauh di dalam tambang
    • Sepertinya ada sinyal tertentu yang melewati area otak yang menangani fakta-fakta yang jelas
      Aku pernah membaca tentang seorang pengawas proyek konstruksi yang sangat piawai menemukan pipa di bawah tanah atau di dalam dinding, sampai-sampai para pekerja menghormatinya. Awalnya dia mulai percaya itu semacam kekuatan supranatural, tapi belakangan menyimpulkan bahwa dia tanpa sadar telah mempelajari pola-pola umum dan petunjuk sesekali yang tidak intuitif. Misalnya, melihat ventilasi di dinding bangunan lalu menyadari kemungkinan ada pipa limbah di bawah tanah
    • Aku juga pernah seperti itu saat memainkan Cyberpunk 2077 versi awal rilis di PS4
      Sampai di titik aku bisa cukup akurat tahu, “game ini sebentar lagi bakal crash, lebih baik simpan dulu.” Setelah simpan dan 10 detik kemudian lanjut lagi, benar-benar crash. Sampai sekarang aku masih tidak tahu bagaimana aku bisa tahu
  • 5.000 dolar itu lumayan seperti jumlah tebusan seorang pangeran. Pada 2016 perusahaan kami juga pernah menerima tuntutan seperti itu
    Kami kena DDoS dan memutuskan mengabaikannya, tapi untuk berjaga-jaga kami sempat mencari BTC. Setelah itu kami menerapkan banyak pertahanan DDoS dan biayanya jauh lebih besar daripada 5.000 dolar, tapi tidak memberi uang kepada pemeras tetap sepadan

    • Sekitar 20 tahun lalu di tim administrator sistem, entah bagaimana aku malah jadi orang yang menangani serangan DDoS. Selama kira-kira dua minggu email ancamannya terus datang
      1. Bayar 50 ribu dolar atau kami serang — tidak terjadi apa-apa
      2. Bayar 25 ribu dolar atau bersiaplah — ada sedikit beban berlebih di server, tapi tidak serius
      3. Bayar 10 ribu dolar atau bersiaplah — datang serangan serius yang sangat berdampak pada layanan
      4. 5 ribu dolar, sekarang kami benar-benar marah — kali ini mereka menjatuhkan seluruh Tier2 ISP dan data center di London selama sehari. Operator lain yang peering di London Internet Exchange harus melakukan blackhole terhadap trafik ke penyedia layanan kami, dan pada akhirnya salah satu IP kami juga tetap ter-blackhole untuk sementara. Kami harus buru-buru mencari layanan mitigasi DDoS, data center baru, dan server
        Kami tidak membalas satu pun email itu. Para penyerangnya juga cukup bodoh karena mereka hanya menyerang web server yang berada di lokasi dengan konektivitas bagus
        Layanan yang benar-benar menghasilkan uang sebenarnya berada di Caribbean dan hanya punya T1 1,5Mbps serta backup satelit 0,5Mbps. Tempat itu akan jauh lebih mudah dan lebih lama untuk disaturasi, dan kalau itu terjadi kerugian pendapatan per jam mungkin sekitar 1 juta dolar
    • Masalah dengan membayar uang pemerasan atau tebusan adalah itu memberi insentif kepada penyerang untuk datang lagi dan mengulanginya
      Memberi satu penyerang 5 ribu dolar mungkin terlihat lebih murah daripada membangun pertahanan, tapi jika kamu punya pertahanan maka kemungkinan kamu akan lebih jarang diserang ke depannya. Dan seperti yang dikatakan, tidak memberi uang kepada kriminal memang punya nilai tersendiri
  • Soal bagian “Aku tidak membalas, tapi kalau dipikir-pikir mungkin akan lucu kalau mengolok-olok mereka”, tidak merespons adalah satu-satunya jawaban yang efektif
    Mengolok-olok justru bisa membuatmu lebih menonjol dan jadi sasaran serangan lain. Jadi apa untungnya?

  • Dulu ada anggota keluargaku yang tahu ada kebocoran air dari mesin pencuci piring berkat peringatan kucing
    Kesimpulannya, kucing itu entah sedang mencoba menyelamatkan kami, atau mencoba membunuh kami

    • Ada anekdot mirip dalam novel Neil Gaiman Anansi Boys
      Seseorang yang tidur di luar terbangun karena suara burung gagak, dan tepat saat itu seekor kucing besar, mungkin harimau, sedang mengendap-endap mendekat
      Satu tokoh menganggap gagak itu sedang memperingatkan orang tersebut, sementara tokoh lain menganggap burung itu sedang memberi tahu harimau tentang orang yang tertidur agar bisa memakan sisa-sisa setelahnya
    • “Sedang menyelamatkan atau sedang membunuh,” itu benar-benar kucing Schrödinger yang dibalik ya
  • “Tata bahasa yang mengerikan”, benar-benar terasa seperti era sebelum ChatGPT
    Kalau dibahas lebih serius, akankah suatu hari nanti ada cara untuk menghentikan serangan DDoS selamanya? Semua ancaman itu buruk, tetapi DDoS terasa seperti jenis serangan yang paling receh. Tidak butuh keterampilan atau pengetahuan khusus, cukup menjalankan skrip atau bahkan membayar seseorang yang menawarkannya sebagai layanan

    • Tidak sesederhana “tinggal menjalankan satu skrip”
      Alamat IP, dan subnet jika IPv6, adalah sumber daya yang dibatasi untuk pengguna biasa, begitu juga bandwidth. Sebagian besar serangan amplifikasi memerlukan IP spoofing, yang dalam koneksi biasa sering kali tidak memungkinkan
      Jika ini serangan berbasis volume, pihak dengan bandwidth lebih besar yang menang. Penyerang bisa memakai amplifikasi di sini. Jika ini serangan berbasis beban atau lapisan aplikasi, biasanya bisa diatasi dengan memblokir IP penyerang di level firewall. Kasus ini sudah memakai WAF/Cloudfront, jadi ini lebih mendekati serangan lapisan aplikasi daripada serangan volume murni
      Menemukan IP penyerang yang perlu diblokir adalah masalah atribusi biaya per IP sumber secara akurat, lalu atribusi manfaat berupa aktivitas pengguna sah juga per IP sumber secara akurat, kemudian memblokir IP atau rentang yang biayanya jauh melebihi manfaatnya
      Praktiknya tidak semudah kedengarannya. Biaya bisa muncul dalam banyak bentuk: koneksi terbuka yang memakan memori, TLS handshake, request yang mahal untuk diparse oleh web server, request yang memicu query database mahal, bandwidth I/O, dan lain-lain. Karena itu kebanyakan orang menaruh Cloudflare atau, seperti di sini, Cloudfront di depan, lalu mengakalinya dengan aturan manual seperti pada kasus ini
    • Cloudflare cukup efektif sampai tingkat tertentu jika Anda mau menerima biaya sentralisasi
      Akan keren jika ada cara membuatnya tahan terhadap DDoS di level protokol, meski saya tidak yakin itu memungkinkan
    • DDoS lapisan aplikasi biasanya ditangani dengan tidak melakukan pekerjaan mahal untuk klien yang belum lebih dulu melakukan pekerjaan mahal. Kedengarannya mudah, tetapi dalam praktik bisa sulit
      Lalu ada DDoS berbasis volume. Ini bisa ditangani jika Anda punya bandwidth lebih besar daripada semuanya, tetapi itu cukup sulit dan juga membuat Anda sendiri menjadi calon penyerang
      Inovasi di sini adalah menyebarkan filter trafik lewat BGP. Null routing adalah produk minimum yang layak. Intinya, IP ini sedang diserang, jadi buang trafik ke sana secepat mungkin. Saya juga pernah melihat sistem yang lebih presisi, seperti membuang UDP, membuang paket terfragmentasi, membuang paket kirim/terima pada port UDP/TCP tertentu, dan semacamnya
      Sebagian besar sistem seperti ini dirancang agar rute khusus tidak langsung menyebar melampaui peer, tetapi dalam beberapa situasi penyebaran itu mungkin justru diinginkan
    • Gara-gara topiknya, saya sempat membaca ChatGPT sebagai CatGPT, dan sekarang tidak bisa hilang dari kepala
    • Mungkin bisa kalau jaringan jauh lebih terdistribusi dan berbandwidth rendah
      Jika sebagian besar pelanggan ada di Mexico dan Canada melancarkan DDoS sehingga jalur antara saya dan Canada penuh, itu mungkin bukan masalah besar. Asalkan router konsumen di Mexico tidak ikut-ikutan mencoba membantu bottleneck Canada itu
  • Saya kira alat pemberi makan kucingnya dihubungkan ke notifikasi
    Bagaimanapun juga, lucu. Siapa nama kucingnya?

    • Saat menulis ini, saya jadi berpikir kalau punya anjing yang terlatih baik, mungkin layanan pemantauan bisa dihubungkan ke perangkat yang mengeluarkan suara tertentu, lalu anjing yang mendengar suara itu memberi tahu manusia
      Namanya Bamboo. Sayangnya ia pergi karena kanker. Salah satu hal pertama yang dilakukannya setelah diadopsi adalah mencoba memakan tanaman bambu saya, jadi itulah asal namanya
    • Lucunya, itulah cara pelanggan pertama mengetahui operator telekomunikasi Australia Optus sedang down
      Alat pemberi makan kucing nirkabel mereka bergantung pada internet, dan ketika makanan tidak keluar, kucing itu mendatangi admin untuk protes
    • Saya usulkan Danielle dari Purrvice
  • Ini mengingatkan saya pada buku ini: Dogs that Know When their Owners are Coming Home https://www.sheldrake.org/books-by-rupert-sheldrake/dogs-tha...

  • Token bucket terlalu mudah untuk menghentikan DDoS, jadi biasanya satu-satunya saat kucing harus membangunkan saya adalah ketika Discord saya diserbu

    • Baru pertama kali mendengarnya jadi saya cari: https://en.wikipedia.org/wiki/Token_bucket
      Ini tampaknya lebih mirip cara membuang paket di firewall atau sisi ingress sebelum mencapai application server dan menimbulkan beban berlebihan
    • Itu hanya berlaku untuk beberapa jenis DDoS ;)
      Jika serangannya punya volume permintaan koneksi atau jumlah alamat IP unik yang cukup besar, layanan tetap bisa kewalahan
      Token bucket biasanya hanya bagian dari strategi ketahanan secara keseluruhan, bukan solusi ajaib yang menyelesaikan semua masalah denial-of-service