Gizli sızma həmişə pis kod və ya həssas kitabxanalarla bağlı deyil. Bəzən, söhbət CI işləmələri zamanı sirləri necə idarə etməyimizdən gedir və CVE‑2025‑30066 bunun necə yan tərəfə gedə biləcəyinə dair dərslik nümunəsidir. Dəyişdirilmiş faylları aşkar etmək üçün geniş istifadə olunan GitHub Action tj‑actions/dəyişdirilmiş fayllar pull requests, gizli sızma üçün səssiz bir kanala çevrildi. Baş verənlər və necə kilidləyə biləcəyiniz budur CI/CD secrets pipeline.
CVE‑2025‑30066-da nə baş verdi?
2025-ci ilin mart ayının ortalarında tj‑actions/dəyişdirilmiş fayllar təhlükəyə məruz qaldı. Hücumçu zərərli proqrama işarə etmək üçün mövcud versiya etiketlərini (v45.0.7-yə qədər) yenidən yazdı commitBu, tərtibatçıların fərqinə varmadan Action-un davranışını dəyişdirdi; yeni versiya buraxılmadı, sadəcə görünməz etiket dəyişdirildi.
Faydalı yük sadə, lakin təhlükəli idi: o, runner yaddaşını etimadnamələr üçün skan edən, onları qeydlərə atan və ya süzən uzaqdan Base64 kodlu Python skriptini çıxarırdı. Bu, tj-actions/dəyişdirilmiş fayllardakı məntiqi kod qüsuru deyildi; bu, təkrar istifadə edilə bilən Action istifadə edərək CI iş axınlarında gizli sızmanın necə baş verə biləcəyindən sui-istifadə idi. CVE‑2025‑30066 bufer daşqınları ilə bağlı deyildi; bu, sirlərin sızmasına imkan verən CI dizaynında xəta ilə bağlı idi.
Təsir: tj-actions/dəyişdirilmiş faylların təsirlənmiş versiyalarından istifadə edən hər hansı bir repo, xüsusən də həssas tokenlər və ya fayllar fayl şablonlarında və ya CI çıxışlarında təhlükəsiz şəkildə idarə olunmadıqda, gizli məlumatların sızması riskini daşıyırdı.
Niyə bu, təkrar istifadə edilə bilən hərəkətlərə əsaslanaraq iş axınlarına təsir göstərir
DevSecOps iş axınları tj-actions/dəyişdirilmiş fayllardan çox asılıdır:
- automaton pull request çek
- Dəyişdirilmiş faylları müəyyən yollarda müəyyən edin
- Artıq CI işlərindən çəkinin
Lakin bu iş axınları tez-tez bir şeyi gözardı edir: qlobal modellərin həssas məlumatları necə əhatə edə biləcəyi. Tərtibatçılar tj-actions/dəyişdirilmiş faylların standart olaraq təhlükəsiz şəkildə işlədiyini güman edirlər. Lakin, əgər qlobal konfiqurasiyalar/** və sirlər orada saxlanılır configs/secrets.env, siz sadəcə CI çıxışlarına və ya jurnallarına gizli bir fayl əlavə etdiniz. Bu, Əməliyyatdakı bir səhv deyil; bu bir CI/CD gizli sızmaya səbəb olan dizayn uğursuzluğu. CVE‑2025‑30066 bunun bariz nümunəsidir.
Gizli Sızma Necə Baş Verdi (Zəiflik Təhlili)
Gəlin CVE‑2025‑30066-nın arxasındakı əsas nasazlığı araşdıraq:
- Qlobbing naxışları kimi **/*.env təsadüfən gizli fayllar uyğunlaşdırıldı
- tj‑actions/dəyişdirilmiş fayllar bu sirləri dəyişdirilmiş fayllar kimi qəbul etdi
- Sirlər addım çıxışlarında, qeydlərdə və ya sonrakı işlərdə ortaya çıxdı
Bu, sirlərin versiya ilə idarə olunan yollarda saxlanılması (pis fikir) və CI konfiqurasiyası onları açıq şəkildə qloballaşmadan kənarlaşdırmaması (həmçinin pis) səbəbindən baş verdi. Beləliklə, bu, kod xətası deyil, tj-actions/dəyişdirilmiş fayllar çıxışları ilə gizli sızmaya səbəb olan zəif CI dizayn gigiyenasıdır.
Praktik İstismar Yolu: CI İşindən Etimadnamə Təsirinə
tj-actions/dəyişdirilmiş fayllar vasitəsilə gizli sızmaya səbəb olan nümunə CI quraşdırması:
If configs/secrets.env dəyişdirildi:
- Bu, tj‑actions/changed‑files tərəfindən işarələnib
- Daxil edildi addımlar.dəyişdirilmiş.çıxışlar.hamısı_dəyişdirilmiş_fayllar
- Sonrakı addımlar onu qeyd etdi və ya skriptlərə ötürdü, sirləri sızdırdı
Bu sızma, CI məntiqinin sirləri adi fayllar kimi qəbul etməsi səbəbindən baş verdi. Məhz burada gizli sızma başlayır, bu, buferin daşması səbəbindən deyil, qüsurlu CI dizaynında tj-actions/dəyişdirilmiş faylların sui-istifadəsi səbəbindən baş verir.
Çoxalma aşağıdakı kimi nəticələrlə baş verir:
If sirrlər.env Həmin siyahıdadırsa, onun fayl adı və ehtimal ki, məzmunu quruluş jurnallarında görünə bilər. Hətta şərti məntiq belə:
Həssas artefaktları üzə çıxara bilər. Bu bir CI/CD Gizli sızmaya imkan verən dizayn çatışmazlığı, Fəaliyyət kodundakı qüsur deyil.
Təkrar istifadə edilə bilən iş axınlarından necə təhlükəsiz istifadə etmək və sızmanın qarşısını almaq olar
tj‑actions/dəyişdirilmiş faylları tərk etməyə ehtiyac yoxdur. "Sirrlər ilk növbədə" düşüncə tərzi ilə təkrar istifadə edilə bilən Actions-dan istifadə etməlisiniz:
Sirrlərin İşlənməsi üzrə Ən Yaxşı Təcrübələr
- Versiya nəzarəti sirlərini heç vaxt açmayın
- Həssas yollarla uyğunlaşan kürə naxışlarından çəkinin
- Ətraf mühitə əsaslanan sirlərdən istifadə edin (GITHUB_ENV, seyflər, GitHub sirləri)
CI/CD Konfiqurasiya Guardrails
- Həmişə Əməliyyatları etiketlərə deyil, dəyişməz SHA-lara sanc (heç vaxt istifadə etmə) @v45)
- tj-actions/dəyişdirilmiş fayl çıxışını ləkələnmiş kimi qəbul edin, təmizləyin və ya filtrləyin
- Yalnız dezinfeksiya edildikdə çıxışları təyin edin
⚠️ Təhlükəli Nümunə:
Yuxarıda göstərilənlər gizli sızma və CVE‑2025‑30066-nın arxasındakı sui-istifadədir.
Təhlükəsiz Alternativ:
Bunu etməklə, siz bundan qaçınırsınız CI/CD tj-actions/dəyişdirilmiş fayllar vasitəsilə gizli sızmaya səbəb olan dizayn çatışmazlığı.
Əlavə olaraq:
- Sirrlərin görünə biləcəyi yerlərdə qeydiyyatı deaktiv edin və ya məhdudlaşdırın
- GitHub-un gizli maskalama xüsusiyyətlərindən istifadə edin
- Quruluş qeydlərinə və artefaktlarına girişi məhdudlaşdırın
Tez Sirrlər - Təhlükəsiz CI İstifadə Yoxlama Siyahısı
| Ən yaxşı təcrübə |
|---|
| Sirləri versiya ilə idarə olunan fayllarda saxlamayın |
| Etimadnamələr üçün seyflərdən və ya GitHub Secrets-dən istifadə edin |
| Həmişə tj-actions/dəyişdirilmiş faylları dəyişməz SHA-lara sanc |
| tj-actions/dəyişdirilmiş fayllardan çıxışları filtrləyin və ya təmizləyin |
| Qlobal naxışlara heç vaxt gizli yolları daxil etməyin |
| Həssas məlumatları ifşa edə biləcək qeydləri maskalamaq və ya məhdudlaşdırmaq |
| Tez-tez miras alınmış CI konfiqurasiyalarını audit edin |
Xygeninin Rolü: CI Sirlərinin Ölçüdə Tətbiqi
Xygenie təhlükəsizliyini təmin CI/CD pipelinediqqət yetirməklə sirlərin real dünyada necə işlənməsi, istifadəsi və ifşa edilməsi DevOps iş axınları. Bu, sadəcə kodu skan etməkdən ibarət deyil; söhbət gizli idarəetmənin ən yaxşı təcrübələrini canlı yayımlar vasitəsilə tətbiq etməkdən gedir. pipeline analizi.
Təhlükəsiz Çıxış İstifadəsinin Aşkarlanması
- GitHub Əməliyyatlarını Skanlayır istifadə üçün echo, run və çıxışları, burada ${{ steps.*.outputs.* }} həssas dəyərləri əhatə edə bilər
- Sirrlərə birbaşa, qəsdən və ya səhvən istinad edildikdə və ya çap edildikdə müəyyən edir
Sızdırılmış Sirrlərin Monitorinqi
- Jurnallar və addım çıxışları daxilində yüksək entropiya dəyərlərini (API açarları, tokenlər) aşkarlayır
- Sirrlər görünəndə xəbərdarlıqları işə salır pipeline hətta aşağı axınla maskalanmış olsa belə, loglar
Yanlış konfiqurasiya edilmiş Fəaliyyət İstifadəsi
- Bütün GitHub Əməliyyatlarını izləyir pipelines, pozulmuş versiyaların istifadəsini aşkar etmək üçün (məsələn, tj-actions/dəyişdirilmiş fayllar@v45)
- Potensial sirləri ehtiva edən fayl uyğunlaşdırma nümunələrini yoxlayır **/*.env, *.key və ya .env.*
Siyasətə Əsaslanan CI Guardrails
- Üçüncü tərəf Əməliyyatları üçün SHA-pinləməni tətbiq edir
- Sirləri qeydlərə səpələyən təhlükəli fayl qloblarının istifadəsini bloklayır
- Müalicə edir pipelineiş axını çıxışlarının bir hissəsi kimi həssas dəyərlərin yayılması ilə əlaqəli s
İş axınlarını təhdid səthinizin bir hissəsi kimi qəbul etməklə, Xygeni gizli gigiyenanın yalnız ən yaxşı təcrübə deyil, həm də daxili müdafiə olduğunu təmin edir.
Nəticə: Gizli Sızma Sadə Bir Fəaliyyətin Yanlış İstifadəsi ilə Başlaya Bilər
CVE‑2025‑30066 kitabxana xətası deyildi; bu bir idi CI/CD tj‑actions/dəyişdirilmiş faylların düzgün istifadə edilməməsindən qaynaqlanan dizayn uğursuzluğu. DevSecOps komandalarının aradan qaldırmalı olduğu şeylər:
- CI-dəki hər bir qlobal/fayl istinadını potensial sızma nöqtəsi kimi qəbul edin
- Sirrlərin təsadüfən daxil edilməsi üçün iş axınlarını müntəzəm olaraq yoxlayın
- Təhlükəsiz seyflərdən və ya mühit sirlərindən istifadə edin, heç vaxt sirləri versiya nəzarətinə daxil etməyin
- Bütün iş axını çıxışlarını dezinfeksiya edin və ya filtrləyin
- Yoxlanıla bilənliyi qorumaq üçün həssas iş axını fəaliyyətini qeyd edin
CI koddur. İş axınları koddur. Qeydlər və çıxışlar koddur. Sirrlərinizi hər addımda qoruyun, yoxsa haker tələb etməyən, sadəcə pis bir gizli sızma ssenarisi riskini götürün. CI/CD dizayn seçimi.





