Чудили ли сте се някога как вашият компютър/мрежа може да избегне заразяване със зловреден софтуер и лош трафик от интернет? Причината, поради която може да го открие толкова добре, е, че има системи за защита на вашата ценна информация, съхранявана във вашия компютър или мрежи. Тези системи, които откриват въвеждане на злонамерен трафик, се наричат ​​системи за откриване на проникване (IDS) и се обучават на данни от запис на интернет трафик. Най-често срещаният набор от данни е NSL-KDD и е еталон за съвременния интернет трафик.

Наборът от данни на NSL-KDD не е първият по рода си. Купата на KDD беше международно състезание за откриване на знания и инструменти за извличане на данни. През 1999 г. това състезание се проведе с цел събиране на рекорди за трафик. Задачата на състезанието беше да се изгради детектор за проникване в мрежа, предсказващ модел, способен да прави разлика между „лоши“ връзки, наречени прониквания или атаки, и „добри“ нормални връзки. В резултат на това състезание беше събрано огромно количество записи на интернет трафик и групирани в набор от данни, наречен KDD'99, и от това беше създаден наборът от данни NSL-KDD като ревизиран, изчистен версия на KDD'99 от Университета на Ню Брънзуик.

Този набор от данни се състои от четири поднабора от данни: KDDTest+, KDDTest-21, KDDTrain+, KDDTrain+_20Percent, въпреки че KDDTest-21 и KDDTrain+_20Percent са подмножества на KDDTrain+ и KDDTest+. Отсега нататък KDDTrain+ ще се нарича влак, а KDDTest+ ще се нарича тест. KDDTest-21 е подгрупа от тестове, без най-трудните записи на трафика (резултат от 21), а KDDTrain+_20Percent е подгрупа от влак, чийто брой записи съставлява 20% от целия набор от данни за влака. Като се има предвид това, записите за трафик, които съществуват в KDDTest-21 и KDDTrain+_20Percent, вече са съответно в тестване и обучение и не са нови записи, държани извън двата набора от данни.

Тези набори от данни съдържат записите на интернет трафика, видян от обикновена мрежа за откриване на проникване, и са призраците на трафика, срещан от истински IDS и остават само следите от неговото съществуване. Наборът от данни съдържа 43 функции на запис, като 41 от характеристиките се отнасят до самия входен трафик, а последните две са етикети (независимо дали е нормален или атака) и оценка (сериозността на самия входен трафик).

В рамките на набора от данни съществуват 4 различни класа атаки: отказ на услуга (DoS), сондиране, потребител към root (U2R) и отдалечено към локално (R2L). Кратко описание на всяка атака можете да видите по-долу:

  • DoS е атака, която се опитва да спре трафика към и от целевата система. IDS е наводнен с ненормално количество трафик, който системата не може да обработи и се изключва, за да се защити. Това предотвратява нормалния трафик от посещение на мрежа. Пример за това може да бъде онлайн търговец на дребно, затрупан с онлайн поръчки в ден с голяма разпродажба и тъй като мрежата не може да се справи с всички заявки, тя ще се затвори, предотвратявайки плащащите клиенти да купуват каквото и да било. Това е най-честата атака в набора от данни.
  • Сондата или наблюдението е атака, която се опитва да получи информация от мрежа. Целта тук е да действате като крадец и да откраднете важна информация, независимо дали е лична информация за клиенти или банкова информация.
  • U2R е атака, която започва с нормален потребителски акаунт и се опитва да получи достъп до системата или мрежата като супер потребител (root). Нападателят се опитва да използва уязвимостите в системата, за да получи root права/достъп.
  • R2L е атака, която се опитва да получи локален достъп до отдалечена машина. Нападателят няма локален достъп до системата/мрежата и се опитва да „хакне“ своя път в мрежата.

От описанията по-горе се забелязва, че DoS действа различно от другите три атаки, при които DoS се опитва да изключи система, за да спре изцяло трафика, докато другите три се опитват тихо да проникнат в системата незабелязани.

В таблицата по-долу е показана разбивка на различните подкласове на всяка атака, която съществува в набора от данни:

Въпреки че тези атаки съществуват в набора от данни, разпределението е силно изкривено. Разбивка на разпределението на записите може да се види в таблицата по-долу. По същество повече от половината от записите, които съществуват във всеки набор от данни, са нормален трафик, а разпространението на U2R и R2L е изключително ниско. Въпреки че това е малко, това е точно представяне на разпределението на съвременните атаки за интернет трафик, където най-честата атака е DoS, а U2R и R2L почти не се срещат.

Функциите в запис на трафик предоставят информация за срещата с входния трафик от IDS и могат да бъдат разделени на четири категории: вътрешен, съдържание, базиран на хост и базиран на време. По-долу е дадено описание на различните категории характеристики:

  • Вътрешните характеристики могат да бъдат извлечени от заглавката на пакета, без да се разглежда самият полезен товар, и да съдържат основната информация за пакета. Тази категория съдържа функции 1–9.
  • Характеристиките на съдържанието съдържат информация за оригиналните пакети, тъй като те се изпращат на няколко части, а не на една. С тази информация системата може да получи достъп до полезния товар. Тази категория съдържа функции 10–22.
  • Функциите, базирани на времето, поддържат анализа на входния трафик в прозорец от две секунди и съдържат информация като колко връзки са се опитали да направят към един и същ хост. Тези характеристики са предимно преброяване и проценти, а не информация за съдържанието на въведения трафик. Тази категория съдържа функции 23–31.
  • Функциите, базирани на хост, са подобни на функциите, базирани на време, с изключение на това, че вместо да анализира през прозорец от 2 секунди, анализира върху поредица от направени връзки (колко заявки са направени към един и същ хост за x-брой връзки). Тези функции са предназначени за достъп до атаки, които обхващат по-дълъг период от време на прозорец от две секунди. Тази категория съдържа характеристики 32–41.

Типовете функции в този набор от данни могат да бъдат разделени на 4 типа:

  • 4 Категорични (Характеристики: 2, 3, 4, 42)
  • 6 Binary (Характеристики: 7, 12, 14, 20, 21, 22)
  • 23 Дискретни (Характеристики: 8, 9, 15, 23–41, 43)
  • 10 непрекъснати (Характеристики: 1, 5, 6, 10, 11, 13, 16, 17, 18, 19)

Разбивка на възможните стойности за категоричните характеристики може да се види в таблицата по-долу. Има 3 възможни стойности на Protocol Type, 60 възможни стойности на Service и 11 възможни стойности на Flag.

За разлика от Protocol Type и Service, чиито стойности са ясни (тези стойности описват връзката), Flag не е много лесен за разбиране. Функцията Флагописва състоянието на връзката и дали е бил повдигнат флаг или не. Всяка стойност в Флаг представлява състояние, което връзката е имала, и обясненията на всяка стойност могат да бъдат намерени в таблицата по-долу.

Описание на всяка функция и разбивка на набора от данни могат да се видят в електронната таблица на Google тук.