• Yapay zekadan makale özeti

    • Bu video, Cihan Özhan tarafından sunulan bir SQL Server güvenlik eğitim dersidir. Eğitmen, SQL Server kitabının güvenlik bölümünden örnekler üzerinden konuları anlatmaktadır.
    • Video iki ana bölümden oluşmaktadır. İlk bölümde SQL injection'ın ne olduğu, tehlikeleri ve çeşitli senaryoları (tablo silme, veri ekleme, güncelleme, XP_CMDSHELL_EXTENS prosedürünü aktifleştirme) Adventure Works veritabanı üzerinde gösterilmektedir. İkinci bölümde ise SQL Server'da erişim güvenliği konusu ele alınmakta, login oluşturma, düzenleme, devre dışı bırakma, kilidi kaldırma ve kullanıcı izinleri atama işlemleri adım adım anlatılmaktadır.
    • Eğitimde ayrıca rol atama ve kaldırma işlemleri de sistem store prosedürleri kullanılarak açıklanmakta, store prosedürlerinde doğru ve yanlış kullanım örnekleri de gösterilmektedir.
    SQL Server Güvenlik Bölümüne Giriş
    • Cihan Özhan, SQL Server kitabının güvenlikle ilgili bölümünün örneklerini inceleyecek.
    • Kitapta iki ayrı güvenlik bölümü bulunuyor: SQL Server kod güvenliği ve SQL Server erişim güvenliği.
    • Kod güvenliği bölümünde SQL injection konuları, erişim güvenliği bölümünde yetkilendirme ve izinlerle ilgili örnekler incelenecek.
    01:09SQL Injection Nedir?
    • SQL injection, SQL sorgularına yeni kod enjekte ederek sorguları manipüle etme yöntemidir.
    • Normal bir SELECT sorgusu ile tek bir kayıt getirilirken, injection ile araya "OR 1=1" gibi bir kod eklenerek tablodaki tüm kayıtlar getirilebilir.
    • SQL injection ile ilgili detayları kitaptan öğrenmek önemlidir.
    02:35SQL Injection Örnekleri
    • Kullanıcılar isimli tabloda email adresine göre sorgulama işlemi yapılabilir.
    • SQL injection ile "OR" ve tek tırnaklar içerisindeki "x" ve eşittir işareti eklenerek tüm kayıtlar getirilebilir.
    • SQL injection tek bir yöntemi değil, birden fazla farklı yöntemi vardır.
    05:17SQL Injection'in Tehlikeleri
    • SQL injection ile sadece SELECT sorgusu ile bir tablo silinebilir.
    • "DROP TABLE" sorgusu kullanılarak ürünler tablosu silinebilir.
    • Veritabanında güvenlik bitmeyecek kadar detaylı bir kavramdır.
    07:17Güvenlik Zafiyetleri
    • Sorgu içerisinde kullanılan en kötü kodlama yöntemlerinden biri, filtreleme tabi tutmadan dışarıdan gelen parametrenin değerini kullanmaktır.
    • Filtrelenmeyen konular arasına SQL injection komutları yerleştirilerek sorgular manipüle edilebilir.
    • TextBox'tan gelen bilgiye filtreleme yapmadan atama yapmak güvenlik zafiyeti oluşturur.
    08:43SQL Injection ile Veri İşlemleri
    • SELECT sorgusu peşine INSERT INTO sorgusu eklenerek veri ekleme işlemi yapılabilir.
    • SQL injection ile bir kullanıcı email adresi değiştirilebilir.
    • SQL injection yıllardır kullanılan bir yöntem olup, önlem alınmadığı takdirde tehlikesi büyük olabilir.
    10:39Sistem Kaynaklarına Erişim
    • SQL injection ile sistem tarafındaki ayarları gerçekleştiren CP konfigür store prosedürünü kullanmayı sağlayabiliriz.
    • "EXEC" komutu kullanılarak XP CMD Shell extend prosedürü aktif hale getirilebilir.
    • XP CMD Shell, Windows işletim sistemi komut satırını yönetmek anlamına gelir ve bu büyük bir güvenlik zafiyetidir.
    12:28Store Prosedürlerde SQL Injection
    • Store prosedürlerde dışarıdan gelen parametreler doğrudan kod içerisine gönderilirse güvenlik zafiyeti oluşur.
    • Parametrelerin doğrudan kod içerisinde verilmemesi gerekir.
    • "SELECT * FROM kullanıcılar WHERE kullanıcı_adı = @kullanıcı_adı AND şifre = @şifre" şeklinde kullanmak daha doğru bir yöntemdir.
    16:56SQL Server'da Kod Enjekte Saldırısı
    • Normal şartlarda "extr ürün ara just" sorgusu Adventure Works veritabanında oluşturulmalı ve çalışır.
    • Sorguya dışarıdan alınan parametre ile kod enjekte edilerek tüm kayıtlar getirilebilir.
    • Prosedürlerde de aynı saldırı gerçekleştirilebilir, dışarıdan gelen parametre ile kod enjekte edilebilir.
    20:36Erişim Güvenliği
    • Erişim güvenliği, SQL Server'da kullanıcıların oturumların veritabanına veriye erişmesini sağlayan ve nesneler üzerinde yönetimsel işlemler gerçekleştirmek için kullanılan izinlerin anlatıldığı bir bölüm.
    • Adventure Works veritabanında "digi developer" adında bir login oluşturulabilir.
    • Loginlerin ismi, şifresi değiştirilebilir, sunucuya erişim yetkisi verilebilir veya kaldırılabilir.
    23:52Oturum Yönetimi
    • Oturumlar etkinleştirilebilir, devre dışı bırakılabilir ve kilidi kaldırılabilir.
    • Oturumları kaldırmak için "drop login" komutu kullanılabilir.
    • Erişim güvenliğinde ifade izinleri kullanılarak bir kullanıcıya belirli nesneler üzerinde belirli işlemler yapma yetkisi verilebilir.
    26:08Kullanıcı ve Rol Yönetimi
    • Yeni kullanıcılar oluşturulabilir ve belirli nesnelerde belirli işlemler yapma yetkisi verilebilir.
    • Oturum ve rolleri atama işlemi için "sp_add_server_role" sistem store prosedürü kullanılır.
    • Roller "add" komutu ile atanabilir, "drop" komutu ile kaldırılabilir.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor