πŸ— TruffleHog: ΠžΡ…ΠΎΡ‚Π½ΠΈΠΊ Π·Π° сСкрСтами Π² Git

ΠšΡ€Π°Ρ‚ΠΊΠΎ: TruffleHog β€” инструмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ, API-ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹, случайно Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‡Π΅Π½Π½Ρ‹Π΅ Π² Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ. Он Π½Π΅ просто ΠΈΡ‰Π΅Ρ‚ ΠΏΠΎ шаблонам, Π½ΠΎ ΠΈ провСряСт, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π»ΠΈ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΉ сСкрСт прямо сСйчас. Π‘ΠΎΠ·Π΄Π°Π½ Π² 2016 Π³ΠΎΠ΄Ρƒ, сСгодня Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ 98% Fortune 500 ΠΈ Ρ…Π°ΠΊΠ΅Ρ€Ρ‹ Π² Π°Ρ‚Π°ΠΊΠ°Ρ….

▫️ Как дошли Π΄ΠΎ ΠΆΠΈΠ·Π½ΠΈ Ρ‚Π°ΠΊΠΎΠΉ 2016 Π³ΠΎΠ΄. Π”ΠΈΠ»Π°Π½ Π‘ΡƒΡ€ΠΆΡƒΠ° ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ», Ρ‡Ρ‚ΠΎ сотни GitHub-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² содСрТат сСкрСты Π² ΠΊΠΎΠ΄Π΅. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ инструмСнты Π΄Π°Π²Π°Π»ΠΈ Ρ‚ΠΎΠ½Π½Ρ‹ Π»ΠΎΠΆΠ½Ρ‹Ρ… срабатываний. Π‘ΡƒΡ€ΠΆΡƒΠ° написал TruffleHog: ΠΎΠ½ искал сСкрСты Ρ‡Π΅Ρ€Π΅Π· ΡΠ½Ρ‚Ρ€ΠΎΠΏΠΈΡŽ (ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΠΎΡΡ‚ΡŒ строки). ПозТС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΏΠ΅Ρ€Π΅ΡˆΠ»ΠΈ Π½Π° 800+ Π΄Π΅Ρ‚Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚ΠΈΠΏ сСкрСтов. Π“Π»Π°Π²Π½ΠΎΠΉ Ρ„ΠΈΡˆΠΊΠΎΠΉ стала вСрификация β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°, ΠΆΠΈΠ² Π»ΠΈ сСкрСт прямо сСйчас. 2021 Π³ΠΎΠ΄ β€” основана Truffle Security, ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡Π΅Π½ΠΎ $40 ΠΌΠ»Π½ ΠΎΡ‚ Intel Capital ΠΈ a16z.

▫️ Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ 1. ΠžΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅: ΠŸΡ€ΠΎΡ‡Ρ‘ΡΡ‹Π²Π°Π΅Ρ‚ Git-ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ (вСсь, ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°) β€” ΠΈΡ‰Π΅Ρ‚ AWS-ΠΊΠ»ΡŽΡ‡ΠΈ, GitHub-Ρ‚ΠΎΠΊΠ΅Π½Ρ‹, ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. 2. ΠšΠ»Π°ΡΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ: ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ сСкрСта β€” Stripe, Cloudflare, Postgres. 3. ВСрификация: ΠŸΡ‹Ρ‚Π°Π΅Ρ‚ΡΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сСкрСт β€” Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ AWS API с Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ ΠΈ смотрит, пускаСт Π»ΠΈ сСрвСр. Π£Π±ΠΈΠ²Π°Π΅Ρ‚ 99% Π»ΠΎΠΆΠ½Ρ‹Ρ… срабатываний. 4. Анализ: Для популярных сСкрСтов собираСт Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ: ΠΊΡ‚ΠΎ создал ΠΊΠ»ΡŽΡ‡, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡ€Π°Π²Π°.

▫️ Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π‘ΠΊΠ°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ: trufflehog git https://github.com/example/repo.git

Волько ΠΆΠΈΠ²Ρ‹Π΅ сСкрСты (Π±Π΅Π· Π»ΠΎΠΆΠ½Ρ‹Ρ…): trufflehog git --only-verified https://github.com/example/repo.git

Π‘ΠΊΠ°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° GitHub: trufflehog github --org=example-org --token=ghp_xxxxx

CI/CD-интСграция (GitHub Actions): Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ PR ΠΏΡ€ΠΈ Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ сСкрСтов

▫️ КСйс 1: Π§Π΅Ρ€Π²ΡŒ Shai-Hulud (ΡΠ΅Π½Ρ‚ΡΠ±Ρ€ΡŒ 2025) Π₯Π°ΠΊΠ΅Ρ€Ρ‹ скомпромСтировали npm-Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. Π—Π°Π³Ρ€ΡƒΠ·ΠΈΠ»ΠΈ врСдоносныС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈ установкС запускали TruffleHog Π½Π° машинС ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, собирали сСкрСты ΠΈ отправляли Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌ. Π—Π°Ρ‚Π΅ΠΌ Ρ‡Π΅Ρ€Π²ΡŒ пытался ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Ρ€Π°ΠΆΡ‘Π½Π½Ρ‹Π΅ вСрсии Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡƒΠΊΡ€Π°Π΄Π΅Π½Π½Ρ‹Π΅ npm-Ρ‚ΠΎΠΊΠ΅Π½Ρ‹. ΠŸΠΎΡΡ‚Ρ€Π°Π΄Π°Π»ΠΎ Π±ΠΎΠ»Π΅Π΅ 500 ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ². TruffleHog оказался Π² Ρ€ΡƒΠΊΠ°Ρ… Ρ…Π°ΠΊΠ΅Ρ€ΠΎΠ², ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это Π»ΡƒΡ‡ΡˆΠΈΠΉ инструмСнт для поиска сСкрСтов.

▫️ КСйс 2: Атака Π½Π° Salesforce (2025) Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΡƒΠΊΡ€Π°Π»ΠΈ OAuth-Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ ΠΊ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Salesforce, Π·Π°Ρ‚Π΅ΠΌ массово сканировали скомпромСтированныС инстансы, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ сСкрСты. И снова TruffleHog. Π˜Ρ€ΠΎΠ½ΠΈΡ: Google Threat Intelligence Π² ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π» Π·Π°Ρ‰ΠΈΡ‚Π½ΠΈΠΊΠ°ΠΌ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ TruffleHog Ρƒ сСбя, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ Ρ‚Π°ΠΊΠΈΠ΅ ΠΆΠ΅ уязвимости Π΄ΠΎ Ρ…Π°ΠΊΠ΅Ρ€ΠΎΠ².

▫️ Как Π·Π°Ρ‰ΠΈΡ‰Π°Ρ‚ΡŒΡΡ 1. Π‘ΠΊΠ°Π½ΠΈΡ€ΡƒΠΉΡ‚Π΅ свои Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ β€” запуститС TruffleHog Π½Π° всСй истории, Π½Π°ΠΉΠ΄ΠΈΡ‚Π΅ сСкрСты Π΄ΠΎ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°. 2. Π ΠΎΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ сСкрСты β€” Ссли сСкрСт ΠΏΠΎΠΏΠ°Π» Π² ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠ³ Π΅Π³ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. 3. Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π² CI/CD β€” Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠΉΡ‚Π΅ PR с сСкрСтами, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈ Π² Π³Π»Π°Π²Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ. 4. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρ‹ сСкрСтов β€” HashiCorp Vault, AWS Secrets Manager. Π“Π»Π°Π²Π½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄: TruffleHog β€” ΠΎΡ‚ΠΌΡ‹Ρ‡ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΈ Ρ…Π°ΠΊΠ΅Ρ€Ρ‹, ΠΈ Π·Π°Ρ‰ΠΈΡ‚Π½ΠΈΠΊΠΈ. ЕдинствСнный способ Π²Ρ‹ΠΈΠ³Ρ€Π°Ρ‚ΡŒ β€” Π½Π°ΠΉΡ‚ΠΈ сСкрСты Ρ€Π°Π½ΡŒΡˆΠ΅ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°. ЗапускайтС TruffleHog Π½Π° своих рСпозиториях сСгодня, Ρ€ΠΎΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ΅ ΠΈ внСдряйтС prevention Π² CI/CD.

#trufflehog #secrets #devsecops #github #infosec #лСкисСкрСтов #audit

πŸ— TruffleHog: ΠžΡ…ΠΎΡ‚Π½ΠΈΠΊ Π·Π° сСкрСтами Π² Git | Π‘Π΅Ρ‚ΠΊΠ° β€” ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ hh.ru