1 puan yazan GN⁺ 2025-04-26 | 1 yorum | WhatsApp'ta paylaş
  • Substack editöründe belirli sistem yolları girildiğinde ağ hatası oluşuyor
  • Web uygulaması güvenlik duvarı (WAF), bu tür yolları dizin geçişi saldırıları ve komut ekleme saldırılarını önlemek için engelliyor
  • Güvenlik ile kullanılabilirlik arasındaki denge önemli bir sorun olarak öne çıkıyor
  • Teknik yazarlar için daha iyi bir çözüme ihtiyaç var
  • Sorun, alternatif bir yol gösterimi kullanılarak aşılabiliyor

/etc/h*sts Substack editörünü bozduğunda: web içerik filtrelemesinin macerası

Gizemli ağ hatası

  • DNS çözümlemesi hakkında teknik bir yazı hazırlanırken beklenmedik bir hata ortaya çıktı
  • /etc/h*sts yolu girildiğinde ağ hatası oluştu ve otomatik kaydetme başarısız oldu
  • Substack’in durum sayfası her şeyin normal çalıştığını gösteriyordu

İnceleme başlıyor

  • Belirli bir dosya yolu yazıldığında hata oluşuyor, yol değiştirildiğinde ise normal çalışıyordu
  • /etc/h*sts gibi yollar hata üretirken, değiştirilmiş sürümlerinde sorun yaşanmıyordu

İçeride neler oluyor?

  • Tarayıcı geliştirici araçlarında 403 Forbidden yanıtı görüldü
  • Olayda Cloudflare’ın rol oynadığı anlaşıldı

Web uygulaması güvenlik filtrelerini anlamak

Kısaca WAF

  • Web uygulaması güvenlik duvarı (WAF), bir web sitesinin güvenlik görevlisi gibi çalışır
  • Şüpheli istekleri engeller

Dizin geçişi saldırıları: neden dikkat çekiyor?

  • Dizin geçişi saldırıları, hassas sistem dosyalarına erişme girişimleridir
  • /etc/h*sts gibi yollar bu yüzden saldırı hedefi olarak değerlendirilebilir

Komut ekleme: bir başka güvenlik sorunu

  • Komut ekleme saldırıları, sistem komutlarının çalıştırılmasını hedefler
  • Sistem yollarından söz edildiğinde filtreler bunu engelleyebilir

Gizem derinleşiyor: tarihsel örnekler

  • Başka Substack gönderilerinde benzer yol kullanım örnekleri bulundu
  • Filtreleme davranışının belirli bir noktada değişmiş olabileceği düşünülüyor

Güvenlik ve kullanılabilirlik: hassas denge

  • Substack’in filtreleri koruma amacı taşısa da teknik yazarlar için bir engele dönüşüyor
  • İyileştirme alanları var: daha açık hata mesajları, teknik içeriği tanıma, belgelenmiş geçici çözümler sunma

HTTP yanıtına bakış

  • API seviyesinde 403 Forbidden durum kodu doğrulandı

Teknik içerik platformları için daha iyi çözümler

  1. Bağlamsal filtreleme: kod blokları veya teknik tartışmalarda sistem yollarını tanıyabilme
  2. Açık hata mesajları: "ağ hatası" yerine engellemenin güvenlik filtresinden kaynaklandığını belirtme
  3. Belgelenmiş geçici çözümler: hassas yolların nasıl tartışılabileceğine dair yöntemler sunma

Sonuç: güvenlik ile teknik yazının kesişimi

  • Substack editöründeki sorun, güvenlik ile teknik yazım arasındaki karmaşık zorlukları ortaya koyuyor

  • Güvenlik filtreleri açısından saldırı kalıbı gibi görünen bir şey, gerçekte meşru içerik olabilir

  • Sorun, alternatif bir yol gösterimi kullanılarak çözülebilir

  • Benzer filtreleme sorunlarını başka platformlarda yaşayıp yaşamadığınızı yorumlarda paylaşmanız isteniyor

1 yorum

 
GN⁺ 2025-04-26
Hacker News görüşleri
  • CDN'de WAF kuralları ayarlayan kişiler, teknik içerik ele alan site ve hizmetleri çoğu zaman yeterince anlamıyor. Bu yalnızca Cloudflare'a özgü değil; Akamai de aynı sorunu yaşıyor

    • Veritabanı ele alan bir siteyseniz, temel SQL injection önleme kurallarını açmak siteyi kullanılmaz hale getirebilir
    • Dosya dahil etme kural setleri de var; bu yüzden /etc/hosts ya da /etc/passwd gibi şeyler engelleniyor
    • Güvenlik ile kullanılabilirlik arasındaki dengeyi önemli buluyorum. Tüm WAF kurallarını uygulamak güvenliği artırır, ancak teknik kavramların tartışılması gereken hizmetlerde rahatsızlık yaratır
    • Kuralları ince ayarlamak çok zaman alır. Kuralları korurken kullanım senaryolarına izin vermek için çok sayıda değişiklik gerekir
    • Sayfanın yüklenmemesi ya da kaynakların yüklenmemesi gibi sorunlar çıkabilir. Bu da kuralları kapatma isteği doğurur
  • Bir e-ticaret platformuyla ilgili bir anekdotu hatırlatıyor: Birisi bellek sızıntısı olan bir web mağazası kodlamıştı ve loglarda "OutOfMemoryException" dizgesi görünürse uygulamayı yeniden başlatarak sorunu çözmüştü

    • Başka bir geliştirici müşteri arama sorgularını kaydetmek istemişti ve biri arama kutusuna "OutOfMemoryException" yazınca sorun çıkıyordu
  • /etc/hosts ya da /etc/./hosts engelleniyor mu merak ediyorum. Bu, başarısız olmaya mahkum bir köstebek vurma oyunu gibi görünüyor. Hacker'lar daha akıllı ve daha kararlı olduğundan, yalnızca kanıtlanmış güvenliğe güvenmek gerekir

  • Substack'in teknik yazarlar için bu durumu nasıl iyileştirebileceğine dair görüşler

    • İnsanların herhangi bir konuda yazı düzenleyebildiği bir endpoint'te aptal WAF çalıştırmamalılar
    • Bu, bir web geliştirme forumunda üyelerin XSS hakkında konuşamaması için XSS filtresi uygulamaya benziyor
    • İçeriği doğru şekilde escape etmeyi öğrenmeleri gerekiyor
  • Web güvenliğinde koruma ile kullanılabilirlik arasındaki gerilimi gösteren ilginç bir örneği vurguluyor

    • Ama bu durumda asıl vurgulanan şey bir bug. Güvenlik ile kullanılabilirlik arasında gerçekten bir gerilim var, ancak bu örnek onlardan biri değil
    • Güvenlik ve kullanılabilirlik arasındaki gerilim genellikle bir trade-off'tur. Güvenliği artırdığınızda kullanıcı deneyimi kötüleşir
    • Bu örnek ise hem kötü güvenliği hem de kötü kullanıcı deneyimini gösteriyor
  • Rekabetçi programlama takımı eğitirken yaşanan bir sorun: Kod içinde C++ tipleri ve anahtar kelimeleri geçince 403 hatası oluşuyordu

    • Bankada çalışırken Python dosyalarının yüklenmesi gereken bir API vardı ve Python dosyalarının çoğu 403 hatası veriyordu
    • Yeni bir bulut ortamında da benzer bir sorun yaşanıyor
  • İç red team, XSS ve diğer injection saldırı denemelerini içeren veriler paylaştığında yaşanan sorun

    • Saldırının kendisi çalışmıyordu, ancak bu girdilerin varlığı nedeniyle iç yönetici sayfası yüklenmiyordu
  • Eski bir sorun yeniden ortaya çıkıyor. Buna Scunthorpe sorunu deniyor

  • OpenRouter ile ilgili benzer bir sorun yaşanmış. OpenRouter, çeşitli LLM'leri kullanmak için tek bir endpoint sunan bir hizmet

    • Belirli HTML ve JavaScript parçaları POST isteği gövdesinde yer aldığında birçok istek engelleniyor
  • İçerik filtreleme büyük ölçüde bağlama dayanmalı. WAF, filtrelemesi gereken şeyden bağlamsal olarak kopuk olduğunda sorun çıkıyor

    • Spam filtrelemeye benziyor. E-posta sunucuları, gönderen sunucunun yapılandırmasına göre filtreleme yapar
    • İçerik temelli filtrelemeden çok iletim temelli filtreleme daha etkilidir. Aynısı web siteleri ve WAF için de geçerli