! Derse başlamadan önce hatırlatmam gereken, normalde gerçek site üzerinden gösterecektim fakat gövde konularına açacağım için,
Kendi laboratuar ortamımı kurdum ve sizlere güzel bir konu anlatmak istedim. !
Hepinize selamlar!
ben turkhackteam.org ben,
@u1ku1912
Bugün sizlere teorik ve pratik olmak üzere web pentest dersinin onuncu bölümünü anlatıyor olacağım,
hazırsanız başlayalım.
Login Bypass Nedir?
SQL Injection, basit bir güvenlik zafiyeti olmasına rağmen, kötü niyetli kullanıcıların uygulamalar üzerinde ciddi zararlar verebileceğini gösteren güçlü bir örnektir.
En basit yöntem, kullanıcı adı veya parola alanına ' (tırnak işaretleri olmadan) koymaktır.
Eğer sunucu yanıtta herhangi bir SQL hatası döndürürse, web sitesi büyük olasılıkla SQL Enjeksiyon saldırısına karşı savunmasızdır.
Sitenin SQL enjeksiyonuna karşı savunmasız olduğunu doğruladıktan sonra, bir sonraki adım hesaba erişim sağlamak için parola alanına uygun payload yazmaktır.
Kendi kurduğum lab. ortamında göstereyim;
Arkadaşlar ' işareti koyduktan sonra SQL saldırılarına karşı savunmasız olduğunu anladım burada birçok teknik var fakat ben şu tekniği uygulayacağım.
Şifre kutucuğunu kaldırdıktan sonra ID kısmına payload giriyorum.
Arkadaşlar burada ki temel mantık;
SELECT * FROM users WHERE username = '' \text{ OR } '1'='1' \text{ -- ' AND password = 'şifre gir veya kaldır'}
mantığına dönüştü.
Konuyu özetlemem gerekirse;
' : Açtığımız kullanıcı adı tırnağını kapattı. Sorguyu orada kestik.
OR '1'='1' : SQL'e dedik ki: "Kullanıcı adı boş olsa bile, eğer 1 eşittir 1 ise (ki bu matematiksel olarak her zaman doğrudur) bu satırı doğru kabul et."
-- : Bu, SQL'de yorum satırı demektir. Yani kendisinden sonra gelen her şeyi (gerçek şifre kontrolünü) çöpe atar, görmezden gelir.
Arkadaşlar bu kurduğum lab. ortamında ki holding neden patladı bunun cevabı Unsanitized Input tabi ki bu işlem sonrasında durmayacağız ,
veritabanını sömürebilir,
sistemi remediation yapabilirim.
Bugün ki anlatacağım konu bu kadardı bir başka konumda görüşmek üzere esen kalın!
Kendi laboratuar ortamımı kurdum ve sizlere güzel bir konu anlatmak istedim. !
Hepinize selamlar!
ben turkhackteam.org ben,
@u1ku1912
Bugün sizlere teorik ve pratik olmak üzere web pentest dersinin onuncu bölümünü anlatıyor olacağım,
hazırsanız başlayalım.
Login Bypass Nedir?
SQL Injection, basit bir güvenlik zafiyeti olmasına rağmen, kötü niyetli kullanıcıların uygulamalar üzerinde ciddi zararlar verebileceğini gösteren güçlü bir örnektir.
En basit yöntem, kullanıcı adı veya parola alanına ' (tırnak işaretleri olmadan) koymaktır.
Eğer sunucu yanıtta herhangi bir SQL hatası döndürürse, web sitesi büyük olasılıkla SQL Enjeksiyon saldırısına karşı savunmasızdır.
Sitenin SQL enjeksiyonuna karşı savunmasız olduğunu doğruladıktan sonra, bir sonraki adım hesaba erişim sağlamak için parola alanına uygun payload yazmaktır.
Kendi kurduğum lab. ortamında göstereyim;
Arkadaşlar ' işareti koyduktan sonra SQL saldırılarına karşı savunmasız olduğunu anladım burada birçok teknik var fakat ben şu tekniği uygulayacağım.
Şifre kutucuğunu kaldırdıktan sonra ID kısmına payload giriyorum.
Arkadaşlar burada ki temel mantık;
SELECT * FROM users WHERE username = '' \text{ OR } '1'='1' \text{ -- ' AND password = 'şifre gir veya kaldır'}
mantığına dönüştü.
Konuyu özetlemem gerekirse;
' : Açtığımız kullanıcı adı tırnağını kapattı. Sorguyu orada kestik.
OR '1'='1' : SQL'e dedik ki: "Kullanıcı adı boş olsa bile, eğer 1 eşittir 1 ise (ki bu matematiksel olarak her zaman doğrudur) bu satırı doğru kabul et."
-- : Bu, SQL'de yorum satırı demektir. Yani kendisinden sonra gelen her şeyi (gerçek şifre kontrolünü) çöpe atar, görmezden gelir.
Arkadaşlar bu kurduğum lab. ortamında ki holding neden patladı bunun cevabı Unsanitized Input tabi ki bu işlem sonrasında durmayacağız ,
veritabanını sömürebilir,
sistemi remediation yapabilirim.
Bugün ki anlatacağım konu bu kadardı bir başka konumda görüşmek üzere esen kalın!



