Veri herkes için çok önemlidir, peki verilerimizi barındırdığımız SQL Serverınızın ne kadar güvende olduğunu biliyor musunuz? Güvenlik, herhangi bir veritabanı ortamı için çok kritik bir alandır. Veritabanı güvenlik önlemleri, bir kuruluşun gizliliğini ve bütünlüğünü korumak için verilerini korumasına yardımcı olur. Tüm güvenlik ilkelerinin sistemleri korumak için uygun şekilde yapılandırıldığından emin olmak için güvenlik testleri düzenli olarak yapılmalıdır. Bu yüzden ki nasıl sunucular, uygulamak için güvenlik politikalarına sahip olmaya özen gösteriyorsunuz, veritabanı güvenliğini de ön planda tutmanız gerekmektedir.
SQL Server vulnerability assessment ile olası veritabanı güvenlik açıklarını keşfetmemize ve düzeltmemize yardımcı olur. Bu araç ile veritabanı bazlı tüm güvenlik açıklarını belirleyebilir ve nokta atışı çalışma yaparak ihtiyaç duyacağınız tedbirleri alabilirsiniz. İşte Bu yazı içerisinde SQL Server güvenlik testinin nasıl kullanılacağını ve gerçekleştirileceğini bu yazımda anlatacağım.
Peki bu aracı nasıl çalıştırabilirsiniz? Tarama yapmak istediğiniz veritabanı üzerinde Tasks –> Vulnerability Assesment –> Scan For Vulnerabilies.. seçeneğini aşağıdaki görselde ki seçmeniz gerekmektedir.
Bu işlemi seçtikten sonra size tarama sonucu kayıt etmek isteyeceği bir dosya dizini seçmenizi isteyecektir. Aşağıdaki görselde ben G:\BACKUP dizinini seçiyorum.
Birkaç dakika içerisinde size tarama sonuçları ile ilgili bir ekran üzerinden SQL Server veritabanı seviyesinde güvenlik zaafiyetiniz ile ilgili bilgiler veriliyor olacaktır.
Buradaki bilgiler Microsoft Defender aracılığı ile sizlere sağlanmaktadır. Microsoft Defender hizmetini Azure SQL ve Azure SQL Managed Instance için de kullanabilirsiniz. Microsoft Defender for SQL, olası veritabanı güvenlik açıklarını ortaya çıkarmak ve azaltmak ve veritabanınıza yönelik bir tehdidi gösterebilecek anormal etkinlikleri algılamak için geliştirilmiş bir hizmettir.
Aşağıdaki görsel, aracı çalıştırdığınız veritabanı için oluşturulmuş örnek bir raporunu gösteriyor. Bu raporu anlamak için odaklanmanız gereken ana noktalar aşağıdadır.
Başarısız veya Başarılı kuralların sayısını gösteren bir gösterge paneli ile zaafiyet değerlendirmenizi değerlendirebilirsiniz. Örneğimizde 6 kuralın başarısız olduğunu, 29 kuralın geçtiğini görebiliriz. Başarısız olan kontroller ayrıca Yüksek , Orta ve Düşük seviye risk kategorileri altında sınıflandırılır. Riskin ciddiyetini belirlemenize yardımcı olacaktır.Raporu isterseniz Excel olarakta alabilir ve inceleyebilirsiniz.
Yukarıdaki görselde başarısız olduğumuz 6 uyarıyı görebilirsiniz. Bunların her birinin içerisine girebilir ve neler yaparak çözebileceğinizi inceleyebilirsiniz. Başarılı olduklarınızdan çok başarısız olduklarınıza odaklanarak gerekli çözümleri uygulamanın artık veritabanı yöneticisi ve kurum için ne kadar önemli olduğunu gördük. Başarısız olduğum maddelerden birinin içerisine girdiğim taktirde aşağıdaki gibi neden ve nasıl çözebileceğim ile ilgili adımları görebilirim. Aşağıdaki görselde göreceğiniz konu başlığının detaylarını da görebiliyoruz. En güzel kısımlarından biri ise zaafiyeti nasıl çözebileceğimize dair çıktınında bu detay içerisinde yer alıyor olmasıdır.
Rapor içerisinde gerekli gördüğünüz çözümleri uyguladıktan sonra detay penceresinde sol üst tarafta yer alan “Approve as Baseline” yada “ Clear Baseline” seçenekleri ile gelen zaafiyet bildirimlerinde gözardı edebilir yada çözümü onayladığınızı işaretleyebilirsiniz. Böylece bir sonraki tarama işleminde karşınıza gelmeyecektir.
Sonuç olarak, belirli dönemlerde bu zaafiyet raporunu alıp gerekli analizleri yapmak ve uygulamak önerilen bir çalışma şeklidir. Çünkü verilerinizi güvenliği için Güvenlik testleri, güvenlik politikalarımızın önemli bir parçasıdır. Bu zaafiyet taramasını SQL Serverınızın tüm veritabanları için uygulanabilir olduğunuda göz önünde bulundurmalısınız.