PortSwigger, "Lab: SQL injection UNION attack, determining the number of columns returned by the query" Anlatımlı Çözümü

memu.exe

Üye
24 Mar 2023
70
63
lol
Bizden istenen SQL enjekte ederek UNION saldırısı yapmamız ve sütun sayısını öğrenmemiz.

Not: Burp Suite kullanımı bir önceki konumda az çok anlatıyorum eğer hiç bir bilginiz yoksa en azından bu konuyu okumak için yeterli bilgiye sahip olursunuz.

Öncelikle UNION saldırısı nedir:

SQL UNION saldırısı, bir web uygulamasına yapılan bir tür SQL enjeksiyonudur.
Bu saldırı, bir kötü niyetli kullanıcının bir web formuna girdiği özel olarak hazırlanmış SQL ifadeleri kullanılarak gerçekleştirilir.
Saldırı, uygulamanın veritabanında bulunan birden fazla tablodan veri almasına izin veren SQL UNION operatörünü kullanır.

Bir SQL UNION saldırısı, uygulamanın web formundaki bir girdi alanına, önceden hazırlanmış bir SQL ifadesi ekleyerek gerçekleştirilir.
Bu SQL ifadesi, uygulamanın veritabanına gönderilir ve uygulama sonucu ekrana yazdırır.
Eğer saldırganın hazırladığı SQL ifadesi uygun bir şekilde yapılandırılmışsa, sonuçlar birden fazla tablodan toplanarak döndürülebilir.

Bu tür bir saldırı, saldırganın veritabanındaki tüm tablolara erişim sağlayabilmesine, hatta veritabanındaki tüm verileri görüntüleyebilmesine olanak tanır.
--------------------------------------------------------------------------------|
Tablolar ve Sütunları daha iyi anlamak için(Rana Khalil): |
1c6d6a72c0c5ada22c6bc983bad5d68c.jpg
|

-------------------------------------------------------------------------------- |
UNION saldırısında sütun sayısını öğrenmek için

' UNION SELECT NULL--

Böyle bir istek yoluyoruz eğer bize döndürdüğü değer bir hata ise NULL sayısını artırıp tekrar deniyoruz:

' UNION SELECT NULL,NULL--

Null sayısı sütun sayısıyla eşleşmezse, veritabanı şöyle bir hata döndürür:

All queries combined using a UNION, INTERSECT or EXCEPT operator must have an equal number of expressions in their target lists(veya baska bir hata)

Çözüme geçicek olursak öncellikle SQL enjekte edebileceğimiz bir yer arıyoruz.(Bir tablodan veri alıcağımız için tablodan veri gönderen bir komut satırı)
Açığı bulduğumuz zaman basitce UNION saldırımızı uyguluyoruz.
altmetin?


Eğer geri dönüş olarak bir hata ile karşı karşıya kalırsak tek yapmamız gereken
NULL sayısını artırmak (Görseldeki gibi)

53369cc1b8fed0305216ac2df3c17a07.jpg

Geri döndürülen ifadede bir hata yok, demek ki sütun sayısı 3.

Okuduğunuz için teşekkürler dostlar, görsel kaliteyi artırmak için elimden geleni yaptım ama pek beceremedim :(
yeni-uyeler-kulubu76d8b3792c188755.png
 

ashpelia

Üye
26 Nis 2023
65
20
Bizden istenen SQL enjekte ederek UNION saldırısı yapmamız ve sütun sayısını öğrenmemiz.

Not: Burp Suite kullanımı bir önceki konumda az çok anlatıyorum eğer hiç bir bilginiz yoksa en azından bu konuyu okumak için yeterli bilgiye sahip olursunuz.

Öncelikle UNION saldırısı nedir:

SQL UNION saldırısı, bir web uygulamasına yapılan bir tür SQL enjeksiyonudur.
Bu saldırı, bir kötü niyetli kullanıcının bir web formuna girdiği özel olarak hazırlanmış SQL ifadeleri kullanılarak gerçekleştirilir.
Saldırı, uygulamanın veritabanında bulunan birden fazla tablodan veri almasına izin veren SQL UNION operatörünü kullanır.

Bir SQL UNION saldırısı, uygulamanın web formundaki bir girdi alanına, önceden hazırlanmış bir SQL ifadesi ekleyerek gerçekleştirilir.
Bu SQL ifadesi, uygulamanın veritabanına gönderilir ve uygulama sonucu ekrana yazdırır.
Eğer saldırganın hazırladığı SQL ifadesi uygun bir şekilde yapılandırılmışsa, sonuçlar birden fazla tablodan toplanarak döndürülebilir.

Bu tür bir saldırı, saldırganın veritabanındaki tüm tablolara erişim sağlayabilmesine, hatta veritabanındaki tüm verileri görüntüleyebilmesine olanak tanır.
--------------------------------------------------------------------------------|
Tablolar ve Sütunları daha iyi anlamak için(Rana Khalil): |
1c6d6a72c0c5ada22c6bc983bad5d68c.jpg
|

-------------------------------------------------------------------------------- |
UNION saldırısında sütun sayısını öğrenmek için

' UNION SELECT NULL--

Böyle bir istek yoluyoruz eğer bize döndürdüğü değer bir hata ise NULL sayısını artırıp tekrar deniyoruz:

' UNION SELECT NULL,NULL--

Null sayısı sütun sayısıyla eşleşmezse, veritabanı şöyle bir hata döndürür:

All queries combined using a UNION, INTERSECT or EXCEPT operator must have an equal number of expressions in their target lists(veya baska bir hata)

Çözüme geçicek olursak öncellikle SQL enjekte edebileceğimiz bir yer arıyoruz.(Bir tablodan veri alıcağımız için tablodan veri gönderen bir komut satırı)
Açığı bulduğumuz zaman basitce UNION saldırımızı uyguluyoruz.
altmetin?


Eğer geri dönüş olarak bir hata ile karşı karşıya kalırsak tek yapmamız gereken NULL sayısını artırmak (Görseldeki gibi)

53369cc1b8fed0305216ac2df3c17a07.jpg

Geri döndürülen ifadede bir hata yok, demek ki sütun sayısı 3.

Okuduğunuz için teşekkürler dostlar, görsel kaliteyi artırmak için elimden geleni yaptım ama pek beceremedim :(
yeni-uyeler-kulubu76d8b3792c188755.png
eline sağlık
 

'Monster

Üye
27 Nis 2023
103
32
Bizden istenen SQL enjekte ederek UNION saldırısı yapmamız ve sütun sayısını öğrenmemiz.

Not: Burp Suite kullanımı bir önceki konumda az çok anlatıyorum eğer hiç bir bilginiz yoksa en azından bu konuyu okumak için yeterli bilgiye sahip olursunuz.

Öncelikle UNION saldırısı nedir:

SQL UNION saldırısı, bir web uygulamasına yapılan bir tür SQL enjeksiyonudur.
Bu saldırı, bir kötü niyetli kullanıcının bir web formuna girdiği özel olarak hazırlanmış SQL ifadeleri kullanılarak gerçekleştirilir.
Saldırı, uygulamanın veritabanında bulunan birden fazla tablodan veri almasına izin veren SQL UNION operatörünü kullanır.

Bir SQL UNION saldırısı, uygulamanın web formundaki bir girdi alanına, önceden hazırlanmış bir SQL ifadesi ekleyerek gerçekleştirilir.
Bu SQL ifadesi, uygulamanın veritabanına gönderilir ve uygulama sonucu ekrana yazdırır.
Eğer saldırganın hazırladığı SQL ifadesi uygun bir şekilde yapılandırılmışsa, sonuçlar birden fazla tablodan toplanarak döndürülebilir.

Bu tür bir saldırı, saldırganın veritabanındaki tüm tablolara erişim sağlayabilmesine, hatta veritabanındaki tüm verileri görüntüleyebilmesine olanak tanır.
--------------------------------------------------------------------------------|
Tablolar ve Sütunları daha iyi anlamak için(Rana Khalil): |
1c6d6a72c0c5ada22c6bc983bad5d68c.jpg
|

-------------------------------------------------------------------------------- |
UNION saldırısında sütun sayısını öğrenmek için

' UNION SELECT NULL--

Böyle bir istek yoluyoruz eğer bize döndürdüğü değer bir hata ise NULL sayısını artırıp tekrar deniyoruz:

' UNION SELECT NULL,NULL--

Null sayısı sütun sayısıyla eşleşmezse, veritabanı şöyle bir hata döndürür:

All queries combined using a UNION, INTERSECT or EXCEPT operator must have an equal number of expressions in their target lists(veya baska bir hata)

Çözüme geçicek olursak öncellikle SQL enjekte edebileceğimiz bir yer arıyoruz.(Bir tablodan veri alıcağımız için tablodan veri gönderen bir komut satırı)
Açığı bulduğumuz zaman basitce UNION saldırımızı uyguluyoruz.
altmetin?


Eğer geri dönüş olarak bir hata ile karşı karşıya kalırsak tek yapmamız gereken NULL sayısını artırmak (Görseldeki gibi)

53369cc1b8fed0305216ac2df3c17a07.jpg

Geri döndürülen ifadede bir hata yok, demek ki sütun sayısı 3.

Okuduğunuz için teşekkürler dostlar, görsel kaliteyi artırmak için elimden geleni yaptım ama pek beceremedim :(
yeni-uyeler-kulubu76d8b3792c188755.png
Eline sağlık.
 
Son düzenleme:

Leynthor

Yeni üye
24 Nis 2023
7
2
Bizden istenen SQL enjekte ederek UNION saldırısı yapmamız ve sütun sayısını öğrenmemiz.

Not: Burp Suite kullanımı bir önceki konumda az çok anlatıyorum eğer hiç bir bilginiz yoksa en azından bu konuyu okumak için yeterli bilgiye sahip olursunuz.

Öncelikle UNION saldırısı nedir:

SQL UNION saldırısı, bir web uygulamasına yapılan bir tür SQL enjeksiyonudur.
Bu saldırı, bir kötü niyetli kullanıcının bir web formuna girdiği özel olarak hazırlanmış SQL ifadeleri kullanılarak gerçekleştirilir.
Saldırı, uygulamanın veritabanında bulunan birden fazla tablodan veri almasına izin veren SQL UNION operatörünü kullanır.

Bir SQL UNION saldırısı, uygulamanın web formundaki bir girdi alanına, önceden hazırlanmış bir SQL ifadesi ekleyerek gerçekleştirilir.
Bu SQL ifadesi, uygulamanın veritabanına gönderilir ve uygulama sonucu ekrana yazdırır.
Eğer saldırganın hazırladığı SQL ifadesi uygun bir şekilde yapılandırılmışsa, sonuçlar birden fazla tablodan toplanarak döndürülebilir.

Bu tür bir saldırı, saldırganın veritabanındaki tüm tablolara erişim sağlayabilmesine, hatta veritabanındaki tüm verileri görüntüleyebilmesine olanak tanır.
--------------------------------------------------------------------------------|
Tablolar ve Sütunları daha iyi anlamak için(Rana Khalil): |
1c6d6a72c0c5ada22c6bc983bad5d68c.jpg
|

-------------------------------------------------------------------------------- |
UNION saldırısında sütun sayısını öğrenmek için

' UNION SELECT NULL--

Böyle bir istek yoluyoruz eğer bize döndürdüğü değer bir hata ise NULL sayısını artırıp tekrar deniyoruz:

' UNION SELECT NULL,NULL--

Null sayısı sütun sayısıyla eşleşmezse, veritabanı şöyle bir hata döndürür:

All queries combined using a UNION, INTERSECT or EXCEPT operator must have an equal number of expressions in their target lists(veya baska bir hata)

Çözüme geçicek olursak öncellikle SQL enjekte edebileceğimiz bir yer arıyoruz.(Bir tablodan veri alıcağımız için tablodan veri gönderen bir komut satırı)
Açığı bulduğumuz zaman basitce UNION saldırımızı uyguluyoruz.
altmetin?


Eğer geri dönüş olarak bir hata ile karşı karşıya kalırsak tek yapmamız gereken NULL sayısını artırmak (Görseldeki gibi)

53369cc1b8fed0305216ac2df3c17a07.jpg

Geri döndürülen ifadede bir hata yok, demek ki sütun sayısı 3.

Okuduğunuz için teşekkürler dostlar, görsel kaliteyi artırmak için elimden geleni yaptım ama pek beceremedim :(
yeni-uyeler-kulubu76d8b3792c188755.png
Eline sağlık
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.