Ethical Hacking #1: Giriş

Burak Şentürk
4 min readApr 29, 2021

Merhabalar, sizlere Mediumdaki ilk yazımda Ethical Hacking’e Giriş mahiyetinde Hacker, Exploit, Penetrasyon Testi, Zero Day gibi temel kavramlardan bahsedeceğim.

Hacker

Hacker Kimdir?

Herhangi bir şeyi kullanım amacı dışında kullanma yeteneği olan kişilere verilen isimdir. Türk Dil Kurumu’nun internet üzerindeki sözlüğüne göre bu kelimenin anlamı “Bilgisayar ve haberleşme teknolojileri konusunda bilgi sahibi olan, bilgisayar programlama alanında standarttın üzerinde beceriye sahip bulunan ve böylece ileri düzeyde yazılımlar geliştiren kişi” olarak tanımlanır.

Günümüzde hackerlar 3 ana başlık altında sınıflandırılmaktadır. Siyah Şapkalı, Gri Şapkalı ve Beyaz Şapkalı hackerlar.

Siyah Şapkalı (Black Hat) Hackerlar

Siyah şapkalı hackerlar genelde karanlık, kötü işler yapan kişilerdir. Çıkarları doğrultusunda hareket eden sistemlere, web sitelerine veya herhangi bir şeye rahatlıkla zarar verebilecek kişilerdir. Bu kişilerin yaptıkları bazı saldırılar mağdurların gerçek hayatlarını da etkiliyor.

Örneğin herhangi bir kafe veya restoranda bağlanmış olduğunuz kablosuz ağ üzerinden orada bulunan kötü niyetli bir hacker sizlerin hesap bilgilerinizi çalarak sizi küçük düşürebilecek paylaşımlar yapabilir, özel hayatınızı deşifre edebilir. Bu da sizlerin hayatında bazı sorunlar açabilir ve sizi zora sokabilir.

Bu kişiler diğer hacker gruplarına (gri ve beyaz şapkalı hackerlara) göre daha gizli olan, bilinmeyen kişilerdir.

Beyaz Şapkalı (White Hat) Hackerlar

Bu kişiler siyah şapkalıların tam tersi özelliklere sahiptirler. Sistem sahiplerinin bilgisi dahilinde sistemdeki güvenlik açıklarını tespit etmeye çalışırlar ve tespit ettikleri güvenlik açıklarını düzeltirler. Amaçları siyah şapkalı hackerların sistemleri hacklemesine engel olmaktır.

Siyah şapkalı hackerların bildiği tüm yöntemleri bilirler ama bu bilgileri kötü bir amaç için kullanmazlar. Bu kişiler başka bir deyişle Etik Hackerlar’dır.

CEH (Certified Ethical Hacking) Etik Hacker olduğunuza dair bir sertifikasyon programıdır.

Gri Şapkalı (Gray Hat) Hackerlar

Gri şapkalı hackerlar ise siyah ve beyaz şapkalı hackerların ortasındaki ince çizgidedir. Beyaz şapkalılar gibi sistem sahibinin bilgisi dahilinde hack yapmazlar. Sistemde tıpkı siyah şapkalılar gibi sistem sahibinin bilgisi olmadan açıkları tespit etmeye çalışırlar. Önemli gördükleri bir şey olduğunda kötü niyetli kullanmak yerine sistem sahiplerine bildirirler.

Bu kısma kadar olan yerlerde hackerlar hakkında genel bir bilgi sahibi olduk şimdi işin biraz daha genel kültür kısmına inelim.

Exploit

Exploit Nedir?

Türkçe karşılığı “istismar etmek”, “faydalanmak”, “sömürmek” anlamlarına gelmektedir. Yazılım, bilgisayar ya da herhangi bir sistem üzerinde bulunan açıklardan, kod hatalarından faydalanılmak için geliştirilen ufak boyutlu yazılımlara Exploit denir. Exploit’in bize sağladıkları ise; hedef sisteme izinsiz giriş sağlamak, yetkili kullanıcı oluşturmak ya da mevcut kullanıcının statüsünü yükseltmek, hedef sistemi devre dışı bırakmak ve benzeri amaçlar için kullanılır.

Çeşitli exploit’ler mevcuttur:

  • Local Exploits
  • Remote Exploits
  • Dos Exploits
  • Command Execution Exploits
  • SQL Injection Exploits
  • Zero Day Exploits

1- Local Exploits

Local exploitler, direkt olarak sistem içerisinde çalıştırılabilir exploitlerdir. Genel olarak sistem içerisinde hak, rütbe yükseltmek gibi işlemler için kullanılırlar.

2- Remote Exploits

Remote, uzak anlamına gelmektedir. Kendi bilgisayarınızdan veya farklı herhangi bir bilgisayardan uzaktaki bir sistem üzerinde gerçekleştireceğiniz exploit saldırılarına Remote Exploit denilir.

3- Dos Exploits

İlk tanınmış olan exploit’ler Dos-Exploitler’dir (Denial of Service). Bir sistemi yavaşlatır veya durdurur.

4- Command Executing Exploits

Saldırgan tarafından kontrol edilen bir program kodu hedef sisteme uygulama. Böyle bir exploit’i doğru şekilde çalıştırabilmesi için programcı veya saldırgan, hafıza olmak üzere hedef uygulamayı iyi bilmesi gerek. Bu bilgileri açık bir program kodu kaynağından veya test ederek edinir.

5- SQL Injection Exploits

Web uygulamalarında birçok işlem için kullanıcıdan alınan veri ile dinamik SQL cümlecikleri oluşturulur. Mesela “SELECT * FROM Products” örnek SQL cümleciği basit şekilde veri tabanından web uygulamasına tüm ürünleri döndürecektir. Bu SQL cümlecikleri oluşturulurken araya sıkıştırılan herhangi bir meta-karakter SQL Injection’a neden olabilir. SQL Injection ile birçok şeye erişebilir dikkat edilmesi gereken önemli açıklardan biridir.

6- Zero Day Exploits

Bir Exploit, açığa aynı günde yazılan ve sanalda hızlı bir şekilde yayınlanan güvenlik açığı ( 0 Gün Exploit)

Bu tip Exploitlerin tehlikeli olmasının sebebi ise hiçbir üretici veya geliştirici bu güvenlik açığını kısa bir süre içerisinde yeni bir yama ile doğru veya anlamlı bir şekilde kapatamaması. Böyle bir saldırı Zero Day Saldırı olarak adlandırılıyor. Zero Day Saldırıları etkili, çünkü hızlı ve otomasyonu gerçekleştirilmeden yeni bir güvenlik açığı kullanılabiliyor.

Penetrasyon Testi

Penetrasyon Testi Nedir?

Sızma testi olarak da bilinir. Banka, devlet kurumu gibi büyük sistemler ve büyük ağlar kullanan kurumlarda belirli aralıklarla talep doğrultusunda bu sistemlerin güvenliği sızma testi işlemi gerçekleştiren özel firmalar tarafından test edilir. Gerçekleştirilen bu test işlemine Sızma Testi veya Penetrasyon Testi denilmektedir. Testi gerçekleştiren kişilere ise Pentester denilmektedir.

Bu testin yapılmasındaki amaç kötü amaçlı bir saldırganın içeriden veya dışarıdan sistemlere verebileceği zararı önceden görebilmek ve zayıflıklar için tedbir alabilmektir. Whitebox, Blackbox ve Graybox olmak üzere 3 türe ayrılmıştır.

Blackbox Pentest

Test yapılacak firma, testi yapacak olan Pentester’a hiçbir bilgi ve erişim vermez herkes tarafından erişilebilecek yerlerden erişilmeye çalışılır.

Whitebox Pentest

Firma içerisinde yer alan herhangi bir çalışana verilen yetkiler verilerek yapılan testtir. Çalışanlardan birinin dışarıdan ya da içerden ağa girmeye ve zarar vermeye çalışmasının saldırı simülasyonu ’dur.

Graybox Pentest

Bu test türünde Pentester bir yandan dışarıdan yetkisiz bir kullanıcı gibi test işlemlerini gerçekleştirirken diğer yandan da firma içerisinde kısıtlı bilgiye sahip olan kişiler kadar iç bilgiye sahip olarak sızma testini gerçekleştirir.

Kaynaklar

[1] Exploit Nedir?
[2] Exploit
[3] Ethical Hacking-Offensive&Defensive/Ömer Çıtak

--

--

Burak Şentürk

Student of Management Information Systems at Karadeniz Technical University • DeepLab.Bootcamp Organization Developer