Uygulamalı Manual SQL Injection! #1 (In-Band SQL Hacking)

Bunjo

Uzman üye
14 Ara 2020
1,594
1,896
I Won
ro3fzuc.png


Merhaba ben
saldırı timlerinden Bunjo,

2q250vr.png
lbn20fm.png


"
Manual SQL Hacking" kavramını ele alacağım ve uygulamalı şekilde
örnek olarak hazırlanmış olan bir site üzerinde veritabanından veri dump işlemi yapacağız.


Veri Tabanı

iwxqmay.png


Veritabanı (database), bilgilerin düzenli bir şekilde depolandığı, yönetildiği ve erişildiği bir elektronik sistemdir.
Veritabanları genellikle büyük miktarda veriyi güvenilir bir şekilde saklamak, düzenlemek, sorgulamak ve güncellemek amacıyla kullanılır.
Bir veritabanı, tablolar, satırlar ve sütunlar gibi yapıları içerir. Tablolar, belirli bir konu veya veri türüne ait bilgilerin tutulduğu yapısal birimlerdir.
Satırlar, bu tablolardaki tek bir veri kaydını temsil ederken, sütunlar belirli bir veri türünü içerir.



nhqhx1j.png


İşletmeler, kurumlar, web siteleri ve birçok bilgi tabanlı uygulama, veritabanlarını kullanarak verileri etkin bir şekilde yönetir.
Kısacası bilgileriniz bu kısımda saklanır.



sjh1yjm.png

In-Band SQLi (Klasik SQLi)


iwxqmay.png

Bir bilgisayar korsanı saldırıyı başlatmak ve sonuçları toplamak için aynı iletişim kanalını kullandığında In-Band SQLi oluşur.

Error-Based SQLi


Hata tabanlı SQLi, hata mesajlarına dayanan bir in-band enjeksiyon tekniğidir. Bilgisayar korsanları,
veri tabanı yapısı hakkında bilgi toplamak için uygulamayı sürekli olarak hatalar için araştırır.
Hata tabanlı SQL enjeksiyonları, bir saldırganın tablo adları ve içerik gibi verileri görünür hatalardan almasına olanak tanır.
Bazı durumlarda, bir bilgisayar korsanının tüm veri tabanını numaralandırması için hata tabanlı SQL enjeksiyonu yeterlidir.

Union-Based SQLi


Union tabanlı SQLi, UNION SQL operatörünün güvenlik açıklarından yararlanan bir in-band enjeksiyondur.
UNION komutu, bir veya daha fazla ek SELECT sorgusu yürütür ve sonucu orijinal sorguya ekler.
Saldırgan, veri tabanındaki diğer tablolardan veri almak için genişletilmiş sonuçlardan yararlanabilir.
Union tabanlı SQLi, yalnızca orijinal ve yeni sorgular aynı sayıda ve veri türünde sütunlara sahipse çalışır.

Amacım SQL Injection türlerini anlatmak olmadığı için kısa kesiyorum daha fazlası için bknz. SQL Injection Türleri


Uygulamalı In-Band SQL Injection

Kavramları öğrenme sürecini tamamladığınıza göre şimdi sıra uygulama kısmına geldi.
Kullanacağımız site: Tıklayınız.


1- Siteye girişimizi yapıyoruz.



Bu kısımda bize eğitim amaçlı site olduğunu söylüyor.



2- bu kısıma tırnak koyarak hata mesajı almaya çalışıyoruz.





3- site de açık olduğunu fark ediyoruz ve "order by x" komutu ile kolon sayısını tespit etmeye çalışıyoruz

Link: artists

"order by 1" yaptığım zaman bir hata almamam sitede bir adetten daha fazla kolon sayısı olduğu anlamına geliyor.



4- "order by 4" kullandığım zaman hata alıyorum ve 3 kolon olduğunu anlıyorum.

Link: pictures



5- kayıt çekmek için "union select" kullanıyorum.
Link: artists


1. artist değerindeyiz şu anda




2. artist değerine veya başka bir değere geçebilirsek eğer uzaktan kod çalıştırarak başka bilgiler de elde edebileceğiz.




gözüktüğü gibi artist ismi değişti fakat hala bir hata almadık bu bize siteyi sömürebileceğimizi gösteriyor.

Link: https://testphp.vulnweb.com/artists.php?artist=0 union select 1,2,3-- -


bakın bu kısımda artisti 0 olarak aldığımızda bir kayıt tam olarak dönmedi biz de bunu kullanarak istedğimiz kodların çıktılarını artık ekrana yansıtabiliyor olacağız.





union select ile kullandığımız 2 ve 3 değerleri ekrana yansıtıldı yani union select 1,database(),3 gibi bir ifade kullanarak 2 kısmına hangi databasenin kullanıldığını yazdırabiliriz ekstradan istediğiniz komutlarıda artık çalıştırabilirsiniz, genel olarak bu açıkta mantık böyle ben hızlı hızlı adımlarla anlattım.


version ve database:





4- tablo ismini öğrenmek
Link:
artists




5- bütün tabloları almak

Link:
artists



6- kolon isimlerini öğrenmek
Link:
artists


7- kullanıcı adınını ve şifresini almak
Link: artists



Özel Teşekkür

@S3SS1Z T3AM
@P4$A


Çok uğraştım konuya baya uzun oldu benden bu kadar arkadaşlar herhangi bir hatam olduysa yazarsanız sevinirim.

Beğenmeyi unutmayınız, iyi forumlar.
 

invisible blood

Uzman üye
15 Eyl 2023
1,177
443
ro3fzuc.png


Merhaba ben
saldırı timlerinden Bunjo,

2q250vr.png
lbn20fm.png


"
Manual SQL Hacking" kavramını ele alacağım ve uygulamalı şekilde
örnek olarak hazırlanmış olan bir site üzerinde veritabanından veri dump işlemi yapacağız.


Veri Tabanı

iwxqmay.png


Veritabanı (database), bilgilerin düzenli bir şekilde depolandığı, yönetildiği ve erişildiği bir elektronik sistemdir.
Veritabanları genellikle büyük miktarda veriyi güvenilir bir şekilde saklamak, düzenlemek, sorgulamak ve güncellemek amacıyla kullanılır.
Bir veritabanı, tablolar, satırlar ve sütunlar gibi yapıları içerir. Tablolar, belirli bir konu veya veri türüne ait bilgilerin tutulduğu yapısal birimlerdir.
Satırlar, bu tablolardaki tek bir veri kaydını temsil ederken, sütunlar belirli bir veri türünü içerir.



nhqhx1j.png


İşletmeler, kurumlar, web siteleri ve birçok bilgi tabanlı uygulama, veritabanlarını kullanarak verileri etkin bir şekilde yönetir.
Kısacası bilgileriniz bu kısımda saklanır.



sjh1yjm.png

In-Band SQLi (Klasik SQLi)


iwxqmay.png

Bir bilgisayar korsanı saldırıyı başlatmak ve sonuçları toplamak için aynı iletişim kanalını kullandığında In-Band SQLi oluşur.

Error-Based SQLi


Hata tabanlı SQLi, hata mesajlarına dayanan bir in-band enjeksiyon tekniğidir. Bilgisayar korsanları,
veri tabanı yapısı hakkında bilgi toplamak için uygulamayı sürekli olarak hatalar için araştırır.
Hata tabanlı SQL enjeksiyonları, bir saldırganın tablo adları ve içerik gibi verileri görünür hatalardan almasına olanak tanır.
Bazı durumlarda, bir bilgisayar korsanının tüm veri tabanını numaralandırması için hata tabanlı SQL enjeksiyonu yeterlidir.

Union-Based SQLi


Union tabanlı SQLi, UNION SQL operatörünün güvenlik açıklarından yararlanan bir in-band enjeksiyondur.
UNION komutu, bir veya daha fazla ek SELECT sorgusu yürütür ve sonucu orijinal sorguya ekler.
Saldırgan, veri tabanındaki diğer tablolardan veri almak için genişletilmiş sonuçlardan yararlanabilir.
Union tabanlı SQLi, yalnızca orijinal ve yeni sorgular aynı sayıda ve veri türünde sütunlara sahipse çalışır.

Amacım SQL Injection türlerini anlatmak olmadığı için kısa kesiyorum daha fazlası için bknz. SQL Injection Türleri


Uygulamalı In-Band SQL Injection

Kavramları öğrenme sürecini tamamladığınıza göre şimdi sıra uygulama kısmına geldi.
Kullanacağımız site: Tıklayınız.


1- Siteye girişimizi yapıyoruz.



Bu kısımda bize eğitim amaçlı site olduğunu söylüyor.



2- bu kısıma tırnak koyarak hata mesajı almaya çalışıyoruz.





3- site de açık olduğunu fark ediyoruz ve "order by x" komutu ile kolon sayısını tespit etmeye çalışıyoruz

Link: artists

"order by 1" yaptığım zaman bir hata almamam sitede bir adetten daha fazla kolon sayısı olduğu anlamına geliyor.



4- "order by 4" kullandığım zaman hata alıyorum ve 3 kolon olduğunu anlıyorum.

Link: pictures



5- kayıt çekmek için "union select" kullanıyorum.
Link: artists


1. artist değerindeyiz şu anda




2. artist değerine veya başka bir değere geçebilirsek eğer uzaktan kod çalıştırarak başka bilgiler de elde edebileceğiz.




gözüktüğü gibi artist ismi değişti fakat hala bir hata almadık bu bize siteyi sömürebileceğimizi gösteriyor.

Link: https://testphp.vulnweb.com/artists.php?artist=0 union select 1,2,3-- -


bakın bu kısımda artisti 0 olarak aldığımızda bir kayıt tam olarak dönmedi biz de bunu kullanarak istedğimiz kodların çıktılarını artık ekrana yansıtabiliyor olacağız.





union select ile kullandığımız 2 ve 3 değerleri ekrana yansıtıldı yani union select 1,database(),3 gibi bir ifade kullanarak 2 kısmına hangi databasenin kullanıldığını yazdırabiliriz ekstradan istediğiniz komutlarıda artık çalıştırabilirsiniz, genel olarak bu açıkta mantık böyle ben hızlı hızlı adımlarla anlattım.


version ve database:





4- tablo ismini öğrenmek
Link:
artists




5- bütün tabloları almak

Link:
artists



6- kolon isimlerini öğrenmek
Link:
artists


7- kullanıcı adınını ve şifresini almak
Link: artists



Özel Teşekkür

@S3SS1Z T3AM
@P4$A


Çok uğraştım konuya baya uzun oldu benden bu kadar arkadaşlar herhangi bir hatam olduysa yazarsanız sevinirim.

Beğenmeyi unutmayınız, iyi forumlar.
Her zamanki gibi mükemmel olmuş bunjo hocammmm
 

Fatih.

Yeni üye
5 Haz 2023
13
7
ro3fzuc.png


Merhaba ben
saldırı timlerinden Bunjo,

2q250vr.png
lbn20fm.png


"
Manual SQL Hacking" kavramını ele alacağım ve uygulamalı şekilde
örnek olarak hazırlanmış olan bir site üzerinde veritabanından veri dump işlemi yapacağız.


Veri Tabanı

iwxqmay.png


Veritabanı (database), bilgilerin düzenli bir şekilde depolandığı, yönetildiği ve erişildiği bir elektronik sistemdir.
Veritabanları genellikle büyük miktarda veriyi güvenilir bir şekilde saklamak, düzenlemek, sorgulamak ve güncellemek amacıyla kullanılır.
Bir veritabanı, tablolar, satırlar ve sütunlar gibi yapıları içerir. Tablolar, belirli bir konu veya veri türüne ait bilgilerin tutulduğu yapısal birimlerdir.
Satırlar, bu tablolardaki tek bir veri kaydını temsil ederken, sütunlar belirli bir veri türünü içerir.



nhqhx1j.png


İşletmeler, kurumlar, web siteleri ve birçok bilgi tabanlı uygulama, veritabanlarını kullanarak verileri etkin bir şekilde yönetir.
Kısacası bilgileriniz bu kısımda saklanır.



sjh1yjm.png

In-Band SQLi (Klasik SQLi)


iwxqmay.png

Bir bilgisayar korsanı saldırıyı başlatmak ve sonuçları toplamak için aynı iletişim kanalını kullandığında In-Band SQLi oluşur.

Error-Based SQLi


Hata tabanlı SQLi, hata mesajlarına dayanan bir in-band enjeksiyon tekniğidir. Bilgisayar korsanları,
veri tabanı yapısı hakkında bilgi toplamak için uygulamayı sürekli olarak hatalar için araştırır.
Hata tabanlı SQL enjeksiyonları, bir saldırganın tablo adları ve içerik gibi verileri görünür hatalardan almasına olanak tanır.
Bazı durumlarda, bir bilgisayar korsanının tüm veri tabanını numaralandırması için hata tabanlı SQL enjeksiyonu yeterlidir.

Union-Based SQLi


Union tabanlı SQLi, UNION SQL operatörünün güvenlik açıklarından yararlanan bir in-band enjeksiyondur.
UNION komutu, bir veya daha fazla ek SELECT sorgusu yürütür ve sonucu orijinal sorguya ekler.
Saldırgan, veri tabanındaki diğer tablolardan veri almak için genişletilmiş sonuçlardan yararlanabilir.
Union tabanlı SQLi, yalnızca orijinal ve yeni sorgular aynı sayıda ve veri türünde sütunlara sahipse çalışır.

Amacım SQL Injection türlerini anlatmak olmadığı için kısa kesiyorum daha fazlası için bknz. SQL Injection Türleri


Uygulamalı In-Band SQL Injection

Kavramları öğrenme sürecini tamamladığınıza göre şimdi sıra uygulama kısmına geldi.
Kullanacağımız site: Tıklayınız.


1- Siteye girişimizi yapıyoruz.



Bu kısımda bize eğitim amaçlı site olduğunu söylüyor.



2- bu kısıma tırnak koyarak hata mesajı almaya çalışıyoruz.





3- site de açık olduğunu fark ediyoruz ve "order by x" komutu ile kolon sayısını tespit etmeye çalışıyoruz

Link: artists

"order by 1" yaptığım zaman bir hata almamam sitede bir adetten daha fazla kolon sayısı olduğu anlamına geliyor.



4- "order by 4" kullandığım zaman hata alıyorum ve 3 kolon olduğunu anlıyorum.

Link: pictures



5- kayıt çekmek için "union select" kullanıyorum.
Link: artists


1. artist değerindeyiz şu anda




2. artist değerine veya başka bir değere geçebilirsek eğer uzaktan kod çalıştırarak başka bilgiler de elde edebileceğiz.




gözüktüğü gibi artist ismi değişti fakat hala bir hata almadık bu bize siteyi sömürebileceğimizi gösteriyor.

Link: https://testphp.vulnweb.com/artists.php?artist=0 union select 1,2,3-- -


bakın bu kısımda artisti 0 olarak aldığımızda bir kayıt tam olarak dönmedi biz de bunu kullanarak istedğimiz kodların çıktılarını artık ekrana yansıtabiliyor olacağız.





union select ile kullandığımız 2 ve 3 değerleri ekrana yansıtıldı yani union select 1,database(),3 gibi bir ifade kullanarak 2 kısmına hangi databasenin kullanıldığını yazdırabiliriz ekstradan istediğiniz komutlarıda artık çalıştırabilirsiniz, genel olarak bu açıkta mantık böyle ben hızlı hızlı adımlarla anlattım.


version ve database:





4- tablo ismini öğrenmek
Link:
artists




5- bütün tabloları almak

Link:
artists



6- kolon isimlerini öğrenmek
Link:
artists


7- kullanıcı adınını ve şifresini almak
Link: artists



Özel Teşekkür

@S3SS1Z T3AM
@P4$A


Çok uğraştım konuya baya uzun oldu benden bu kadar arkadaşlar herhangi bir hatam olduysa yazarsanız sevinirim.

Beğenmeyi unutmayınız, iyi forumlar.
Helal olsun çok iyi olmuş.
 

Butcherb3y

Uzman üye
1 Eyl 2022
1,617
1,199
Anıtkabir
ro3fzuc.png


Merhaba ben
saldırı timlerinden Bunjo,

2q250vr.png
lbn20fm.png


"
Manual SQL Hacking" kavramını ele alacağım ve uygulamalı şekilde
örnek olarak hazırlanmış olan bir site üzerinde veritabanından veri dump işlemi yapacağız.


Veri Tabanı

iwxqmay.png


Veritabanı (database), bilgilerin düzenli bir şekilde depolandığı, yönetildiği ve erişildiği bir elektronik sistemdir.
Veritabanları genellikle büyük miktarda veriyi güvenilir bir şekilde saklamak, düzenlemek, sorgulamak ve güncellemek amacıyla kullanılır.
Bir veritabanı, tablolar, satırlar ve sütunlar gibi yapıları içerir. Tablolar, belirli bir konu veya veri türüne ait bilgilerin tutulduğu yapısal birimlerdir.
Satırlar, bu tablolardaki tek bir veri kaydını temsil ederken, sütunlar belirli bir veri türünü içerir.



nhqhx1j.png


İşletmeler, kurumlar, web siteleri ve birçok bilgi tabanlı uygulama, veritabanlarını kullanarak verileri etkin bir şekilde yönetir.
Kısacası bilgileriniz bu kısımda saklanır.



sjh1yjm.png

In-Band SQLi (Klasik SQLi)


iwxqmay.png

Bir bilgisayar korsanı saldırıyı başlatmak ve sonuçları toplamak için aynı iletişim kanalını kullandığında In-Band SQLi oluşur.

Error-Based SQLi


Hata tabanlı SQLi, hata mesajlarına dayanan bir in-band enjeksiyon tekniğidir. Bilgisayar korsanları,
veri tabanı yapısı hakkında bilgi toplamak için uygulamayı sürekli olarak hatalar için araştırır.
Hata tabanlı SQL enjeksiyonları, bir saldırganın tablo adları ve içerik gibi verileri görünür hatalardan almasına olanak tanır.
Bazı durumlarda, bir bilgisayar korsanının tüm veri tabanını numaralandırması için hata tabanlı SQL enjeksiyonu yeterlidir.

Union-Based SQLi


Union tabanlı SQLi, UNION SQL operatörünün güvenlik açıklarından yararlanan bir in-band enjeksiyondur.
UNION komutu, bir veya daha fazla ek SELECT sorgusu yürütür ve sonucu orijinal sorguya ekler.
Saldırgan, veri tabanındaki diğer tablolardan veri almak için genişletilmiş sonuçlardan yararlanabilir.
Union tabanlı SQLi, yalnızca orijinal ve yeni sorgular aynı sayıda ve veri türünde sütunlara sahipse çalışır.

Amacım SQL Injection türlerini anlatmak olmadığı için kısa kesiyorum daha fazlası için bknz. SQL Injection Türleri


Uygulamalı In-Band SQL Injection

Kavramları öğrenme sürecini tamamladığınıza göre şimdi sıra uygulama kısmına geldi.
Kullanacağımız site: Tıklayınız.


1- Siteye girişimizi yapıyoruz.



Bu kısımda bize eğitim amaçlı site olduğunu söylüyor.



2- bu kısıma tırnak koyarak hata mesajı almaya çalışıyoruz.





3- site de açık olduğunu fark ediyoruz ve "order by x" komutu ile kolon sayısını tespit etmeye çalışıyoruz

Link: artists

"order by 1" yaptığım zaman bir hata almamam sitede bir adetten daha fazla kolon sayısı olduğu anlamına geliyor.



4- "order by 4" kullandığım zaman hata alıyorum ve 3 kolon olduğunu anlıyorum.

Link: pictures



5- kayıt çekmek için "union select" kullanıyorum.
Link: artists


1. artist değerindeyiz şu anda




2. artist değerine veya başka bir değere geçebilirsek eğer uzaktan kod çalıştırarak başka bilgiler de elde edebileceğiz.




gözüktüğü gibi artist ismi değişti fakat hala bir hata almadık bu bize siteyi sömürebileceğimizi gösteriyor.

Link: https://testphp.vulnweb.com/artists.php?artist=0 union select 1,2,3-- -


bakın bu kısımda artisti 0 olarak aldığımızda bir kayıt tam olarak dönmedi biz de bunu kullanarak istedğimiz kodların çıktılarını artık ekrana yansıtabiliyor olacağız.





union select ile kullandığımız 2 ve 3 değerleri ekrana yansıtıldı yani union select 1,database(),3 gibi bir ifade kullanarak 2 kısmına hangi databasenin kullanıldığını yazdırabiliriz ekstradan istediğiniz komutlarıda artık çalıştırabilirsiniz, genel olarak bu açıkta mantık böyle ben hızlı hızlı adımlarla anlattım.


version ve database:





4- tablo ismini öğrenmek
Link:
artists




5- bütün tabloları almak

Link:
artists



6- kolon isimlerini öğrenmek
Link:
artists


7- kullanıcı adınını ve şifresini almak
Link: artists



Özel Teşekkür

@S3SS1Z T3AM
@P4$A


Çok uğraştım konuya baya uzun oldu benden bu kadar arkadaşlar herhangi bir hatam olduysa yazarsanız sevinirim.

Beğenmeyi unutmayınız, iyi forumlar.
Elinize 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.