Як сканувати репозиторій GitHub на наявність облікових даних?

Дізнайтеся, чи містить ваше сховище GitHub конфіденційну інформацію, таку як пароль, секретні ключі, конфіденційну інформацію тощо.

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

Є багато випадків витоку конфіденційних даних на GitHub. Ви не можете усунути людську помилку, але можете вжити заходів, щоб її зменшити.

Як переконатися, що ваше сховище не містить пароля чи ключа?

Проста відповідь – не зберігати.

Як найкраща практика, слід використовувати програмне забезпечення для керування секретами для зберігання всієї конфіденційної інформації.

Але насправді ви не можете контролювати поведінку інших людей, якщо працюєте в команді.

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

Наступні рішення допоможуть вам знайти помилки у вашому сховищі.

Секретне сканування

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

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

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

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

Секрети Git

Дозвольте представити вам git-secrets, інструмент, який може позбавити нас від незручності випадкового додавання секретів до наших сховищ Git. Він сканує коміти, повідомлення комітів і злиття, щоб запобігти витоку секретів у нашому коді.

Щоб розпочати роботу з Windows, ми просто запускаємо сценарій PowerShell install.ps1. Він копіює необхідні файли в каталог інсталяції та додає їх до нашого ШЛЯХУ користувача. Це робить git-secrets легко доступним з будь-якої точки нашого середовища розробки.

Після встановлення git-secrets стає нашим пильним опікуном, перевіряючи, чи збігається будь-яка коміція, повідомлення коміту чи історія злиття з нашими налаштованими забороненими шаблонами. Якщо він виявляє збіг, він відхиляє фіксацію, запобігаючи прослизанню конфіденційної інформації.

Ми можемо додати шаблони регулярних виразів до файлу .gitallowed у кореневому каталозі сховища для точного налаштування git-secrets. Це допомагає відфільтрувати будь-які рядки, які можуть викликати попередження, але є законними, встановлюючи правильний баланс між безпекою та зручністю.

  Верифікація проти валідації в тестуванні програмного забезпечення: знання основ

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

Використовуючи git-secrets, нам потрібно бути обережними. Заборонені шаблони не повинні бути надто широкими, а дозволені шаблони не мають бути надто дозволеними. Тестування наших шаблонів за допомогою ad-hoc викликів git secrets –scan $filename гарантує, що вони працюють належним чином.

Якщо ви прагнете глибше зануритися в git-secrets або хочете зробити внесок у його розвиток, ви знайдете проект на GitHub. Це проект із відкритим кодом, який заохочує внески спільноти. Приєднуйтесь до спільноти та змінюйте ситуацію!

За допомогою git-secrets ми можемо впевнено кодувати, знаючи, що випадкові секрети не зашкодять нашим проектам. Давайте скористаємося цим інструментом і захистимо конфіденційну інформацію.

Супервайзер репо

У мене є чудова новина: Repo-supervisor — це потужний інструмент, який виявляє секрети та паролі у вашому коді. Встановити його легко — просто додайте вебхук до свого репозиторію GitHub. Repo-supervisor пропонує два режими: сканування запитів на отримання на GitHub або сканування локальних каталогів з командного рядка. Виберіть режим, який вам найбільше підходить.

Щоб розпочати свою подорож git-secrets, просто відвідайте репозиторій GitHub і завантажте найновіший випуск. Там ви знайдете пакети, розроблені для розгортання AWS Lambda, і зручний режим CLI. У режимі CLI ви можете занурюватися безпосередньо без будь-яких додаткових налаштувань, тоді як режим запиту на отримання потребує розгортання на AWS Lambda. Виберіть варіант, який відповідає вашим потребам, і почніть використовувати потужність git-secrets для підвищення безпеки вашої кодової бази!

У режимі CLI вкажіть каталог як аргумент, і Repo-supervisor сканує підтримувані типи файлів, обробляючи кожен файл за допомогою спеціального токенізера для його типу. Він перевіряє безпеку вилучених рядків і надає чіткі звіти у форматі простого тексту або JSON.

У режимі запиту на отримання Repo-supervisor обробляє корисні навантаження вебхуку, витягує змінені файли та виконує перевірки безпеки вилучених рядків. Якщо виявлено проблеми, він встановлює статус КІ на помилку з посиланням на звіт. Відсутність проблем означає успішний статус КІ.

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

Спробуйте Repo-supervisor! Встановіть його, налаштуйте вебхук і дозвольте йому шукати секрети та паролі. Насолоджуйтесь додатковим рівнем безпеки!

Трюфельний кабан

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

Завдяки своєму арсеналу високоентропійних перевірок і шаблонів регулярних виразів цей інструмент створений для виявлення цих прихованих скарбів і забезпечення безпеки вашого коду. Попрощайтеся з секретними витоками та прийміть пильний захист Трюфельного кабана!

  Як безкоштовно дізнатися чиєсь ім'я за номером телефону

І ось найкраща частина: остання версія Truffle Hog містить багато нових потужних функцій. Зараз він може похвалитися понад 700 детекторами облікових даних, які активно перевіряють відповідні API. Він також підтримує сканування GitHub, GitLab, файлових систем, S3, GCS і Circle CI, що робить його неймовірно універсальним.

Крім того, TruffleHog тепер має вбудовану підтримку миттєвої перевірки закритих ключів від мільйонів користувачів GitHub і мільярдів сертифікатів TLS за допомогою передової технології Driftwood. Він навіть може сканувати двійкові та інші формати файлів, гарантуючи, що жоден камінь не залишиться на камені.

Більше того, TruffleHog доступний як GitHub Action, так і pre-commit hook, бездоганно інтегрований у ваш робочий процес розробки. Він розроблений, щоб бути зручним і дружнім до користувача, забезпечуючи додатковий рівень безпеки, не створюючи зайвих клопотів.

З Truffle Hog у вашому наборі інструментів ви можете впевнено захистити свій код від випадкового розкриття та зберегти свої секрети під замком. Тож спробуйте Truffle Hog і дозвольте йому спрацювати, захистивши ваші проекти.

Git Hound

GitHound виходить за межі обмежень інших інструментів, використовуючи пошук у коді GitHub, зіставлення шаблонів і пошук в історії комітів. Він може здійснювати пошук у всьому GitHub, а не лише в конкретних сховищах, користувачах чи організаціях. Як це круто?

Тепер давайте зануримося в його фантастичні функції. Git Hound використовує пошук коду GitHub/Gist, що дає змогу точно визначити конфіденційну інформацію, розкидану по величезному простору GitHub, завантажену будь-ким. Це як мати карту скарбів, щоб виявити потенційні вразливі місця.

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

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

І вгадайте що? Git Hound оснащено можливостями виявлення та декодування base64. Він може розкривати приховані секрети, закодовані у форматі base64, що дає вам додаткові переваги у пошуку конфіденційної інформації.

Більше того, GitHound пропонує варіанти інтеграції у великі системи. Ви можете генерувати вихідні дані JSON і налаштовувати регулярні вирази відповідно до ваших конкретних потреб. Вся справа в гнучкості та можливості будувати на її основі.

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

Для мисливців за головами за помилками Git Hound змінює правила гри. Це дає вам змогу шукати витік маркерів API співробітників, допомагаючи вам виявляти вразливості та заробляти ці заслужені винагороди. Хіба Git Hound не дивовижний?

Gitleaks

Gitleaks створено, щоб полегшити ваше життя. Це просте у використанні, комплексне рішення, яке виявляє секрети, незалежно від того, приховані вони в минулому чи сьогоденні вашого коду. Попрощайтеся з ризиком розкриття паролів, ключів API або токенів у ваших проектах.

  Як збільшити та повернути Netflix в Chrome

Встановлення Gitleaks — легке завдання. Ви можете використовувати Homebrew, Docker або Go, залежно від ваших уподобань. Крім того, він пропонує гнучкі варіанти впровадження. Ви можете налаштувати його як хук перед фіксацією безпосередньо у своєму репозиторії або скористатися Gitleaks-Action, щоб легко інтегрувати його у ваші робочі процеси GitHub. Уся справа в тому, щоб знайти налаштування, які вам найкраще підходять.

Тепер давайте поговоримо про команди, які пропонує Gitleaks. По-перше, у нас є команда «detect». Ця потужна команда дозволяє сканувати сховища, каталоги та окремі файли. Незалежно від того, чи працюєте ви на своїй машині чи в середовищі CI, Gitleaks допоможе вам. Це гарантує, що жоден секрет не прослизне крізь щілини.

Але це ще не все. Gitleaks також надає команду «захистити». Ця команда сканує явно незафіксовані зміни у ваших сховищах Git. Він є вашою останньою лінією захисту, запобігаючи ненавмисному розкриттю секретів. Це гарантія, яка зберігає ваш код чистим і безпечним.

Tines, надійне ім’я в галузі, спонсорує Gitleaks. Завдяки їх підтримці Gitleaks продовжує розвиватися та вдосконалюватися, надаючи вам найкращі можливості виявлення секретів.

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

Сканер безпеки Repo

Сканер безпеки репо — це безцінний інструмент командного рядка, призначений для ідентифікації випадково внесених конфіденційних даних, таких як паролі, токени, закриті ключі та інші секрети, у вашому сховищі Git.

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

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

Git Guardian

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

GitGuardian дозволяє командам застосовувати політики безпеки в приватному та публічному коді та інших джерелах даних.

Основні функції GitGuardian:

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

Висновок

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