Similar topics
Arama
En son konular
Reklam Alanı
Mayıs 2024
Ptsi | Salı | Çarş. | Perş. | Cuma | C.tesi | Paz |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
SQL Injection Ataklarından Nasıl Korunuruz?
1 sayfadaki 1 sayfası
SQL Injection Ataklarından Nasıl Korunuruz?
Bu makalemizin konusu başlıktan da anlaşılacağı gibi, web uygulamalarımıza yapılan saldırılara karşı nasıl önlem almamız gerektiği. Aslında web uygulamamıza yapılabilecek bir çok saldırı metotları vardır. Bu makalede, bu saldırı çeşidinden biri olan Sql Injection (Sql Aşılama) ataklarına karşı savunma taktiklerini anlatacağım. Peki sql injection atakları nasıl yapılır?? Sql Injection atakları, web uygulamalarımızda yer alan veri girişleri için kullandığımız TextBox form elemanlarının içine yazılan bazı sql komut deyimlerinin yazılması ile olur.
Web uygulamalarımızın en zayıf bölümü kullanıcı girişlerinin yapıldığı ve sonucunda yetkilendirme yapıldığı bölümlerdir. Yani login sayfalarıdır. Web uygulamaları ile ilgilenen herkes mutlaka bir login sayfası yapmıştır. Temel olarak iki tane TextBox ve bir tane Button yer alır. Kullanıcı TextBox’lara gerekli verileri girdikten sonra Button’a tıklar ve Button’un OnClick olayı devreye girer. OnClick olayında ise veritabanına bağlantı gerçekleştirilir, gerekli sorgu komutu yazılır ve eğer TextBox’lara girilen veriler ile veritabanındaki tabloda yer alan herhangi bir kayıt eşleştiyse (veya en az bir kayıt döndürüyorsa) bu kullanıcı için web uygulamasına giriş başarılı olmuştur. Yani kullanıcının Authenticate işlemi gerçekleştirilmiştir. Aslında her şey düzgün çalıştığını zannederken kötü niyetli kişiler tarafından web uygulamalarınızın tehdit altında olduğunu farketmezsiniz. Bende web uygulamaları ile çalışmaya yeni başlarken eğer kod düzgün çalışıyorsa her şey bitmiş gibi düşünürdüm. Güvenlik kısmını herzaman arka plana atmıştım. Bazen makelelerimizde esas konuya yoğunlaşmak için bazı güvenlik ilkelerini ihlal ederiz. Fakat siz uygulamalarınızda güvenlikten asla ödün vermeyin.
Sizlere bu makalede kötü yazılmış bir kod ve iyi yazılmış bir kodun karşılaştırmasını yapacağım. Fakat en önce Sql Injection ataklarına karşı koymanız için gereken 5 temel savunma prensibini bilmeniz gerekir:
Prensipler Neler Yapmalısınız?
Kullanıcı girdilerine asla güvenmeyin. Tüm TextBox girişlerinin değerlerini Validator Kontrolleri, Regular Expressions veya kod ile kontrol edin.
Veritabanına asla admin düzeyinde bağlanmayın. Veritabanına gerekli düzeyde kısıtlı erişim ile bağlanın.
Asla dinamik Sql sorguları kullanmayın. Parametre göndererek veya Stored Procedure Kullanın.
Veritabanına verilerinizi asla açık şekilde yazmayın. Verilerinizi şifreleme algoritması kullanarak veritabanına kaydedin.
Web uygulamalarınızda meydana gelebilecek istisnalarla(Exceptions) veya hatalarla ilgili bilgileri en düşük düzeyde kullanıcıya aktarın. Web uygulamalarınızda meydana gelebilecek olası her hataya karşı özel bir hata sayfası hazırlayın.
Şimdi sıra geldi web uygulamalarınızı nasıl yazmanız ve yazmamanız gerektiğine.
login.aspx sayfamızda yer alan Button’un OnClick olayına şu şekilde kod yazılmış olduğunu farzedelim.
private void Button1_Click(object sender, System.EventArgs e)
{
string strCnx = ConfigurationSettings.AppSettings["BadconnStr"];
SqlConnection conn = new SqlConnection(strCnx);
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "Select * From users Where username = ’"+ txtusername.Text +"’AND password = ’"+ txtpassword.Text +"’ ";
SqlDataReader dr;
dr = cmd.ExecuteReader();
if(dr.Read())
{
FormsAuthentication.RedirectFromLoginPage(txtusername.Text,false);
}
else
{
ErrLabel.Text = "Başarısız İşlem";
}
}
Eğer kullanıcı kendi kullanıcı adı ve şifresini girerse her şey normal şekilde sürer. Fakat eğer iyi yazılmamış bir login sayfasında aşağıdaki gibi bir ifade girilirse ne olur görelim. ’or 1=1--
şeklinde bir Sql ifadesi kullanıcı adının girileceği TextBox’a girilir ve şifre kısmına da rastgele bir değer girilirse, veritabanımızdaki tabloda böyle bir kullanıcı olmasa bile yetkilendirme işlemi başarılı olacaktır. Çünkü ’or 1=1-- ifadesinin TextBox’a girilmesi sonucu sorgu ifadesi şu şekle dönüşmüş olur. Select * From users Where username = ’ ’or 1=1--’ AND password = ’"+ txtpassword.Text +"’
Kullanıcı adını yazdığımız TextBox nesnesine girilen ’or 1=1-- ifadesinde yer alan -- işaretlerinin anlamı; -- işaretlerinden gelen sonraki ifadeleri yoksay olacaktır. Yani sonuç olarak ifademiz;
Select * From users Where username = ’ ’or 1=1--
şekline dönüşecektir.Bu ifadede yer alan or 1=1 ifadesi sürekli doğru sonucu vereceğinden sonuç olarak sorgu işlemi bir kayıt döndürecektir. Bizim if döngümüzde yer alan dr.Read() ifadesi de true değerini alacağından if deyimi çalıştırılacak ve kullanıcı Authenticate işlemini başarı ile geçecektir.
Peki bu Sql Injection saldırısının çalışmasını sağlayan hatalar neydi? Kodumuzu satır satır inceleyelim. string strCnx = ConfigurationSettings.AppSettings["BadconnStr"];
SqlConnection conn = new SqlConnection(strCnx);
bu ifadede BadconnStr değerini Web.config sayfamızdan almaktayız. Web.config sayfamızda yer alan ConnectionString ifademiz şu şekildedir.
Bu ConnectionString ifadesindeki hata veritabanına sa olarak bağlanmamızdır. Hiçbir zaman veritabanına sa kullanıcısı olarak bağlanmayın. Çünkü sa veritabanı üzerinde çok yüksek haklara sahiptir. Oysa bize gerekli olan sadece SELECT sorgusu.
Diğer bir hata ise sorgu işleminin dinamik olarak yapılması. Eğer bu şekilde dinamik olarak SQL sorguları yaratılırsa yukarıda girilen ’or 1=1-- ifadesinin girilmesi ile çok büyük güvenlik açıklarına neden olursunuz. Peki ne yapacağız. Yukarıda bahsettiğim prensiplere göre parametre olarak veri göndermeli veya Stored Procedure kullanmalıyız.
Aslında yukarıda TextBox’lara girilen değerleri de kontrol etmemiz gerekir. Yine aynı şekilde TextBox’ın MaxLength özelliğinin mutlaka kısıtlanması gerekir. Yani TextBox’lara sınırsız karakter girilmesini önlemeliyiz. TextBox’lara girilebilecek özel karakterleri de kontrol etmeliyiz. Yani ’ " - + # % & gibi bir çok karakterlerin girilmemesini sağlamalıyız.
Sadece ’or 1=1-- ifadesinden farklı Sql Injection saldırıları da olabilir. Örneğin yine kullanıcı adını girdiğimiz TextBox nesnesinin içine,
’; UPDATE users SET password = ’deneme’ WHERE username = ’mehmet’ --
ifadesi de girilebilir. Peki bu Sql Injection ne gibi zararlara neden olur?
Bu ifade ile çoklu Sql deyimleri noktalı virgül yardımı ile aynı anda çalıştırılabilir. Bu ifade ile users tablosunda yer alan kullanıcı adı mehmet olan kişinin şifresini deneme olarak değiştiriyor. Eğer yukarıdaki gibi kötü yazılmış bir kod varsa bu işlem başarı ile gerçekleştiriliyor. Yine aynı şekilde buna benzer bir ifade ile, veritabanında yeni kullanıcılar yaratılabilr, bir tablo silinebilir, veya herhangi bir stored procedure yazılarak çok farklı işlemler gerçekleştirilebilir. Bunu önlemenin yolu veritabanına bağlantı yaptığımız ConnectionString’inde yer alan user’a sadece ve sadece gerekli izinler verilmelidir. Örneğin, burada user’ın sadece SELECT ifadesi için izin verilseydi hiç bir sorun olmayacaktı.
Şimdi daha güvenli login işleminin nasıl gerçekleşeceğini görelim.
Daha Güvenli Login Sayfamız
Öncelikle sayfamızın tasarım kısmının neye benzediğine bakalım. Daha iyi görebilmek için şeklin üzerine tıklayıp büyütebilirsiniz.
LOGIN Butonuna tıkladığımızda çalışacak kodu görmeden önce Web.config dosyasında yer alan ConnectionString ifadesini görelim.
Button’umuzun OnClick olayında çalışacak kod ise şu şekildedir.
private void Button1_Click(object sender, System.EventArgs e)
{
string strCnx = ConfigurationSettings.AppSettings["BetterconnStr"];
SqlConnection conn = new SqlConnection(strCnx);
conn.Open(); SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "UserControl";
SqlParameter prm;
prm = new SqlParameter("@username",SqlDbType.NVarChar,50);
prm.Direction = ParameterDirection.Input;
prm.Value = FormsAuthentication.HashPasswordForStoringInConfigFile(txtusername.Text,"SHA1");
cmd.Parameters.Add(prm);
prm = new SqlParameter("@password",SqlDbType.NVarChar,50);
prm.Direction = ParameterDirection.Input;
prm.Value = FormsAuthentication.HashPasswordForStoringInConfigFile(txtpassword.Text,"SHA1");
cmd.Parameters.Add(prm);
SqlDataReader dr;
dr = cmd.ExecuteReader();
if (dr.Read())
{
FormsAuthentication.RedirectFromLoginPage(txtusername.Text, false);
}
else
{
ErrLabel.Text = "Başarısız İşlem";
}
}
Yukarıda makalenin ilk başında bahsettiğim 5 temel prensibin hepsi bu login işleminde uygulandı. TextBox nesnelerine girilebilecek max karakter sayısının kısıtlanması ile çalışabileck Sql deyimleri girilemez. Aynı şekilde RegularExpressionValidator ifadeleri ile özel karakterlerin girilmesi önlenlenmiş oldu. Yine ConnectionString ifademizde benim yarattığım bir kullanıcı ile bağlanılıyor. Bu kullanıcıya sadece StoredProcedure’leri çalıştırılmasına izin veriliyor. Böylece başka herhangi bir sql komutunun çalışmasına olanak tanınmıyor. Çünkü veritabanına bağlanan kullanıcının yapabildikleri kısıtlanmıştır. SqlCommandType’in özelliği Stored Procedure olarak ayarlanmış ve böylece dinamik SQL ifadelerinin kullanılması engellenmiş olur. Stored Procedure’e aktarılan parametrelerde şifrelenerek veritabanında, şifrelenmiş olarak duran kayıtlarla karşılaştırlır.
Elbette web uygulamasının içerisinde, login sayfasından farklı sayfalarda yer alan TextBox nesneleri ile kötü niyetli kullanıcılar veritabanımıza dolayısıyla web uygulamamıza zarar verebilirler. Örneğin, herkesin bildiği site içerisinde arama yapabilmemizi sağlayan TextBox nesnelerine girilen değerlerde kontrol edilmelidir.
Bu makalenin içerisinde yer alan kodları daha iyi anlayabilmek için, makale içinde geçen bazı konuları (FormsAuthentication, Verileri Şifreleme, RegularExpressionValidator, Stored Procedure) yine aspnedir.com sitesinden okumanızı tavsiye ederim.
Örnek Uygulama : SQL Injection
Makale:
SQL Injection Ataklarından Nasıl Korunuruz? ASP.NET
SpreadsheetGear: Excel Charting Samples
Richly formatted workbooks with fast and complete calculations are the heart and soul of a spreadsheet, but the ability to make good decisions is greatly enhanced by the ability to visualize data.more
Dashboards from Excel Charts and Ranges
You and your users can design dashboards, reports, charts, and models in Excel rather than hard to learn developer tools and you can easily deploy them with SpreadsheetGear for
Web uygulamalarımızın en zayıf bölümü kullanıcı girişlerinin yapıldığı ve sonucunda yetkilendirme yapıldığı bölümlerdir. Yani login sayfalarıdır. Web uygulamaları ile ilgilenen herkes mutlaka bir login sayfası yapmıştır. Temel olarak iki tane TextBox ve bir tane Button yer alır. Kullanıcı TextBox’lara gerekli verileri girdikten sonra Button’a tıklar ve Button’un OnClick olayı devreye girer. OnClick olayında ise veritabanına bağlantı gerçekleştirilir, gerekli sorgu komutu yazılır ve eğer TextBox’lara girilen veriler ile veritabanındaki tabloda yer alan herhangi bir kayıt eşleştiyse (veya en az bir kayıt döndürüyorsa) bu kullanıcı için web uygulamasına giriş başarılı olmuştur. Yani kullanıcının Authenticate işlemi gerçekleştirilmiştir. Aslında her şey düzgün çalıştığını zannederken kötü niyetli kişiler tarafından web uygulamalarınızın tehdit altında olduğunu farketmezsiniz. Bende web uygulamaları ile çalışmaya yeni başlarken eğer kod düzgün çalışıyorsa her şey bitmiş gibi düşünürdüm. Güvenlik kısmını herzaman arka plana atmıştım. Bazen makelelerimizde esas konuya yoğunlaşmak için bazı güvenlik ilkelerini ihlal ederiz. Fakat siz uygulamalarınızda güvenlikten asla ödün vermeyin.
Sizlere bu makalede kötü yazılmış bir kod ve iyi yazılmış bir kodun karşılaştırmasını yapacağım. Fakat en önce Sql Injection ataklarına karşı koymanız için gereken 5 temel savunma prensibini bilmeniz gerekir:
Prensipler Neler Yapmalısınız?
Kullanıcı girdilerine asla güvenmeyin. Tüm TextBox girişlerinin değerlerini Validator Kontrolleri, Regular Expressions veya kod ile kontrol edin.
Veritabanına asla admin düzeyinde bağlanmayın. Veritabanına gerekli düzeyde kısıtlı erişim ile bağlanın.
Asla dinamik Sql sorguları kullanmayın. Parametre göndererek veya Stored Procedure Kullanın.
Veritabanına verilerinizi asla açık şekilde yazmayın. Verilerinizi şifreleme algoritması kullanarak veritabanına kaydedin.
Web uygulamalarınızda meydana gelebilecek istisnalarla(Exceptions) veya hatalarla ilgili bilgileri en düşük düzeyde kullanıcıya aktarın. Web uygulamalarınızda meydana gelebilecek olası her hataya karşı özel bir hata sayfası hazırlayın.
Şimdi sıra geldi web uygulamalarınızı nasıl yazmanız ve yazmamanız gerektiğine.
login.aspx sayfamızda yer alan Button’un OnClick olayına şu şekilde kod yazılmış olduğunu farzedelim.
private void Button1_Click(object sender, System.EventArgs e)
{
string strCnx = ConfigurationSettings.AppSettings["BadconnStr"];
SqlConnection conn = new SqlConnection(strCnx);
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "Select * From users Where username = ’"+ txtusername.Text +"’AND password = ’"+ txtpassword.Text +"’ ";
SqlDataReader dr;
dr = cmd.ExecuteReader();
if(dr.Read())
{
FormsAuthentication.RedirectFromLoginPage(txtusername.Text,false);
}
else
{
ErrLabel.Text = "Başarısız İşlem";
}
}
Eğer kullanıcı kendi kullanıcı adı ve şifresini girerse her şey normal şekilde sürer. Fakat eğer iyi yazılmamış bir login sayfasında aşağıdaki gibi bir ifade girilirse ne olur görelim. ’or 1=1--
şeklinde bir Sql ifadesi kullanıcı adının girileceği TextBox’a girilir ve şifre kısmına da rastgele bir değer girilirse, veritabanımızdaki tabloda böyle bir kullanıcı olmasa bile yetkilendirme işlemi başarılı olacaktır. Çünkü ’or 1=1-- ifadesinin TextBox’a girilmesi sonucu sorgu ifadesi şu şekle dönüşmüş olur. Select * From users Where username = ’ ’or 1=1--’ AND password = ’"+ txtpassword.Text +"’
Kullanıcı adını yazdığımız TextBox nesnesine girilen ’or 1=1-- ifadesinde yer alan -- işaretlerinin anlamı; -- işaretlerinden gelen sonraki ifadeleri yoksay olacaktır. Yani sonuç olarak ifademiz;
Select * From users Where username = ’ ’or 1=1--
şekline dönüşecektir.Bu ifadede yer alan or 1=1 ifadesi sürekli doğru sonucu vereceğinden sonuç olarak sorgu işlemi bir kayıt döndürecektir. Bizim if döngümüzde yer alan dr.Read() ifadesi de true değerini alacağından if deyimi çalıştırılacak ve kullanıcı Authenticate işlemini başarı ile geçecektir.
Peki bu Sql Injection saldırısının çalışmasını sağlayan hatalar neydi? Kodumuzu satır satır inceleyelim. string strCnx = ConfigurationSettings.AppSettings["BadconnStr"];
SqlConnection conn = new SqlConnection(strCnx);
bu ifadede BadconnStr değerini Web.config sayfamızdan almaktayız. Web.config sayfamızda yer alan ConnectionString ifademiz şu şekildedir.
Bu ConnectionString ifadesindeki hata veritabanına sa olarak bağlanmamızdır. Hiçbir zaman veritabanına sa kullanıcısı olarak bağlanmayın. Çünkü sa veritabanı üzerinde çok yüksek haklara sahiptir. Oysa bize gerekli olan sadece SELECT sorgusu.
Diğer bir hata ise sorgu işleminin dinamik olarak yapılması. Eğer bu şekilde dinamik olarak SQL sorguları yaratılırsa yukarıda girilen ’or 1=1-- ifadesinin girilmesi ile çok büyük güvenlik açıklarına neden olursunuz. Peki ne yapacağız. Yukarıda bahsettiğim prensiplere göre parametre olarak veri göndermeli veya Stored Procedure kullanmalıyız.
Aslında yukarıda TextBox’lara girilen değerleri de kontrol etmemiz gerekir. Yine aynı şekilde TextBox’ın MaxLength özelliğinin mutlaka kısıtlanması gerekir. Yani TextBox’lara sınırsız karakter girilmesini önlemeliyiz. TextBox’lara girilebilecek özel karakterleri de kontrol etmeliyiz. Yani ’ " - + # % & gibi bir çok karakterlerin girilmemesini sağlamalıyız.
Sadece ’or 1=1-- ifadesinden farklı Sql Injection saldırıları da olabilir. Örneğin yine kullanıcı adını girdiğimiz TextBox nesnesinin içine,
’; UPDATE users SET password = ’deneme’ WHERE username = ’mehmet’ --
ifadesi de girilebilir. Peki bu Sql Injection ne gibi zararlara neden olur?
Bu ifade ile çoklu Sql deyimleri noktalı virgül yardımı ile aynı anda çalıştırılabilir. Bu ifade ile users tablosunda yer alan kullanıcı adı mehmet olan kişinin şifresini deneme olarak değiştiriyor. Eğer yukarıdaki gibi kötü yazılmış bir kod varsa bu işlem başarı ile gerçekleştiriliyor. Yine aynı şekilde buna benzer bir ifade ile, veritabanında yeni kullanıcılar yaratılabilr, bir tablo silinebilir, veya herhangi bir stored procedure yazılarak çok farklı işlemler gerçekleştirilebilir. Bunu önlemenin yolu veritabanına bağlantı yaptığımız ConnectionString’inde yer alan user’a sadece ve sadece gerekli izinler verilmelidir. Örneğin, burada user’ın sadece SELECT ifadesi için izin verilseydi hiç bir sorun olmayacaktı.
Şimdi daha güvenli login işleminin nasıl gerçekleşeceğini görelim.
Daha Güvenli Login Sayfamız
Öncelikle sayfamızın tasarım kısmının neye benzediğine bakalım. Daha iyi görebilmek için şeklin üzerine tıklayıp büyütebilirsiniz.
LOGIN Butonuna tıkladığımızda çalışacak kodu görmeden önce Web.config dosyasında yer alan ConnectionString ifadesini görelim.
Button’umuzun OnClick olayında çalışacak kod ise şu şekildedir.
private void Button1_Click(object sender, System.EventArgs e)
{
string strCnx = ConfigurationSettings.AppSettings["BetterconnStr"];
SqlConnection conn = new SqlConnection(strCnx);
conn.Open(); SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "UserControl";
SqlParameter prm;
prm = new SqlParameter("@username",SqlDbType.NVarChar,50);
prm.Direction = ParameterDirection.Input;
prm.Value = FormsAuthentication.HashPasswordForStoringInConfigFile(txtusername.Text,"SHA1");
cmd.Parameters.Add(prm);
prm = new SqlParameter("@password",SqlDbType.NVarChar,50);
prm.Direction = ParameterDirection.Input;
prm.Value = FormsAuthentication.HashPasswordForStoringInConfigFile(txtpassword.Text,"SHA1");
cmd.Parameters.Add(prm);
SqlDataReader dr;
dr = cmd.ExecuteReader();
if (dr.Read())
{
FormsAuthentication.RedirectFromLoginPage(txtusername.Text, false);
}
else
{
ErrLabel.Text = "Başarısız İşlem";
}
}
Yukarıda makalenin ilk başında bahsettiğim 5 temel prensibin hepsi bu login işleminde uygulandı. TextBox nesnelerine girilebilecek max karakter sayısının kısıtlanması ile çalışabileck Sql deyimleri girilemez. Aynı şekilde RegularExpressionValidator ifadeleri ile özel karakterlerin girilmesi önlenlenmiş oldu. Yine ConnectionString ifademizde benim yarattığım bir kullanıcı ile bağlanılıyor. Bu kullanıcıya sadece StoredProcedure’leri çalıştırılmasına izin veriliyor. Böylece başka herhangi bir sql komutunun çalışmasına olanak tanınmıyor. Çünkü veritabanına bağlanan kullanıcının yapabildikleri kısıtlanmıştır. SqlCommandType’in özelliği Stored Procedure olarak ayarlanmış ve böylece dinamik SQL ifadelerinin kullanılması engellenmiş olur. Stored Procedure’e aktarılan parametrelerde şifrelenerek veritabanında, şifrelenmiş olarak duran kayıtlarla karşılaştırlır.
Elbette web uygulamasının içerisinde, login sayfasından farklı sayfalarda yer alan TextBox nesneleri ile kötü niyetli kullanıcılar veritabanımıza dolayısıyla web uygulamamıza zarar verebilirler. Örneğin, herkesin bildiği site içerisinde arama yapabilmemizi sağlayan TextBox nesnelerine girilen değerlerde kontrol edilmelidir.
Bu makalenin içerisinde yer alan kodları daha iyi anlayabilmek için, makale içinde geçen bazı konuları (FormsAuthentication, Verileri Şifreleme, RegularExpressionValidator, Stored Procedure) yine aspnedir.com sitesinden okumanızı tavsiye ederim.
Örnek Uygulama : SQL Injection
Makale:
SQL Injection Ataklarından Nasıl Korunuruz? ASP.NET
SpreadsheetGear: Excel Charting Samples
Richly formatted workbooks with fast and complete calculations are the heart and soul of a spreadsheet, but the ability to make good decisions is greatly enhanced by the ability to visualize data.more
Dashboards from Excel Charts and Ranges
You and your users can design dashboards, reports, charts, and models in Excel rather than hard to learn developer tools and you can easily deploy them with SpreadsheetGear for
Similar topics
» SQL injection nasıl yapılır???
» SQL Injection Nedir?Nasıl Yapılır ? Neye Yarar Ayrıntılı Anlatım
» Arkadaşlar karşı bilgisayara nasıl gizlice takip edebilirim veya keylogerle nasıl takip ede bilirim yardım edin lütfen
» SQL Injection Nedir?Nasıl Yapılır ? Neye Yarar Ayrıntılı Anlatım
» Arkadaşlar karşı bilgisayara nasıl gizlice takip edebilirim veya keylogerle nasıl takip ede bilirim yardım edin lütfen
1 sayfadaki 1 sayfası
Bu forumun müsaadesi var:
Bu forumdaki mesajlara cevap veremezsiniz
Perş. Ocak 07, 2021 8:29 pm tarafından muhammedalieren
» Proxy Çekme Programı İndir
Ptsi Ekim 07, 2019 12:41 pm tarafından dabanonline
» NightMare Program arşivi v1.0 (Türkçe) 2012 Tek Link İndir
Salı Ocak 03, 2017 7:41 pm tarafından kürs4t
» 9 ADET DDOS ATTACK PROGRAMLARI İNDİR
Salı Ocak 03, 2017 7:39 pm tarafından kürs4t
» IP ÖĞRENME YÖNTEMLERİ
Paz Ara. 25, 2016 7:00 am tarafından fineguitars
» Yeni BaşLayanLar iÇin İdeaL Bi ( PC HacK ) Yöntemi
Cuma Ara. 16, 2016 1:15 am tarafından serdar02
» Kontör Hilesi
Perş. Ara. 08, 2016 4:32 pm tarafından ali19722003
» Wireless Hack Programı İndir
Salı Ara. 06, 2016 12:41 am tarafından kralcan9898
» Wirelless(Kablosuz Ağ)Şifre Kırma(2010)
Paz Kas. 27, 2016 11:15 am tarafından noobs
» 77 WIFI Hack v2.0
Paz Kas. 27, 2016 8:19 am tarafından D.r hack
» Netstat Nedir ve Nasıl Kullanılır?
Ptsi Kas. 21, 2016 3:16 pm tarafından SKX6
» SQL SERVER Türkçe Görsel Eğitim Seti Full Tek Link İndir
Cuma Kas. 04, 2016 11:52 pm tarafından H3CK3R38
» Ip gözükmesin!!!
Cuma Kas. 04, 2016 11:44 pm tarafından H3CK3R38
» EN ETKİLİ CAMFROG PİNG DÜŞÜRME PROGRAMI
Paz Ekim 23, 2016 10:30 pm tarafından mujah03
» CamPaper v3.98 (Dünyadaki Web Kameraları Masaüstünüze Gelsin)
Paz Ekim 16, 2016 10:04 am tarafından whitemask34
» DriverScanner 2012 Full Tek Link İndir.İçinde Serial Mevcuttur..
Cuma Mart 25, 2016 1:11 pm tarafından ziyadd
» 9300 Adet İkon Koleksiyon
Perş. Ara. 10, 2015 4:28 pm tarafından hacıuket
» RAKİON HACK
Perş. Kas. 26, 2015 1:25 pm tarafından HacKer EnCoRe
» deep webe giriş hakkında
Paz Kas. 22, 2015 4:18 pm tarafından anaxinemix
» MSN HACK PROGRAMI FİLAN AÇIK YOLLARI VARSA LÜTFEN YARDIM
Perş. Kas. 19, 2015 9:27 am tarafından aLcCcadraz
» EssentialNetToolsv4.1 Full İndir-Resımlı Anlatım(Crack İçindedir.)
Ptsi Kas. 16, 2015 5:29 pm tarafından Cengish
» Meta Kodları
Ptsi Kas. 16, 2015 5:13 pm tarafından Haxker
» Xtreme RAT 2.9 ful indir
Ptsi Kas. 16, 2015 5:11 pm tarafından Haxker
» counter strıke 1.6
Paz Kas. 01, 2015 3:51 pm tarafından EMRE AKMAN14
» By'Roc-Hackeroo1 Özel deneme sürüm v1 hack program
Çarş. Ekim 21, 2015 3:19 pm tarafından redbull123
» İndirme Siteleri Bedava Premium Üyelikleri
Çarş. Ekim 21, 2015 3:17 pm tarafından redbull123
» Global Deprem Takip Programı İndir
Çarş. Ekim 07, 2015 4:36 pm tarafından hacıuket
» ADMİN YADA BİRİNİZ YARDIM ETSİN LÜTFEN
C.tesi Ekim 03, 2015 1:21 pm tarafından hacıuket
» LOL DROP HACK VARSA ATABİLİRMİSİNİZ (YENİYİM)
Çarş. Eyl. 30, 2015 9:41 am tarafından hacıuket
» YARDIM EDİN ACİL!!!
C.tesi Eyl. 19, 2015 1:50 pm tarafından Tesbihçi
» hedef kameralara sızmak yardım
Paz Eyl. 13, 2015 6:51 pm tarafından maardinlifurkan
» 50 Adet İllizyon Gösterisi ve Püf Noktaları İndir Tek Link
Paz Haz. 28, 2015 11:38 am tarafından LAMBCU
» Admin Paneline kolayca Sızma hack
Paz Haz. 21, 2015 8:24 pm tarafından MeLaNKoLiqK
» Yapay sanal zeka programı indir pc programı indir
Çarş. Mayıs 20, 2015 2:28 pm tarafından DHAssassin
» SQL Injection Dersleri
Salı Mayıs 19, 2015 11:16 am tarafından samet_35
» Stereoscopic Player v1.9.5 (3D Video Oynatıcı)
Paz Mayıs 10, 2015 12:44 pm tarafından mgta06
» Sorular Burdan Bu Başlık Altından Gönderin 1 Günde Cevapp....................
Çarş. Nis. 29, 2015 8:53 pm tarafından bratcet
» Abrosoft FantaMorph Deluxe v5.4.0 (Eğlenceli Fotomontaj Programı)
Paz Nis. 26, 2015 2:34 pm tarafından kontakxxx
» Windows Kullanıcı Şifresini Kırın
Çarş. Nis. 08, 2015 1:11 pm tarafından emrekara06
» WireLess Kırıcı indir DownLoad
Çarş. Nis. 08, 2015 12:27 pm tarafından safari255
» farkı buyrun içerde yaşayın
Salı Nis. 07, 2015 4:02 pm tarafından hellf123
» Raxco PerfectDisk Server v12.5 Build 311 Final (Profesyonel Disk Birleştirme Yazılımı)
Salı Nis. 07, 2015 2:30 pm tarafından emrekara06
» Counter Strike 1.6 Server Saldırı Programı , Ping Yollayıcı
Paz Mart 29, 2015 8:49 pm tarafından mehmet2910
» AVG PC Tuneup 2012 Full İndir(İçinde Serial Mevcuttur)
Perş. Mart 19, 2015 3:52 pm tarafından batuhanc98
» Wireless şifre kırma
Ptsi Mart 16, 2015 4:02 pm tarafından hacktoor
» BİZ GERİ DÖNDÜK..!
Cuma Mart 13, 2015 6:37 am tarafından RebelliouS
» şifre kırıcı
Çarş. Şub. 25, 2015 1:43 pm tarafından fatalwarriors01
» Hide IP Easy v5.2.1.6 (IP Gizleme Programı)
Çarş. Şub. 25, 2015 1:41 pm tarafından fatalwarriors01
» Arkadaşlar Çoğu Hack Programları
Ptsi Şub. 02, 2015 5:08 pm tarafından by gizli
» ExtremeCopy Pro v2.3.0 (x86/x64) - (120% Daha Hızlı Kopyalayın)
Ptsi Şub. 02, 2015 4:55 pm tarafından by gizli
» 34 Aded Wep Hack Videolu
Salı Ocak 20, 2015 9:20 pm tarafından hakan kaya
» Türkojen İle Yapabilcekleriniz
Salı Ocak 20, 2015 9:17 pm tarafından hakan kaya
» WiFi Hack AIO (2010) Wireless şifre kırma araçları güncel paket
Paz Ocak 04, 2015 2:17 pm tarafından 22hacker
» Zaman Ayarlı Bilgisayar Kapatan Program İndir
C.tesi Kas. 22, 2014 5:05 pm tarafından kahraman0163
» 10 saniyede kendi solucan virüsünü yapın
C.tesi Kas. 22, 2014 12:54 pm tarafından Dr.Barbossa
» Crypter+Binder Yapımı(Videolu Anlatım)
Paz Kas. 16, 2014 9:08 am tarafından alon81
» DEV HACK PROGRAM MSN,WEB DAHA BİRÇOK KONU İÇİN BUYRUN HEPSİ BİR ARADA
Çarş. Kas. 12, 2014 12:57 pm tarafından predator
» Tarihin en güçlü saldırı programı Deprem V1.0
Cuma Kas. 07, 2014 4:19 pm tarafından Hack23
» K-Lite Mega Codec Pack 6.2.0
Çarş. Kas. 05, 2014 9:54 pm tarafından murattix123
» Autoplay Menu Designer Pro v4.4 build 156 (İnteraktif CD/DVD Autorun Menüleri Hazırlayın)
Paz Ekim 26, 2014 12:34 pm tarafından sokoletss
» FacebooK HesaP Dondurucu (2010) HESAP BİRDAHA AÇILAMAZ
Cuma Ekim 24, 2014 12:06 pm tarafından Zerocool1453
» Hacker Hack
Perş. Ekim 02, 2014 8:09 pm tarafından HackerKgt
» Evet arkadaşlar özel hack dersleri orta seviye dersleri video ları mükkemeldir
Çarş. Tem. 02, 2014 3:04 pm tarafından murasus
» By'G3L3C3K Hacker İnternette PKK'LILARI RAHAT BIRAKMIYOR...!!!
Cuma Mayıs 02, 2014 6:04 pm tarafından umut5467
» Adobe Photoshop CS CS2 CS3 CS4 CS5 Portable
Salı Nis. 08, 2014 12:08 am tarafından Cerrah
» Videoya Winrar'dan Virüs Koyma(Resimli Anlatım)
Salı Mart 11, 2014 5:53 pm tarafından YNK24
» ByRoc Site aç
Paz Şub. 02, 2014 9:15 pm tarafından hacktoor
» En basit hack yöntemi budur acemiler için kesin sonuç
Paz Şub. 02, 2014 8:07 pm tarafından hacktoor
» PassMark OSForensics Professional v1.2.1003 (İşletim Sistemi Adli İnceleme Programı)
Paz Şub. 02, 2014 8:04 pm tarafından hacktoor
» Ursa Software KeyMon v2.23 (Bilgisayar Casusu)
Paz Ara. 15, 2013 8:23 pm tarafından sos-sos
» BÜTÜN YASAKLI SİTELERE GİRME PROGRAMI
Çarş. Kas. 27, 2013 9:35 am tarafından RebelliouS
» Dailymotion'ın mahkeme kararıyla Türkiye'de erişime kapatıldı. 2013
Çarş. Kas. 27, 2013 9:12 am tarafından RebelliouS
» ANTİ-KEYLOGGER PROGRAMINI BİLGİSAYARDAN KALDIRMA SORUNU (ÇÖZÜLDÜ)
Çarş. Kas. 27, 2013 9:03 am tarafından RebelliouS
» Bilgisayarınız hızlandıran program
Cuma Kas. 15, 2013 10:13 pm tarafından belesci
» ANASAYFA MÜZİĞİMİZ BUNLAR OLACAK!
Ptsi Eyl. 02, 2013 9:23 am tarafından RebelliouS
» Point Blank Bedava E -pİN
Perş. Ağus. 22, 2013 6:36 pm tarafından Sef35
» Prison Break 3. Sezon Tüm Bölümler Full 720p Türkçe Dublaj İzle
Paz Tem. 28, 2013 4:42 pm tarafından RebelliouS
» Prison Break 2. Sezon Tüm Bölümler Full 720p Türkçe Dublaj İzle
Paz Tem. 28, 2013 4:19 pm tarafından RebelliouS
» Prison Break 1. Sezon Tüm Bölümler Full 720p Türkçe Dublaj İzle
Paz Tem. 28, 2013 3:52 pm tarafından RebelliouS
» Linkleri herkezle paylaşmayınız..
Cuma Tem. 12, 2013 6:29 pm tarafından hacktoor
» Kriptoloji Kriptografi Dökümanlar Türkçe Tek Link İndir
Salı Tem. 09, 2013 10:42 pm tarafından hacktoor
» Site açıklarını bulma....
Perş. Tem. 04, 2013 4:23 pm tarafından RebelliouS
» DUYURU.....!
Paz Haz. 30, 2013 9:06 pm tarafından RebelliouS
» Facebook hack programı yada kodunu bilen yazar mı? (detaylı kullanımınıda)
Perş. Haz. 27, 2013 7:46 pm tarafından cellad06
» facebook çalma nasıl
Perş. Haz. 27, 2013 7:42 pm tarafından cellad06
» Windows Açılışına Kendi Mesajını Yazını Ekleme
Ptsi Haz. 17, 2013 2:25 pm tarafından RebelliouS
» SEN BİR KORKAKSIN..!
Paz Haz. 16, 2013 11:28 am tarafından RebelliouS
» Android Cihazlar İçin FULL Sürüm Karışık Uygulama Paketi ( Oyun Ağırlıklı )
Salı Mayıs 21, 2013 10:07 pm tarafından artemiz09
» System Optimize Expert v3.2.9.2 (Sistem Optimizasyonu Uzmanı)
Salı Mayıs 14, 2013 12:10 am tarafından personel
» karsı tarafın masa ustunu gormek ıstermısın
C.tesi Mayıs 11, 2013 10:12 pm tarafından triol
» 1000 Adet Yazı Fontu Tek Link İndir
Ptsi Nis. 01, 2013 6:00 pm tarafından 19mayıs1919
» Bilgisayarınıza Başkaları Girmesin
Ptsi Mart 25, 2013 2:08 pm tarafından gururelif
» FACE HACKLEME
Perş. Mart 07, 2013 7:50 pm tarafından zasox
» wiraless hack
Perş. Mart 07, 2013 1:57 pm tarafından jekosirbina
» Depp Frezee Pc Koruma Programı
Paz Şub. 24, 2013 8:43 am tarafından by_rock
» Backtrack Görsel Eğitim ve Hack Dersleri DVD si
C.tesi Şub. 23, 2013 1:47 pm tarafından by_rock
» BluffTitler DX9 iTV v8.7.0.0 (3 Boyutlu Yazı Animasyonu Hazırlama Programı)
Cuma Şub. 08, 2013 2:37 pm tarafından XxDenizxX19
» İstanbul kıyamet vakti online oyun
Perş. Şub. 07, 2013 5:17 pm tarafından RebelliouS
» En Çok Tavsiye Edilen Android Oyun Paketi-PRO Versiyon
Ptsi Şub. 04, 2013 6:15 pm tarafından hardsoldier