CustomError Açıklığı (CWE-756)
Bu makalede CustomError (CWE-756), yani Web Uygulamaya Özel Hata Sayfası Eksikliği açıklığı anlatılacaktır.

Açıklık Önem Derecesi:

Düşük

Açıklığın Etkisi:

Bilgi İfşası

Açıklığın Açıklaması:

Web uygulamalar 404 Not Found, 400 Bad Request v.b. hata sayfalarında varsayılan hata sayfalarını yansıtmaktadırlar. Bu tarz varsayılan hata sayfalarında uygulamayla alakalı hassas veriler ifşa edilebilmektedir. Bir saldırgan bir istisnayı (exception’ı) kasıtlı olarak tetikleyebilir ve bu yolla uygulama ve sistem hakkında değerli bilgiler elde edebilir. Örn; işletim sistemi türü ve/veya versiyonu, web sunucu yazılımı ismi ve/veya versiyonu, framework ismi ve/veya versiyonu, veritabanı ismi, veritabanı tablosu ismi, veritabanı tablosunun kolon ismi, veritabanı bağlantı string’i (kullanıcı adı ve parola) v.b.

Web uygulamalar kişisel (geliştiricinin oluşturduğu) hata sayfaları tanımlamadıklarında ve kullanmadıklarında “Web Uygulamaya Özel Hata Sayfası Eksikliği (CWE-12)” açıklığı vardır denir. Web uygulamalarda bu açıklık örneğin şöyle örneklenebilir:

ASP.NET - Web.config - Güvensiz Örnek:

<!-- GÜVENSİZ YAPILANDIRMA -->

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
       ...

       <customErrors mode="Off"/>

       ...
    </system.web>
</configuration>

ASP.NET - Web.config - Güvenli Örnek (Alternatif #1):

<!-- GÜVENLİ YAPILANDIRMA -->

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
       ...

       <!-- Local ve Remote Kullanıcıların Her İkisi İçin -->
       <CustomErrors mode="On" defaultRedirect="global_hata_sayfasi.aspx">
       ...
    </system.web>
</configuration>


ASP.NET - Web.config - Güvenli Örnek (Alternatif #2):

<!-- GÜVENLİ YAPILANDIRMA -->

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
       ...

       <!-- Yalnızca Remote Kullanıcılar İçin -->
        <CustomErrors mode="RemoteOnly" defaultRedirect="global_hata_sayfasi.aspx">
       ...
    </system.web>
</configuration>

Ayar “off” olarak kaldığında hata durumlarında IIS varsayılan hata sayfasını son kullanıcıya dönecektir. Bu güvensiz durumdur. Ayar “on” veya “RemoteOnly” olarak güncellendiğinde ise hata durumlarında “defaultRedirect”teki geliştiricinin belirlediği / tasarladığı uygulamaya has hata sayfası son kullanıcıya dönecektir. Bu güvenli durumdur.

Açıklığın Önlemi:

ASP.NET web uygulamalarda web.config dosyası etiketleri arasında şu alternatif iki ayardan biri eklenmelidir ve defaultRedirect özelliğinde belirtilen hata sayfası dosyası oluşturulmalıdır.

Yöntem #1

<!-- Local ve Remote Kullanıcıların Her İkisi İçin -->
<CustomErrors mode="On" defaultRedirect="global_hata_sayfasi.aspx">

Yöntem #2


<!-- Yalnızca Remote Kullanıcılar İçin -->
<CustomErrors mode="RemoteOnly" defaultRedirect="global_hata_sayfasi.aspx">

Yararlanılan Kaynaklar:

  • https://cwe.mitre.org/data/definitions/756.html
  • https://cwe.mitre.org/data/definitions/12.html
  • https://www.codeproject.com/Articles/2345/Custom-Errors-in-ASP-NET
  • https://learn.microsoft.com/en-us/archive/msdn-technet-forums/038bf178-1de5-4a95-96e4-f4d90401ad23
Bu yazı 21.10.2025 tarihinde, saat 04:19:26'de yazılmıştır. 21.10.2025 tarihi ve 01:30:00 saatinde ise güncellenmiştir.
Yazar : Hasan Fatih ŞİMŞEK Görüntülenme Sayısı : 9
Yorumlar
Henüz yorum girilmemiştir.
Yorum Ekle
*
* (E-posta adresiniz yayınlanmayacaktır.)
*
*

#Arşiv


#Giriş

ID :
Şifre :