Detecting Phishing

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримка HackTricks

Вступ

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

Цей пост базується на ідеї, що зловмисники намагатимуться якимось чином імітувати або використовувати доменне ім'я жертви. Якщо ваш домен називається example.com, а вас фішать, використовуючи зовсім інше доменне ім'я, наприклад youwonthelottery.com, ці техніки не виявлять це.

Варіації доменних імен

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

Знаходження підозрілих доменів

Для цього ви можете використовувати будь-який з наступних інструментів. Зверніть увагу, що ці інструменти також автоматично виконують DNS-запити, щоб перевірити, чи має домен будь-який призначений йому IP:

Bitflipping

Ви можете знайти коротке пояснення цієї техніки на батьківській сторінці. Або прочитайте оригінальне дослідження в https://www.bleepingcomputer.com/news/security/hijacking-traffic-to-microsoft-s-windowscom-with-bitflipping/

Наприклад, зміна 1 біта в домені microsoft.com може перетворити його на windnws.com. Зловмисники можуть зареєструвати якомога більше доменів з битфліпом, пов'язаних з жертвою, щоб перенаправити легітимних користувачів на свою інфраструктуру.

Всі можливі доменні імена з битфліпом також повинні бути під наглядом.

Основні перевірки

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

Розширені перевірки

Якщо ви хочете зробити ще один крок вперед, я б рекомендував вам моніторити ці підозрілі домени та час від часу шукати нові (кожен день? Це займає лише кілька секунд/хвилин). Ви також повинні перевірити відкриті порти пов'язаних IP та шукати екземпляри gophish або подібних інструментів (так, зловмисники також роблять помилки) і моніторити веб-сторінки HTTP та HTTPS підозрілих доменів і піддоменів, щоб дізнатися, чи скопіювали вони якусь форму входу з веб-сторінок жертви. Щоб автоматизувати це, я б рекомендував мати список форм входу доменів жертви, обробляти підозрілі веб-сторінки та порівнювати кожну знайдену форму входу в підозрілих доменах з кожною формою входу домену жертви, використовуючи щось на кшталт ssdeep. Якщо ви виявили форми входу підозрілих доменів, ви можете спробувати надіслати сміттєві облікові дані та перевірити, чи перенаправляє вас на домен жертви.

Доменні імена з використанням ключових слів

Батьківська сторінка також згадує техніку варіації доменних імен, яка полягає в тому, щоб помістити доменне ім'я жертви всередину більшого домену (наприклад, paypal-financial.com для paypal.com).

Прозорість сертифікатів

Неможливо застосувати попередній підхід "Brute-Force", але насправді можливо виявити такі спроби фішингу також завдяки прозорості сертифікатів. Кожного разу, коли сертифікат видається ЦС, деталі стають публічними. Це означає, що, читаючи прозорість сертифікатів або навіть моніторячи її, можливо знайти домени, які використовують ключове слово в своєму імені. Наприклад, якщо зловмисник генерує сертифікат для https://paypal-financial.com, переглядаючи сертифікат, можна знайти ключове слово "paypal" і дізнатися, що використовується підозрілий електронний лист.

Пост https://0xpatrik.com/phishing-domains/ пропонує використовувати Censys для пошуку сертифікатів, що стосуються конкретного ключового слова, і фільтрувати за датою (тільки "нові" сертифікати) та за видавцем ЦС "Let's Encrypt":

https://0xpatrik.com/content/images/2018/07/cert_listing.png

Однак ви можете зробити "те ж саме", використовуючи безкоштовний веб-сайт crt.sh. Ви можете шукати за ключовим словом та фільтрувати результати за датою та ЦС, якщо бажаєте.

Використовуючи цю останню опцію, ви навіть можете використовувати поле Matching Identities, щоб перевірити, чи збігається якась особа з реального домену з будь-яким з підозрілих доменів (зверніть увагу, що підозрілий домен може бути хибнопозитивним).

Ще одна альтернатива - це фантастичний проект під назвою CertStream. CertStream надає потік нових сертифікатів у реальному часі, який ви можете використовувати для виявлення вказаних ключових слів у (майже) реальному часі. Насправді існує проект під назвою phishing_catcher, який робить саме це.

Нові домени

Остання альтернатива - зібрати список новостворених доменів для деяких TLD (Whoxy надає таку послугу) та перевірити ключові слова в цих доменах. Однак довгі домени зазвичай використовують один або кілька піддоменів, тому ключове слово не з'явиться всередині FLD, і ви не зможете знайти фішинговий піддомен.

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримка HackTricks

Last updated