Google Dorking або використовуємо Гугл на максимум
Google Dorking або використовуємо Гугл на максимум
За
habr.com
brcf-ua.blogspot.com
21 хв
Google Dorks або Google Hacking - техніка, яка використовується ЗМІ, слідчими органами, інженерами з безпеки і будь-якими користувачами для створення запитів в різних пошукових системах для виявлення прихованої інформації та вразливості, які можна виявити на загальнодоступних серверах. Це метод, в якому звичайні запити на пошук веб-сайтів використовуються повною мірою для визначення інформації, прихованої на поверхні.
Як працює Google Dorking?
Даний приклад збору і аналізу інформації, який виступає як інструмент OSINT, є не вразливістю Google і не пристроєм для злому хостингу сайтів. Навпаки, він виступає в ролі звичайного пошукового процесу даних з розширеними можливостями. І це не в новинку, так як існує величезна кількість веб-сайтів, яким вже більше десятка років і вони служать як сховища для вивчення і використання Google Hacking.
У той час як пошукові системи індексують, зберігають хедери і вміст сторінок, і пов'язують їх між собою для оптимальних пошукових запитів. Але на жаль, мережеві павуки будь-яких пошукових систем налаштовані індексувати абсолютно всю знайдену інформацію. Навіть незважаючи на те, що у адміністраторів веб ресурсів не було ніяких намірів публікувати цей матеріал.
Однак найцікавіше в Google Dorking, так це величезний обсяг інформації, який може допомогти кожному в процесі вивчення пошукового процесу Google. Може допомогти новачкам в пошуку зниклих родичів, а може навчити яким чином можна отримати інформацію для власної вигоди. Загалом, кожен ресурс цікавий і дивний за своїм і може допомогти кожному в тому, що саме він шукає.
Яку інформацію можна знайти через Dorks?
Починаючи, від контролерів віддаленого доступу різних заводських механізмів до конфігураційних інтерфейсів важливих систем. Є припущення про те, що величезна кількість інформації, викладена в мережі, ніхто і ніколи не знайде.
Однак, давайте розберемося по порядку. Уявіть собі нову камеру відеоспостереження, яка дає змогу відтворювати її трансляцію на телефоні в будь-який час. Ви налаштовуєте і підключаєтеся до неї через Wi-Fi, і завантажуєте додаток, для аутентифікації входу в систему камери спостереження. Після цього можна отримати доступ до цієї ж камері з будь-якої точки світу.
На задньому плані не все виглядає таким простим. Камера надсилає запит на китайський сервер і відтворює відео в режимі реального часу, дозволяючи увійти в систему і відкрити відеотрансляцію, розміщену на сервері в Китаї, з вашого телефону. Цей сервер може не вимагати пароля для доступу до каналу з вашої веб-камери, що робить її загальнодоступною для всіх, хто шукає текст, що міститься на сторінці перегляду камери.
І на жаль, Google безжально ефективний в пошуку будь-яких пристроїв в Інтернеті, які працюють на серверах HTTP і HTTPS. І оскільки більшість цих пристроїв містять певну веб платформу для їх налаштування, це означає, що багато речей, які не призначені бути в Google, в кінцевому підсумку виявляються там.
Безумовно, найсерйозніший тип файлів, це той, який несе в собі облікові дані користувачів або ж всієї компанії. Зазвичай це відбувається двома способами. У першому, сервер налаштований неправильно і виставляє свої адміністративні логи або журнали у відкритому доступі в Інтернеті. Коли паролі змінюються або користувач не може увійти в систему, ці архіви можуть витекти разом з обліковими даними.
Другий варіант відбувається тоді, коли конфігураційні файли, що містять ту ж інформацію (логіни, паролі, найменування баз даних і т.д.), стають загальнодоступними. Це файли повинні бути обов'язково приховані від будь-якого публічного доступу, так як в них часто залишають важливу інформацію. Будь-яка з цих помилок може призвести до того, що зловмисник знайде дані лазівки і отримати всю потрібну інформацію.
Дана стаття ілюструє використання Google Dorks, для того щоб показати не тільки як знаходити всі ці файли, але і наскільки бувають уразливі платформи, що містять інформацію у вигляді списку адрес, електронної пошти, картинок і навіть переліку веб-камер у відкритому доступі.
Розбір операторів пошуку
Dorking можна використовувати в різних пошукових системах, не тільки в Google. У повсякденному використанні пошукові системи, такі як Google, Bing, Yahoo і DuckDuckGo, приймають пошуковий запит або рядок пошукових запитів і повертають відповідні результати. Також ці ж системи запрограмовані приймати більш просунуті і складні оператори, які значно звужують ці умови пошуку. Оператор - це ключове слово або фраза, що несе особливе значення для пошукової системи. Ось приклади часто використовуваних операторів: «inurl», «intext», «site», «feed», «language». За кожним оператором слідує двокрапка, за яким слід відповідний ключова фраза або фрази.
Ці оператори дозволяють виконувати пошук більш конкретної інформації, наприклад: певні рядки тексту всередині сторінок веб-сайту або файли, розміщені по конкретному URL-адресою. Крім іншого, Google Dorking може також знаходити приховані сторінки для входу в систему, повідомлення про помилки, що видають інформації про доступні вразливості і файли загального доступу. В основному причина полягає в тому, що адміністратор веб-сайту міг просто забути виключити з відкритого доступу.
Найбільш практичним і в той же час цікавим сервісом Google, є можливість пошуку віддалених або архівних сторінок. Це можна зробити за допомогою оператора «cache:". Оператор працює таким чином, що показує збережену (віддалену) версію веб-сторінки, що зберігається в кеші Google. Синтаксис цього оператора показаний тут:
кеш: www.youtube.com
Після здійснення вищевказаного запиту в Google, надається доступ до попередньої або застарілої версії веб-сторінки Youtube. Команда дозволяє викликати повну версію сторінки, текстову версію або сам джерело сторінки (цілісний код). Також вказується точний час (дата, година, хвилина, секунда) індексації, зробленої павуком Google. Сторінка відображається у вигляді графічного файлу, хоч і пошук по самій сторінці здійснюється точно так само як у звичайній сторінці HTML (поєднання клавіш CTRL + F). Результати виконання команди «cache:" залежать від того, як часто веб-сторінка індексувалася роботом Google. Якщо розробник сам встановлює індикатор з певною частотою відвідувань в заголовку HTML-документа, то Google розпізнає сторінку як другорядну і зазвичай ігнорує її на користь коефіцієнта PageRank, що є основним фактором частоти індексації сторінки. Тому, якщо конкретна веб-сторінка була змінена, між відвідинами робота Google, вона не буде проіндексована і не буде прочитана за допомогою команди «cache:". Приклади, які особливо добре працюють при тестуванні даної функції, є часто оновлювані блоги, облікові записи соціальних мереж та інтернет-портали.
Вилучену інформацію або дані, які були розміщені помилково або вимагають видалення в певний момент, можна дуже легко відновити. Недбалість адміністратора веб - платформ може поставити його під загрозу поширення небажаної інформації.
Інформація про користувачів
Пошук інформації про користувачів використовується за допомогою розширених операторів, які роблять результати пошуку точними і детальними. Оператор «@» використовується для пошуку індексації користувачів в соціальних мережах: Twitter, Facebook, Instagram. На прикладі того ж самого польського вузу, можна знайти його офіційного представника, на одній із соціальних платформ, за допомогою цього оператора в такий спосіб:
inurl: twitter @minregion_ua
Даний запит в Twitter знаходить користувача «minregion_ua». Припускаючи, що місце або найменування роботи користувача, якого шукаємо (Міністерство з розвитку громад і територій України) і його ім'я відомі, можна задати більш конкретний запит. І замість стомлюючого пошуку по всій веб-сторінці установи, можна задати правильний запит на основі адреси електронної пошти і припустити, що в назві адреси повинно бути вказано хоча б ім'я запитуваної користувача або установи. наприклад:
сайт: www.minregion.gov.ua «*mider@minregion.ua»
Можна також використовувати менш складний метод і відправити запит тільки за адресами електронної пошти, як показано нижче, в надії на удачу і брак професіоналізму адміністратора веб ресурсу.
email.xlsx
тип файлу: xls + електронна пошта
До того ж можна спробувати отримати адреси електронних пошт з веб-сторінки за наступним запитом:
site: www.minregion.gov.ua intext: e-mail
Показаний вище запит, буде проводити пошук за ключовим словом «email» на веб-сторінці Міністерства з розвитку громад і територій України. Пошук адрес електронної пошти має обмежене використання і в основному вимагає невеликої підготовки та зборі інформації про користувачів заздалегідь.
На жаль, пошук індексованих телефонних номерів через «phonebook» Google обмежений тільки на території США. наприклад:
телефонна книга: Arthur Mobile AL
Пошук інформації про користувачів також можливий через Google «image search» або зворотного пошуку зображень. Це дозволяє знаходити ідентичні або схожі фотографії на сайтах, проіндексованими Google.
Інформація веб-ресурсів
Google має кілька корисних операторів, зокрема «related:", який відображає список «схожих» веб-сайтів на потрібний. Подібність засноване на функціональних посиланнях, а не на логічних або змістовних зв'язках.
пов'язані: minregion.gov.ua
У цьому прикладі відображаються сторінки інших Міністерств України. Цей оператор працює як кнопка "Схожі сторінки" в розширеному пошуку Google. Точно таким же чином працює запит "info:", який відображає інформацію на певній веб-сторінці. Це конкретна інформація веб-сторінки, представлена в заголовку веб-сайту (), а саме в мета-тегах опису (<meta name = "Description"). приклад:
info: minregion.gov.ua
Інший запит, «define:» вельми корисний в пошуку наукової роботи. Він дозволяє отримати визначення слів з таких джерел, як енциклопедій і онлайн-словників. Приклад його застосування:
визначити: території України
Універсальний оператор - тильда ( "~"), дозволяє шукати схожі слова або слова синоніми:
~громат ~розвитку
Наведений вище запит відображає, як веб-сайти зі словами «громат» (розвиток) і «розвитку» (територій), так і сайти з синонімом «громади». Оператор «link:", що модифікує запит, обмежує діапазон пошуку посиланнями, зазначеними для певної сторінки.
link: www.minregion.gov.ua
Однак цей оператор не відображає всі результати і не розширює критерії пошуку.
Хештеги є свого роду ідентифікаційними номерами, що дозволяють групувати інформацію. В даний час вони використовуються в Instagram, VK, Facebook, Tumblr і TikTok. Google дозволяє виконувати пошук у багатьох соціальних мережах одночасно або тільки в рекомендованих. Приклад типового запиту до будь-якої пошукової системи є:
#політикавукраїні
Оператор «around (n)» дозволяє шукати два слова, розташовані на відстані певної кількості слів, один від одного. приклад:
Міністерство around(4) України
Результатом вищезгаданого запиту є відображення веб-сайтів, які містять ці два слова ( "міністерство» і «України»), але вони відокремлені один від одного чотирма іншими словами.
Пошук за типами файлів також надзвичайно корисний, оскільки Google індексує матеріали відповідно до їх форматами, в якому вони були записані. Для цього використовується оператор «filetype:». В даний час використовується дуже широкий діапазон пошуку файлів. Серед всіх доступних пошукових систем, Google надає найскладніший набір операторів для пошуку відкритих вихідних кодів.
В якості альтернативи вищезазначених операторів, рекомендуються такі інструменти, як Maltego і Oryon OSINT Browser. Вони забезпечують автоматичний пошук даних і не вимагають знання спеціальних операторів. Механізм програм дуже простий: за допомогою правильного запиту, спрямованого в Google або Bing, знаходяться документи, опубліковані цікавлять вас установою і аналізуються метадані з цих документів. Потенційним інформаційним ресурсом для таких програм є кожен файл з будь-яким розширенням, наприклад: «.doc», «.pdf», «.ppt», «.odt», «.xls» або «.jpg».
У доповненні, слід сказати про те як правильно подбати про «очищення своїх метаданих», перш ніж робити файли загальнодоступними. У деяких веб-посібниках передбачено як мінімум кілька способів позбавлення від мета інформації. Однак неможливо вивести найкращий спосіб, тому що це все залежить від індивідуальних переваг самого адміністратора. В основному рекомендується записати файли в форматі, в якому з самого початку не зберігаються метадані, а потім зробити файли доступними. В Інтернеті є численна кількість безкоштовних програм очищення метаданих, головним чином, по відношенню до зображень. ExifCleaner може розглядатися як один з найбільш бажаних. У разі текстових файлів, настійно рекомендується виконувати очистку вручну.
Інформація, неусвідомлено залишена власниками сайтів
Ресурси, що індексуються Google, залишаються публічними (наприклад внутрішні документи і матеріали компанії, що залишилися на сервері), або вони залишаються для зручності використання тими ж людьми (наприклад, музики або файли фільмів). Пошук такого контенту може бути зроблений за допомогою Google через безліч різних способів і найпростіший з них, це просто вгадати. Якщо наприклад в певному каталозі є файли 5.jpg, 8.jpg і 9.jpg, можна передбачити, що є і файли від 1 до 4, від 6 до 7 і навіть більше 9. Тому можна отримати доступ до матеріалів, які не повинні були бути в публічному вигляді. Інший спосіб - пошук за певними типами контенту на веб-сайтах. Можна шукати музичні файли, фотографії, фільми і книги (електронні книги, аудіокниги).
В іншому випадку це можуть бути файли, які користувач залишив несвідомо в публічному доступі (наприклад - музика на FTP сервері для власного використання). Таку інформацію можна отримати двома способами: використовуючи оператор «filetype:» або оператор «inurl:». наприклад:
тип файлу: сайт doc: gov.ua
site: www.minregion.gov.ua filetype: pdf
site: www.minregion.gov.ua inurl: doc
Також можна шукати програмні файли, використовуючи пошуковий запит і фільтруючи шуканий файл з його розширення:
тип файлу: iso
Інформація про структуру веб-сторінок
Для того щоб переглянути структуру певної веб-сторінки і розкрити всю її конструкцію, яка допоможе в подальшому сервера і його вразливостей, можна виконати це, використовуючи тільки оператор «site:". Давайте проаналізуємо наступну фразу:
site: www.minregion.gov.ua minregion
Ми починаємо пошук слова «minregion» в домені «www.minregion.gov.ua». Кожен сайт з цього домену (Google шукає як в тексті, в заголовках і в заголовку сайту) містить дане слово. Таким чином, отримуючи повну структуру всіх сайтів цього конкретного домену. Як тільки структура каталогів стане доступною, більш точний результат (хоча це не завжди може статися) можна отримати за допомогою наступного запиту:
сайт: minregion.gov.ua intitle: index.of «батьківський каталог»
Він показує найменш захищені субдомени «minregion.gov.ua», іноді з можливістю пошуку по всьому каталогу, разом з можливою завантаженням файлів. Тому, природно, такий запит не застосовують до всіх доменів, оскільки вони можуть бути захищені або працювати під управлінням будь-якого іншого сервера.
site: gov inurl: robots.txt intext: Disallow: /web.config
Даний оператор дозволяє отримати доступ до параметрів конфігурацій різних серверів. Після проведення запиту, переходимо в файл robots.txt, шукаємо шлях до «web.config» і перехід по заданому шляху файлу. Щоб отримати ім'я сервера, його версію і інші параметри (наприклад, порти), робиться наступний запит:
site: gosstandart.gov.by intitle: index.of server.at
Кожен сервер має якісь свої унікальні фрази на заголовних сторінках, наприклад, Internet Information Service (IIS):
intitle: welcome.to intitle: Інтернет IIS
Визначення самого сервера і використовуваних в ньому технологій залежить тільки від винахідливості задається запиту. Можна, наприклад, спробувати зробити це за допомогою уточнення технічної специфікації, керівництва або так званих сторінок довідок. Щоб продемонструвати цю можливість, можна скористатися наступним запитом:
сайт: gov.ua inurl: модулі директивних інструкцій apache (Apache)
Доступ може бути більш розширеним, наприклад, завдяки файлу з помилками SQL:
Філетип «#mysql dump»: SQL
Помилки в базі даних SQL можуть зокрема, надати інформацію про структуру та зміст баз даних. У свою чергу, вся веб-сторінка, її оригінал і (або) її оновлені версії можуть бути доступні за наступним запитом:
сайт: gov.ua inurl: резервне копіювання
сайт: gov.ua inurl: резервна копія intitle: index.of inurl: admin
В даний час використання вищезгаданих операторів досить рідко дає очікувані результати, оскільки вони можуть бути заздалегідь заблоковані обізнаними користувачами.
Також за допомогою програми FOCA можна знайти такий же контент, як і при пошуку вищезгаданих операторів. Для початку роботи, програмі потрібно назву доменного імені, після чого вона проаналізує структуру всього домену та всіх інших піддоменів, підключених до серверів конкретного установи. Таку інформацію можна знайти в діалоговому вікні на вкладці «Сеть»:
Таким чином, потенційний зловмисник може перехопити дані, залишені веб-адміністраторами, внутрішні документи та матеріали компанії, залишені навіть на прихованому сервері.Якщо ви захочете дізнатися ще більше інформації про всіх можливих операторів індексування ви можете ознайомитися з цільовою базою даних всіх операторів Google Dorking ось тут . Також можна ознайомитися з одним цікавим проектом на GitHub, який зібрав в себе всі найпоширеніші і вразливі URL посилання і спробувати пошукати для себе щось цікаве, його можна подивитися ось за цим посиланням .
Комбінуємо і отримуємо результати
Для більш конкретних прикладів, нижче представлена невелика збірка з часто використовуваних операторів Google. У комбінації різної додаткової інформації та тих же самих команд, результати пошуку показують більш детальний погляд на процес отримання конфіденційної інформації. Адже як-не-як, для звичайної пошукової системи Google, такий процес збору інформації може виявитися досить цікавим.
Пошук бюджетів на веб-сайті Міністерства національної безпеки і кібербезпеки США.
Наступна комбінація надає всі загальнодоступні проіндексовані таблиці Excel, що містять слово «бюджет»:
Бюджетний тип файлу: xls
Так як оператор «filetype:» автоматично не розпізнає різні версії однакових форматів файлів (наприклад, doc проти odt або xlsx проти csv), кожен з цих форматів має бути розбитий окремо:
тип файлу бюджету: xlsx АБО тип бюджету: csv
Подальший dork поверне файли PDF на веб-сайті NASA:
сайт: nasa.gov файли: pdf
Ще один цікавий приклад використання Дорка з ключовим словом «бюджет» - це пошук документів з кібербезпеки США в форматі «pdf» на офіційному сайті Міністерства внутрішньої оборони.
веб-сайт бюджетної кібербезпеки: файли dhs.gov: pdf
Те ж саме застосування Дорка, але в цей раз пошуковик поверне електронні таблиці .xlsx, що містять слово «бюджет» на веб-сайті Міністерства внутрішньої безпеки США:
веб-сайт бюджету: файли dhs.gov: xls
Пошук паролів
Пошук інформації за логіном і паролем може бути корисний як пошуку вразливостей на власному ресурсі. В інших випадках паролі зберігаються в документах загального доступу на веб-серверах. Можна спробувати застосувати наступні комбінації в різних пошукових системах:
тип файлу пароля: doc / docx / pdf / xls
Файл пароля: сайт doc / docx / pdf / xls: [Назва сайту]
Якщо спробувати ввести такий запит в іншій пошуковій системі, то можна отримати абсолютно різні результати. Наприклад, якщо виконати цей запит без терміна «site: [Найменування сайту] «, Google поверне результати документів, що містять реальні імена користувачів і паролі деяких американських середніх шкіл. Інші пошукові системи не показують цю інформацію на перших сторінках результатів. Як це можна побачити нижче, Yahoo і DuckDuckGo є такими прикладами.
Ціни на житло в Лондоні
Інший цікавий приклад стосується інформації про ціну на житло в Лондоні. Нижче наведені результати запиту, який був введений в чотирьох різних пошукових системах:
filetype: xls «house prices» and «London»
Можливо, тепер у вас є власні ідеї і уявлення про те, на яких веб-сайтах ви хотіли б зосередитися в своєму власному пошуку інформації або ж як правильно перевіряти свій власний ресурс на визначення можливих вразливостей.
Альтернативні інструменти пошуку індексацій
Існують також і інші методи збору інформації за допомогою Google Dorking. Всі вони є альтернативою і виступають в якості автоматизації пошукових процесів. Нижче пропонуємо поглянути на одні з найпопулярніших проектів, якими не гріх поділитися.
Google Злом в Інтернеті
Google Hacking Online - це онлайн інтеграція пошуку Google Dorking різних даних через веб сторінку за допомогою встановлених операторів, з якими ви можете ознайомитися тут . Інструмент являє собою звичайне поле введення для пошуку бажаного IP адреси або URL посилання на цікавий для ресурс, разом з пропонованими опціями пошуку.
Як видно з картинки вище, пошук за кількома параметрами надається у вигляді декількох варіантів:
- Пошук публічних і вразливих каталогів
- файли конфігурації
- Файли баз даних
- Список
- Старі дані і дані резервного копіювання
- сторінки аутентифікації
- помилки SQL
- Документи, що зберігаються в загальному доступі
- Інформація про конфігурацію php на сервері ( «phpinfo»)
- Файли загального інтерфейсу шлюзу (CGI)
Все працює на ванільному JS, який прописаний в самому файл веб сторінки. На початку береться введена інформація користувача, а саме найменування хоста або IP адреса веб сторінки. І потім складається запит з операторами на введену інформацію. Посилання на пошук певного ресурсу, відкривається в новому спливаючому вікні, з наданими результатами.
BinGoo
BinGoo - це універсальної інструмент, написаний на чистому bash. Він використовує пошукові оператори Google і Bing для фільтрації великої кількості посилань на основі наведених пошукових термінів. Можна вибрати пошук по одному оператору за раз або скласти списки по одному оператору на рядок і виконати масове сканування. Як тільки закінчується процес з початковим збором інформації або у вас з'являться посилання, зібрані іншими способами, можна перейти до інструментів аналізу, щоб перевірити загальні ознаки вразливостей.
Результати акуратно відсортовані у відповідних файлах на основі отриманих результатів. Але і тут аналіз не зупиняється, можна піти ще далі і запустити їх за допомогою додаткових функціоналів SQL або LFI або можна використовувати інструменти-оболонки SQLMAP і FIMAP, які працюють набагато краще, з точними результатами.
Також включено кілька зручних функцій, щоб спростити життя, таких як «геодоркінг» на основі типу домену, кодів країн в домені і перевірка загального хостингу, яка використовує попередньо сконфігурованих пошук Bing і список Доркен для пошуку можливих вразливостей на інших сайтах. Також включений простий пошук сторінок адміністраторів, що працює на основі наданого списку і кодів відповіді сервера для підтвердження. В цілому - це дуже цікавий і компактний пакет інструментів, який здійснює основний збір і аналіз заданої інформації! Ознайомитися з ним можна ось тут .
Пагода
Мета інструменту Pagodo - це пасивне індексування операторів Google Dorking для збору потенційно уразливих веб-сторінок і додатків через Інтернет. Програма складається з двох частин. Перша - це ghdb_scraper.py, яка запитує і збирає оператори Google Dorks, а друга - pagodo.py, використовує оператори і інформацію, зібрану через ghdb_scraper.py і аналізує її через запити Google.
Для початку файлу pagodo.py потрібно список операторів Google Dorks. Подібний файл надається або в репозиторії самого проекту або можна просто запросити всю базу даних через один GET-запит, використовуючи ghdb_scraper.py. А потім просто скопіювати окремі оператори dorks в текстовий файл або помістити в json, якщо потрібні додаткові контекстні дані.
Для того щоб зробити цю операцію, потрібно ввести наступну команду:
python3 ghdb_scraper.py -j -s
Тепер, коли є файл з усіма потрібними операторами, його можна перенаправити в pagodo.py за допомогою опції «-g», для того щоб почати збір потенційно уразливих і загальнодоступних додатків. Файл pagodo.py використовує бібліотеку «google» для пошуку таких сайтів за допомогою подібних операторів:
intitle: «Вхід у списокMail» admin -demo
сайт: example.com
На жаль, процес настільки величезної кількості запитів (а саме ~ 4600) через Google, просто не буде працювати. Google відразу ж визначить вас як бота і заблокує IP адреса на певний період. Для того щоб пошукові запити виглядали більш органічними, було додано кілька поліпшень.
Для модуля Python «google» зробили спеціальні поправки, щоб забезпечити рандомізацію агента користувача через пошукові запити Google. Ця функція доступна у версії модуля 1.9.3 і дозволяє рандомизировать різні користувальницькі агенти, які використовуються для кожного пошукового запиту. Дана можливість дозволяє емулювати різні браузери, які використовуються у великій корпоративному середовищі.
Друге удосконалення фокусується на рандомізації часу між пошуковими запитами. Мінімальна затримка вказується за допомогою параметра «-e», а коефіцієнт джиттера використовується для додавання часу до мінімального числа затримок. Створюється список з 50 джиттером і один з них випадковим чином додається до мінімального часу затримки для кожного процесу пошуку в Google.
self.jitter = numpy.random.uniform(low=self.delay, high=jitter * self.delay, size=(50,))
Далі в скрипті вибирається випадкове час з масиву джиттера і додається до затримки створення запитів:
pause_time = self.delay + random.choice (self.jitter)
Можна самостійно поекспериментувати зі значеннями, але настройки за замовчуванням працюють тож успішно. Зверніть увагу, що процес роботи інструменту може зайняти кілька днів (в середньому 3; залежно від кількості заданих операторів і інтервалу запиту), тому переконайтеся, що у вас є на це час.
Щоб запустити сам інструмент, досить наступної команди, де «example.com» це посилання на інтересуемой веб сайт, а «dorks.txt» це текстовий файл який створив ghdb_scraper.py:
python3 pagodo.py -d example.com -g dorks.txt -l 50 -s -e 35.0 -j 1.1
Методи захисту від Google Dorking
Основні рекомендації
Google Dorking, як і будь-який інший інструмент вільного доступу, має свої техніки для захисту та запобігання збору конфіденційної інформації зловмисниками. Наступні рекомендації п'яти протоколів слід дотримуватися адміністраторам будь-яких веб платформ і серверів, щоб уникнути загроз від «Google Dorking»:
- Систематичне оновлення операційних систем, сервісів і додатків.
- Впровадження та обслуговування анти-хакерських систем.
- Поінформованість про Google роботах і різних процедурах пошукових систем, а також способи перевірки таких процесів.
- Видалення конфіденційного вмісту із загальнодоступних джерел.
- Поділ загальнодоступного контенту, приватного контенту і блокування доступу до контенту для користувачів загального доступу.
Конфігурація файлів .htaccess і robots.txt
В основному всі уразливості і погрози, пов'язані з «Dorking», генеруються через неуважність або недбалість користувачів різних програм, серверів або інших веб-пристроїв. Тому правила самозахисту і захисту даних не викликають будь-яких ускладнень або ускладнень.
Для того щоб ретельно підійти до запобігання індексацій з боку будь-яких пошукових систем варто звернути увагу на два основних файлу конфігурацій будь-якого мережевого ресурсу: «.htaccess» і «robots.txt». Перший - захищає позначені шляхи і директорії за допомогою паролів. Другий - виключає директорії з індексування пошукачів.
У разі, якщо на вашому власному ресурсі містяться певні види даних або директорій, яким не слід бути індексованих на Google, то в першу чергу слід налаштувати доступ до папок через паролі. На прикладі нижче, можна наочно побачити як правильно і що саме слід прописати в файл «.htaccess», що знаходиться в кореневій директорії будь-якого веб сайту.
Для початку слід додати кілька рядків, які наведені нижче:
AuthUserFile /your/directory/here/.htpasswd
AuthGroupFile / dev / null
AuthName «Безпечний документ»
AuthType Basic
потрібне ім’я користувача1
потрібне ім’я користувача2
потрібне ім’я користувача3
У рядку AuthUserFile вказуємо шлях до цього файлу .htaccess, який знаходиться в вашому каталозі. А в трьох останніх рядках, потрібно вказати відповідне ім'я користувача, до якого буде надано доступ. Потім потрібно створити «.htpasswd» в тій же самій папці, що і «.htaccess» і виконавши наступну команду:
htpasswd -c .htpasswd ім'я користувача1
Двічі ввести пароль для користувача username1 і після цього, буде створено абсолютно чистий файл «.htpasswd» в поточному каталозі і буде містити зашифровану версію пароля.
Якщо є кілька користувачів, слід призначити кожному з них пароль. Щоб додати додаткові користувачів, не потрібно створювати новий файл, можна просто додати їх в існуючий файл, не використовуючи опцію -c, за допомогою цієї команди:
htpasswd .htpasswd ім'я користувача2
В інших випадках рекомендується налаштовувати файл robots.txt, який відповідає за індексацію сторінок будь-якого веб ресурсу. Він служить провідником для будь-якої пошукової системи, яка посилається на певні адреси сторінок. І перш ніж перейти безпосередньо до шуканого джерела, robots.txt буде або блокувати подібні запити, або пропускати їх.
Сам файл розташований в кореневому каталозі будь-який веб платформи, запущеної в Інтернеті. Конфігурація здійснюється всього лише зміною двох головних параметрів: «User-agent» і «Disallow». Перший виділяє і відзначає або все, або якісь певні пошукові системи. У той час як другий зазначає, що саме потрібно заблокувати (файли, каталоги, файли з певними розширеннями і т.д.). Нижче наведено кілька прикладів: виключення каталогу, файлу і певної пошукової системи, виключені з процесу індексування.
Користувач-агент: *
Заборонити: / cgi-bin /
Користувач-агент: *
Заборонити: /~joe/junk.html
Користувач-агент: Bing
Заборонити: /
Використання мета-тегів
Також обмеження для мережевих павуків можуть бути введені на окремих веб сторінках. Вони можуть розташовуватися як на типових веб-сайтах, блогах, так і сторінках конфігурацій. У заголовку HTML вони повинні супроводжуватися однією з наступних фраз:
При додаванні такого запису в хедері сторінки, роботи Google не будуть індексувати ні другорядні, ні головну сторінку. Цей рядок може бути введена на сторінках, яким не йдуть індексуватися. Однак це рішення, засноване на взаємній угоді між пошуковими системами і самим користувачем. Хоч Google і інші мережеві павуки дотримуються вищезгадані обмеження, є певні мережеві роботи «полюють» за такими фразами для отримання даних, спочатку налаштованих без індексації.
З більш просунутих варіантів з безпеки індексування, можна скористатися системою CAPTCHA. Це комп'ютерний тест, що дозволяє отримати доступ до контенту сторінки тільки людям, а не автоматичним роботам. Однак цей варіант має, невеликий недолік. Він не дуже зручний для самих користувачів.
Іншим простим захисним методом від Google Dorks може бути, наприклад, кодування знаків в адміністративних файлах кодуванням ASCII, що утруднює використання Google Dorking.
Практика пентестинга
Практика пентестінга - це тести на виявлення вразливостей в мережі і на веб платформах. Вони важливі за своїм, бо такі тести однозначно визначають рівень вразливості веб-сторінок або серверів, включаючи Google Dorking. Існують спеціальні інструменти для пентестов, які можна знайти в Інтернеті. Одним з них є Site Digger, сайт, що дозволяє автоматично перевіряти базу даних Google Hacking на будь-якій обраній веб-сторінці. Також, є ще такі інструменти, як сканер Wikto, SUCURI і різні інші онлайн-сканери. Вони працюють аналогічним чином.
Є більш серйозні інструменти, що імітують середу веб-сторінки, разом з помилками і уразливими для того, щоб заманити зловмисника, а потім отримати конфіденційну інформацію про нього, як наприклад Google Hack Honeypot. Стандартному користувачеві, у якого мало знань і недостатньо досвіду в захисті від Google Dorking, слід в першу чергу перевірити свій мережевий ресурс на виявлення вразливостей Google Dorking і перевірити які конфіденційні дані є загальнодоступними. Варто регулярно перевіряти такі бази даних, haveibeenpwned.com і weleakinfo.com , щоб з'ясувати, чи не була порушена і опублікована безпеку ваших облікових записів в мережі.
https://haveibeenpwned.com/ , стосується погано захищених веб-сторінок, де були зібрані дані облікових записів (адреси електронних пошт, логіни, паролі та інші дані). В даний час база даних містить понад 5 мільярдів облікових записів. Більш просунутий інструмент доступний на https://weleakinfo.com , що дозволяє шукати інформацію по іменах користувачів, адрес електронних пошт, паролів і їх хешу, IP адресами, імен і номерів телефонів. У доповненні, рахунки, за якими стався витік даних, можна купити в мережі. Вартість одноденного доступу становить всього 2 долари США.
висновок
Google Dorking є невід'ємною частиною процесу збору конфіденційної інформації та процесу її аналізу. Його по праву можна вважати одним з найбільш кореневих і головних інструментів OSINT. Оператори Google Dorking допомагають як в тестуванні свого власного сервера, так і в пошуку всієї можливої інформації про потенційну жертву. Це дійсно дуже яскравий приклад коректного використання пошукових механізмів з метою розвідки конкретної інформації. Однак чи є наміри використання цієї технології благими (перевірка вразливостей власного інтернет ресурсу) або недобрими (пошук і збір інформації з різноманітних ресурсів і використання її в незаконних цілях), залишається вирішувати тільки самим користувачам.
Альтернативні методи і інструменти автоматизації дають ще більше можливостей і зручностей для проведення аналізу веб ресурсів. Деякі з них, як наприклад BinGoo, розширює звичайний індексований пошук на Bing і аналізує всю отриману інформацію через додаткові інструменти (SqlMap, Fimap). Вони в свою чергу підносять точнішу і конкретну інформацію про безпеку обраного веб ресурсу.
У той же самий час, важливо знати і пам'ятати як правильно убезпечити і запобігти свої онлайн платформи від процесів індексування, там де вони не повинні бути. А також дотримуватися основних положень, передбачених для кожного веб адміністратора. Адже незнання і неусвідомлення того, що з власної помилку, твою інформацію придбали інші люди, ще не означає те, що все можна повернути як було раніше.
Коментарі
Дописати коментар
Олег Мічман в X: «Donations and support for media resources, bloggers, projects, and individuals. https://t.co/HPKsNRd4Uo https://t.co/R6NXVPK62M» / X
https://twitter.com/olukawy/status/1703876551505309973