Detecting Phishing
Last updated
Last updated
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Щоб виявити спробу фішингу, важливо зрозуміти техніки фішингу, які використовуються сьогодні. На батьківській сторінці цього посту ви можете знайти цю інформацію, тому якщо ви не знаєте, які техніки використовуються сьогодні, я рекомендую вам перейти на батьківську сторінку та прочитати принаймні цей розділ.
Цей пост базується на ідеї, що зловмисники намагатимуться якимось чином імітувати або використовувати доменне ім'я жертви. Якщо ваш домен називається example.com
, а вас фішать, використовуючи зовсім інше доменне ім'я, наприклад youwonthelottery.com
, ці техніки не виявлять це.
Досить легко виявити ті спроби фішингу, які використовують схоже доменне ім'я в електронному листі. Досить згенерувати список найбільш ймовірних імен фішингу, які може використовувати зловмисник, і перевірити, чи вони зареєстровані, або просто перевірити, чи є якийсь IP, що його використовує.
Для цього ви можете використовувати будь-який з наступних інструментів. Зверніть увагу, що ці інструменти також автоматично виконують DNS-запити, щоб перевірити, чи має домен будь-який призначений йому IP:
Ви можете знайти коротке пояснення цієї техніки на батьківській сторінці. Або прочитайте оригінальне дослідження в 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":
Однак ви можете зробити "те ж саме", використовуючи безкоштовний веб-сайт 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)