CI tanımına yazılmış gizli bilgi (ARCH10033)
Anahtar config.ci.plaintext-secret · Önem error · Kategori security · CWE CWE-798
.gitlab-ci.yml’a (üst düzey ya da iş variables) ya da bir GitHub Actions iş akışına (iş akışının, bir işin ya da adımın env’i) yazılan token depoda ve geçmişinde durur: depoyu okuyabilen herkes, her fork dahil, ona sahiptir.
Hatalı
Bölüm başlığı “Hatalı”variables: DEPLOY_TOKEN: change-me-123deploy: stage: deploy script: - ./deploy.sh# DEPLOY_TOKEN is a masked variable in Settings > CI/CD > Variables.deploy: stage: deploy script: - ./deploy.shDüzeltme
Bölüm başlığı “Düzeltme”GitLab: proje ya da grup ayarlarında maskelenmiş bir CI/CD değişkeni olarak tanımlayın. GitHub: depo ya da ortam secret’ı olarak saklayın ve ${{ secrets.NAME }} ile kullanın.
İşaretlenmeyenler
Bölüm başlığı “İşaretlenmeyenler”- Başvurular (
$VAR,${{ secrets.X }}) ve boş değerler. - Gizli bilgiyi yalnızca anan adlar:
TOKEN_URL,PASSWORD_FILE.