1 poin oleh GN⁺ 2025-04-26 | 1 komentar | Bagikan ke WhatsApp
  • Di editor Substack, saat memasukkan jalur sistem tertentu, muncul kesalahan jaringan
  • Web Application Firewall (WAF) memblokir jalur seperti ini untuk mencegah serangan path traversal dan serangan command injection
  • Keseimbangan antara keamanan dan kemudahan penggunaan menjadi isu penting
  • Diperlukan solusi yang lebih baik untuk penulis teknis
  • Masalah dapat diatasi dengan menggunakan jalur alternatif

Ketika /etc/h*sts Mengganggu Editor Substack: Petualangan Pemfilteran Konten Web

Kesalahan jaringan yang misterius

  • Saat mengerjakan posting teknis tentang resolusi DNS, muncul kesalahan tak terduga
  • Saat memasukkan jalur /etc/h*sts, terjadi kesalahan jaringan dan penyimpanan otomatis gagal
  • Halaman status Substack menunjukkan layanan berjalan normal

Investigasi dimulai

  • Kesalahan terjadi saat memasukkan jalur file tertentu, tetapi berjalan normal bila jalurnya diubah
  • Jalur seperti /etc/h*sts memicu kesalahan, sedangkan bentuk yang dimodifikasi tidak menimbulkan masalah

Apa yang terjadi di balik layar?

  • Di alat pengembang browser, terlihat respons 403 Forbidden
  • Cloudflare terlibat

Memahami filter keamanan aplikasi web

Penjelasan singkat tentang WAF

  • Web Application Firewall (WAF) berperan sebagai petugas keamanan untuk situs web
  • Ia memblokir permintaan yang mencurigakan

Serangan path traversal: alasan untuk waspada

  • Serangan path traversal adalah upaya mengakses file sistem sensitif
  • Jalur seperti /etc/h*sts dapat menjadi target serangan

Command injection: masalah keamanan lainnya

  • Serangan command injection bertujuan memicu eksekusi perintah sistem
  • Saat jalur sistem disebutkan, filter dapat melakukan pemblokiran

Misteri makin dalam: contoh historis

  • Ditemukan contoh penggunaan jalur serupa di posting Substack lain
  • Ada kemungkinan perilaku pemfilteran berubah pada titik waktu tertentu

Keamanan vs kemudahan penggunaan: keseimbangan yang rumit

  • Filter Substack ditujukan untuk perlindungan, tetapi menjadi hambatan bagi penulis teknis
  • Ada ruang untuk perbaikan: pesan kesalahan yang jelas, pengenalan konten teknis, dan solusi yang terdokumentasi

Meninjau respons HTTP

  • Di level API, dikonfirmasi kode status 403 Forbidden

Solusi yang lebih baik untuk platform konten teknis

  1. Pemfilteran kontekstual: mengenali jalur sistem dalam blok kode atau diskusi teknis
  2. Pesan kesalahan yang jelas: menjelaskan bahwa pemblokiran disebabkan oleh filter keamanan, bukan sekadar "kesalahan jaringan"
  3. Solusi terdokumentasi: menyediakan cara untuk membahas jalur sensitif

Kesimpulan: persimpangan antara keamanan dan penulisan teknis

  • Masalah pada editor Substack menyoroti tantangan kompleks antara keamanan dan penulisan teknis

  • Apa yang tampak seperti pola serangan bagi filter keamanan sebenarnya bisa merupakan konten yang sah

  • Masalah dapat diatasi dengan menggunakan jalur alternatif

  • Permintaan agar pembaca membagikan pengalaman mereka di komentar jika pernah mengalami masalah pemfilteran serupa di platform lain

1 komentar

 
GN⁺ 2025-04-26
Komentar Hacker News
  • Orang yang menetapkan aturan WAF di CDN sering kali tidak terlalu memahami situs dan layanan yang menangani konten teknis. Bukan hanya Cloudflare, Akamai juga mengalami masalah yang sama

    • Jika sebuah situs membahas database, menyalakan aturan dasar pencegahan serangan SQL injection bisa merusak situs tersebut
    • Ada juga kumpulan aturan penyertaan file, sehingga hal seperti /etc/hosts atau /etc/passwd diblokir
    • Saya pikir keseimbangan antara keamanan dan kegunaan itu penting. Menerapkan semua aturan WAF memang memperkuat keamanan, tetapi merepotkan untuk layanan yang harus membahas konsep teknis
    • Menyesuaikan aturan secara rinci memakan banyak waktu. Dibutuhkan banyak perubahan untuk mempertahankan aturan sambil tetap mengizinkan kasus penggunaan yang diperlukan
    • Bisa muncul masalah seperti halaman tidak dimuat atau resource tidak dimuat. Jadi timbul godaan untuk mematikan aturannya
  • Ini mengingatkan pada sebuah anekdot tentang platform e-commerce: seseorang membuat web shop dengan memory leak, lalu mengatasinya dengan me-restart aplikasi setiap kali string "OutOfMemoryException" muncul di log

    • Pengembang lain ingin mencatat kata kunci pencarian pelanggan, dan masalah pun muncul ketika seseorang mengetik "OutOfMemoryException" di kotak pencarian
  • Saya jadi penasaran apakah mereka memblokir /etc/hosts atau /etc/./hosts. Ini terasa seperti permainan whack-a-mole yang pasti akan gagal. Para peretas lebih pintar dan lebih gigih, jadi kita seharusnya hanya bergantung pada keamanan yang sudah terbukti

  • Pendapat tentang bagaimana Substack bisa memperbaiki situasi ini untuk para penulis teknis

    • Jangan menjalankan WAF bodoh pada endpoint tempat orang bisa mengedit tulisan tentang topik apa pun
    • Ini seperti menerapkan filter XSS di forum pengembangan web sehingga para anggota tidak bisa membahas XSS
    • Mereka harus belajar cara melakukan escape konten dengan benar
  • Ini menyoroti contoh menarik tentang ketegangan antara perlindungan dan kegunaan dalam keamanan web

    • Tetapi dalam kasus ini, yang disorot adalah bug. Ketegangan antara keamanan dan kegunaan memang nyata, tetapi ini bukan contohnya
    • Ketegangan antara keamanan dan kegunaan biasanya merupakan trade-off. Saat keamanan diperkuat, pengalaman pengguna menurun
    • Kasus ini menunjukkan keamanan yang buruk sekaligus pengalaman pengguna yang buruk
  • Masalah yang muncul saat mengajar tim competitive programming: jika tipe dan kata kunci C++ muncul di kode, akan terjadi error 403

    • Saat bekerja di bank, ada API yang mengharuskan pengiriman file Python, dan sebagian besar file Python menghasilkan error 403
    • Masalah serupa juga muncul di lingkungan cloud yang baru
  • Masalah yang terjadi ketika red team internal mem-posting data yang mencakup upaya serangan XSS dan injection lainnya

    • Serangannya sendiri tidak berhasil, tetapi keberadaan entri seperti itu membuat halaman admin internal tidak bisa dimuat
  • Masalah lama muncul lagi. Ini disebut masalah Scunthorpe

  • Pernah mengalami masalah serupa terkait OpenRouter. OpenRouter adalah layanan yang menyediakan satu endpoint untuk menggunakan berbagai LLM

    • Banyak permintaan diblokir ketika potongan HTML dan JavaScript tertentu disertakan dalam body permintaan POST
  • Pemfilteran konten seharusnya sangat bergantung pada konteks. Masalah muncul ketika WAF dipisahkan dari hal yang seharusnya ia filter

    • Ini mirip dengan pemfilteran spam. Server email memfilter berdasarkan konfigurasi server pengirim
    • Pemfilteran berbasis jalur pengiriman lebih efektif daripada pemfilteran berbasis konten. Hal yang sama berlaku untuk situs web dan WAF