İçindekiler
- Özet
- Uyarı
- Sunucu (Server)
- Sunucuların Güvenliği Neden Önemli
- Sunuculara Yetkisiz Erişimde Kullanılan Saldırı Yöntemleri
- SQL Injection Exploit (SQL Enjeksiyonu Açığı)
- Sqlmap
- Brute Force
- Brute Force İle Site Üzerindeki Gizli Dizinlere Erişim
- Nmap İle Açık Bağlantı Noktalarının Tespiti
- Yetkisiz Erişimden Korunma Yöntemleri
- Yetkisiz Erişimin Kanunsal Cezası
- Etiksel Açıdan Yetkisiz Erişim
- Sonuç
- Kaynakça
Özet
Bu çalışma ile sunuculara yetkisiz erişim konusu ele alınmıştır. Günümüzdeki sunucu kavramının tanımı yapılıp, günümüzdeki yaygın kullanılan sunucu türlerine değinilmiştir. Sunucuların içinde bulunabilecek önemli veriler listelenmiş ve bu verilerin neden korunması gerektiği tartışılmıştır. Sunuculara yetkisiz erişimde kullanılan saldırı yöntemleri listelenmiştir. Bu saldırı yöntemlerinden SQL injection ve Brute force yöntemleri sanal bir laboratuvarda gerçekleştirilmiştir ve bu saldırılardan nasıl korunabileceği konusunda tavsiyeler verilmiştir. Yetkisiz erişimin hukuksal boyutu ve cezaları açıklanmıştır. Bu çalışmayı okuyan insanları siber güvenlik, pentest gibi konularda bilgilendirmek ve onların bu konudaki ilgisinin arttırılması amaçlanmıştır.
Anahtar Kelimeler: Sunucu, Yetkisiz erişim, SQL, Brute force, Pentest, Siber güvenlik, SQL injection, Veri
Uyarı
Bu çalışmada anlatılan bilgiler ve oluşturulan laboratuvar ortamı, kişilerin siber güvenlik alanında kendini geliştirmesi ve legal olarak penetrasyon (sızma testi) testleri yapabilmeleri için hazırlanmıştır. Sadece legal penetrasyon testleri ve eğitim amaçlı kullanılmalıdır. Bu kaynaklar kötü niyetli amaçlar için kullanılmamalıdır. Bu bilgilerin başka web sitelerinde kötü niyetli amaçlar doğrultusunda kullanılması ile oluşan hasarlardan makale yazarı sorumlu değildir.
Bu çalışmada hiçbir kişi, kurum ve kuruluşa zarar verilmemiştir. Tüm işlemler bana ait olan web sitesinde sanal bir laboratuvar ortamı oluşturularak yapılmıştır.
Sunucu (Server)
Sunucu (server), bir istemcinin gönderdiği istekleri kabul eden, bu istekleri işleyen ve istemciye cevap veren sistemlerdir. Sunucuya istek gönderip daha sonrasında yanıt alan cihaza ise istemci (Client) denir. Sunucular sadece donanımdan oluşmaz, donanım ve özel yazılımlar birleştirilerek bir sunucu mimarisi oluşturulur. Sunucular aslında gündelik hayatta kullandığımız bilgisayarların daha gelişmiş bir modelidir. Sunucular ile bilgisayarlar arasındaki farklara örnek olarak daha fazla ve hızlı ram belleği, daha fazla işlemci gücü, daha hızlı ve yüksek boyutta depolama birimleri, daha hızlı internet bağlantıları ve özel işletim sistemleri gibi örnekler verilebilir. Potansiyel olarak İnternet’e bağlı her bilgisayar bir sunucu olabilmektedir.
Sunucuların ve istemcilerin sayısı değişkenlik gösterebilmektedir. Tek bir sunucu ve o sunucuya bağlanan tek bir istemcide sunucu-istemci mimarisini oluşturabilir. Çok fazla sayıdaki sunucu ve o sunuculara bağlanan çok sayıdaki istemci de sunucu-istemci mimarisini oluşturabilir.
Günümüzde yaygın kullanılan sunucu türlerine örnek olarak:
File Server (Dosya Sunucu) : Bir network üzerinde kullanıcıların ortak kullandıkları dosyaların bulunduğu sunucu bilgisayara verilen isimdir.
Database Server (Veri tabanı Sunucu): Veri tabanı hizmetleri vermek için oluşturulan sunuculardır . İstemciler veri tabanı sunucuları üzerinde verilen yetkiye bağlı olarak çeşitli SQL ifadelerini kullanabilirler. Örneğin, SQL Server, MySQL veya Oracle en çok bilinen veri tabanı sunucularıdır.
Web Server (Site Yayınlama Sunucusu): İnternet üzerinde bulunan web sayfalarının depolanmasında ve istekte bulunan kullanıcılara bu sayfaların gönderilmesinden sorumludur.
Proxy Server (Vekil Sunucu): İnternet erişimi sırasında kullanılan bir ara sunucudur. İnternete erişecek bilgisayar proxy server üzerinden çıkış yapar. Böylece çok fazla ziyaret edilen bir sayfa proxy server ön belleğine alınarak istekte bulunan bilgisayara ön belleğinden web sayfasını göndererek erişim hızını artırır.
DNS Server (DNS Sunucusu): Domain Name System yani alan adı sisteminde bulunan kayıtları ve domain yönlendirmelerini saklamak için kullanılırlar. Ağ üzerinde bir domain için IP adresi bilgisine ihtiyaç duyduğumuzda DNS sunucusu üzerinden sorgulatarak bulabiliriz.
SMTP Server (SMTP Sunucusu) : Simple Mail Transfer Protocol yani basit Mail transfer protokolu olan servis tüm mail geliş gidiş trafiğini, sunucular arasındaki mail iletişimini yürütür. Mail göndermek veya almak istediğimizde SMTP Sunucususu tarafından yapabiliriz.
(“Server Türleri Nelerdir”, 2016)
Bu çalışmada ise üzerinde duracağımız sunucular: veri tabanı sunucuları ve site sunucuları olacaktır.
Sunucuların Güvenliği Neden Önemli
Sunucuların gerek kullanım alanları gerekse kullanım amaçları nedeni ile sunucu sistemlerinde önemli derecede veri transferi gerçekleşmektedir. Bu veriler çok önemli veriler olabileceği gibi önemsiz verilerde olabilmektedir. Bu önemli verilerin herhangi bir nedenden dolayı başka kişiler tarafından yetkisiz olarak erişilebilir ve değiştirebilir hale gelmesi çok büyük problemlere neden olabilmektedir.
Öyle ki bir sunucuda insanların kredi kartı bilgilerinin bulunabileceği gibi, başka bir sunucuda kişinin web sitesinde herkese açık olarak yayınladığı şiirler bulunabilmektedir. Birinci örnekte veri güvenliğinin sağlanması kesin olarak gerekir iken ikinci örnekte veri güvenliğinin sağlanması kişinin isteği doğrultusundadır. Ancak burada unutulmaması gereken bir nokta vardır. Hiçbir sistem güvenli değildir. Her sistem hacklenebilir ama burada önemli olan unsur sistemde, güvenlik açıklarının oluşma ihtimalini en aza indirgemek ve var olan güvenlik açıklarını kapatmaktır. İçinde bir bağlantıdan söz edebileceğimiz her sistemde (bu bağlantı lokal bir bağlantı veya fiziksel bağlantıda olabilir) yetkisiz erişimden söz edilebilir.
Güvenlik açıklarının fark edilmediği veya kapatılmadığı durumlarda önemli veri sızıntıları olabilmektedir. Bu veriler genellikle leak (sızıntı) olarak adlandırılır. Çoğu zaman Deepweb (karanlık internet) de ücretli olarak satılmaktadır. Fakat bazı hacktivistler bu bilgileri herkese açık olarak ücretsiz olarak da paylaşabilmektedir. Bu sızıntılarda çoğunlukla kişisel veriler yayınlansa da kurumsal verilerde yayınlanabilmektedir.
Kişisel verilere: kimlik bilgileriniz, kredi kartı bilgileriniz, ulaşım ve adres bilgileriniz, tıbbi kayıtlarınız ve özel dosyalarınız örnek olarak verilebilir. Kurumsal verilere örnek olarak ise: personel bilgileri, müşteri bilgileri, şirket sırları, finansal bilgiler ve proje bilgileri olabilmektedir. Bu verilerin dolandırıcılık, kimlik hırsızlığı, bilgi hırsızlığı ve oltalama gibi yöntemlerle beraber kullanılması bireylere çok ciddi zarar verebilir. Bu zararlar çoğu zaman hukuksal sürece taşınır ve adli bilişim suçları kapsamında değerlendirilmektedir.
Sunuculara Yetkisiz Erişimde Kullanılan Saldırı Yöntemleri
Günümüzde sunuculara yetkisiz erişim için en çok kullanılan saldırı yöntemlerine örnek olarak
- SQL Injection (SQL Enjeksiyonu)
- Brute force (Kaba Kuvvet)
- XSS
- Phishing (Oltalama)
- Man In The Middle (Ortadaki Adam)
- Backdoor (Arka Kapı)
Saldırı yöntemleri örnek verilebilir. Bu çalışmada ise SQL injection ve Brute force saldırı yöntemlerini uygulamalı bir şekilde gerçekleştireceğiz. Bu yöntemlerin nasıl çalıştığı üzerinde duracağız. Güvenlik açıklarının nasıl oluştuğuna değinip, bu saldırı yöntemlerinden nasıl korunabileceğimize değineceğiz.
SQL Injection Exploit (SQL Enjeksiyonu Açığı)
SQL (Yapılandırılmış Sorgu Dili) temel itibari ile kullanıcıların veriler üzerinde işlemler yapılmasını sağlar. SQL, veri tabanlarına erişmek ve verileri işlemek için kullanılan standartlaştırılmış bir dildir. SQL sorguları ise veri tabanından veri alma, veri güncelleme ve veri silme gibi işlemleri belirli bir söz dizimi ile gerçekleştirmek için kullanılır.
Örnek bir SQL sorgusu: SELECT * FROM ‘tblogrenci’
Bu Sorgu ‘tblogrenci’ tablosundaki tüm kayıtları karşımıza çıkaracaktır.
SQL injection olarak bilinen bu güvenlik açığı ise SQL (Yapılandırılmış Sorgu Dili) dilini kullanan veri tabanlarında kullanılmaktadır. Bu güvenlik açığının temel amacı kullanıcılar tarafından erişilmesi istenmeyen verilere SQL sorgularında manipülasyon yaparak erişebilmektir. Günümüzde web sitelerine saldırmak için en çok kullanılan yöntemlerden biridir. Bu güvenlik açığının hedef sistem üzerindeki etkisi çok geniştir. Bu açık kullanılarak yapılan saldırılar, veri tabanın kendisini yok edebilecek kadar etkili olabilmektedir. SQL enjeksiyonu açığı ile veri tabanındaki verilere izinsiz bir şekilde erişilebilir, değiştirilebilir ve silinebilmektedir.
Bu çalışmada ise SQL injection açığına sahip bir internet sitesinde uygulamalı olarak veri tabanına erişip, veri tabanındaki önemli verileri çekmeyi öğreneceğiz. Bu çalışmanın okurları da bu sanal laboratuvarı kullanarak uygulama yapabilirler. Bu açık için kullanacağımız URL adresi: http://www.erendogan.com/Lab/kimlik.php?id=1 olarak belirlenmiştir. Bu bağlantı açıldığında kullanıcının karşısına bir isim, soy isim ve not bilgisi çıkmaktadır.
Bu PHP dosyasının içinde yazılı olan SQL sorgusu şu şekildedir:
SELECT * FROM tblogrenci where ogrenciID = $id
Bu sorgunun anlamı ‘tblogrenci’ tablosundaki verilerden URL’nin sonunda belirttiğimiz numara ile eşleşen kaydı getir demektir. Fakat URL’nin sonunda “ ?id= “ şeklinde bir değişiklik yaparsak karşımıza aşağıdaki gibi bir hata mesajı gelecektir:
Sorgu Hatası: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ”1”’ at line 1
Bu hata mesajının anlamı bu sitede büyük olasılık ile SQL injection açığının olduğudur. Ayrıca bu hata mesajı ile hedef veri tabanının türünü (MySQL) öğrenmek penetrasyon testlerinde işimizi kolaylaştıracaktır. Yaptığımız değişiklik ile oluşan yeni sorgumuzu veri tabanın yönetim paneli içinde çalıştırırsak kullanıcıya web sitesindeki gibi bir hata mesajı döndürecektir. Örnek sorgu şu şekildedir:
SELECT * FROM tblogrenci where ogrenciID =
Görüldüğü gibi veri tabanı yönetim panelinde de ogrenciID değişkeni bir değer ile eşleşmediğinden sorgu hata mesajı döndürmektedir.
SQL enjeksiyonun mantığının daha iyi anlaşılması için veri tabanı yönetim panelinde şöyle bir sorgu çalıştırılabilir.
SELECT * FROM ‘tblogrenci’ where ogrenciID =2 or 1=1;
Resimdeki sorgunun anlamı tblogrenci tablosundaki verilerden istenen şartlardaki verilerin getirilmesidir. İstenen şartlarımız: ogrenciID değerinin 2 ye eşit olması veya 1’in 1’e eşit olmasıdır. İkinci şartımız daima doğru olacağı için birinci şartımızın bir önemi kalmamaktadır. Bu durum matematikteki mantık konusuna benzemektedir. (1 v 1 = 1), (0 v 1 = 1)
Bu sorgu URL’nin sonunda gerekli değişiklikler yapılarak da web sitesi üzerinden çalıştırabilmektedir fakat SQL enjeksiyonun amacı veri tabanın içerisindeki daha önemli verilere erişebilmektir.
Sqlmap
Şimdi ise Sqlmap isimli programı kullanarak, veri tabanından web sitesinin yönetim paneli şifresini ele geçirmeye çalışacağız. Ben bu çalışmanın yazarı olarak bu aracı Kali Linux işletim sistemi üzerinde çalıştırdım fakat program Windows, Ubuntu gibi platformlarda da çalışmaktadır. Programın çalışması için her işletim sisteminde Python programı gereklidir. İndirme bağlantılarına aşağıdaki linklerden ulaşabilirsiniz.
Python: https://www.python.org/downloads/
Sqlmap: https://sqlmap.org/
Sqlmap, Python programlama dili ile yazılmış açık kaynak kodlu bir penetrasyon programıdır. Bu programın kullanımı ücretsizdir. Sqlmap, SQL enjeksiyonu açığının tespitinde ve istismarında kullanılmaktadır. Sqlmap ile SQL enjeksiyon açıklı veri tabanlarına erişebilir ve bu veri tabanlarındaki tablolardan istenilen veriler çekilebilmektedir. Güvenlik zaafına göre hedef sunucunun işletim sisteminde istenilen komutları dahi çalıştırılabilmektedir. Temel olarak bizim SQL enjeksiyonlu adres üzerinde, URL sonunda yaptığımız manuel değişiklikler ile verilere erişilmesi işlemini otomatize bir şekilde gerçekleştirmektedir. SQL enjeksiyonu açığının istismarında önemli miktarda kolaylık sağlamaktadır. Sqlmap profesyonel saldırılarda çok fazla kullanılmamaktadır. Bunun nedeni Sqlmap’da hedefe saldırı yapılırken çok fazla sayıda paket yollanır. Bu durum WAF/IPS/IDS gibi koruma sistemleri tarafından yapılan saldırının fark edilmesine neden olur ve koruma sistemi sizin IP adresinizi bloklayabilir (banlayabilir) veya bu durumu IT yöneticisine bildirebilir. Bu sebeple profesyonel SQL injection saldırılarında daha çok URL’nin sonundaki yapılan değişiklikler ile veya diğer araçlar (Burpsuite, tamper data) ile gerçekleştirilir. Manuel yapılan SQL injection saldırılarının tespit edilmesi daha zordur. Sqlmap aracı komut satırı ortamında çalışmaktadır ve kullanımı için belirli parametreler gerekmektedir. Bu parametrelerin bazıları şunlardır:
-h (Sqlmap aracındaki tüm parametreleri açıklamalarıyla birlikte gösterir.)
-u (işlem yapılacak hedefi belirtmek için kullanılır. Örnek: -u www.erendogan.com/Lab/kimlik.php?id=1)
–dbs (hedef sistemdeki veri tabanlarının isimlerini görüntülemek için kullanılır.)
-D (hedef sistemdeki işlem yapılacak olan veri tabanını belirtmek için kullanılır.)
–tables (işlem yapılacak olan veri tabanındaki tablo isimlerini görüntülemek için kullanılır.)
-T (hedef veri tabanındaki işlem yapılacak olan tabloyu belirtmek için kullanılır)
–columns (hedef tablodaki kolon isimlerini görüntülemek için kullanılır.)
–dump (hedef kolondaki verilere erişmek için kullanılır.)
–batch (gelen uyarılara varsayılan cevapları verir)
–random-agent (tarayıcı sürümünü ve işletim sistemi versiyonunu değiştirerek sizi farklı bir kullanıcı olarak gösterir.)
Şimdi ise sanal laboratuvarımızda resimli şekilde uygulayalım.
Sqlmap -u www.erendogan.com/Lab/kimlik.php?id=1 –dbs
1. Sqlmap komutu ile programımızı çalıştırma komutu veriyoruz ve -u komutu ile tarayıcıda test ettiğimiz, hata veren URL’yi belirtiyoruz ve –dbs komutu ile veri tabanı isimlerine erişmeye çalışıyoruz. Uygulama süresince erişim sıramız veri tabanı – tablo – kolon – veri şeklinde olacaktır
2. Sqlmap belirtilen hedefte çeşitli sorgu denemeleri yaparak veri tabanına erişmeye çalışmaktadır.
3. Sqlmap başarılı bir şekilde veri tabanına erişti ve sistemdeki veri tabanının ismini görüntüledi. Bu aşamada çoğu zaman 1’den fazla sonuç gelmektedir fakat ben sanal laboratuvarımızda tek adet veri tabanı oluşturdum.
Sqlmap -u www.erendogan.com/Lab/kimlik.php?id=1 –D erendoga_db –tables
4. Şimdi ise hedef veri tabanını seçerek o veri tabanında mevcut olan tabloları görüntülemeye çalışıyoruz.
5. Sqlmap başarılı bir şekilde hedef veri tabanındaki tabloları listeledi. Şimdi ise diğer tablodan daha önemli olan users (kullanıcılar) tablosuna erişmeye çalışacağız.
Sqlmap -u www.erendogan.com/Lab/kimlik.php?id=1 –D erendoga_db –T users –columns
6. Hedef tablomuzu belirtiyoruz ve o tablodaki kolonlara erişmeye çalışıyoruz.
7. Resimde görüldüğü gibi Sqlmap başarılı bir şekilde kolonlara erişti. Kolonları incelediğimizde email, firstname (ad), id (kod), password (parola), surname (soyad), username (kullanıcı adı) kolonlarına erişmiş bulunmaktayız.
Sqlmap -u www.erendogan.com/Lab/kimlik.php?id=1 –D erendoga_db –T users –dump
8. Hedef tablodaki tüm verileri indirmek için komutlarımızı giriyoruz.
9. Hedef sistemdeki admin parolası dahil tüm kullanıcıların bilgilerine erişmiş durumdayız bu veriler en alt satırdaki belirtilen adrese kaydedilmektedir.
10. Elde ettiğimiz, admin hesabının parolasını /Lab/wp-login.php adresindeki site yönetim panelinde deniyoruz.
11. Görüldüğü gibi hedef sistemdeki testimiz başarıyla sonuçlandı ve site yönetim paneline admin yetkileri ile giriş yapabildik. Hedef veri tabanında kullanıcı bilgileri dahil başka önemli bilgiler de olabilirdi. SQL enjeksiyonu açığı bu sebepten hafife alınmaması gereken bir açıktır. Enjeksiyon açığına günümüzde NASA gibi pek çok büyük kuruluşlarda dahi rastlanabilmektedir. Bu çalışmanın sonunda sistem yöneticileri olarak SQL enjeksiyonu açığından nasıl korunabileceğimiz anlatılacaktır.
Brute Force
Türkçe anlamı ile kaba kuvvet olan brute force saldırı yöntemi, temel itibari ile bir metin dosyasından seçilen şifreleri, girdileri, hedef sistem üzerinde deneme yanılma metodunu uygulayarak çalışmaktadır. Bu saldırı yöntemi diğer saldırı türlerine göre nispeten daha eskidir. Teorik olarak %100 başarı ile çalışabilmektedir. Pratikte ise bu oranlar son yıllarda geliştirilen korunma yöntemleri ile çok düşük oranlardadır. Örnek olarak bir şifre düşünelim ve bu şifrenin 6 rakamdan oluştuğunu kabul edelim. Bu 6 rakamlı şifre için toplam 1 milyar farklı ihtimal vardır. Bu ihtimallerin deneme yanılma yöntemi ile hepsi denendiğinde kesin olarak hedef şifre bulunabilecektir. Ama buradaki önemli bir sorunun hedef şifrenin 100.denemede bulunabileceği gibi 100 milyonuncu denemede de bulunabileceğidir. Bu nedenle bu saldırı yöntemini uygulanırken, 1 saat sonunda da başarıya ulaşılabilir 1 ay sonunda da başarıya ulaşılabilir. Bu saldırı yönteminde önemli bir nokta, kullanıcı bazlı kombinasyonlar geliştirmektir. Örnek olarak hayalî bir kullanıcı düşünelim. Bu kullanıcı 2003-07-05 doğumlu Fenerbahçe’li, aslen Erzincanlı bir kullanıcıdır. Bu kullanıcı için çeşitli araçlar ile kullanıcı bazlı sözlük listesi oluşturularak saldırı yönteminin başarı oranı ciddi oranda arttırılabilmektedir. Bu kullanıcı için oluşturulan rastgele şifre olasılıkları şu şekilde olabilir:
- 1907fenerbahce
- erzincan2003
- 07.05
- fener123456,
- 2003
- fenerbahce1234
İşte bu şifre olasıklarının rastgele denenmesi ile hedef kullanıcın şifresine ulaşılabilmek mümkün olacaktır.
Brute force ile yapılabilecek saldırılara örnek olarak:
- Hedef bir kablosuz ağın parolası elde edilerek, hedef ağ bağlantısına erişilebilmektedir.
- Windows, Mac OS ve Linux sistemlerde oturum şifresi elde edilerek, sisteme giriş yapılabilmektedir.
- Bir platformdaki, hedef bir kullanıcın şifresi elde edilerek, kullanıcının hesabına giriş yapılabilmektedir.
- Şifrelenmiş bir dosyanın şifresi çözülerek, o dosya görüntülenebilmektedir.
- Giriş pini unutulmuş bir telefonda, pin elde edilerek telefon açılabilir.
- FTP sunucusunun admin kullanıcısının şifresi elde edilerek, web sitenin dosyalarına erişilebir, silinebilir ve değiştirilebilmektedir.
- Hedef bir sitede, site içinden erişilemeyen dizinlere erişerek, erişim izni kısıtlanmamış dizinlerdeki önemli bilgilere-dosyalara erişebilinir.
- SSH kullanıcı adı ve parolası elde edilerek hedef sisteme internet üzerinden erişebilinir.
- Hedef IP adresi taranarak açık olan bağlantı noktaları bulunabilir.
- Hedef sitenin admin paneli bulunabilir ve admin şifresi elde edilerek site hacklenebilir.
- Herhangi bir parola listesi ile bir parolayı birden fazla kullanıcının hesabına giriş yapmayı deneyerek bazı kullanıcıların hesaplarına erişebilinir. Örnek olarak qwerty123456 şifresini 100 bin adet Instagram kullanıcısının hesabına giriş yapmak için denendiğini düşünün.
Brute Force İle Site Üzerindeki Gizli Dizinlere Erişim
Bir web site sunucusunda site içindeki butonlar ile gidilemeyen dizinler vardır. Örneğin www.erendogan.com sitesindeki butonlar ile www.erendogan.com/Lab dizinine gitmek mümkün değildir. /Lab dizinine ulaşabilmek için adres çubuğundan site adresinin sonuna /Lab ifadesi eklenmelidir. İşte pek çok internet sitesinde /Lab dizinine benzer dizinler vardır. Bu dizinlere erişebilmek için ya site sahibinin size o dizinin linkini atması gereklidir ya da sizin o dizinin varlığından haberdar olup adres çubuğunun sonuna o dizini yazarak gitmeniz gereklidir. Site içinden erişilemeyen bu dizinlerin veya dosyaların çoğu zaman erişim izinleri düzenlenmediği için dışarıdan erişilebilir durumdadır. Bu dizinlerde başka insanların görmemesi gereken çok önemli dosyalar bulunabilmektedir. İşte bu dizinlere Brute force yöntemi ile ulaşılabilmektedir. Bu çalışmada uygulamalı şekilde bu yöntemi uygulayacağız. Bu çalışmanın yazarı olarak ben kendi web sitemde bu yöntemi uyguladığımda admin panelinden veya ftp bağlantısından benim dahi göremediğim dosyalar ve dizinler olduğunu keşfettim. Bu çalışmayı gerçekleştirebilmek için Dirsearch aracına ihtiyacımız olacaktır.
Dirsearch, Python programlama dili ile yazılmış açık kaynak kodlu bir penetrasyon programıdır. Bu programın kullanımı ücretsizdir. Dirsearch, brute force yöntemi ile web siteleri üzerindeki gizli dizinleri ve dosyaları tespit etmek ve erişmek için kullanılır. Dirsearch ile tespit edilen dizinler ve dosyalar ile çok önemli zafiyet açıkları tespit edilebilmektedir. Dirsearch temel olarak hazır bir sözlük dosyasındaki kelimeleri dizin sonuna ekleyip bağlanmaya çalışarak, site içinden erişilemeyen dizinleri ve dosyaları tespit eder. Dirsearch’ın yaptığı işlem kullanıcı tarafından adres çubuğundan manuel olarak da yapılabilir fakat bu işlem çok uzun süreceği için tercih edilmemektedir. Dirsearch çoğu zaman güvenlik duvarları veya WAF/IPS/IDS gibi koruma sistemleri tarafından tespit edilip engellenebilmektedir. Bu işlemi kendi sitenizde denerken proxy veya VPN kullanmalısınız. Yoksa IP adresiniz bloke edilebilir ve sitenize erişmekte sorun yaşayabilirsiniz. Ben bu çalışmanın yazarı olarak bu aracı Kali Linux işletim sistemi üzerinde çalıştırdım fakat program Windows, Ubuntu gibi platformlarda da çalışmaktadır. Programın çalışması için her işletim sisteminde Python programı gereklidir.
Dirsearch komut satırı ortamında çalışmaktadır ve kullanımı için belirli parametreler gerekmektedir bu parametrelerin bazıları şunlardır:
-h (Dirsearch aracındaki tüm parametreleri açıklamalarıyla birlikte gösterir.)
–u (işlem yapılacak hedefi belirtmek için kullanılır. Örnek: -u www.erendogan.com/Lab/)
-w (işlem sırasında kullanılacak olan sözlük dosyasını seçmek için kullanılır.)
–random-agent (tarayıcı sürümünü ve işletim sistemi versiyonunu değiştirerek sizi farklı bir kullanıcı olarak gösterir.)
-t (aynı anda yapılacak bağlantı sayısını belirlemek için kullanılır ideal değer 5-10 arasındadır daha fazla değerler tespit edilip engellenmenize yol açabilir)
Şimdi ise sanal laboratuvarımızda resimli şekilde uygulayalım.
Python3 dirsearch.py -u http://erendogan.com/Lab -w /usr/share/wordlists/wfuzz/general/common.txt
1. python3 komutu ile Python programını çalıştırıyoruz. dirsearch.py ile Python’un çalıştırması gereken dosyayı seçiyoruz. -u parametresi ile tarama yapacağımız web site adresini belirtiyoruz. -w parametresi ile sözlük dosyamızı seçiyoruz
2. Görüldüğü gibi programımız dizinleri tek tek deniyor ve karşımıza sonuçlar çıkarıyor. Karşımıza çıkan sonuçları incelediğimizde /Lab/documents isimli dikkat çeken bir dizin gözümüze çarpıyor. Dizin adresini kopyalayıp tarayıcıda açmamız gerekiyor.
3. Kopyaladığımız adresi tarayıcıda açtığımızda karşımıza dizin gezgini çıkıyor. Bu dizin gezginin içerisinde excel.xlsx isimli bir dosya görüyoruz.
4. Excel dosyasını bilgisayara indirip açtığımızda karşımıza bir liste gelmektedir. Liste de çeşitli üniversite bölümlerinden öğrenci bilgileri karşımıza çıkmaktadır. (Listedeki kişiler gerçek değildir, rastgele oluşturulmuş bir listedir) Görüldüğü gibi testimiz başarıyla sonuçlanmıştır. Burada normal bir öğrenci listesi yerine kullanıcı adı parola listesi, T.C. kimlik bilgileri, önemli irsaliyeler, önemli faturalar, ticari sır unsuru oluşturacak dosyalar, mahrem dosyalar olabilirdi. Bu sebepten bu güvenlik açığının ne kadar önemli olduğunu bir kez daha anlamış oluyoruz. Bu çalışmanın devamında bu açıklardan nasıl korunacağımız anlatılacaktır.
Nmap ile Açık Bağlantı Noktalarının Tespiti
Nmap, birçok programlama dili kullanılarak oluşturulan açık kaynak kodlu bir penetrasyon programıdır. Bu programın kullanımı ücretsizdir. Nmap, hedef IP adresindeki açık portları (bağlantı noktaları) tespit eder ve bu portlarda çalışan servislerin bilgilerini verir. Dirsearch’ın çalışma mantığı, brute force yöntemini kullanarak hedef IP adresinin sonuna bağlantı noktalarını ekleyip bağlanmaya çalışarak, hedefin ağın verdiği cevaba göre kullanıcıya bir çıktı oluşturur. Örnek olarak www.erendogan.com un IP adresi 195.201.179.80 şeklindedir. Bu IP adresinin sonuna 195.201.179.80:443, 195.201.179.80:21 ifadelerini ekleyerek bir bağlantı oluşturmaya çalışır. IP adresinin sonuna eklenen bu ifadeler bir sözlük listesinden gelmektedir. Nmap’ın gelişmiş parametreleri kullanarak hedef IP adresinin bağlantı noktalarında çalışan servisler ve hedef sunucunun işletim sistemi versiyonları öğrenilebilir. Elde edilen bu bilgiler ile Metasploit aracı kullanılarak hedef sistemde exploit (açık) bulunduktan sonra bu açık ile hedef sisteme yetkisiz olarak erişilebilmektedir. Örnek olarak 21 portunda çalışan ftp servisi için Metasploit aracıyla o sürümde çalışan bir exploit tespit edilir. Kötü niyetleri hackerler tarafından, tespit edilen bu exploit kullanılarak giriş yapma sistemi bypass edilip sisteme erişim sağlanabilmektedir. Nmap; Windows, Linux MacOS, Ubuntu işletim sistemlerinde çalışmaktadır. Ben bu çalışmanın yazarı olarak bu aracı Kali Linux işletim sistemi üzerinde çalıştırdım. Nmap, komut satırı ortamında ve görsel arayüz ortamında çalışabilmektedir. Ancak hız unsuru nedeni ile komut satırı ortamı daha çok tercih edilmektedir. Nmap programının komut satırında çalışması için belirli parametreler gerekmektedir. O parametreler şunlardır:
-h (Nmap programındaki tüm parametreleri açıklamalarıyla birlikte görüntüler)
-sS (Bu parametre ile tarama yapılması durumunda deşifre olma ihtimaliniz daha düşük olacaktır.)
-sT (Bu parametre, sistemle direk olarak bağlantı kurar ve deşifre olma ihtimaliniz yüksek olacaktır ancak daha kesin sonuçlar elde edilecektir.)
-O (Bu parametre ile belirlenen IP adresindeki sunucunun işletim sistemi bilgilerine ulaşmak için kullanılır.)
-sV (Bu parametre sayesinde belirlenen bağlantı noktalarında çalışan servislerin versiyon bilgileri tespit edilir. Elde edilen bu bilgiler exploit tespitinde çok önemli bir unsurdur.)
Şimdi ise sanal laboratuvarımızda resimli şekilde uygulayalım.
sudo nmap -sV -sT 195.201.179.80
1. sudo komutu ile root yetkisine erişiyoruz. nmap komutu ile programımızı çalıştırıyoruz. -sV parametresi ile bağlantı noktalarında çalışan servislerin versiyon bilgilerini görüntülemek istiyoruz. -sT parametresiyle sunucu ile doğrudan bağlantı kuruyoruz. Pentest amaçlı tarama yaptığımız için -sT parametresi ile çalışmamızın bir sakıncası yoktur. En son olarak IP adresimizi giriyoruz Nmap programında IP adresini belirtmek için özel bir parametreye ihtiyaç yoktur. Ben IP adresi olarak sanal laboratuvarımız olan erendogan.com’un IP adresini girdim.
2. Nmap 30-40 saniye gibi kısa süre içerisinde taramayı bitirdi ve karşımıza sonuçlar çıkardı. Port, State, Service, Version başlıkları altında hedef IP adresindeki açık olan bağlantı noktalarını, bu bağlantı noktalarının durumunu, bu bağlantı noktalarında çalışan servisleri ve o servislerin versiyon bilgilerini ekrana getirdi. Örnek: 21/tcp bağlantı noktasının açık olduğunu ve o bağlantı noktasında ftp servisinin çalıştığını ve servisin versiyonunu öğrenmiş olduk. Elde edilen bu bilgiler doğrultusunda Metasploit ile veya internette arama yaparak bu servis de mevcut bir güvenlik açığı varsa bunu öğrenebiliriz. Bu açık ile hedef sisteme yetkisiz şekilde erişim sağlanabilmektedir. Bu çalışmanın devamında bu açıklardan nasıl korunacağımız anlatılacaktır.
Yetkisiz Erişimden Korunma Yöntemleri
Çalışmanın buraya kadar olan kısmında yetkisiz erişimde kullanılan yöntemleri ve bu yöntemlerden bazılarının uygulamalarını gerçekleştirdik. Bu uygulamaları gerçekleştirmemizin nedeni, yetkisiz erişimden korunabilmek için onların nasıl çalıştığını anlamamız gerekiyor. Örnek: Evimizi hırsızlara karşı koruyabilmemiz için kendimizi bir hırsızın yerine koyup evimize nerelerden girebileceğimizi düşünmeliyiz. En iyi korumayı bu şekilde sağlayabiliriz.
Öncelikle, çoğu saldırı yöntemini engellemek veya hafifletmek için mutlaka firewall (güvenlik duvarı) kullanılmalıdır. Bu özelliği, evimizin kapısını ve camlarını güçlendirmek olarak örnekleyebiliriz. Daha sonrasında firewall a ek olarak IPS (saldırı önleme sistemi) veya IDS (saldırı tespit etme sistemi) kullanılmalıdır. Eğer mümkün ise her ikisi kullanılmalıdır. Bu özellikleri ise evimize hareket sensörlü alarm (IDS) takılması ve alarm çaldığı zaman eve polislerin gelmesi (IPS) gibi düşünebilirsiniz.
SQL İnjection Açığından Korunmak
- En yaygın yapılan hata, internet sunucusundan SQL sunucusuna bağlanmak için root hesabının kullanılmasıdır. Bağlantı için root hesabı yerine yeni bir kullanıcı hesabı açarak yetkilerini doğru bir şekilde ayarladığınız taktirde daha korunaklı olacaksınız.
- PHP dilinde, sunucuya bağlanmak için mysqli ve mysql kütüphanelerini kullanmak yerine PDO kütüphanesi kullanılmalıdır.
- URL sonundaki girdilerin uzunluğu sınırlandırılmalıdır. Maksimum 10 uzunlukta bir girdi verilecekse bu girdinin okunması 11 karakter ile sınırlandırılmalıdır.
- URL sonundaki girdilerin cinsi kontrol edilmelidir. Kullanıcıdan bir tam sayı değeri alınacak ise metin değeri girmesine izin verilmemelidir.
- SQL, PHP veya ASP, sürümleri mutlaka en güncel sürüm olmalıdır ve düzenli aralıklar ile güncelleştirmeler kontrol edilmelidir. Bir güncelleme yayınlandığı zaman en kısa sürede güncelleme yüklenmelidir.
- PHP veya ASP dilinde, URL sonundaki girdiler doğrudan SQL sorgusunun içine yazılmamalıdır. Alınan girdiler sorgunun içine parametre olarak gönderilmelidir.
- URL sonundaki girdiler denetlenmeli ve SQL injection da en çok kullanılan ‘ ; / < > , “ gibi ifadeler boşluk harfi ile değiştirilmelidir.
Brute Force Saldırısından Korunmak
Kullanıcı bazlı
- Öncelikle teorik olarak bütün şifreler brute force ile bulunabileceği için iki faktörlü kimlik doğrulması kullanmalısınız. Bu sayede şifreniz ele geçirilişe bile hackerın sizin hesabınıza giriş yapabilmesi için ek bir güvenlik koduna ihtiyaç duyacaktır ve bu sayede hesabınıza erişemeyecektir. Hacker, hesabınıza giriş yapmaya çalıştığında, size iki faktörlü kimlik doğrulmasından bildirim geleceği için şifrenizin ele geçirildiğini anlayarak gerekli önlemleri alabileceksiniz. Benim önerim iki faktörlü kimlik doğrulması için cep telefonunun kullanılmasıdır.
- Güvenli ve uzun şifreler kullanmalısınız. Eğer bu konuda sıkıntı yaşıyorsanız anlatacağım örneği kullanarak kendinize güvenli ve uzun şifreler oluşturabilirsiniz. İlk olarak çok sevdiğimiz bir şarkı, atasözü veya şiir dizesi seçiyoruz. Ben örnek olarak sessiz gemi şiirinin ilk dizesini kullanacağım. “Artık demir almak günü gelmişse zamandan”. Bu dizelerde yapmam gereken işlemler: tüm ünlü harfleri kaldırmak, tüm kelimelerin ilk 2 harfini büyük harf yapmak ve boşluk harflerini silmek olacak. Örnek olarak:
Artık güvenli ve uzun bir şifreye sahibiz.
- Her yerde farklı şifreler kullanmalısınız. Eğer bunu uygulamak size zor geliyorsa e-posta hesaplarınızın şifrelerini başka hiçbir yerde kullanmadığınız şifrelerden seçmeniz daha iyi olacaktır. Herhangi bir hesabınız hacklenmiş olsa bile e-posta hesabınızın kontrolü sizde olduğu için hacklenen hesabınızı geri alabilirsiniz.
- Kullandığınız şifreleri ve e-posta adreslerinizi https://haveibeenpwned.com/ sitesinden kontrol ettirerek, e-postalarınızın veya şifrelerinizin bir veri sızıntısında gözüküp gözükmediğini öğrenebilirsiniz.
- Şifrelerinizi bilgisayarınızda saklamak yerine Lastpass gibi platformlarda saklamalısınız. Eğer Lastpass gibi platformlarında hacklenebileceğinden endişe ediyorsanız şifrenizin belirli bir bölümünü Lastpass’da saklayıp şifrenizin devamını giriş ekranında manuel olarak siz girebilirsiniz.
- Şifrelerinizi tarayıcılara kaydetmemelisiniz.
Sistem Yöneticisi Bazlı
- reCAPTCHA kullanmalısınız. reCAPTCHA sayesinde sitenize yapılan brute force saldırılarını engelleyebilirsiniz.
- Sitenize gelen erişimi kısıtlayabilirsiniz. Çok fazla yapılan brute force saldırısı bir nevi DDOS etkisi yaratacağı için kullanıcıların dakika başında istek sayısını çok düşük sayılar ile sınırlandırarak brute force saldırısının önünü kesebilirsiniz.
- Kullanıcıların şifre deneme sayısını kısıtlayabilirsiniz. Bu özellik ile admin kullanıcısında bir gün içinde maksimum 15 yanlış şifre denemesi koyduğunuz taktirde brute force saldırısını engelleyebilirsiniz.
- Kullanıcının hesabına daha önceden giriş yapılmayan bir IP’den giriş yapıldıysa eğer kullanıcının hesabına erişebilmesi için kullanıcıdan doğrulma kodu girmesini isteyebilirsiniz. Bu sayede herhangi bir şekilde brute force saldırısı gerçekleşmiş ve kullanıcı iki faktörlü kimlik doğrulmasını etkinleştirmemiş olsa bile bilinmeyen bir IP adresinden giriş yapılacağı için kullanıcıya bir doğrulama kodu yollayarak o şekilde doğrulama yapabilirsiniz.
- Kullanıcı, siteye kaydolurken ondan belirlediğiniz şartlarda güvenli ve uzun bir parola oluşturmasını isteyebilirsiniz.
Güvenlik Açıklarından Korunmak
- Çok bilinen bir yöntem olan honeypot yöntemini kullanabilirsiniz. Bu yöntemin özelliği, tuzak bir sunucu oluşturup, sisteme yetkisiz erişmeye çalışan hackerlara sanki bir güvenlik açığı varmış gibi gösterip onları o tuzak sunucuya çekerek onları ana sunucunuzdan uzak tutabilirsiniz.
- Sunucuda çalışan servisler mutlaka en güncel sürüm olmalıdır ve güncellemeleri sık sık kontrol edilmelidir.
- Kullanılmayan servisler kapatılmalıdır.
- Belirli aralıklar ile sunucunuza pentest yapılmalıdır.
Yetkisiz Erişimin Kânunsal Cezası
Bilişim suçları 5237 Sayılı Türk Ceza Kanunu’nun onuncu bölümünde “Bilişim Alanında Suçlar” başlığı adı altında düzenlenmiştir. Bilişim sistemlerine yetkisiz olarak girme suçu ise: “Bilişim sistemine girme” başlığı ile 243. maddede düzenlenmiştir. 5237 Sayılı Türk Ceza Kanunu’nun 243 Maddesi der ki:
(1) Bir bilişim sisteminin bütününe veya bir kısmına, hukuka aykırı olarak giren veya orada kalmaya devam eden kimseye bir yıla kadar hapis veya adlî para cezası verilir.
(2) Yukarıdaki fıkrada tanımlanan fiillerin bedeli karşılığı yararlanılabilen sistemler hakkında işlenmesi halinde, verilecek ceza yarı oranına kadar indirilir.
(3) Bu fiil nedeniyle sistemin içerdiği veriler yok olur veya değişirse, altı aydan iki yıla kadar hapis cezasına hükmolunur.
(4) (Ek: 24/3/2016-6698/30 md.) Bir bilişim sisteminin kendi içinde veya bilişim sistemleri arasında gerçekleşen veri nakillerini, sisteme girmeksizin teknik araçlarla hukuka aykırı olarak izleyen kişi, bir yıldan üç yıla kadar hapis cezası ile cezalandırılır.
(5237 Numaralı Türk Ceza Kanunu. 2004)
Bilişim sistemine sadece girmenin cezası yukarıdaki maddelerde belirtilmiş iken Bilişim sistemini engelleme, bozma, verileri yok etme veya değiştirme gibi eylemler 5237 Sayılı Türk Ceza Kanunu’nun 244.Maddesinde düzenlenmiştir. 5237 Sayılı Türk Ceza Kanunu’nun 244.maddesi der ki:
(1) Bir bilişim sisteminin işleyişini engelleyen veya bozan kişi, bir yıldan beş yıla kadar hapis cezası ile cezalandırılır.
(2) Bir bilişim sistemindeki verileri bozan, yok eden, değiştiren veya erişilmez kılan, sisteme veri yerleştiren, var olan verileri başka bir yere gönderen kişi, altı aydan üç yıla kadar hapis cezası ile cezalandırılır.
(3) Bu fiillerin bir banka veya kredi kurumuna ya da bir kamu kurum veya kuruluşuna ait bilişim sistemi üzerinde işlenmesi halinde, verilecek ceza yarı oranında artırılır.
(4) Yukarıdaki fıkralarda tanımlanan fiillerin işlenmesi suretiyle kişinin kendisinin veya başkasının yararına haksız bir çıkar sağlamasının başka bir suç oluşturmaması halinde, iki yıldan altı yıla kadar hapis ve beşbin güne kadar adlî para cezasına hükmolunur.
(5237 Numaralı Türk Ceza Kanunu. 2004)
Bu suçların ispatındaki en önemli kanıt IP adresidir. Bu suçlar şikâyete bağlı değildir. Cumhuriyet Savcısı suç şüphesi olduğunu görmesi halinde resen soruşturma başlatabilmektedir. Bu suçlarda cezanın azaltılmasını veya ortadan kaldırılmasını sağlayan nedenler vardır. Bu nedenler: Failin 18 yaşından küçük olması, bilişim sistemi üzerinde hak sahibi olan kişinin rızasının olması, doğrudan kasıtlı olarak değil de dolaylı olarak suçun işlenmesi, suçun yanlışlıkla işlenmesi, suçun teşebbüs aşamasında kalması gibi sebeplerden verilen ceza hafifleyebilir, tazminat cezasına dönüşebilir veya ortadan kalkabilir.
Etiksel Açıdan Yetkisiz Erişim
Yetkisiz erişim ile yapılan hacklerin büyük kısmının sebebi, yetkisiz erişimi uygulayan kişilerin kendisini bir kânun uygulayıcı, kahraman, polis veya bir cezalandırıcı şeklinde görmesinden dolayıdır. Bu kişiler vigilantizm (yargı işleyişi, yasalar, yozlaşmış polis/yargı vs. beğenilmediğinde kendi adaletini sağlama amacı ile suçun yasal yetkisi olmayan insanlar tarafından cezalandırılması) tanımına uymaktadır. Bu konuda örnek vermek gerekirse: Ülkesinde gerçekleşen toplumsal bir olaydan dolayı çeşitli duygular ile vicdani olarak bir şeyler yapma ihtiyacından dolayı belirli kişilere ve kuruluşlara yapılan saldırılardır. Bu örnek ile alakalı gerçek bir olay olarak: Ermenistan ile Türkiye arasındaki soykırım tartışmaları nedeni ile Türk hackerlar (bilgisayar korsanları), Ermenistan’a zaman zaman çok büyük boyutlarda siber saldırılar gerçekleştirmişlerdir.
Turkhackteam’dan Ermenistan’a Siber Saldırı
Kendilerini hacker dünyasının sanal Türk askerleri olarak niteleyen ‘Turkhackteam’ adlı grup, 1915 Ermeni Olaylarının 100’üncü yılında Ermenistan Genelkurmay Başkanlığı başta olmak üzere bazı resmi internet sitelerini siber saldırılarla erişime kapattığını duyurdu.
Turkhackteam’ tarafından yapılan açıklamada, içlerinde Ermenistan Genelkurmay Başkanlığı, Enerji Bakanlığı, Merkez Bankası olmak üzere 6 resmi internet sitesine siber saldırı gerçekleştirdiğini duyurdu. Siber saldırı yapan grubun yaptığı yazılı açıklamasında ‘Sözde Ermeni soykırım iddiaları devam ettiği sürece siber saldırılara devam edeceğiz. Soykırımı kabul ettiğini beyan eden başta Almanya ve Avusturya olmak üzere; soykırımı kabul edecek diğer devlet sitelerine olan siber saldırılarımız artarak devam edecektir’ denildi.
‘Turkhackteam’ın erişime kapattığını duyurduğu internet siteleri ise şunlar: ‘Ermenistan Genelkurmay Başkanlığı, Ermenistan E-Devlet Sistemi, Ermenistan Enerji Bakanlığı, Ermenistan Merkez Bankası, Ermenistan Telekom, ve Ermenistan Bankası.’
Kaynak: Demirören Haber Ajansı
(“Ermenistan’a Siber Saldırı” 2015)
Bu davranışın etik olup olmadığına çalışmanın devamında değineceğiz.
Bir hackerın sizin sosyal medya hesaplarını hacklediğini ve sizin konuşmalarınızı ifşa ettiğini düşünün. Bu olay için toplumun büyük bir bölümü bu olayın etik olmadığını belirtecektir. Fakat bir hackerın, terör örgütü mensubu olduğu bilinen bir kişinin sosyal medya hesaplarını hacklediğini ve o kişinin konuşmalarını ifşa ettiğini ve bu konuşmalardan o terör örgütüne mensup olan başka insanların da ifşalandığını ve o kişilerin yakalandığını düşünün. Bu olay için toplumun büyük bir bölümü bu olayın etik olduğunu belirtecektir. Haber sitelerinde, televizyonlarda, sosyal medyada bu hack eyleminden dolayı insanların o hackerlar ile gurur duyduğu ve onları desteklediği görülecektir. Bu hack olayının sebebi, hackerın kendisini kanun uygulayıcı kişi olarak görmesidir. Burada sorulması gereken sorular: Hacker, bu eylemi ülkesi için yaptığında bu davranış neden etik olarak görülmektedir? Toplumun belirli bölümündeki insanlar için etik kurallar farklı mı işlemektedir? Herkes yanlış gördüğü şeylerden dolayı bu kimliğe bürünürse o toplumda neler olacaktır?
İkinci örneğin temeline indiğimizde, terör örgütüne mensup olan o kişinin sosyal medya hesaplarında kendi hayatı ile ilgili suç unsuru taşımayan özel mesajların ve özel resimlerinin gizliliği etik bir unsurdur. Karşıdaki kişi bir suçlu olsa bile mahremiyet hakları vardır. Kânunlar önünde bu kişi terör örgütüne mensup birisi dahil olsa bile bu kişi yaşanan hack olayında haklıdır. Eğer bu kişinin sosyal medya hesaplarının incelenmesi gerekiyorsa, yargı tarafından bilir kişiler ile kurallara ve yasalara uygun bir şekilde incelenmelidir.
Ermenistan-Türkiye siber savaşı ile ilgili olarak, Türk hack gruplarının Ermenistan’a siber saldırı gerçekleştirdiğini ve bu siber saldırı nedeni ile ülkedeki bankaların etkilendiğini düşünün. Ermenistan devletinin soykırım iddiasına katılmayan yerel halktan bir insan banka işlemlerini gerçekleştiremeyecektir. Sizce bu durum etik midir?
Siber saldırıdan dolayı hastane sistemlerinin yavaşladığını veya bloke olduğunu düşünün. Hastaların hastanede mağdur olması sizce etik midir?
Sonuç
Bilişim günümüzde hayatımızın pek çok alanında yer almaktadır ve kişisel verilerimizin çoğu artık bu internet ağındadır. Bu internet ağında, sistem yöneticilerinin, kullanıcı verilerini güvenli bir şekilde koruyabilmesi günümüzde elzem bir ihtiyaç olmuştur. Bu ihtiyacın karşılanabilmesi için siber güvenlik kavramı oluşmuştur ve bu kavramdan sonra siber güvenlik mesleği ortaya çıkmıştır. Siber güvenlik uzmanları, siyah şapkalı hackerlar ile adeta bir savaş vermektedir. Bu savaşta siber güvenlik uzmanları savunan tarafta iken, siyah şapkalı hackerlar saldıran taraftadır. Siber güvenlik uzmanlarının görevi, sorumluluğu altındaki sistemleri dışarıdan gerçekleşecek saldırılara karşı korumaktır. Siyah şapkalı hackerların amacı ise bu sistemlere erişerek çeşitli suçlar işlemektir. Gerçekleşen bu savaşta siber güvenlik uzmanları, sistemlerinin güvenliğini sağlayabilmek için penetrasyon testleri gerçekleştirmektedirler. Bu testleri gerçekleştirmelerinin amacı, kendi sistemlerine bir hacker gibi saldırarak güvenlik zafiyetlerini tespit etmek ve o güvenlik zafiyetlerini kapatmak içindir. Yapılan bu penetrasyon testleri ile pek çok kritik noktada önemli açıklar keşfedebilmek mümkündür. Yapılan bu çalışma ile bu testlerin aslında çok zor olmadığı görülmüştür. Yapılan bu çalışma ile insanların siber güvenlik alanına olan ilgilerini arttırmak ve onları bu konuda bilgilendirmek amaçlanmıştır. Verilen öneriler doğrultusunda sistem güvenliğini sağlamanın kolay yöntemleri verilmiştir. Yetkisiz erişimin Kânunsal cezaları açıklanmıştır. Etiksel açıdan yetkisiz erişim konusuyla ilgili olarak benim fikrim: Herhangi bir kişi veya kuruluşa zarar veren ve elde edilen verilerin kendi çıkarı doğrultusunda kullanılması ile sonuçlanan yetkisiz erişimler etik değildir ve bu yetkisiz erişim yöntemini uygulayan kişilere siyah şapkalı hacker denilir. Fakat hedef kuruluşa zarar vermeden yetkisiz erişim yapılıyorsa ve bu güvenlik açığı, o kuruluşa bildiriliyorsa bu durum bana göre aydınlığa hizmet etmek için karanlıkta çalışmaktır ve sağladığı fayda bakımından etik olarak kabul edilebilirdir ve bu yetkisiz erişim yöntemini uygulayan kişilere gri şapkalı hacker denilir. Eğer bir kuruluşun izni ve bilgisi dahilinde güvenlik açıklarını tespit etmek amacı ile yetkisiz erişim yapılmaya çalışılıyorsa bu durum kesinlikle etiktir ve bu yetkisiz erişim yöntemini uygulayan kişilere beyaz şapkalı hacker denilir ve bu yöntem ethical hacking olarak geçer. Ermenistan-Türkiye siber savaşı örneği veya terör örgütü mensubu örneğinin toplum tarafından neden etik olarak görüldüğüne değinecek olursak, toplumdaki insanlar bu olayın hassas değerler üzerinden yaşanması sebebiyle duygularının, fikirlerini bastırmasından dolayı yaşanan olayın iç yüzünü düşünmeden, bu olayın sonuçlarını analiz etmeden bir karara varması nedeniyle bu davranışı etik olarak görmektedirler. Ama bu olaylar, duyguların bir kenara bırakılması ile dikkatli bir şekilde analiz edildiğinde bu örneklerin aslında etik olmadığı anlaşılabilecektir.
Kaynakça
5237 Numaralı Türk Ceza Kanunu. (2004). T.C. Resmi Gazete (26511, 12 Ekim 2004). Erişim adresi: https://www.resmigazete.gov.tr/eskiler/2004/10/20041012.htm Erişim Tarihi: 08.06.2021
Server Türleri Nelerdir. (2016 Temmuz). Erişim Adresi: https://www.hosting.com.tr/bilgi-bankasi/server-nedir-turleri-nelerdir/ Erişim Tarihi: 12.05.2021
Turkhackteam’dan Ermenistan’a Siber Saldırı. (2015, 24 Nisan). Erişim adresi: https://www.haberler.com/turkhackteam-dan-ermenistan-a-siber-saldiri-7235672-haberi Erişim tarihi: 04.06.2021
Öne çıkarılan görsel: https://pixabay.com/tr/illustrations/sunucu-bulut-tasarım-uçak-simge-3297974/ adresinden alınmıştır. Creative Commons lisanslıdır.
Bu eser Creative Commons Atıf-AynıLisanslaPaylaş 4.0 Uluslararası Lisansı ile lisanslanmıştır.
Bu makale https://searchenginereports.net sitesi üzerinden 10.06.2021 tarihinde kontrol edilmiştir. Makale, benzerlik değeri ile kabul edilmiştir. Results Completed: 100% Plagiarism: %5 Unique: %95