Websitelerinde Form ve Consent Denetimi: webform-privacy-consent-scanner ile bir vaka çalışması

Kurumsal websiteleinrde formlar çoğu kez iyi niyetle “hemen” ekleniyor ama Bilgi Güvenliği Ofisi (BGO) gözetimi dışına çıktığında kurumu riske sokabiliyor. Ben de bu gerçek ihtiyaçtan yola çıkıp açık kaynak bir denetim aracı geliştirdim: webform-privacy-consent-scanner.

Araç, websitelerinizi tarayarak Google / HubSpot / Microsoft Forms ve CMP (Cookiebot, OneTrust, Efilli) varlığını saptıyor, rıza (consent) akışını tespit ediyor ve CSV/JSON rapor üretiyor. Dinamik öğeler için Playwright modu ve --wait ile ayarlanabilir bekleme süresi bulunuyor.

Karşılaştığım Zorluklar

  • GTM ile sonradan enjekte edilen formlar/CMP’ler: statik kontrollerde görünmeyebiliyor.
  • Erişim kısıtlamaları: bazı siteler fetch’i engelliyor tek yönteme güvenmek riskli.
  • Geliştirdiğim çözüm

    Karma tarama yaklaşımı

    Geniş tespit kapsamı

    Çıktılar

  • CSV / JSON ve filtrelenebilir metin raporu, sonuçlar filter.mjs ile nitelik bazlı işlenebiliyor.
  • Vaka: Hızlı envanter ve olası formlar

    İlk kurum içi değerlendirme taramasında, bazı sayfalarda HubSpot ve Google Forms bileşenlerinin bulunabileceğine dair işaretler gözlendi. Bu gözlemler, envanterin güncellenmesine katkı sunmak amacıyla Bilgi Güvenliği Ofisi (BGO) ile paylaşıldı.

    Paylaşılan çıktılar, formların konumlarına ilişkin başlangıç görünürlüğü sağlar; nihai teyit ve envanter kayıtları BGO koordinasyonunda ilerleyecektir.

    CMP akışının (banner, kişisel tercihler, kayıt/kanıt) doğrulanması ve gerekli görülen iyileştirmeler, BGO’nun yönlendireceği süreçler kapsamında ele alınacaktır.

    Bu çalışma tespit ve raporlama odaklıdır; sonraki adımlar kurumun ilgili ekipleri tarafından belirlenecek ve uygulanacaktır.

    CMP nedir, neden önemlidir?

    CMP (Consent Management Platform), kullanıcının verisinin hangi amaçlarla işleneceğine açık, geri alınabilir izin vermesini ve bunun belgelenmesini sağlar. Sadece bir “banner” değil, kişisel tercihler, kanıt kayıtları, GTM/etiket yöneticisi entegrasyonları ve “izin yoksa işlem yok” ilkesinin teknik olarak uygulanmasını kapsar. Formların gösterilmesi ve gönderilmesi sırasında da rıza sürekliliğini güvence altına alır.

    JSON çıktı örneği

    Gerçek bir taramadan basitleştirilmiş örnek (JSON):
            {
            "url": "https://example.edu/contact",
            "detected_forms": ["Google Form"],
            "detected_cmp": ["OneTrust"],
            "consent_status": "detected",
            "timestamp": "2025-10-10T13:24:00Z"
            }
        

    Hızlı başlangıç

    CLI’da --dynamic, --wait, --cmp, --concurrency, --timeout gibi seçenekler bulunur; varsayılanlar ve örnekler README’de yer alır.

    En iyi uygulamalar (kısa kontrol listesi)

    Sorumlu kullanım (önerdiğim çerçeve)

    Planlanmamış ama Yapılabilecekler

    npm version monthly downloads GitHub stars license

  • Low-Code ile Koç Üniversitesi Kampüs Erişim Sistemi
  • Koç University Mobile Application Overview
  • Low-Code ile Geliştirilen Workspace Hibrit Çalışma Uygulaması
  • Fund Raising Activities at Koç University
  • Websitelerinde Form ve Consent Denetimi
  • Web Performansının Zaman İçinde Takip Edilmesi: Lighthouse Performance Monitör Geliştirme
  • THE Dünya Üniversite Sıralamaları