فصل سوم

مطالعه موردی

دو نوع مجموعه داده شامل DARPA 1999 و KDD 1999 ، در این پژوهش مورد استفاده قرار می گیرد، که در ادامه توضیحاتی درباره هر یک ارائه خواهد شد.

3-1 مطالعه موردی بر روی داده های DARPA 1999

این مجموعه داده ها یکی از نخستین نمونه های استاندارد برای ارزیابی سیستم های تشخیص نفوذ بوده است و شامل 5 هفته ترافیک اخذ شده (در قالب فایلهایی با فرمت tcpdump) می باشد که از دو نقطه در یک شبکه شبیه سازی شده، بدست آمده است. که یکی از این دو، داخل محدوده، بین روتر ورودی24 و چهار سیستم قربانی، و دیگری خارج از محدوده، بین درگاه25 و اینترنت شبیه سازی شده، می باشد. ما در اینجا فقط ترافیک داخل محدوده را درنظر می گیریم.

این 5 هفته بصورت زیر هستند:
هفته اول و سوم: (برای مهیاسازی سیستم های تشخیص ناهنجاری) درطی هفته اول، همه ی 22ساعت از داده های آموزشی در این شبکه ی نمونه، اخذ شده و هیچ توقف زمانی غیربرنامه ریزی شده ای رخ نداده است. در هفته سوم، فعالیت شبکه ساعت 4 صبح روز چهارم(پنجشنبه)، جهت انجام یک عملیات نگهداری غیربرنامه ریزی شده، کاهش یافت. جمع آوری ترافیک در نیمه شب روز پنجم متوقف شد.
هفته دوم: 43 حمله متعلق به 18 نوع مشخص، برای توسعه سیستم مورد استفاده قرار گرفت. درطی هفته دوم، فعالیت ترافیک مذکور، ساعت 3 صبح روز دوم(سه شنبه) جهت انجام یک عملیات نگهداری غیربرنامه ریزی شده، کاهش یافت.
هفته چهارم و پنجم: 201 حمله متعلق به 58 نوع (که 40 نوع آن جدید است) برای ارزیابی مورد استفاده قرار گرفت. در طی هفته ی چهارم، ترافیک داخلی برای روز دوم (سه شنبه)، از دست رفته است. در هفته ی پنجم، همه ی داده های ترافیک 22 ساعت، موجود و هیچ زمان توقفی در شبکه نیست.
همچنین تمام حملات این مجموعه داده ها را می توان در چهارگروه اصلی زیر دسته بندی کرد:
حملات رد سرویس
دسترسی از راه دور به سیستم محلی26
دسترسی کاربر به مجوزهای بالای سیستم 27
حملات نظارتی یا کاوشی28

جدول3-1 دسته بندی حملات موجود در مجموعه داده DARPA1999
Attack type
Attack class
Portsweep, ipsweep, queso, satan, msscan, ntinfoscan, lsdomain, illegal-sniffer

Probe
apache2, smurf, neptune, dosnuke, land, pod, back, teardrop, tcpreset, syslogd, crashiis, arppoison, mailbomb, selfping, processtable, udpstorm, warezclient

DoS
dict, netcat, sendmail, imap, ncftp, xlock, xsnoop, sshtrojan,
framespoof, ppmacro, guest, netbus, snmpget, ftpwrite,
httptunnel, phf, named

R2L
sechole, xterm, eject, ps, nukepw, secret, perl, yaga, fdformat,ffbconfig, casesen, ntfsdos, ppmacro, loadmodule, sqlattack

U2R
داده های این مجموعه شامل فایل هایی با فرمت tcpdump است و بنابراین اغلب سیستم های ارزیابی پیشین مبتنی بر مشخصه هایی برحسب بسته ها هستند. در این پژوهش، ابتدا فایلهای tcpdump به جریانهای داده ای با بازه های زمانی مشخص تبدیل شده و سپس براساس این نمونه ها، آنالیز کاملی از رفتار شبکه برای این مجموعه داده به سرانجام میرسد. دو ابزار به نامهای editcap و Tshark ، برای تبدیل فایل های tcpdump به گزارشهای جریان، مورد استفاده قرار می گیرند. بدین صورت که ابتدا با استفاده از editcap فایلهای tcpdump به بازه های زمانی مشخص تقسیم می شود. در اینجا به جهت مطابقت با استاندارهای پیشین، طول زمانی این بازه ها یک دقیقه درنظر گرفته شده است. نمونه ای از این فرآیند در زیر مشاهده می شود:

Editcap –A”1999-04-09 09:00:00″ –B”1999-04-09 09:01:00″ inside.tcpdump 1.pcap

سپس این داده های ترافیک مربوط به این بازه های مشخص، با استفاده از ابزار Tshark به گزارشهای جریان29 تبدیل می شود. با استفاده از کامنتهای زیر در محیط Tshark می توان این تغییرات را اعمال نمود:

tshark -r l.pcap -q -n -z conv,tcp,
tshark -r l.pcap -q -n -z conv,udp,
tshark -r l.pcap -q -n -z conv,ip,icmp.

درنهایت، قالب گزارشهای جریان بصورت زیر خواهد بود:

{timestamp, local src IP: src port, remote dst IP: adsport, incoming number of packets (remote → local), incoming number of bytes, outgoing (local → remote) number of packets, outgoing number of bytes, total number of packets, total number of bytes, protocol}

نمونه ای از این گزارش جریان در زیر مشاهده می شود:

920275200 135.8.60.182 : 1116
↔ 172.16.114.169 : 25 47 3968 77 59310 124 63278 tcp

3-2 مطالعه موردی بر روی داده های KDD 1999

مجموعه داده ی تشخیص نفوذ KDD 99 براساس طرح DARPA 1998 است که بستری جهت ارزیابی روشهای مختلف ارائه شده از سوی طراحان سیستم های تشخیص نفوذ، فراهم می آورد. بدین منظور، یک شبکه نظامی ساختگی شامل سه ماشین هدف که هر کدام سیستم عامل و سرویسهای متفاوتی دارند، شبیه سازی شده است. سپس سه ماشین دیگر نیز برای جعل آدرس های IP جهت ایجاد ترافیک به این ساختار افزوده می شود. و در نهایت، با استفاده از یک ابزار شنود، همه ی ترافیک شبکه به فرمت TCP dump ضبط می شود[13].
مسابقه تشخیص نفوذ KDD 1999، یک نسخه از این مجموعه داده را استفاده می کند. به این منظور، اطلاعات بسته ها در فایل TCP dump در مجموعه ای از اتصالات خلاصه شده است. در این مجموعه، یک اتصال30 ، به معنای سلسله ای از بسته های TCP است که در زمان های مشخصی شروع شده و به پایان میرسند و طی آن، داده ها از یک آدرس IP مبدأ به یک آدرس IP مقصد، تحت یک پروتکل مشخص، جریان می یابند. این پروسه با استفاده از سیستم تشخیص برو31 [33]، کامل شده ومنجر به تعریف 41 ویژگی برای هر اتصال می شود. هر اتصال به عنوان نرمال یا حمله، برچسب گذاری شده و شامل 41 ویژگی است. مقادیر این ویژگی ها، بصورت گسسته، پیوسته و یا سمبولیک ارائه شده و در
چهار گروه طبقه بندی می شوند[32]:
ویژگی های اولیه32: این ویژگی ها می تواند از سرآمد بسته ها بدون بررسی محتویاتشان، استخراج شود. ویژگی های اولیه شامل 6 ویژگی اول لیست 41 تایی مذکور است.
ویژگی های محتوایی33 : شامل دانش دامنه ای است که برای ارزیابی محتویات بسته های TCP اولیه، مورد استفاده قرار می گیرد. به عنوان مثال، ویژگی مانند “تعداد تلاش های ناموفق برای لاگین” در این گروه قرار می گیرد.
ویژگی های ترافیکی مبتنی بر زمان34
این ویژگی ها برای اخذ محتویاتی که در یک پنجره ی زمانی 2 ثانیه ای تکمیل شده، طراحی گردیده است. به عنوان یک نمونه از این نوع ویژگی ها می توان به “تعداد اتصالات به یک میزبان طی یک بازه زمانی 2 ثانیه ای” اشاره کرد.
ویژگی های ترافیکی مبتنی بر میزبان35
از یک پنجره ی پیشینه36 که برای تعدادی از اتصالات تخمین زده شده، بجای زمان استفاده می کند. بنابراین، ویژگی های مبتنی بر میزبان، برای ارزیابی حملاتی طراحی شده است که در بازه های زمانی بیشتر از 2 ثانیه گسترش می یابند.
این ویژگی ها را به تفصیل در جدول3-2 ملاحظه می کنید.

این مطلب رو هم توصیه می کنم بخونین:   مقاله رایگان دربارهعملکرد کنترل

جدول3-2 توصیف ویژگی های مجموعه داده تشخیص نفوذ KDD 99
Type
Description
Feature
No.
Continuous
Duration of the connection
Duration
1
Symbol
Connection protocol (e.g. tcp, udp)
Protocol type
2
Symbol
Destination service (e.g. telnet, ftp)
Service
3
Symbol
Status flag of the connection
Flag
4
Continuous
Byte sent from source to destination
Source bytes
5
Continuous
Byte sent from destination to source
Destination bytes
6
Discrete
1 if connection is from/to the same host/port; 0 otherwise
Land
7
Continuous
Number of wrong fragments
Wrong fragments
8
Continuous
Number of urgent packets
urgent
9
Continuous
Number of “hot” indicators
Hot
10
Continuous
Number of failed logins
Failed logins
11
Discrete
1 if successfully logged in, 0 otherwise
Logged in
12
Continuous
Number of “compromised” conditions
# compromised
13
Discrete
1 if root shell is obtained; 0 otherwise
Root shell
14
Discrete
1 if “su root” command attempted; 0 otherwise
Su attempted
15
Continuous
Number of “root” accesses
# root
16
Continuous
Number of file creation operations
# file creations
17
Continuous
Number of shell prompts
# shells
18
Continuous
Number of operations on access control files
# access files
19
Continuous
Number of outbound commands in an ftp session
# outbound cmds
20
Discrete
1 if the login belongs to the “hot” list; 0 otherwise
Is hot login
21
Discrete
1 if the login is a “guest” login; 0 otherwise
Is guest login
22
Continuous
Number of connections to the same host as the current connection in the past two seconds
Count
23
Continuous
Number of connections to the same service as the current connection in the past two seconds
Srv count
24
Continuous
% of connections in Count that have “SYN” errors
Serror rate
25
Continuous
% of connections in Srv- count that have “SYN” errors
Srv serror rate
26
Continuous
% of connections in Count that have “REJ” errors
Rerror rate
27
Continuous
% of connections in Srv-count that have “REJ” errors
Srv serror rate
28
Continuous
% of connections to the same service
Same srv rate
29
Continuous
% of connections to different services
Diff srv rate
30
Continuous
% of connections to different hosts
Srv diff host rate
31
Continuous
Count of connections having the same destination hosts
Dst host count
32
Continuous
Count of connections having the same destination host and using the same service
Dst host srv count
33
Continuous
% of connections having the same destination host and using the same service
Dst host same srv rate
34
Continuous
% of different services on the current host
Dst host diff srv rate
35
Continuous
% of connections to the current host having the same src port
Dst host same src port rate
36
Continuous
% of connections to the same service coming from different hosts
Dst host srv diff host rate
37
Continuous
% of connections to the current host that have an S0 error
Dst host serror rate
38
Continuous
% of connections to the current host and specified service that have an S0 error
Dst host srv serror rate
39
Continuous
% of connections to the current host that have an RST error
Dst host rerror rate
40
Continuous
% of connections to the current host and specified service that have an RST error
Dst host srv rerror rate
41

داده های تشخیص نفوذ KDD 99، شامل سه مولفه هستند که در جدول 3-3 نشان داده شده است.

جدول3-3 مشخصه های اولیه داده های تشخیص نفوذ KDD 99
Normal
R2l
U2r
Probe
DoS
Data set
97277
1126
52
4107
391458
10% KDD
60593
16347
70
4166
229853
Corrected KDD
972780
1126
52
41102
3883370
Whole KDD

در این میان، به علت حجم بالای داده ها، عموماً فقط از مجموعه داده “10% KDD” برای آموزش استفاده می شود. این مجموعه داده درواقع یک نسخه مختصرتر از مجموعه داده ی ” Whole KDD” بوده و شامل 22 نوع حمله است.
از سوی دیگر، مجموعه داده ” Corrected KDD”، توزیع آماری متفاوت تری از “Whole KDD” یا “10% KDD” نشان داده و شامل 14 نوع حمله اضافی تر است.
انواع حملات موجود در این مجموعه داده ها را در چهار گروه زیر می توان دسته بندی کرد:
حملات رد سرویس
حمله کننده سعی می کند با مشغول کردن سیستم، از دسترسی کاربر مجاز به یک سرویس یا برخی منابع، جلوگیری کند.
37 R2L
حمله کننده هیچ حساب کاربری بر روی ماشین قربانی ندارد، بنابراین سعی می کند به طریقی دسترسی پیدا کند.
U2R 38
حمله کننده دسترسی محلی به ماشین قربانی ندارد و سعی می کند مجوزهای کاربری بالا را بدست آورد.
کاوشی 39
حمله کننده سعی می کند اطلاعاتی درباره ی میزبان موردنظر خود، کسب کند.
لیست حملات و تعداد آنها در مجموعه داده ی “10% KDD” در جدول 3-4 مشاهده میشود.
در این پژوهش از 40هزار داده برای آموزش سیستم تشخیص استفاده شده و سپس هر
بار 3هزار داده ی تصادفی از میان کل داده های مجموعه را با این سیستم مورد آزمایش قرار می گیرد
جدول3-4 لیست حملات و تعداد آنها در مجموعه داده ی 10% KDD 99
Category
Number of Samples
Attck
Dos
280790
Smurf
Dos
107201
Neptune
Dos
2203
Back
Dos
979
Teardrop
Dos
264
Pod
Dos
21
Land
Normal
97277
Normal
Probe
1589
Satan
Probe
1247
Ipsweep
Probe
1040
Portsweep
Probe
231
Nmap
R2l
1020
Warezclient
R2l
53
Guess_passwd
R2l
20
Warezmaster
R2l
12
Imap
R2l
8
ftp_write
R2l
7
Multihop
R2l
4
Phf
R2l
2
Spy
U2r
30
Buffer_overflow
U2r
10
Rootkit
U2r
9
Loadmodule
U2r
3
Perl

فصل چهارم

مبانی نظری

4-1- مقدمه ای بر ویولت

بنا بر[34]، عموماً اعمال تبدیلات ریاضی بر یک سیگنال منجر به کسب اطلاعات بیشتری می شود که در سیگنال خام اولیه قابل دسترسی نمی باشد. بنا بر چنین کارکردی، تبدیل فوریه به عنوان یک گزینه ی مطلوب مطرح می گردد. بعلاوه در بسیاری از موارد، کسب اطلاعات براساس ساختارهای فرکانسی یک سیگنال سری زمانی بیش از دامنه آن مورد توجه قرار می گیرد. و این دقیقاً همان کاری است که سری فوریه انجام می دهد. یعنی اطلاعاتی را درباره ی ساختارهای طیفی سیگنال بدون توجه به زمان رخداد این فرکانس ها، بدست می دهد. به عبارت


دیدگاهتان را بنویسید