№1. Ethical Hacking Labs. Відбиток і розвідка

11 квітня 2023 3 хвилин Автор: Endpool

Збір кіберрозвідки

Збір кіберрозвідки – це процес збору та аналізу інформації про цільову організацію або індивіда, що відбувається в онлайн середовищі. Цей процес може включати збір відкритої інформації, такої як дані з веб-сайтів, соціальних мереж та інших відкритих джерел, а також збір закритої інформації, яка може бути знайдена за допомогою хакерських технік, таких як фішинг, атака на вразливості, перехоплення трафіку та інші. Збір кіберрозвідки є важливою частиною кібербезпеки, оскільки дозволяє виявити потенційні загрози та слабкі місця в інфраструктурі організації. Цей процес також допомагає побудувати повну картину стосовно цільової організації, що може допомогти при прийнятті рішень з питань безпеки та стратегії. Інструменти для збору кіберрозвідки можуть включати спеціальні програми, які автоматично сканують веб-сайти та виявляють вразливості, соціальний інженеринг, аналіз логів серверів та інші методи. Використання таких інструментів може допомогти збільшити ефективність та точність збору кіберрозвідки.

Збір кіберрозвідки є важливим етапом в роботі з кібербезпекою та може допомогти виявити потенційні загрози та підвищити рівень безпеки організації. Один з найпоширеніших методів збору кіберрозвідки – це використання автоматизованих сканерів веб-сайтів для знаходження вразливостей. Інші методи включають моніторинг соціальних мереж, форумів та чатів з метою збору інформації про цільову групу, її звички та інші дані, які можуть бути використані для атак. Процес збору кіберрозвідки є важливим етапом в забезпеченні кібербезпеки та може допомогти уникнути потенційних кібератак. Для здійснення збору кіберрозвідки існують спеціалізовані інструменти та програми, такі як Maltego, Shodan, Nmap та інші. Узагальнюючи, збір кіберрозвідки є важливим етапом у забезпеченні безпеки в Інтернеті та допомагає зменшити ризик кібератак та зберегти конфіденційність та безпеку інформації.

Основи Footprinting за допомогою командного рядка Windows

Мета цього підручника — навчити основам методології Footprinting, яка використовується для етичних хакерів і пентестерів.

Вимоги:

  • Windows 8.1/10.

  • Основи нетворкінгу.

  • Віртуальне середовище.

  • Windows Server 2012 або 2016.

Цілі:

  • Тип ICMP і код для пакетів ехо-запиту та ехо-відповіді.

  • Дізнайтеся про максимальний розмір кадру для мережі.

  • Використовуйте команду ping для емуляції traceroute (команда tracert).

  • Використовуйте команду ping, щоб знайти IP-адресу цільового домену.

Команди, які використовуються в цьому посібнику

ping

Ping — це утиліта для адміністрування комп’ютерної мережі, яка використовується для перевірки доступності хоста в мережі Інтернет-протоколу (IP) і для вимірювання часу проходження пакетів із вихідного хоста до кінцевого хоста й назад. Він працює, надсилаючи пакети ехо-запиту протоколу керуючих повідомлень Інтернету (ICMP) на цільовий хост і прослуховуючи ехо-відповідь ICMP. Час, необхідний пакетам для проходження від джерела до пункту призначення і назад, відомий як час ping.

nslookup

nslookup — це інструмент командного рядка, який використовується для запиту до системи доменних імен (DNS) для отримання інформації про відображення доменного імені або IP-адреси. Інструмент використовується для вирішення проблем із підключенням до мережі або для збору інформації про записи DNS домену. Використовуючи nslookup, ви можете вказати доменне ім’я або IP-адресу, і інструмент поверне інформацію про відповідний запис DNS, включаючи IP-адресу, пов’язану з доменним іменем, ім’я поштового сервера, пов’язаного з доменом, і ім’я офіційного DNS-сервера для домену.

tracert(Windows) або traceroute(Linux)

Діагностичний інструмент для відображення маршруту та вимірювання затримок передавання пакетів через мережу IP.

Знайти IP-адресу http://www.certifiedhacker.com

Відкрийте командний рядок або PowerShell у Windows і введіть:

Примітка: IP-адреса може відрізнятися у вашому середовищі.

Пошук максимального розміру кадру в мережі

Скористайтеся останньою командою та додайте -fparametr, щоб не фрагментувати пакет ping і -lвстановити розмір кадру в 1500 байтах.

Вихід:

Це повідомлення вище означає, що кадр завеликий, щоб бути в мережі, і його потрібно фрагментувати.Тут пропонується спробувати різні значення, доки не буде досягнуто максимального розміру кадру.

На завершення зауважте, що останні два 1473 байти відповідей і 1472 байти показують максимальний розмір кадру в мережі цієї машини.

Дослідіть TTL (Time to Live)

Кожен кадр у мережі має власний визначений TTL. Якщо TTL досягає 0, маршрутизатор відкидає пакет, щоб запобігти його втраті.

Параметр -i означає час очікування, тобто кількість секунд очікування між кожним пінгом (значення між 1-255). TTL закінчився означає, що маршрутизатор відкинув кадр, після чого TTL закінчився (досягнув 0).

Знайдіть шлях трасування від вашої машини до www.certifiedhacker.com

Ця команда трасує інформацію про конфігурацію мережі цільового домену. Відкрийте нове вікно підказки або PowerShell і введіть:

Система перетворює URL-адресу на свою IP-адресу та намагається відстежити шлях до місця призначення. Тут потрібно 19 стрибків, щоб пакет досягнув вказаного пункту призначення. Ви можете використовувати позначку довідки, щоб показати різні параметри для команд: tracert /?

Давайте перевіримо термін служби пакета.

Відкрийте нове вікно підказки або PowerShell і введіть: ping www.certifiedhacker.com -i 2 -n 1 Ми встановлюємо значення TTL, 2 намагаючись перевірити тривалість життя пакета та -кількість пакетів до 1

Перейти на відповідь з IP-адреси 162.241.216.11 без втрати пакетів. Дайте встановити значення TTL, щоб 3побачити, що станеться.

Зверніть увагу, що є інша IP-адреса, та сама, яку ми збираємо командою traceroute під час перших переходів. Повторіть це та збільшуйте значення TTL, доки не досягнете IP-адреси з (www.certifiedhacker.com) , яку ми відстежуємо, маршрутизовану раніше.

Готово! Ці результати означають, що коли ви встановлюєте TTL на 19 (у цьому випадку), відповідь надходить від хоста призначення (162.241.216.11). Майте на увазі, що вихідні дані будуть подібні до результатів трасування маршруту. Занотуйте всі IP-адреси, з яких ви отримуєте відповідь.

Використання nslookup команди

Використовується для запиту DNS, щоб отримати ім’я домену чи зіставлення IP-адреси та інший конкретний запис DNS. Введіть  PowerShell:

Примітка : Ця команда запускає інтерактивний режим, ви можете ввести, допомогти переглянути список доступних команд! Для запиту IP-адреси даного домену потрібно встановити тип для Азапису, а потім ввести цільовий домен:

Примітка: це середовище використовує DNS-сервер Google (8.8.8.8). Щоб налаштувати власний DNS-сервер, просто введіть сервер x.x.x.x. Перші дві рядки dns.google і 8.8.8.8 вказують на те, що результат був спрямований на цей сервер для визначення запитуваного домену. DNS-сервер Google не містить оригінальних файлів зони домену, тому є неавторитетним . Авторитетний — це ім’я сервера, що містить оригінальні вихідні файли доменної зони. Щоб отримати авторитетний ім’я сервера, встановіть тип для запису CNAME та запитайте ціль:

Пошук CNAMEвиконується на офіційному сервері імені домену. За допомогою імені авторитетного сервера ви можете змінити IP-адресу. Для запиту IP-адреси встановіть тип значення, а потім введіть ім’я основного сервера, яке відображатиметься у вашому лабораторному середовищі, у моєму випадку: ns1.bluehost.com.

Підсумовуючи, авторитетний сервер імен зберігає записи, пов’язані з відповідним доменом. Маючи авторитетний сервер імен (основний сервер імен) і пов’язану з ним IP-адресу, зловмисник може спробувати використати сервер, виконуючи такі атаки, як DDoS, перенаправлення URL-адрес тощо. Остаточний аналіз: Задокументуйте всі IP-адреси. IP-адреси запиту відповіді. Інформація про TTL. Імена DNS-серверів та інша інформація DNS.

Footprinting за допомогою Maltego

Maltego — це програмний інструмент, який використовується для розвідки та криміналістики з відкритим кодом. Це дозволяє користувачам збирати та візуалізувати дані з різних джерел, включаючи веб-сайти, соціальні медіа-платформи та загальнодоступні бази даних, щоб ідентифікувати відносини та зв’язки між об’єктами, такими як люди, організації та домени. Цей інструмент зазвичай використовується дослідниками безпеки, спецслужбами та правоохоронними органами для розслідувань, аналізу загроз і аналізу даних.

Вимоги:

Віртуальна машина Kali Linux

Цілі:

Визначте IP-адресу. Визначте домен і схему доменних імен. Визначте технологію на стороні сервера. Визначте інформацію про сервіс-орієнтовану архітектуру (SOA). Визначте сервер імен. Визначте Mail Exchanger. Визначте географічне положення. Знайдіть адреси електронної пошти.

Наразі існує три версії клієнта Maltego, а саме Maltego CE, Maltego Classic і Maltego XL. Цей підручник буде зосереджений на Maltego Community Edition (CE). Kali Linux поставляється з інстальованим Maltego. Запустіть Maltego з панелі програм. Якщо ви вперше використовуєте Maltego, просто виберіть версію Maltego CE (Free) і створіть безкоштовний обліковий запис на (https://www.paterva.com/community/community.php).

Основи Maltego

1. Натисніть значок (+), розташований у верхньому лівому куті GUI (на панелі інструментів), щоб створити нове вікно графіка (як чистий документ).

2. Перейдіть на ліву панель і розгорніть вузол «Інфраструктура» в розділі «Палітра сутностей».

3. Перетягніть об’єкт Website до розділу New Graph(1).

4. Перейменуйте доменне ім’я на (www.certifiedhacker.com)

Ідентифікація серверної технології

5. Клацніть об’єкт правою кнопкою миші, виберіть «Усі трансформації» та натисніть « До серверних технологій [BuiltWith]».

Ідентифікація домену

6. Створіть новий графік або видаліть/збережіть попередні результати.

7. Клацніть правою кнопкою миші сутність Domain і виберіть All Transforms -> To Domains [DNS] .

Це перетворення спробує перевірити схеми імен на домен і спробує визначити конкретну схему

Ідентифікація інформації SOA

8. Створіть новий графік або видаліть/збережіть попередні результати.

9. Клацніть правою кнопкою миші сутність домену та виберіть Усі перетворення -> До імені DNS – SOA (Початок повноважень) .

Ідентифікація Mail Exchanger

10. Створіть новий графік або видаліть/збережіть попередні результати.

11. Клацніть правою кнопкою миші сутність домену та виберіть Усі перетворення -> До імені DNS – MX (поштовий сервер) .

Ідентифікація сервера імен

12. Створіть новий графік або видаліть/збережіть попередні результати.

13. Клацніть правою кнопкою миші сутність домену та виберіть Усі перетворення -> До імені DNS – NS (сервер імен) .

Визначення IP-адреси, місцезнаходження та Whois

14. Клацніть об’єкт IP правою кнопкою миші та виберіть Усі трансформації -> До розташування [місто, країна] .

15. Клацніть правою кнопкою миші сутність веб-сайту та виберіть Усі перетворення -> До сутностей із whois [IBM Watson] .

Підручник з розвідки

Recon-ng – це розвідувальний фреймворк із відкритим вихідним кодом, який використовується у сфері комп’ютерної безпеки. Це модульна платформа, яку можна використовувати для збору інформації про цільову систему або мережу, включаючи IP-адреси, субдомени, відкриті порти та іншу інформацію, яку можна використовувати для тестування на проникнення або оцінки вразливості. Фреймворк дозволяє користувачам виконувати розвідувальні операції, визначаючи та запускаючи користувальницькі модулі, що робить його потужним інструментом для фахівців із безпеки та дослідників. Recon-ng має зовнішній вигляд і відчуття, подібні до Metasploit Framework, скорочуючи криву навчання для використання фреймворку.

Вимоги:

Віртуальна машина Kali Linux

Цілі:

Збір особистої інформації.Зберіть хости, пов’язані з доменом.Як виконати реконструкцію мережі.Створіть звіт із зібраною інформацією.

Перші кроки

Відкрийте термінал і введіть recon-ng. Введіть help, щоб переглянути всі команди, які дозволяють додавати/видаляти записи до БД, робити запити тощо.

 Під час першого завантаження recon-ng зверніть увагу на повідомлення нижче. Виконайте з порожнього фреймворка (без попередньо встановлених модулів).

Створіть нову робочу область: workspaces create CEH Додайте  домен, щоб виконати реконструкцію мережі: db insert domains, certifiedhacker.com.

Використання модулів з Recon-ng Marketplace

Recon-ng працює з незалежними модулями, взаємодією з базою даних, вбудованими функціями зручності, інтерактивною довідкою та завершенням команд. Recon-ng забезпечує потужне середовище, у якому можна швидко й ретельно проводити веб-розвідку з відкритим кодом. Для додавання нових модулів ви будете використовувати Marketplace.

Щоб переглянути весь тип репо на ринку: пошук по торговій площі Робота з модулями та робочими областями дуже проста, як  показано нижче:

Використання hackertarget для пошуку субдоменів

Ви можете знайти інші модулі для збору деяких субдоменів, ми будемо використовувати hackertarget у цьому підручнику. Давайте встановимо і завантажимо його: marketplace install hackertarget модулі завантажують hackertarget. Введіть інформацію, щоб переглянути ДЖЕРЕЛО, наразі встановлене для замовчування, як показано нижче: інформація.

Тепер встановіть  SOURCE  на: набір параметрів  SOURCE  certifiedhacker.com. Ви можете одну вхідну команду, щоб побачити ціле:

Запустіть модуль: run Примітка. Якщо ваша відповідь працює належним чином, але заплутана купою запитів і значень, просто введіть, show hostsщоб заповнити кращий результат. show hosts (ця команда покаже чистий підсумок виявлених ресурсів).

Перебір імен хостів

Ви можете використовувати інші модулі, щоб отримати більше хостів, наприклад brute_hosts . Вийдіть із поточного модуля: back. 

Ввівши текст, який info ви бачите в цьому конкретному модулі, ви можете створити власний список слів для імен хостів. Я рекомендую використовувати стандартний, який є досить хорошим.

Запустіть модуль: run

Створіть звіт

Тепер, коли ви зібрали кілька хостів, ви підготуєте звіт із усією інформацією. Встановіть модуль звітності , щоб звітувати у форматі html.

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

Завантажте модуль:

Щоб налаштувати звітну інформацію, введіть, infoщоб побачити значення.

Сформований звіт зберігається на робочому столі. У цьому звіті небагато, але коли ви запускаєте кілька модулів і додаєте геолокаційні звіти, вони можуть стати дуже складними. Recon-ng чудово відстежує все.

Використання Recon-ng для збору інформації про персонал (частина 2)

Цілі: Отримати контакти персоналу, що працює в організації. Знайдіть наявність профілів користувачів на різних веб-сайтах. Важлива примітка. Для використання модулів розташування та кнопкової кнопки , згаданих у цьому підручнику, потрібен дійсний ключ API , і вони мають деякі наслідки GDPR щодо збору даних. Деякі вимагають платити гроші, про що буде сказано нижче. Я пропоную під час роботи зберегти всі ключі API у файлі, щоб потім використовувати їх. Налаштувати ключ API для вашого recon-ng дуже просто, просто дотримуйтесь документу нижче та керуйте своїми ключами в Recon-ng за допомогою команди: (https://github.com/Raikia/Recon-NG-API-Key-Creation/blob/master/README-v4.8.3.md)

Збір особистої інформації

Збір особистої інформації передбачає виявлення контактних даних, таких як електронна пошта, адреса тощо, на веб-сайті цільової організації. Recon-ng містить різні модулі для перегляду та пошуку контактної інформації про певну компанію. Деякі модулі Recon-ng для виявлення особистої інформації: recon/domain-contacts. recon/компанії-контакти. recon/domain-contacts/namechk.

Налаштуйте Recon-ng

Завантажте Kali Linux і відкрийте термінал. Введіть recon-ng, щоб запустити програму. Додайте нову робочу область під назвою recon: workspaces create recon

Зберіть контакти, пов’язані з доменом

Встановіть домен і виконайте на ньому відбиток, щоб отримати контакт, доступний у домені. Модуль, вибраний для виконання цієї техніки, використовує ARIN Whois RWS для збору даних POC із запитів whois для даного домену. Встановити та завантажити модуль:

Результат поверне контакти, пов’язані з доменами.

Наявність профілю

Модуль recon/profiles-profiles/namechk перевіряє існування імені користувача вказаного контакту, але, на жаль, namechk стягує плату за використання свого API. Ми можемо шукати наявність профілів користувачів на різних веб-сайтах за допомогою recon/profiles-profiles/profiler .

Модуль recon/profiles-profiles/profiler шукає це ім’я користувача та повертає URL-адресу профілю на різних веб-сайтах (знайдено з відп. іменем користувача).

Збір інформації з відкритим кодом за допомогою OSRFramework

OSRFramework — це набір бібліотек для виконання завдань Open Source Intelligence. Вони містять посилання на купу різних програм, пов’язаних із перевіркою імен користувачів, пошуком DNS, дослідженням витоків інформації, глибоким веб-пошуком, вилученням регулярних виразів та багатьма іншими.

Вимоги:

Віртуальна машина Kali Linux.

Цілі:

Продемонструйте, як ідентифікувати імена користувачів цілі на різних платформах соціальних мереж.

Використання usufy.py

Використання searchfy.py

Він витягне всі відомості про користувачів, які підписані на надані  сторінки соціальних мереж.

Підкоманди CLI OSRFramework:

Збір інформації за допомогою Metasploit

Metasploit Framework – це платформа з відкритим вихідним кодом для розробки, тестування та виконання експлойтів для виявлення вразливостей системи безпеки. Це комплексний набір інструментів для тестування на проникнення та оцінки вразливості, що дозволяє дослідникам безпеки та етичним хакерам симулювати атаки в реальному світі та оцінювати стан безпеки цільової системи. Фреймворк містить велику базу даних експлойтів, корисних навантажень і допоміжних модулів, а також зручний інтерфейс сценаріїв для налаштування та автоматизації тестів. Metasploit Framework широко використовується в індустрії інформаційної безпеки та вважається стандартним інструментом для проведення оцінок безпеки.

Вимоги:

Віртуальна машина Kali Linux.

Цілі:

Отримайте точну інформацію про мережу. Як визначити вразливості та розкриття інформації.

Налаштування Metasploit


Знайдіть живих господарів

Треба завантажити пару віртуальних машин у вашій лабораторії. У моєму випадку я вистрілив: Ubuntu Metasploitable. Windows 7 SP1. Windows Server 2012 R2.

Пошук відкритих портів і служб

Пошук модулів portscan : search portscan

Виберіть сканер/portscan/syn : use scanner/portscan/syn Тепер нам потрібно побачити параметри модуля: show options

Установіть RHOSTS ціль і THREADS до 100, set RHOSTS 10.0.2.23,set THREADS 100. Введіть run, щоб запустити модуль.

Цей модуль перерахує всі відкриті служби TCP за допомогою необробленого сканування SYN. Наступне сканування, давайте дізнаємося версію SMB.
Завантажте модуль scanner/smb/smb_version :

Збір інформації за допомогою Harvester

TheHarvester – це інструмент, який використовується для збору розвідувальної інформації з відкритих джерел (OSINT) про ціль, включаючи адреси електронної пошти, субдомени та IP-адреси. TheHarvester може збирати інформацію з різних джерел, таких як пошукові системи, бази даних Whois і різні веб-сайти. Інформація, зібрана TheHarvester, може використовуватися для розвідки та збору інформації в рамках процесу тестування на проникнення або етичного хакерства.

Вимоги:

Віртуальна машина Kali Linux.

Цілі:

Витягніть електронну пошту, імена субдоменів, віртуальні хости (…) із веб-сайтів. Продемонструйте, як визначити вразливі місця та розкриття інформації в пошукових системах за допомогою Harvester.

Запустіть Harvester проти цілі

У help команді ви можете побачити значення цих параметрів, наприклад -dо значає домен і -l обмеження кількості результатів пошуку, а також -b є пошуковою системою/джерелом. theHarvester може повертати забагато інформації для перегляду,  ви можете записати вихідні дані у файл HTML:

Файл буде експортовано у вашу домашню папку в Kali Machine. Примітка. Якщо у вас виникли проблеми з експортом файлу HTML, майте на увазі, що збирається величезна кількість інформації, ви можете зменшити кількість пошукових систем/джерел замість того, щоб використовувати їх усі одночасно.

Інші інструменти для Recon

Sublist3r – це інструмент Python, призначений для перерахування субдоменів веб-сайтів за допомогою OSINT. (https://github.com/aboul3la/Sublist3r)

Увійдіть у свою машину Kali та відкрийте термінал Введіть цю команду, щоб оновити поточні пакети Kali та встановити sublist3r:

Web Data Extractor

Web Data Extractor – це інструмент, який використовується для веб-скопіювання та вилучення даних із веб-сайтів. Це дозволяє користувачеві отримувати такі дані, як електронні листи, номери телефонів, адреси та іншу інформацію з веб-сайтів, і зберігає дані в структурованому форматі, наприклад CSV або Excel. Інструмент може бути корисним для створення потенційних клієнтів, дослідження ринку та інших цілей, коли потрібно зібрати та проаналізувати дані з веб-сайтів.

Натиснути тут

HTTrack

HTTrack – це безкоштовний копіювальний пристрій для веб-сайтів із відкритим вихідним кодом або офлайн-браузер, який дозволяє користувачам завантажувати веб-сайт з Інтернету на своє локальне сховище. Це дозволяє користувачам зберігати весь вміст веб-сайту, включаючи сторінки HTML, зображення та інші файли, для перегляду в автономному режимі. HTTrack в основному використовується для архівування веб-сайтів, резервного копіювання даних і перегляду в автономному режимі, але його також можна використовувати для збору інформації про веб-сайти та сервери з метою безпеки.

Натиснути тут

Tracing Emails

Tracing Emails – це процес відстеження походження або джерела електронного листа, як правило, з метою визначення особи чи місцезнаходження відправника. Це можна зробити за допомогою різних методів, таких як аналіз заголовків електронної пошти, пошук шаблонів в IP-адресах або використання інструментів відстеження електронної пошти. Відстеження електронних листів часто використовується для таких цілей, як перевірка автентичності електронних листів, розслідування випадків кіберзлочинності або просто визначення місцезнаходження старого друга чи партнера. Важливо зазначити, що відстеження електронних листів може викликати занепокоєння щодо конфіденційності, і це слід робити лише з належним дозволом і відповідно до відповідних законів і правил.

Натиснути тут

Розширене трасування мережевого маршруту за допомогою Path Analyzer Pro

Path Analyzer Pro – це програмне забезпечення для аналізу та моніторингу мережі. Він забезпечує глибоке уявлення про продуктивність мережі та допомагає виявити та вирішити проблеми з мережею. Його можна використовувати для аналізу мережевого трафіку, вимірювання продуктивності мережі, виявлення вузьких місць у мережі, моніторингу доступності мережі та виявлення загроз безпеці. Завдяки графічному представленню топології мережі він дозволяє користувачам легко переглядати та розуміти потік даних і визначати проблемні області в мережі.

Натиснути тут

Автоматизоване зняття відбитків пальців за допомогою FOCA

FOCA– (Відбитки пальців організацій із зібраними архівами) – це інструмент, який використовується для аналізу метаданих і збору інформації в домені цільової організації. Це допомагає збирати інформацію з загальнодоступних джерел, таких як веб-сайти, пошукові системи та метадані документів, щоб створити повний профіль цільової організації. FOCA використовується для розвідки під час тестування на проникнення, а також для оцінки інформаційної безпеки. Інформацію, зібрану за допомогою FOCA, можна використовувати для виявлення потенційних вразливостей, розуміння мережі та систем цільової організації та підтримки подальших атак

Натиснути тут

Інші статті по темі
Реверс інжиніринг та скриптиСервіси
Читати далі
№5. Ethical Hacking Labs. Сніфінг
Sniffing - це техніка захоплення та аналізу мережевого трафіку з метою отримання конфіденційної інформації або моніторингу мережі для усунення несправностей. Це може бути використано як для законних, так і зловмисних цілей, тому важливо забезпечити належні заходи безпеки мережі.
277
Знайшли помилку?
Якщо ви знайшли помилку, зробіть скріншот і надішліть його боту.