34
1 T.C. GEBZE TEKNĠK ÜNĠVERSĠTESĠ Bilgisayar Mühendisliği Bölümü DDoS BENZETĠMĠ Oğuzcan PAMUK DanıĢman Prof. Dr. Ġbrahim SOĞUKPINAR Haziran, 2016 Gebze, KOCAELĠ

DDoS Benzetimi Projesi Raporu

Embed Size (px)

Citation preview

Page 1: DDoS Benzetimi Projesi Raporu

1

T.C.

GEBZE TEKNĠK ÜNĠVERSĠTESĠ

Bilgisayar Mühendisliği Bölümü

DDoS BENZETĠMĠ

Oğuzcan PAMUK

DanıĢman

Prof. Dr. Ġbrahim SOĞUKPINAR

Haziran, 2016

Gebze, KOCAELĠ

Page 2: DDoS Benzetimi Projesi Raporu

2

Page 3: DDoS Benzetimi Projesi Raporu

3

T.C.

GEBZE TEKNĠK ÜNĠVERSĠTESĠ

Bilgisayar Mühendisliği Bölümü

DDoS BENZETĠMĠ

Oğuzcan PAMUK

DanıĢman

Prof. Dr. Ġbrahim SOĞUKPINAR

Haziran, 2016

Gebze, KOCAELĠ

Page 4: DDoS Benzetimi Projesi Raporu

4

Page 5: DDoS Benzetimi Projesi Raporu

5

Bu çalıĢma ..../..../200.. tarihinde aĢağıdaki jüri tarafından Bilgisayar Mühendisliği

Bölümünde Lisans Bitirme Projesi olarak kabul edilmiĢtir.

Bitirme Projesi Jürisi

DanıĢman Adı Prof.Dr.Ġbrahim SOĞUKPINAR

Üniversite GEBZE TEKNĠK ÜNĠVERSĠTESĠ

Fakülte Mühendislik Fakültesi

Jüri Adı Doç.Dr.Didem GÖZÜPEK

Üniversite GEBZE TEKNĠK ÜNĠVERSĠTESĠ

Fakülte Mühendislik Fakültesi

Jüri Adı Doç.Dr.Hasari ÇELEBĠ

Üniversite GEBZE TEKNĠK ÜNĠVERSĠTESĠ

Fakülte Mühendislik Fakültesi

Page 6: DDoS Benzetimi Projesi Raporu

6

ÖNSÖZ

Bu kılavuzun ilk taslaklarının hazırlanmasında emeği geçenlere, kılavuzun son

halini almasında yol gösterici olan Sayın Prof.Dr.Ġbrahim SOĞUKPINAR hocama

ve bu çalıĢmayı destekleyen Gebze Teknik Üniversitesi’ne içten teĢekkürlerimi

sunarım.

Ayrıca eğitimim süresince bana her konuda tam destek veren aileme ve bana

hayatlarıyla örnek olan tüm hocalarıma saygı ve sevgilerimi sunarım.

Haziran, 2016 Oğuzcan PAMUK

Page 7: DDoS Benzetimi Projesi Raporu

7

ĠÇĠNDEKĠLER

ġEKĠL LĠSTESĠ ........................................................................................................ 9

TABLO LĠSTESĠ .................................................................................................... 10

KISALTMA LĠSTESĠ ............................................................................................ 11

ÖZET ....................................................................................................................... 12

SUMMARY ............................................................................................................. 13

1. GĠRĠġ ........................................................................................................... 14

1.1. PROJE TANIMI ..................................................................................... 14

1.2. PROJENĠN NEDEN VE AMAÇLARI ................................................. 15

2. TEMEL BĠLGĠLER VE ĠLGĠLĠ ÇALIġMALAR .................................. 16

2.1. TEMEL BĠLGĠLER .............................................................................. 16

2.2. ĠLGĠLĠ ÇALIġMALAR ......................................................................... 16

3. PROJE TASARIMI .................................................................................... 18

3.1. PROJENIN DETAYLARI ..................................................................... 18

3.2. SISTEM MIMARISI .............................................................................. 20

3.3. DOS SALDIRILARININ MODELLENMESI ..................................... 21

3.3.1 Ölümcül Ping (Ping of Death)…………………………………….. 21

3.3.2 Smurf………………………………………………………………..21

3.3.3 HTTP Seli (HTTP Flood)…………………………………………. 21

3.3.4 SYN Seli (SYN Flood)……………………………………………... 22

3.3.5 ACK Seli (ACK Flood)……………………………………………. 22

3.3.6 FIN Seli (FIN Flood)………………………………………………. 22

3.3.7 UDP Seli (UDP Flood)…………………………………………….. 23

3.3.8 ARP Zehirlenmesi (ARP Poisoning)……………………………... 23

3.4. UML DĠYAGRAMLARI ....................................................................... 24

3.5. EKRAN TASARIMLARI ...................................................................... 25

3.6. Iġ PLANLARI ......................................................................................... 27

3.7. BAġARI KRITERLERI ......................................................................... 27

4. DENEYLER VE TARTIġMA ................................................................... 29

Page 8: DDoS Benzetimi Projesi Raporu

8

5. SONUÇ......................................................................................................... 33

6. KAYNAKLAR ............................................................................................ 34

Page 9: DDoS Benzetimi Projesi Raporu

9

ġEKĠL LĠSTESĠ

ġekil 1 Projenin Genel Yapısı ................................................................................... 15 ġekil 2 Sistem Mimarisi ............................................................................................ 20

ġekil 3 Kullanım – Durum (Use – Case) Diyagramı ............................................... 24 ġekil 4 Modül Diyagramı.......................................................................................... 24 ġekil 5 Web Tarayıcı Modülü ................................................................................... 25 ġekil 6 Ağ Tarayıcı Modülü ..................................................................................... 25 ġekil 7 Port Tarayıcı Modülü .................................................................................... 26

ġekil 8 Ping Modülü ................................................................................................. 26 ġekil 9 Deneyler - Ping Modülü-1 ............................................................................ 29

ġekil 10 Deneyler - Ping Modülü-2 .......................................................................... 30

ġekil 11 Deneyler - Web Tarayıcı ............................................................................ 30 ġekil 12 Deneyler - Ağ Tarayıcı ............................................................................... 31 ġekil 13 Deneyler - Port Tarayıcı, Tüm portlar ........................................................ 32

ġekil 14 Deneyler - Port Tarayıcı, Tek port .............................................................. 32

Page 10: DDoS Benzetimi Projesi Raporu

10

TABLO LĠSTESĠ

Tablo 1 ĠĢ Planı ......................................................................................................... 27

Page 11: DDoS Benzetimi Projesi Raporu

11

KISALTMA LĠSTESĠ

UML : Unified Modeling Language (BirleĢik Modelleme Dili)

G.T.Ü : Gebze Teknik Üniversitesi

DDoS : Distributed Denial of Service

DoS : Denial of Service

ICMP : Internet Control Message Protocol

HTTP : Hyper-Text Transfer Protocol

TCP : Transmission Control Protocol

UDP : User Datagram Protocol

ARP : Address Resolution Protocol

Page 12: DDoS Benzetimi Projesi Raporu

12

ÖZET

Bu projede, varolan sistemlere gerçekleĢmesi muhtemel DoS/DDoS saldırılarının

etkilerini önceden ölçebilmek amacıyla DoS/DDoS aracı geliĢtirilmiĢtir. Saldırıları

test edebilmek amacıyla sanal bilgisayarlardan oluĢan bir laboratuvar ortamı

oluĢturulmuĢtur.

GeliĢtirilen bu araç, sadece DoS/DDoS saldırıları yapabilmenin dıĢında, kullanıcıya

hedef sistemler hakkında bilgi verebilecek çeĢitli modülleri de

gerçekleĢtirebilmektedir. Hedef sistemin açık portlarını tarayabilmek amacıyla Port

Tarayıcı, hedef sistemin mecvut linklerini tarayabilmek amacıyla Web Gezgini, ağ

üzerinde hangi cihazların bulunduğunu ve bu cihazların ip-mac adreslerini

öğrenebilmek amacıyla Ağ Tarayıcı ve son olarak hedef sistemin ağa bağlı olup

olmadığını görebilmek amacıyla Ping modülleri bulunmaktadır.

Sistemlerin test edilebilmesi amacıyla oluĢturulan saldırı modülünde Kali Linux

saldırı araçlarından yararlanılmıĢtır. Ayrıca bu projede oluĢturulan saldırı ve tespit

aracı Kali Linux ĠĢletim Sistemi üzerinde çalıĢtırılmaktadır. Hali hazırda çalıĢan

sistemlere zarar vermemek amacıyla, geliĢtirilen bu metotlar sanal bilgisayarlar

üzerinde denenmiĢtir.

.

Page 13: DDoS Benzetimi Projesi Raporu

13

SUMMARY

In this project, a DoS/DDoS tool has been developed to measure beforehand the

possible DoS/DDoS attacks to the existing systems. A lab environment is created

from virtual computers to test the attacks.

Besides the ability to make DoS/DDoS attacks, the developed device can also

design various modules that’s able to give information about the targeted systems to

the user. Port Scanner is used to scan the open ports of the targeted system, Web

Crawler is used to scan the current links of the system, Network Scanner is used to

get the information of which devices are on the network and the ip-MAC addresses

of these devices. And finally to see if the targeted system is connected to the

network, there are Ping modules.

Kali Linux attack tools are utilized on the attack module that created to test the

systems. Also, in this project, the created attack and detection tool works on Kali

Linux Operating System. Developed methods are tested on virtual computers to

avoid to harm the currently working systems.

Page 14: DDoS Benzetimi Projesi Raporu

14

1. GĠRĠġ

Bu rapor G.T.Ü. Bilgisayar Mühendisliği Bölümü Lisans Bitirme Projesi dersi

kapsamında hazırlanan DDoS Benzetimi projesinin açıklanması amacıyla

oluĢturulmuĢtur. Projenin tanımı, gereksinimleri, açıklayıcı diyagramları raporun

içeriğini oluĢturmaktadır.

Günümüz dünyasında internet hayatımızın her alanına girmiĢ ve geliĢen teknolojiyle

girmeye devam etmektedir. Bankacılık, kamu, milli güvenlik gibi hayati öneme

sahip birimlerde teknoloji ve internet kavramları çok yaygın olarak kullanılmakta ve

hatta bu birimlerin temelini oluĢturmaktadır. Ġnterneti kullanan ve hayati öneme

sahip olan bu sistemlerin korunması da günlük hayatın normal seviyede

ilerleyebilmesi açısından büyük önem arz etmektedir. Bu sebeplerden dolayı DDoS

saldırılarının önemi gün geçtikçe artmaktadır.

Soğuk savaĢın en etkili silahı olan DDoS saldırıları genel olarak sistemlerin

eriĢilebilirliğini hedef almaktadır. Bahsi geçen saldırılar yoluyla kurban olarak

seçilen kiĢi veya kurumların iĢlevlerini yerine getirememesi amaçlanmaktadır. Bu

sebepten dolayı sistemler oluĢturulurken sistemi kullanacak kullanıcı sayısı, hat

kapasitesi, anlık istek sayısı gibi maddeler üzerinde çalıĢılmalı ve saldırılara

dayanıklı bir sistem tasarlanmalıdır.

1.1. PROJE TANIMI

Birden fazla kaynaktan sistemlere yapılan ve sistemlerin hizmetini yavaĢlatmayı

veya durdurmayı hedefleyen saldırıları gerçekleĢtiren bir araç geliĢtirilmiĢtir.

Tasarlanan bu araçla birlikte aracın simülasyonunu yapabilmeyi sağlayan küçük

çaplı bir laboratuvar oluĢturulmuĢtur.

Page 15: DDoS Benzetimi Projesi Raporu

15

ġekil 1 Projenin Genel Yapısı

ġekil 1’i incelersek sistemi daha iyi anlayabiliriz. Saldırgan olarak gösterilen

kullanıcı, ana kontrol mekanizması üzerinden saldırıyı baĢlatır ve bir bilgisayar

ordusunu andıran bir çok istemci tarafından hedef sistemi saldırı gerçekleĢtirilir.

1.2. PROJENĠN NEDEN VE AMAÇLARI

DDoS Benzetimi Projesinin hangi neden ve amaçlarla baĢlatıldığı aĢağıdaki

maddelerde açıklanmıĢtır:

Bu proje sayesinde gelebilecek muhtemel DDoS saldırılarına karĢı

sistemlerin vereceği tepkiler önceden belirlenmiĢ olacaktır.

Saldırı tekniklerinin yapısı incelenerek gelebilecek saldırıların neden

kaynaklandığı bilinecektir.

Bu saldırıların gerçekleĢtirilmesi amacıyla oluĢturulan laboratuvar ortamının

oluĢturulması.

Page 16: DDoS Benzetimi Projesi Raporu

16

2. TEMEL BĠLGĠLER VE ĠLGĠLĠ ÇALIġMALAR

2.1. TEMEL BĠLGĠLER

Projeyi daha iyi anlayabilmek adına DDoS ile ilgili bilinmesi gereken temel bilgiler

bu baĢlık altında verilecektir.

DoS

Herhangi bir sistemin hizmetini yavaĢlatma veya durdurma amacıyla yapılan

saldırılardır.

DDoS

DOS saldırılarının organize bir Ģekilde birden fazla kaynak tarafından

gerçekleĢtirilmesidir.

Zombi

ÇeĢitli amaçlar için ele geçirilmiĢ bilgisayarlardır. Bu projede sanal makinalar

zombi olarak kullanılacaktır. Zombiler yardımıyla DDOS gerçekleĢtirilecektir.

IP Gizleme (IP Spoofing)

IP adresinin olduğundan farklı gösterilmesidir. Bu sayede saldırıyı yapan

kiĢinin yakalanma riski yok edilmiĢ olacaktır.

2.2. ĠLGĠLĠ ÇALIġMALAR

DoS ve DDoS saldırılarına iliĢkin çeĢitli kaynaklar üzerinde yapılan araĢtırmalara

göre saldırıların genel amacı; bankacılık sistemleri, e-posta ve telefon hizmetleri

gibi bilgisayar mimarisi üzerine kurulmuĢ ve hayati önem taĢıyan yapıların iĢlevsiz

hale getirilmesidir. Bazı politik ve ticari sebepler bu saldırıların en büyük nedenleri

olarak gösterilebilir. Bahsi geçen bu saldırılar yıllar önce geliĢtirilmiĢ ve günümüzde

halen daha yaygın bir Ģekilde kullanılan protokollerin eksiklerinden veya

sistemlerde kullanılan mevcut yazılımların açıklarından faydalanılarak oluĢturulur.

Saldırıları gerçekleĢtirmek için ağ kavramının bulunması yeterlidir. Zorunlu olarak

Page 17: DDoS Benzetimi Projesi Raporu

17

internete ihtiyaç bulunmamaktadır. Ġp gizleme tekniği kullanılarak yapılan

saldırıların kim tarafından yapıldığını bulmak neredeyse imkansız hale gelmektedir.

Yapılan araĢtırmalara göre ICMP, TCP, UDP ve SIP gibi protokoller üzerinden

DoS/DDoS saldırıları gerçekleĢtirilebilmesi mümkündür. Günümüzde en yaygın

olan saldırılar ise; TCP Syn Seli (Syn Flood), UDP Seli (UDP Flood), TCP Ack

Seli (Ack Flood), HTTP Seli (HTTP Flood), DNS Seli (DNS Flood) ve Ölümcül

Ping (Ping of Death) saldırılarıdır. Bu saldırılar yapılıĢ Ģekillerine göre iki ayrı

kategoriye ayrılmaktadırlar. Bunlardan ilki ağ trafiğini iĢlevsiz hale getirmek için

çeĢitli yöntemlerle ağ trafiğini doldurmaya yönelik saldırılar, diğeri ise iĢlemci gibi

kurban sistemin kaynaklarının gereksiz yere tüketilmesinden oluĢmaktadır.[3]

DoS/DDoS saldırılarını gerçekleĢtiren çeĢitli araçlar mevcuttur. Özellikle Kali

Linux araçları sayesinde bir çok farklı saldırı tipi gerçekleĢtirilebilir. Nmap, Hping,

DoS Http, Scapy gibi araçlar vasıtasıyla mevcut sunucuların bu saldırılara nasıl

reaksiyon gösterdiğini görmek mümkündür..[3]

ÇeĢitli araçlar kullanılarak DoS/DDoS saldırılarının simülasyonu yapılabilir. NS2

isimli simülatör sayesinde çeĢitli saldırıların nasıl gerçekleĢtirildiğini görmek ve bu

saldırıların yapısını anlamak mümkündür. Bu saldırıları gerçekleĢtiribilmek için

NS2 Tcl script kodları yazmak gerekmektedir. Daha sonra çizilen ağ topolojisi

üzerinde simülasyon gerçekleĢtirilebilir[1]. Sanal makinalar kullanarak çeĢitli ağ

ortamları kurulabilir ve bu ağlarda simülasyon gerçekleĢtirilebilir. En az iki sanal

zombi bilgisayar, kurban olarak gösterilecek bir sanal bilgisayar, atağı baĢlatacak ve

zombileri kontrol edebilecek bir bilgisayar simülasyon için yeterli olacaktır. Fakat

bu sistemlerin ve oluĢturulacak ağın gücü ne kadar kuvvetli olursa gerçekleĢtirilmek

istenen simülasyonun gerçekçiliği de bir o kadar fazla olacaktır.[5]

Page 18: DDoS Benzetimi Projesi Raporu

18

3. PROJE TASARIMI

Proje gerçekleĢtirilirken kullanılan sistemler, kütüphaneler, geliĢtirme ortamları gibi

kavramlar alt baĢlıklarda belirtilmiĢtir.

3.1. PROJENĠN DETAYLARI

GeliĢtirilen bu projede, kullanıcıya hedef sistemler hakkında bilgi verebilecek

modüller oluĢturulmuĢ ve saldırıların benzetiminin gerçekleĢtirilebilmesi adına

saldırı modülleri tasarlanmıĢtır.

Projenin Modülleri

Kullacının hedef sistemin açık portlarını kontrol edebilmesi amacıyla

port tarayıcısı tasarlanmıĢtır.

Kullanıcının ağ üzerindeki sistemleri öğrenebilmesi amacıyla ağ

tarayıcısı tasarlanmıĢtır.

Kullanıcının hedef web sisteminin linklerini tarayabilmesini sağlayan

web link tarayıcısı tasarlanmıĢtır.

Kullanıcının simülasyonu gerçekleĢtirebilmesi ve sistemi kontrol

edebilmesi amacıyla web arayüz geliĢtirilmiĢtir.

Web arayüz ile modüller arası iletiĢimin kurulması için web servisi

oluĢturulmuĢ ve proje ürün haline getirilmiĢtir.

Saldırı tekniklerinin ve geliĢtirilen bu modüllerin benzetiminin

gerçekleĢtirilebilmesi adına sanal makinalardan oluĢturulan küçük

çaplı bir laboratuvar ortamı kurulmuĢtur. Bu ortam DoS saldırılarının

DDoS saldırılarına çevirilebilmesi adına kullanılacak olan Zombi

Page 19: DDoS Benzetimi Projesi Raporu

19

sistemlerden ve hedef olarak belirlenen çeĢitli servislerden

oluĢturulmuĢtur.

Kullanılan Kütüphane ve Framework Teknolojileri

Sistemler Java Programlama Dili kullanılarak oluĢturulmuĢtur.

Web Servisi tasarımı için güvenliği ön planda tutan “Spring

Framework” yapısı kullanılmıĢtır.

Kullanıcının sistemi kullanabilmesi ve simülasyonu

gerçekleĢtirebilmesi adına geliĢtirilecek olan web arayüzü için

“AngularJs” ve “NodeJs” teknolojileri kullanılmıĢtur.

Ağ tarayıcısı için “nmap” aracından yararlanılmıĢtır.

DoS teknikleri için Kali Linux ĠĢletim Sisteminin Nmap, Hping,

Smurf6 araçlarından faydalanılmıĢtır.

Page 20: DDoS Benzetimi Projesi Raporu

20

3.2. SĠSTEM MĠMARĠSĠ

Bu bölümde çeĢitli görsel kaynaklardan yararlanarak sistemin daha iyi anlaĢılması

hedeflenmektedir.

ġekil 2 Sistem Mimarisi

ġekil 2’de sistemin nasıl çalıĢacağı özetlenmiĢtir. Buradaki “Command & Control”

modülü tasarlanan araçtır. “Zombie” olarak tanımlanan modüller ise sanal

makinalardan oluĢan saldırıyı farklı kaynaklardan gerçekleĢtiren istemcilerdir.

Kullanıcı kontrol sistemi sayesinde sistem hakkında bilgilere sahip olabileceği “Port

Tarayıcı”, “Web Gezgini”, “Ağ Tarayıcı” ve DoS saldırılarını gerçekleĢtirebileceği

saldırılar modülüne eriĢebilmelidir.

Page 21: DDoS Benzetimi Projesi Raporu

21

3.3. DOS SALDIRILARININ MODELLENMESĠ

Saldırı modülünde kullanılacak saldırı tekniklerinin açıklamaları ve modellenirken

nasıl bir yol izlendiği bu baĢlık altında incelenmiĢtir.

DoS saldırıları çeĢitli protokollerin eksiklerinden faydalanarak oluĢturulmaktadır.

Bu projede hangi protokollerin hangi eksiklerine dayanarak saldırı teknikleri

oluĢturulduğu ve hangi saldırıların proje devamında eklenebileceği alt maddelerde

belirtilmiĢtir.

3.3.1 Ölümcül Ping (Ping of Death)

Saldırganın hedef aldığı sisteme büyük boyutlu ping paketleri göndermesine

dayanmaktadır. ICMP protokolünün eksikliğinden faydalanarak oluĢturulan

saldırı tekniğidir. Ping komutuyla bu saldırıyı gerçekleĢtirmek mümkündür.

Bu saldırıda günlük kullanımdaki herhangi bir bilgisayar veya istemci –

sunucu mantığıyla çalıĢan sistemler hedef alınmıĢtır. Hedef sistemin bağlı

olduğu ağdan düĢmesi veya iĢletim sisteminin çökmesi beklenmektedir.

3.3.2 Smurf

Broadcast adreslere ICMP paketi gönderen DoS saldırı tekniğidir. “Kali

Linux Smurf6” aracı kullanılarak gerçekleĢtirilmiĢtir. Ping of Death saldırısı

gibi günlük kullanımdaki herhangi bir bilgisayar veya istemci – sunucu

mantığıyla çalıĢan sistemler hedef alınmıĢtır. Hedef sistemin bağlı olduğu

ağdan düĢmesi veya iĢletim sisteminin çökmesi beklenmektedir.

3.3.3 HTTP Seli (HTTP Flood)

Web adreslerine yanıt verebileceğinden fazla yapılan “GET” ve “POST”

isteklerine dayanan saldırı çeĢitidir. Direkt olarak web servislerini hedef

almaktadır. Etkilerini hem manuel hem de yapılan istek sayısına göre

Page 22: DDoS Benzetimi Projesi Raporu

22

anlamak mümkündür. Yapılan saldırı sonucunda hedef sistemi ayakta tutan

sunucunun çökmesi ve hizmet verememesi beklenmektedir. Nmap aracı

kullanılarak gerçekleĢtirilmiĢtir.

3.3.4 SYN Seli (SYN Flood)

TCP’nin eksikliğinden faydalanarak oluĢturulan saldırı çeĢitidir. Sisteme

“SYN” mesajları gönderip “ACK” mesajlarını reddederek gerçekleĢtirilir.

Hping aracından faydalanılarak gerçekleĢtirilmiĢtir. TCP kullanan her türlü

sisteme bu saldırının gerçekleĢtirilebilmesi mümkündür. Firewall/IPS gibi

cihazlar ilk olarak “SYN” mesajları beklediği için hedef sistem olarak

seçilebilmektedirler. Hedef sistem üzerinde Netstat komutu

gerçekleĢtirildiğinde bu saldırının yapıldığı anlaĢılabilmektedir.

3.3.5 ACK Seli (ACK Flood)

TCP’nin eksikliğinden faydalanarak oluĢturulan saldırı çeĢitidir. Sisteme

kabul edebileceğinden fazla “ACK” mesajları gönderilmesine dayanır.

Hping aracından faydalanılarak gerçekleĢtirilmiĢtir. TCP kullanan her türlü

sisteme gerçekleĢtirilebilmesi mümkündür. Durum bilgisi tutan Firewall/IPS

gibi cihazlara karĢı etkisizdir. Hedef sistem üzerinde Netstat komutu

gerçekleĢtirildiğinde bu saldırının yapıldığı anlaĢılabilmektedir.

3.3.6 FIN Seli (FIN Flood)

TCP’nin eksikliğinden faydalanarak oluĢturulan saldırı çeĢitidir. Sisteme

kabul edebileceğinden fazla “FIN” mesajları gönderilmesine dayanır. Hping

aracından faydalanılarak gerçekleĢtirilmiĢtir. TCP kullanan her türlü sisteme

gerçekleĢtirilebilmesi mümkündür. Durum bilgisi tutan Firewall/IPS gibi

cihazlara karĢı etkisizdir. Hedef sistem üzerinde Netstat komutu

gerçekleĢtirildiğinde bu saldırının yapıldığı anlaĢılabilmektedir.

Page 23: DDoS Benzetimi Projesi Raporu

23

3.3.7 UDP Seli (UDP Flood)

Hedef alınan porta çok sayıda UDP paketi gönderme iĢlemine dayanır. Java

programlama diliyle oluĢturulacak olan UDP bağlantısıyla kodlanması

mümkündür. IP gizleme iĢlemine uygun bir tekniktir. UDP kullanan her türlü

sistem üzerine uygulanabilecek bir saldırıdır. Genel olarak DNS Servisleri ve

Firewall cihazları hedef alınacaktır. Hedef alınan sisteme gönderilen ICMP

paketi ile saldırının baĢarılı gerçekleĢip gerçekleĢmediği anlaĢılabilir.

3.3.8 ARP Zehirlenmesi (ARP Poisoning)

Hedef alınan bilgisayara sahte ARP mesajı gönderilir. Bu mesajın içeriği

sayesinde hedef bilgisayarla aynı ağda bulunan tüm bilgisayarlar hedef

bilgisayara paket gönderecektir. Bu teknik ile hedefin ethernet limitini

doldurmak amaçlanır. Bu saldırının bir diğer sonucu olarak fazlasıyla

kullanılan iĢlemci gücü dolayısıyla iĢletim sisteminin kullanım dıĢı kalması

söz konusu olabilir. Herhangi bir bilgisayar ve sisteme uygulanabilir. Genel

olarak anahtar cihazları hedef alınmaktadır. Bu saldırının en temel

gereksinimi saldırganın kurbanla aynı ağa bağlı olmasıdır.

Page 24: DDoS Benzetimi Projesi Raporu

24

3.4. UML DĠYAGRAMLARI

Kullanım – Durum Diyagramı (Use – Case)

ġekil 3 Kullanım – Durum (Use – Case) Diyagramı

Modül Diyagramı

ġekil 4 Modül Diyagramı

Page 25: DDoS Benzetimi Projesi Raporu

25

3.5. EKRAN TASARIMLARI

Kullanıcıyla projenin etkileĢimini sağlayan arayüzün çıktıları aĢağıdaki ekran

görüntülerinde belirtilmiĢtir.

ġekil 5 Web Tarayıcı Modülü

ġekil 6 Ağ Tarayıcı Modülü

Page 26: DDoS Benzetimi Projesi Raporu

26

ġekil 7 Port Tarayıcı Modülü

ġekil 8 Ping Modülü

Page 27: DDoS Benzetimi Projesi Raporu

27

3.6. Ġġ PLANLARI

Projenin baĢarılı bir Ģekilde yürütülmesi ve gerçekçi sonuçlara ulaĢabilmesi

amacıyla hazırlanan iĢ planı aĢağıdaki tabloda verilmiĢtir. Belirtilen süre boyunca bu

tabloya bağlı kalınarak iĢlemler gerçekleĢtirilmiĢtir.

Tablo 1 ĠĢ Planı

Görevler BaĢlangıç Tarihi Süre(Gün)

Literatür AraĢtırması 08.02.2016 21

Proje Gereksinimlerinin

Belirlenmesi 24.02.2016 3

Port Scanner Kodlaması 01.03.2016 3

Network Scanner

Kodlaması 04.03.2016 7

Web Crawler Kodlaması 12.03.2016 7

DoS Tekniklerinin

Kodlanması 20.03.2016 20

Web Servis Kodlaması 15.04.2016 7

Uygulama Arayüz

Tasarlanması 23.04.2016 7

Test 03.03.2016 45

Hataların Kontrolü ve

Düzeltilmesi 01.05.2016 7

Raporlama ve Sunum 09.05.2016 7

3.7. BAġARI KRĠTERLERĠ

Projenin baĢarılı sayılabilmesi adına hedefler oluĢturulmuĢtur. Bu hedefler ve

ulaĢılan sonuçlar aĢağıdaki maddelerde belirtilmiĢtir.

Literatüre göre güncel sayılan DDoS tekniklerinden TCP Syn Seli, TCP Ack

Seli, TCP Fin Seli, Smurf, Http Seli ve Ölümcül Ping saldırıları

gerçekleĢtirilebilmektedir. OluĢturulan bu yapı esnek bir Ģekilde

oluĢturulduğundan yeni saldırı modülleri eklemek herhangi bir sıkıntıya yol

açmayacaktır.

Page 28: DDoS Benzetimi Projesi Raporu

28

Ağın hızıyla ve sistemlerin gücüyle doğru orantılı olarak yapılan

hesaplamalar sonucunda DDoS tekniklerinin baĢarısının en az %70 olması

gerekmektedir.

Ağ hızıyla doğru orantılı olarak yapılan hesaplamalar sonucunda kullanıcıya

bilgi vermesi hedeflenen port, ağ ve web link tarayıcılarının baĢarısının en

az %80 olması gerekmektedir. Bahsi geçen tüm modüller kodlanmıĢ ve

ekstra olarak Ping Modülü eklenmiĢtir. Bu modüller en az %80-85 civarında

baĢarı sağlamaktadırlar.

Page 29: DDoS Benzetimi Projesi Raporu

29

4. DENEYLER VE TARTIġMA

Kullanıcının sistem hakkında ön bilgiye sahip olması için tasarlanan ve hedef

sistemlere DoS/DDoS saldırılarını gerçekleĢtirebilmesini sağlayacak modüller

üzerinde yapılan deneyler bu baĢlık altında görsellerde desteklenerek incelenecektir.

Ping Modülü

Bu modül saldırı yapılması düĢünülen sistemlerin herhangi bir ağa bağlı olup

olmadığını kontrol etmek amacıyla oluĢturulmuĢtur. Yerel ağa bağlı olan veya

aynı yerel ağda olmayıp internete bağlı olan cihazlar üzerinde yapılan testler

sonucunda, modülün %100 baĢarı sağladığı tespit edilmiĢtir.

ġekil 9 Deneyler - Ping Modülü-1

Page 30: DDoS Benzetimi Projesi Raporu

30

ġekil 10 Deneyler - Ping Modülü-2

Web Tarayıcı

Bu modül hedef sistem web sitesi ise kullanılabilinecektir. Modülün iĢleyiĢi,

web sitesinin varolan tüm linklerinin taranmasıdır. Amacı ise saldırı yapılacak

web sistemini daha iyi tanımak ve hangi url üzerinden saldırı

gerçekleĢtirilebileceğini kullanıcıya sunmaktır. ”oguzpamuk.com” üzerinden

yapılan testler sonucunda sitenin varolan tüm linkleri tasarlanan web crawler

tarafından bulunmuĢ olup, modülün baĢarı yüzdesi %100 olarak belirlenmiĢtir.

ġekil 11 Deneyler - Web Tarayıcı

Page 31: DDoS Benzetimi Projesi Raporu

31

Ağ Tarayıcı

Bu modül hedef ağ üzerinde keĢif yapmayı sağlamaktadır. Hedef ağda bulunan

ve aktif olarak ağa bağlı olan tüm cihazların mac-ip adreslerinin bilinmesini

sağlamaktadır. Yerel ağ ve uzak ağ üzerinden yapılan araĢtırmalar sonucunda

mobil cihazların bazılarının bulunamadığı tespit edilmiĢtir. Mobil cihazlar

dıĢındaki tüm cihazların tespit edilebilmektedir.

ġekil 12 Deneyler - Ağ Tarayıcı

Port Tarayıcı

Bu modül, hedef sistem üzerindeki açık ve kullanılabilir olan tüm portları

kullanıcıya bildirmektedir. Kullanıcı isterse spesifik olarak portları tarayabilir

yada tüm açık portların gösterilmesini isteyebilir. Spesifik port tarama iĢleminde

portun açık veya kapalı olduğu bilgisine %100 baĢarı ile ulaĢılabilmektedir. Tüm

portları tarama iĢleminde ise bazı durumlarda timeout süresinden kaynaklanan

sorunlardan dolayı %80-%90 arasında baĢarılı sonuçlar elde edildiği

saptanmıĢtır.

Page 32: DDoS Benzetimi Projesi Raporu

32

ġekil 13 Deneyler - Port Tarayıcı, Tüm portlar

ġekil 14 Deneyler - Port Tarayıcı, Tek port

Saldırı Modülü

Bu modül ise kullanıcının hedef olarak seçtiği sisteme çeĢitli saldırıları

gerçekleĢtirebilmesini sağlayan modüldür. Web sistemleri üzerine yapılan

saldırılar sonucunda bazı saldırıların sistemi kullanılamaz hale getirdiği,

bazılarının ise sistemi yavaĢlattığı görülmüĢtür. Bu konudaki incelemeler devam

etmekte olup saldırıların %70-80 arası baĢarılı olduğu saptanmıĢtır.

Page 33: DDoS Benzetimi Projesi Raporu

33

5. SONUÇ

Bu rapor G.T.Ü. Bilgisayar Mühendisliği Bölümü Lisans Bitirme Projesi dersi

kapsamında hazırlanan, sistemlerin hizmetlerini yavaĢlatmayı veya durdurmayı

hedefleyen DDoS saldırılarının simülasyonunu gerçekleĢtirmeyi hedefleyen DDoS

Benzetimi projesinin açıklanması amacıyla oluĢturulmuĢtur. Projenin

gerçekleĢtirilmesi için gerekenler belirtilmiĢ ve nasıl bir yol izlenerek projenin

gerçekleĢtirildiği hakkında bilgiler verilmiĢtir. Projenin daha iyi anlaĢılması

amacıyla çeĢitli diyagram ve görsellerden yararlanılmıĢtır.

Proje toplamda beĢ farklı modülden meydana gelmektedir. Bu modüllerin ilk dördü

sistem hakkında bilgi vermek amacıyla oluĢturulmuĢ ve son modülde saldırı

tekniklerini gerçekleĢtirebilmek amacıyla oluĢturulmuĢtur. Hedef sistem hakkında

bilgi veren modüller; port tarama iĢlemi, web linklerini tarama iĢlemi, ağ üzerinde

bulunan cihazların ip-mac adreslerinin neler olduğu ve sistemlerin ağa bağlı olup

olmadığını kullanıcıya bildiren iĢlemler gerçekleĢtirebilmektedir. Ayrıca projenin

içeriğini oluĢturan saldırı modülü sayesinde TCP Syn Seli, TCP Ack Seli, TCP Fin

Seli, Http Seli, Smurf ve Ölümcül Ping saldırıları gerçekleĢtirebilmek mümkündür.

GeliĢtirilen yapı esnek bir Ģekilde oluĢturulmuĢ olup, yeni saldırılar eklemeye

müsait bir yapıdadır.

Soğuk savaĢın en etkili silahı halini alan bu saldırılar gün geçtikçe yaygınlaĢmaya

devam etmektedir ve daha tehlikeli bir hal almaktadır. Bu sebepten dolayı sanal

ortamda sistemleri muhtemel saldırılara karĢı test etmenin önemi oldukça fazladır.

GeliĢtirilen araç ve simülasyon teknikleri bahsedilen bu ihtiyaca binayen

oluĢturulmuĢ ve geliĢtirilmeye devam edilecektir.

Page 34: DDoS Benzetimi Projesi Raporu

34

6. KAYNAKLAR

[1] SINGH,J,KUMAR,K,MONIKA,S,SIDHU,N, DDoS Attack’s Simulation Using

Legitimate and Attack Real Data Sets 2229-5518,2012.

[2] MISHRA,M,GUPTA,B,JOSHI,R, A Comparative Study of Distributed Denial of

Service Attacks,Intrusion Tolerance and Mitigation Techniques,European

Intelligence and Security Informatics Conference,2011.

[3] ÖNAL, H, DOS/DDOS Saldırıları, Savunma Yolları ve Çözüm Önerileri , Bilgi

Güvenliği Akademisi,2014.

[4] MISHRA,M,GUPTA,B,JOSHI,R, Distributed Denial of Service Prevention

Techniques, 1793-8163.

[5]ALOMARI,E, GUPTA,B, MANICHAM,S, SINGH,P, ANBAR,M, Design,

Deployment and use of HTTP-based Botnet (HBB) Testbed , ISBN 978-89-968650-

3-2

[6] Mirkovic, J., and Reiher, P. (2004, April). A taxonomy of DDoS attack and

DDoS defense mechanisms. ACM SIGCOMM Computer Communications Review,

34(2), 39–53.

[7] C. Douligeris, A. Mitrokotsa “DDoS attacks and defense mechanisms:

classification and state of the art”. Elsevier Science Direct Computer Networks 44

(2004) 643-666.

[8] B. B. Gupta, R. C. Joshi, M. Misra, “Distributed Denial of Service Prevention

Techniques,” International Journal of Computer and Electrical Engineering (IJCEE),

vol. 2, number 2, ISSN: 1793- 8198, Singapore, pp. 268-276, 2010.

[9] Molsa, J. (2005). Mitigating denial of service attacks: A tutorial. Journal of

Computer Security, 13, 807–837.

[10] Juniper Network, “Combating Bots and Mitigating DDoS Attacks (Solution

brief)”, Juniper Networks, Inc, 2006