|
|
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
maytonВовсе не обязательно их размер должен быть гигантским. От юзкейса зависит. Это понятно. Я в том смысле что в беркли можно с гигантскими массивами работать не заморачиваясь на размер адресного пространства. В нашем случае размеры скромные. PS Зафиксировал запись в бинарник. Читается в 100 раз быстрее CSV Создать бинарник Код: sql 1. Грузится с него Код: sql 1. Структура описана в data_struct.txt ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 17:45 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Круть. Работает. Только странно как-то что одна утилита в себе воплощает 2 функционала. И поиск и конвертирование БД. Кроме того есть маленький баг. Несуществующий адрес в диапазонах тем не менее найден. Код: sql 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 19:05 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
maytonКроме того есть маленький баг. Несуществующий адрес в диапазонах тем не менее найден. Код: sql 1. Это не баг а фича :) специально добавил диапазон "0.0.0.0-0.0.0.0 Unknown" для случаев когда найти не удалось. Так всегда что-то возвращается. Иначе обработка усложняется, проверки лишние надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 19:19 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Я вот думаю.... как-бы ее к админским задачам прикрутить. Лог ДДоса видел? Вооот. Представь себе что сидит бедняга админ и мучается как ему нашу утилиту применить овер 9000 раз к 9000 записям в логе. И получить 9 тыщ сведений по географии. Разумеется ты свой API сделаешь. Разработчик ибо. А ему как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 20:20 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
ХЗ как. Предлагай варианты. Не админ, их практик не знаю. Самый тупой способ: давать на вход лог и выискивать в нем эвристикой IP. Эвристика не сложная три точки, а по краям и в середине цифры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 21:02 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Ну... можно как-то так. Админ берёт свой чортов лог. Сам фильтрует там ip через grep и правила выборки атаки. Далее очищенный список ip-шников идёт на stdin в нашу утилиту. А на выходе мы получаем опять-же в csv данные по гео-привязке. Ну как-то так: Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 22:50 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Зафиксировал парсер логов. Можешь потестить. Как запускать в readme.txt С форматами вывода пока не разбирался. Будут чуть позже и сsv и html. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 19:02 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Dima T, не надо html. Формат репорта уже неважен. Тот кто сильно хочет - возьмет Excel и сконвертит сам. Вот сортировочку по 1-му полю надо бы. Прогнал 1-й файл отсюдова 18132793 Код: sql 1. 2. 3. 4. 5. 6. 7. И сделать дефолное имя файла-базы. Чтоб на 1 параметр меньше было. А я тем временем впал в глубкий коматоз размышлизм по графической части. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 20:01 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Нашёл еще интересную инфу к размышлению http://habrahabr.ru/company/netangels/blog/149302/ +базёнка оттудова http://noc.masterhost.ru/allrunet/runet ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 20:25 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
maytonDima T, не надо html. Формат репорта уже неважен. Тот кто сильно хочет - возьмет Это просто. Я уже заточил код под форматы вывода. Мелочь осталась. maytonВот сортировочку по 1-му полю надо бы. А вот с этим гимор будет. Если глянешь geoip::print() то увидишь что там сначала строится мап по [ip_range_t*] затем выводятся значения. Надо его перестроить наоборот, т.е. мап[-значение] = ip_range_t*, затем выводить. Причем значения повторяются в отличии от уникального ip_range_t*. Вобщем нетривиально в итоге. Надо голову еще поломать как поправить. Подумаю. PS Просится тут sqlite. Добивал "oder by ... desc" и готово. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 20:27 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Про TARPIT интересно пишут. Это не просто защита. Это в некотором роде контратака. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 20:34 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Мда. БД наша дырявая... Не нашёлся перец. И ведь сервисы Vuze как-то определяют что страна - "RU". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.09.2015, 23:52 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Вот еще база Вроде обновляется и бесплатно качать не запрещают . Поизучаю вечером. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2015, 09:07 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
maytonDima T, не надо html. Формат репорта уже неважен. Тот кто сильно хочет - возьмет Excel и сконвертит сам. Вот сортировочку по 1-му полю надо бы. добавил вывод в csv (ключ -csv) html попозже сделаю, со ссылками на гуглокарту. maytonИ сделать дефолное имя файла-базы. Чтоб на 1 параметр меньше было. Сделаю поиск базы по имени geoip.dat - если нет - ошибка. А загрузку ключиком -import. Заодно попробую импорт этой сделать 18212806 По другим параметрам тоже мысли есть как переделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2015, 15:01 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Начал дизассебмлировать Vuze-вский плагин геолокации. Сюрприз №1. Сорцы в нём. Хехе. Сюрприз №2. Он использует БД maxmind и судя по всему укомплектован генератором бинарей. Хехе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2015, 15:17 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
У них есть свежая бесплатная в csv http://dev.maxmind.com/geoip/geoip2/geolite2/ в платной какая-то доп.инфа, типа провайдеров и т.п. формат немного сменили, названия городов вынесли в отдельную таблицу. Думаю оттуда надо брать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2015, 16:32 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Lite - это облегченный вариант. Что там чистили - ХЗ. Но сведений явно меньше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2015, 16:45 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
maytonLite - это облегченный вариант. Что там чистили - ХЗ. Но сведений явно меньше. Строк меньше. 5,7 млн. в твоем файле, 2,5 млн. в этом. Подсунул GeoLite2-City-Blocks-IPv4.csv как лог своей проге: Код: sql 1. 2. 3. Какая-то лажа. Надо считалку перепроверять, похоже при группировке какой-то косяк. Добавил вывод в лог отсутствующие - получилось 306 тыс. диапазонов неизвестных. И еще куда-то 7 IP проимелось, их там 2498740. Разбираюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2015, 18:03 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Dima T, ты разбирался с SqlLite? Это хорошо. Там можно за 10 минут скриптик набросать для загрузки в БД. После этого БД можно использовать для тестов. Чтобы сверять цифры с данными твоего приложения. Количество адресов. Диапазонов. e.t.c. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2015, 18:53 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
maytonDima T, ты разбирался с SqlLite? Не разбирался. Ни разу не пользовался. Планировал сделать версию 2.0 с ним. Затестить потери я могу другими способами. Тут дело не в этом. Там какая-то непонятная хрень происходит, при группировке пропадают IP из неизвестных диапазонов. Причем глючит только если подсунуть именно этот файл. Разбираюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.09.2015, 19:10 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Поправил косяк в отчете. Надо же было додуматься хранить указатели на элементы вектора, который увеличивается :) Странно что не вылетало. Вот результат прогона GeoLite2-City-Blocks-IPv4.csv как лога IP countPersentPlaceRange fromRange to30634712.3%Unknown0.0.0.00.0.0.063000.3%US.NJ.Mount Laurel73.0.0.073.60.2.25559420.2%US.NJ.Mount Laurel73.139.18.073.194.177.25551640.2%US50.32.0.050.63.255.25547700.2%US108.36.64.0108.55.255.25545720.2%FR109.8.32.0109.31.255.25542820.2%FR78.193.0.078.222.255.25535550.1%IN.07.New Delhi117.211.84.0117.240.31.25533160.1%IN182.73.0.0182.79.255.25532970.1%US108.71.68.0108.95.255.25529780.1%FR2.0.0.02.15.255.25526430.1%US107.0.0.0107.15.255.25525560.1%GB2.24.0.02.31.255.25524140.1%MX187.200.0.0187.255.255.25519960.1%FR109.214.0.0109.223.255.25519570.1%GB109.145.0.0109.151.255.25517230.1%US.FL.Lake Mary32.180.0.032.223.255.25516960.1%US.CA.San Francisco45.4.219.045.255.255.25516420.1%US.WA.Kirkland50.11.128.050.13.255.25514710.1%AU101.96.0.0101.128.0.25514440.1%BR186.225.73.0187.0.31.25513990.1%JP180.25.192.0180.63.255.25513260.1%IN14.139.0.014.143.255.25512610.1%DE178.7.16.0178.15.255.25512440.0%CA.QC.Montreal184.160.16.0184.163.191.25512400.0%CA.ON.Ottawa47.17.176.047.46.31.25511970.0%GB2.123.192.02.127.251.25511700.0%US.DC.Washington38.0.0.038.96.7.25511060.0%US184.176.0.0184.189.191.25511050.0%US108.28.136.0108.32.128.25510130.0%CA184.64.0.0184.71.31.25510060.0%AU1.178.0.01.179.255.25510050.0%CH.01.Full178.192.0.0178.197.255.255... 306347 новых диапазонов. Думаю надо делать загрузку этого файла как основу и через него прогнать твой. Т.е. наоборот, посмотреть что есть у тебя и нет у них. А дальше будет видно: или как-то сливать в один или этим пользоваться. Остался еще вопрос с потерянными 7 IP при разборе GeoLite2-City-Blocks-IPv4.csv, с этим позже поразбираюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2015, 08:06 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
300 тысяч неизвестных? Это херово... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2015, 15:44 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
mayton300 тысяч неизвестных? Это херово... Точно 306348 Поправил свой искатель IP в логах. Некоторые криво разбирались из-за того что на стыке буферов чтения оказывались. Надо грузить эту таблицу как основу и прогонять через нее твою таблицу как лог. По результату будет видно куда дальше двигаться. Делаю загрузчик. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2015, 18:02 |
|
||
|
Тяпничный анализатор ботнетов
|
|||
|---|---|---|---|
|
#18+
Понимаю что ты - фанат кодить на сях но в данном исследовании совершенно необязательно себя ограничивать. Возможно имеет смысл откатать модель и тесты на Excel, SQLite, скриптики на Питоне. А когда всё взлетит - портировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.10.2015, 19:22 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=39063529&tid=1340915]: |
0ms |
get settings: |
4ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
139ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 430ms |

| 0 / 0 |
