SQL Dork Yazma -> Havij SQL Injection İşlemleri HK

JohnDoe

Kıdemli Üye
29 Eyl 2013
2,710
6
Teşkilat
Merhabalar,

Yılların vermiş olduğu deneyim, bilgi birikimi ve tecrübe dahilin de artık her ne kadar eskide kalmış olsa bile her zaman doğru kullanıldığı taktir de işe yarayacak bilgilerdir. En azından yeni başlayanlar, ögrenmek istediği bilgiyi ögrenebildikleri kadar.

1.) KALIP SÖZCÜĞÜ
:
Kod:
inurl:

Google Translate/Çeviri kullanarak çevirmek istediğiniz kelimeleri çevirebilir ve buna göre de kelime türetebilirsiniz. Kolay bir kelime üzerinden başlayalım.

Kod:
inurl:article

Üst kısım da yer alan kelimenin yanına .asp? yada .aspx ve son olarak da .php? yazmamız gereklidir. Bu terimler sunucu dilleridir. Bilmeyen arkadaşlarımız için bu konuyu doğrulamış olalım.

GİRİŞ PHP :

Kod:
inurl:article.php?

2. KALIP SÖZCÜĞÜ :

(id=) ekliyoruz.

Kod:
inurl:article.php?id=

Kolay bir dork oluşturduğumuzu var sayarak konumuza devam edelim. Bu arada siz isterseniz kolay olan bu dorku geliştirebilir, farklı ülkeler ve farklı kalıp sözcüğü olarak kullanabilirsiniz. Daha fazla bilgi almak için forum içerisindeki emsali konuları inceleyebilir ve bilgi sahibi olabilirsiniz.

Şayet ki bu dorkumuzu arattığımız zaman search/google kısmından bir ülke seçerek dork sonuçlarını almak istiyorsanız kalıp olarak şöyle bir arama gerçekleştirebiliriz. -> "site:" bu şekilde arama yaparak istediğiniz ülke konumuna ait dork aramalarını tercih edebiliriz.


Örnek vermek istiyorum. Bu örneği ise vietnam ülkesine ait bir şekilde tercih ediyorum.

Kod:
inurl:article.php?id=site:vn

Ek olarak özel saldırı amaçlı da kullanım sağlayabiliriz. Bunu da konu içerisinde önemle hatırlatmak isterim. Siz de bilirsiniz ki alan adlarının sonların da "com, net, org, vb" gibi uzantılar vardır. Bunların aslında anlamlarını internet üzerinden ögrenmeniz oldukça kolaydır.

ÖRNEK :

  • .com = Ticari alan adı olarak üretilmiş olmasına rağmen günümüzde her tür site için kullanılmaya başlamıştır. İngilizce de " commercial" anlamına gelmektedir.
  • .net = İngilizcede ağ uzantısı anlamına gelen "network" kelimesinden kısaltılmıştır.
  • .org = Organizasyonlar için kullanılır "organization" kelimesinin ilk üç harfi kullanılmıştır.
  • .biz = Bu uzantı iş, ticaret anlamına gelen "business" kelimesinden kısaltılmıştır.
  • .info = Uzantısı bilgi anlamına gelmektedir. İngilizcede "information" kelimesinin kısaltılmışıdır.
  • .pro = Profesyonel anlamına gelmektedir. İngilizcede professional" kelimesinin kısaltılmışıdır.
  • .name = Gerçek isimler için bu uzantı kullanılmaktadır. İngilizcede "nickler" kelimesinden üretilmiştir.
  • .edu = Eğitim kurumları için türetilmiş bir alan adı uzantısıdır. "education" kelimesinin kısaltılmışıdır.
  • .gov = Devlet kuruluşlarının alan adı uzantısıdır. "government" kelimesinin kısaltılmışıdır.

Konuya devam ediyorum;

Kod:
inurl:article.php?=.vn

İstersek aynı anda hem özel saldırı düzenleyebilir hemde ülke saldırılarında bulunabiliriz.

Gelişmiş ve geliştirilmiş bir SQL/Dork yazmış olduk öyle değil mi? Bir de hatırlatma yapmak istiyorum. Dikkat etmeniz gereken bir durum var burada elbette, Google/Yandex arama motorları üzerinde kelime araması yaptığımız zaman çıkan siteler SQL açıklı olmamaktadır. Çıkan sonuçlarda olan siteleri adres çubugunuz üzerinde açarak sitelerin url yapılarının sonuna (tırnak) eklemeniz gerekiyor.

Örnek ; http://www.kaan.com/article.php?id=2 sitemiz bu ise sonuna bir tırnak ekleyeceğiz. (") şu şekilde ;

http://www.kaan.com/article.php?id=2' bu şekilde eklediğimiz zaman O sitede eğer ki bir SQL açığı var ise alacağımız ekran üzerindeki yanıt şu şekilde olmalıdır.

Kod:
Invalid query: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '\'' at line 1


HAVİJ PROGRAM KULLANIMI

Bir çok arkadaşımızın bildiği ancak bir O kadar da arkadaşımızın bilmediği bir program var. "Havij" olarak adlandırılmış bir program, bu programın ne işe yaradığını kısaca bilgilendirmek istersek "SQL Injection" işlemlerinde kolay ve pratik bir program olarak kullanılmaktadır. Yani iki farklı terim ile : "SQJ Enkeksiyon, SQL Injection" diyebiliriz.

SQL açıklı siteler de otomatik olarak veri çeker. Üst kısımda tırnak işaretiyle web sitelerinde SQL açığı var mı yok mu diye vermiş olduğum prefix yapısı ile bulmuş olduğunuz sitelerin database adı, database user, database admin ve database password bilgilerini çekebilirsiniz.

Program içerisinde kullanmak istediğiniz iki farklı element de bulunmaktadır. Bir tanesi Admin/Finder yani Panel bulucu, bir diğeri ise MD5 kırıcı yani şifrelenmiş username/kullanıcı'ya ait olan bir password/şifre'yi kırmak için kullanılmakta olan bir araçtır. Profesyonel anlam da kullanıldığı taktir de çok iyi sonuçlar alınacak oldukça basit yapısı ve kolay kullanılabilir bir programdır.

Bir sitede açık var dork araması ile karşımıza çıkan ve tırnak ibaresini kullanarak SQL Injection olduğunu saptamış olduğumuz bir web sitesini tespit ettik ve Havij ile bu siteye SQL Injection işlemi gerçekleştireceğiz.

SQL açığı tespit etmiş olduğumuz web sitesi : http://www.kaan.com/page.php?id=1


Şimdi öncelikle Havij'de "TARGET" bölümüne SQL açığını tespit etmiş olduğumuz web sitesinin adresini yapıştırıyoruz. Yan kısım da yer alan buton "ANALYZE" butonuna basarak sorgu işlemini başlatıyoruz. Programın alt kısmında yer alan işlem pencere içerisinde takibini yapıyoruz.

Bu sitede SQL açığının olduğunu tespit ettik. SQL açığının olduğunu bildiğimiz için işlem elbette başarılı olacaktır ki bu % 50 değişiklik göstermektedir. Bir çok SQL açığı olan web sitesinin sorgulamalarında SQL tablolarının ve SQL'nin ismini Havij çekememektedir.

İşlem başarılı olduktan sonra sağ kısımda yer alan "TABLES" bölümüne tıklayarak giriyoruz. Daha sonra karşımıza çıkacak olan veritabanı ismine tıklayarak "GET TABLES" diyerek butona basıyoruz ve işleme devam ediyoruz.

Tablo çekme işleminin sonrasında ise, yönetici bilgilerini çekmek isteyeceğiz ancak burada özellikle şunu belirtmek istiyorum. Yanılmayın, yanılgıya düşmeyin! Bir çok işlem de illa size şunu program göstermez. admin, username, password bunlara fazla aldanmayın. Bir çok web sitesinde veritabanı isminde yer alan elements de user, password olma zorunda değildir.

user -> kullanici -> users -> setting, sifre, user_list, users-list, ve benzeri gibi isimler de karşınıza çıkabilmektedir.

Şimdi çekmiş olduğumuz tablo da var sayalım ki user, users, kullanici, admin, administrator, yonetici, editor, vb gibi seçenekler de çıkabilmektedir. Admin veya Administrator seçeneğinin çıktığını düşünerek seçeneği işaretliyorum ve "GET COLUMNS" butonuna basarak çekmeye devam ediyorum.

Bu aşamadan sonra ise "USER_ID, PASSWORD" seçenekleri üzerinden devam edeceğiz. Önümüze bunlar geldiyse son işleme devam ediyoruz. seçiyoruz user, id, password seçeneklerini ve "GET DATA" diyoruz.

ID, kullanıcı admin ise id 1'dir. Bazen bu değişebilir tabi fazla takılmayın. Bilgileri çektik. Şimdi ise admin panel yolunu bulacağız. Find Admin demiştik üst kısım da tıklıyoruz ve sitenin kaan.com olarak aramasını yapıyoruz. Admin panel yolunu tespit ederek admin paneline çekmiş olduğumuz bilgiler ile giriş yapıyoruz. Daha sonrası tamamen sizin yönetiminizde olan bir durumdur.

Karşınıza birden fazla seçenek mutlaka çıkacaktır. Bazı kullanıcı adı ve şifreler birbiriyle uyuşum sağlamayabilir. Farklı bir veri ekrana gelebilir. Fazla takılmayın, ancak alternatifleri mutlaka değerlendirin ve hemen pes etmeyin. Sabrın sonu selamettir!

En son olarak ise "MD5" seçeneği ile çekmiş olduğumuz SQL açıklı web sitelerinde yer alan password, sifre, users içerisinde yer alan MD5 ile şifrelenmiş bir şifreyi çözmek için kullanacağız.

MD5, ile şifrelenmiş olan bu şifreyi MD5 kısmına yazarak çözebiliriz. Ancak tam olarak bu sorgu işlemi % 100 başarılı bir sonuca sizi ulaştırmaz. Şayet ki program üzerinde bunu çözemedi iseniz alternatif olarak MD5 decode sitelerine bir göz atın ve alternatif yolları mutlaka deneyin. Forum üzerinden, Bilgi sahibi olan bir arkadaşınızdan mutlaka bu konuda bilgi desteği alın.


Unutmayalım ki, azimli olmak her zaman doğru olan yoldur. Sabrın sonu selamettir. Azimli olun, az çalışmayın, Daha çok çalışın ve sabırlı olun. Esaret gösterin. Kafadan sağma işler ile ugraşarak değerli vakitlerinizi boşuna tüketmeyin. Bilmediğiniz durumlar da mutlaka bir bilgi sahibi olan birilerinden destek alın. Yabancı forum sitelerine göz atın. Dork nasıl yazılır, nasıl kullanılır. SQLMap kullanımı, Kali gibi araçların dökümanlarını mutlaka okuyun. Okuduklarınız aklınızda kalsın unutmayın! Unutursanız başarınız sonuca ulaşmadan kaybedersiniz.

Not : Uzun süreden sonra bir döküman yazmak keyifliydi. Umuyorum ki yeni nesil olan gençlere bir nebze bile olsa eskilerde olan kırınların gelecek de aydınlık bir ışık olacağı gün olur.

Sağlıcakla kalın ...
Teşekkür ederim.
 
Ü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.