Hata Ayıklama Güvenliği

Başka bir işlemde hata ayıklama özelliği, özellikle uzaktan hata ayıklama yaparken, başka türlü sahip olmadığınız son derece geniş güçler sağlar. Kötü amaçlı bir hata ayıklayıcı, hata ayıklanan makinede geniş çapta hasara neden olabilir.

Ancak birçok geliştirici, güvenlik tehdidinin ters yönde de akabileceğinin farkında değildir. Hata ayıklama işlemindeki kötü amaçlı kodun hata ayıklama makinesinin güvenliğini tehlikeye atması mümkündür: korunması gereken bir dizi güvenlik açığı vardır.

En İyi Güvenlik Uygulamaları

Hata ayıkladığınız kod ile hata ayıklayıcı arasında örtük bir güven ilişkisi vardır. Bir şeyin hatalarını ayıklamak istiyorsanız, bunu çalıştırmaya da istekli olmanız gerekir. Sonuç olarak, hata ayıkladığınız şeye güvenebilmeniz gerekir. Güvenemiyorsanız, hata ayıklamamalısınız veya tehlikeye atabileceğiniz bir makineden ve yalıtılmış bir ortamda hata ayıklamanız gerekir.

Olası saldırı yüzeyini azaltmak için üretim makinelerinde hata ayıklama devre dışı bırakılmalıdır. Aynı nedenle hata ayıklama hiçbir zaman süresiz olarak etkinleştirilmemelidir.

Yönetilen Hata Ayıklama Güvenliği

Tüm yönetilen hata ayıklama için geçerli olan bazı genel öneriler aşağıdadır.

  • Güvenilmeyen bir kullanıcının işlemine eklerken dikkatli olun: bunu yaptığınızda, güvenilir olduğunu varsayarsınız. Güvenilmeyen bir kullanıcının işlemine eklemeye çalıştığınızda, işleme eklemek isteyip istemediğinizi soran bir güvenlik uyarısı iletişim kutusu görüntülenir. "Güvenilen kullanıcılar" sizi ve aspnet, localsystem, networkservice ve localservice gibi .NET Framework'ün yüklü olduğu makinelerde yaygın olarak tanımlanan standart kullanıcılar kümesini içerir. Daha fazla bilgi için bkz . Güvenlik Uyarısı: Güvenilmeyen bir kullanıcının sahip olduğu işleme ekleme tehlikeli olabilir. Aşağıdaki bilgiler şüpheli görünüyorsa veya emin değilseniz bu işleme eklemeyin.

  • Bir projeyi İnternet'in dışına indirirken ve Visual Studio'ya yüklerken dikkatli olun. Hata ayıklama olmadan bile bunu yapmak çok risklidir. Bunu yaptığınızda, projenin ve içerdiği kodun güvenilir olduğunu varsayarsınız.

    Daha fazla bilgi için bkz . Yönetilen Kodda Hata Ayıklama.

Uzaktan Hata Ayıklama Güvenliği

Yerel hata ayıklama genellikle uzaktan hata ayıklamadan daha güvenlidir. Uzaktan hata ayıklama, yoklanabilir toplam yüzey alanını artırır.

Uzaktan hata ayıklamada Visual Studio Uzaktan Hata Ayıklama İzleyicisi (msvsmon.exe) kullanılır ve yapılandırmaya yönelik çeşitli güvenlik önerileri vardır. Kimlik Doğrulaması Yok modu güvenli olmadığından, kimlik doğrulama modunu yapılandırmanın tercih edilen yolu Windows Kimlik Doğrulaması'dır.

Error dialog

Windows Kimlik Doğrulama modunu kullanırken, msvsmon'a bağlanmak için güvenilmeyen bir kullanıcı izni vermenin tehlikeli olduğunu unutmayın, çünkü kullanıcıya msvsmon barındıran bilgisayardaki tüm izinleriniz verilir.

Uzak makinede bilinmeyen bir işlemin hatalarını ayıklamayın: Hata ayıklayıcıyı çalıştıran makineyi etkileyebilecek veya msvsmon'un güvenliğini tehlikeye atabilecek olası açıklardan yararlanmalar vardır. Bilinmeyen bir işlemde kesinlikle hata ayıklamanız gerekiyorsa yerel olarak hata ayıklamayı deneyin ve olası tehditleri yerel olarak tutmak için bir güvenlik duvarı kullanın.

msvsmon yapılandırma hakkında bilgi için bkz . Uzak hata ayıklayıcıyı ayarlama.

Web Hizmetleri Hata Ayıklama Güvenliği

Yerel olarak hata ayıklamak daha güvenlidir, ancak büyük olasılıkla web sunucusunda Visual Studio yüklü olmadığından yerel hata ayıklama pratik olmayabilir. Genellikle, web hizmetlerinde hata ayıklama, geliştirme dışında uzaktan yapılır, bu nedenle uzaktan hata ayıklama güvenliğine yönelik öneriler Web hizmetleri hata ayıklaması için de geçerlidir. İşte bazı ek en iyi yöntemler. Daha fazla bilgi için bkz . XML Web Hizmetlerinde Hata Ayıklama.

  • Güvenliği aşılmış bir Web sunucusunda hata ayıklamayı etkinleştirmeyin.

  • Hata ayıklamadan önce Web sunucusunun güvenli olduğunu bildiğinizden emin olun. Güvenli olduğundan emin değilseniz hata ayıklamayın.

  • İnternet'te kullanıma sunulan bir Web hizmetinde hata ayıklarken özellikle dikkatli olun.

Dış Bileşenler

Özellikle kodu yazmadıysanız, programınızın etkileşimde olduğu dış bileşenlerin güven durumunu unutmayın. Ayrıca Visual Studio'nun veya hata ayıklayıcının kullanabileceği bileşenlere de dikkat edin.

Simgeler ve Kaynak Kodu

Güvenlik hakkında düşünmeniz gereken iki Visual Studio aracı şunlardır: