
sanders
08.10.2018
11:50:48
Скорее глобальный антивирус

fedor
08.10.2018
11:50:53
у этого конкретного бага может быть вполне конкретное видмое глазами проявление в логах
это хуже)))
все равно вам нужно сначала смотреть в логи глазами, чтобы увидеть эти паттерны

Google

sanders
08.10.2018
11:54:43
Я знаю о следующем подходе:
Я собираю базу данных с компьютера без вирусов и не применяю к нему никаких атак, то есть пользуюсь им в обычном режиме. Далее обучаю сеть прогнозировать поведение системы по лог файлам, и сравнивать с реальными. Если есть существенные отличия в работе системы и в предсказании сети, то система работает аномально, то есть возможно применение атаки.
Что в твоём понимании паттерн?

fedor
08.10.2018
11:55:27
смотрите
ну или смотри)))
если ты хочешь сам отличать анамалию в логах, или учить машину отличать аномалию в логах
нужно дать какое то устраивающее тебя, как создателя, определение аномалии
то есть вот в этой кучке у тебя хорошие логи
в этой кучке - вредоносные
если у тебя будут два класса данных, то ты можешь делать все что угодно
написать скрипт руками который умеет данные отделять
использовать какие нибудь деревья принятия решений
нейросети
в конце концов взять какую нибудь готовую программу

Google

sanders
08.10.2018
11:58:12
На твоих словах - все легко, а в деталях....?

fedor
08.10.2018
11:58:46
в деталях - я бы сначала посмотрел на логи глазами

Dmitry
08.10.2018
11:58:55
я так понимаю, что человек хочет сделать систему, которая сама аномалии будет искать

sanders
08.10.2018
11:59:06
Да

fedor
08.10.2018
11:59:08
и сфоромулировал четкое понимание аномалии

sanders
08.10.2018
11:59:10

Dmitry
08.10.2018
11:59:29
вопрос, конечно, возможно ли такое ввобще. на данном этапе либо вообще когда-либо

fedor
08.10.2018
11:59:32
понятно что она будет сама искать анломалию
но какая метрика системы - качество поиска аномалии

Dmitry
08.10.2018
12:00:13
я, к слову, видел где-то сообщения о подобных решениях

fedor
08.10.2018
12:00:18
метрику должен сделать программист

sanders
08.10.2018
12:00:18
Я просто хочу спросить у людей, которые делали, что-то подобное.

Dmitry
08.10.2018
12:00:35
какие метрики использовали - без понятия, увы
искать, читать

fedor
08.10.2018
12:00:51
короче, есть методы unsupervised learning
которые мы выше обсуждали

sanders
08.10.2018
12:01:09
Было соревнование от Касперского на похожую тему: брались датчики с завода и определяли атаки на него

fedor
08.10.2018
12:01:22
которые помогаю в логах искать кластера, классифицировать
это класс - аномалия, этот класс нет

sanders
08.10.2018
12:01:44

Google

fedor
08.10.2018
12:02:37
к сожалению без метрики, отбора данных, анализа что такое есть аномалия которую вы ищите ничего не сделать

Dmitry
08.10.2018
12:03:41
я имею в виду: скормить два набора - один 'плохой', второй - 'хороший'. и дальше оно само

fedor
08.10.2018
12:04:00
самая сложность получить два набора
если есть два набора то может руками скрипт написать легче
если то - плохой, елси се - хороший
например у вас есть данные о посещении сайта

Dmitry
08.10.2018
12:05:02
если есть четкий признак проблем

fedor
08.10.2018
12:05:07
легко сказать что если в логах миллион запросов в секунду - это плохо

Dmitry
08.10.2018
12:05:08
то и сеть не нужна )
мне кажется

fedor
08.10.2018
12:05:19
именно

Dmitry
08.10.2018
12:05:21
а вот если нет - что скорее всего

fedor
08.10.2018
12:05:57
если нет, то как вы качество работы сети промеряете?
качество любого модуля
он то откуда знает что хорошо что плохо?

Dmitry
08.10.2018
12:08:25
что хорошо как раз таки известно, до какой-то степени
а вот искать аномалии в хорошести - то надо думать как как раз
можно сказать. что вот это состояние сети хорошее. её не ломают. ну - по крайне мере, пока это не опровергнуто - это будет правда
и снимать что можно

Google

Dmitry
08.10.2018
12:09:47
и дальше искать отклонения

fedor
08.10.2018
12:10:03
ну давать определение хорошего не нужно))) нужно дать определение того, что плохо
и наприме это и будет сама програма
к примеру, больше 10000 обращений в секунду - плохо

Dmitry
08.10.2018
12:10:35
плохо - всё, что не хорошо :)
очевидно же ?
10к запросов пришло

fedor
08.10.2018
12:10:56
это хорошее определение)))

Dmitry
08.10.2018
12:11:04
явно повод задуматься

fedor
08.10.2018
12:11:45
короче, главная задача определения аномалии, и для этого есть всякие методы

Dmitry
08.10.2018
12:12:14
есть какая-то масса запросов

fedor
08.10.2018
12:12:17
они в общем есть здесь - соррян за ссылку в Вики - https://en.wikipedia.org/wiki/Anomaly_detection

Dmitry
08.10.2018
12:12:28
разбивать по запросам
смотреть по графикам нагрузки по времени - день/неделя и т д
ну и отклонения смотреть
количество отказов смотреть
ладно, пробуйте )
отпишете если что получится. интересно
вообще, я плотно защитой не занимаюсь. за всё время видел два случая атаки
первый - дятел досил с одного ipшника сайт

Google

Dmitry
08.10.2018
12:15:09
второй - попытка массовой регистрации фейковых юзеров
внезапные массовые запросы, я думаю, будет достаточно хорошей метрикой для начала
более тонкие вещи, конечно, нужно смотреть отдельно


sanders
08.10.2018
12:20:24
Предположим есть обученная на хороших данных сеть. Я создаю виртуальную машину (не одну) ставлю на нее sysmon. Работаю с ней в обычном режиме. Далее в какой-то момент я атакую ее.
В итоге я получу многомерный временной ряд, в котором я точно знаю, промежуток атаки.
Беру нейронную сеть и прогнозирую работу системы, и по логике в промежутке, где производилась атака, нейронная сеть должна как бы ошибиться, ведь она не может спрогнозировать аномальную работу системы.
Положим у нас есть такой ряд, который мы хотим проанализировать. Прогнозируем его в нейронной сетью и там где она сильно ошибалась скорое всего есть аномальная активность системы
Как вот это первое, что может прийти в голову при решении такой задачи. А я хотел узнать о возможно других подходах (запятые уже лень ставить...)))
Может кто знает ещё какие-либо чаты, форумы, где могут подсказать что-нибудь?


fedor
08.10.2018
12:27:31
я ничего не понял
я понял что есть обученная сеть откуда то
если есть - то уже задача решена
мне кажется ошибка в использовании слова сеть
если заменить ее на скрипт или программный модуль, то наверное будет понятнее чего вы хотите
аа, я понял, ок
в общем наверное я в дискуссию ничего нового уже не привнесу, но если вы "атакуете" значет у вас етсь понимание того что такое аномальное поведение
если у вас буду две кучки данных одна кучка с нормальным, другая кучка с аномальным поведением
то задачу детекции аномалиии вы решили на 97%

sanders
08.10.2018
12:36:44
Это я тоже понимаю, но данных с аномалиями добыть намного тяжелее, чем хороших