deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak dev.to (home feed)

GitHub'ın pull_request_target değişiklikleri en çok yıldız alan 1.000 depodan 269'unu etkiliyor

GitHub'ın en çok yıldız alan 1.000 deposunun taranması, 269'unun pull_request_target üzerinde workflow çalıştırdığını ortaya koyuyor; GitHub bu trigger'ı 2 Kasım 2026'dan itibaren Actions politikası olmayan herkese açık depolarda engelleyecek.

GitHub'ın pull_request_target değişiklikleri en çok yıldız alan 1.000 depodan 269'unu etkiliyor

Tek bir trigger'a iki tarihli değişiklik

GitHub, pull_request_target workflow trigger'ının davranışını bu yıl iki adımda değiştiriyor. dev.to'da yayımlanan bir analizeye göre ilki 20 Temmuz 2026'da yürürlüğe girdi; actions/checkout, bakımcılar açıkça izin vermedikçe pull_request_target ve workflow_run workflow'larının içinde fork pull request kodunu checkout etmeyi reddetmeye başladı. İkincisi ise 2 Kasım 2026'da devreye girecek; GitHub, trigger'a izin veren bir Actions politikası — depo, organizasyon veya kurumsal düzeyde — bulunmayan herkese açık depolarda pull_request_target'ı engelleyecek.

Bu trigger'ın önemli olmasının nedeni, başlattığı workflow'ların fork katkıcısının normalde alacağı kısıtlı erişim yerine taban deponun izinleri ve secret'larıyla çalışmasıdır. Güvenilmeyen fork kodunu bu workflow'ların içine yerleştirmenin uzun zamandır tehlikeli sayılmasının nedeni de tam olarak budur.

En çok yıldız alan depoların taranması

Etki alanını ölçmek için dev.to yazarı, yeniden kullanılabilir bir Action ya da bağımlılıksız bir Python betiği olarak sunulan ücretsiz prt-check denetleyicisini geliştirdi ve 26 Eylül 2026'da — varsayılan engelden 37 gün önce — en çok yıldız almış 1.000 herkese açık, fork olmayan, arşivlenmemiş depo üzerinde çalıştırdı. Tarama yalnızca varsayılan dallardaki .github/workflows altındaki workflow YAML dosyalarını okudu — böyle dosyaları olan 809 depoda toplam 9.328 dosya — ve hiçbir şey yürütmedi. Yalnızca toplu rakamlar yayımlandı; hiçbir depo adlandırılmadı.

Taramanın bulguları

Ana rakam: 1.000 deponun 269'u (%26,9) pull_request_target üzerinde en az bir workflow çalıştırıyor ve bunlar 540 workflow dosyasına yayılıyor. Bakımcıları trigger'a bir Actions politikası aracılığıyla izin vermedikleri sürece bu otomasyon 2 Kasım'da çalışmayı bırakacak.

Hacmin ötesinde tarama belirli risk kalıplarını da işaretledi. Dokuz depo (%0,9), guard sonrası sürümlü actions/checkout ile privileged bir workflow içinde fork pull request kodunu checkout ediyor ve fork'ları hariç tutan bir koşul bulunmuyor. Bu adımlar 20 Temmuz'dan beri fork pull request'lerde başarısız oluyor; label ile koşullanan varyantlar da label uygulandığı an başarısız oluyor.

Üç depo, fork kodunu guard var olmadan önceki bir sürüme ya da commit'e sabitlenmiş actions/checkout ile checkout ediyor. Yeni red onlarda hiç tetiklenmiyor; dolayısıyla fork kodu workflow'un token'ı ve secret'larının yanı başında duruyor. Rapor bunları önce düzeltilmesi gereken vakalar olarak görüyor ancak adlarını vermiyor. Dört depo allow-unsafe-pr-checkout seçeneğini bilinçli olarak true yaparak izin verdi — yazarın notuna göre bu seçim yalnızca sonraki hiçbir adım fork'tan gelen dosyaları yürütmediğinde güvenli. Dokuz depo daha, pull ref'lerine karşı doğrudan git fetch ya da gh pr checkout ile pull request kodunu çekiyor; yeni guard bu yolu kapsamıyor.

Görünmez politikan uyarısı

Actions politikaları deponun dışından okunamıyor; dolayısıyla 269 rakamı trigger'a bağımlı workflow'ları sayıyor, kesin duracak olanları değil. Bu depoların bir kısmı pull_request_target'a zaten izin veriyor ve Kasım'dan sonra da çalışmaya devam edebilir. Yazar ayrıca fork-checkout bulgularının ardındaki depoları elle inceledi ve inceleme denetleyiciyle çeliştiği yerlerde denetleyiciyi düzeltti; job koşulları, yalnızca Dependabot içeren job'lar, workflow_run upstream'leri, dal filtreleri ve tam actions/checkout sürümlerine çözülen commit sabitlemeleri için düzeltmeler yapıldı.

Bugün trigger üzerinde ne çalışıyor

En yaygın kullanımlar etiketleme ve otomasyon yapıştırıcısı. dev.to sayımlarına göre actions/github-script 269 deponun 125'inde, actions/labeler 50'sinde, actions/create-github-app-token 25'inde yer alıyor; ardından Node ve Python kurulum adımları, semantik pull request başlığı denetimleri, merge-conflict etiketlemesi, artifact yükleme ve indirme ile katkıcı sözleşmesi yönetimi geliyor.

Sekiz depo trigger üzerinde yapay zekâ ya da inceleme action'ları çalıştırıyor: beşinde anthropics/claude-code-action, ayrıca birer tanesinde presubmit/ai-reviewer, anthropics/claude-code-base-action ve openai/codex-action. Bu otomatik inceleyiciler, trigger açıkça izin verilmedikçe 2 Kasım'da yanıt vermeyi bırakıyor.

Bakımcılar ne yapmalı

Rapor, kendi deponuza karşı prt-check çalıştırmanızı, ardından üç çareden birini seçmenizi öneriyor: workflow'ü ayrıcalıksız pull_request trigger'ına taşıyın, güvenilmeyen denetimlerin privileged adımlardan yalıtılmış çalışması için pull_request artı workflow_run olarak ikiye bölün, ya da pull_request_target'ı bilinçli olarak tutun ve bir Actions politikası aracılığıyla izin verin. Denetleyicinin kaynak kodu, testleri ve tam yöntemi yayımlandı; yazar yanlış pozitifler için issue bildirimlerini davet ediyor.

Neden önemli

GitHub'ın en popüler projelerinin dörtte birinden fazlası, haftalar içinde varsayılan olarak kapanacak bir trigger'a bağımlı; ve aksaklık iki dalgada geliyor: fork pull request'ler guard'lı checkout kullanan workflow'lerde zaten bozuluyor, etiketleme, katkıcı sözleşmeleri ve yapay zekâ inceleyicileri ise Kasım'da sessizleşiyor. Sabitlenmiş checkout vakaları daha keskin bir sorun, çünkü üç yaygın kullanılan proje fork kodunu hâlâ privileged workflow'lerin içine yerleştiriyor — bilinen bir ayrıcalık yükseltme yolu. Actions politikaları dışarıdan görünmediğinden, 269'unun hangilerinin zaten korunduğunu kimse söyleyemez. Bu da son tarihten önce kendi kendine denetimi tek güvenilir cevap yapıyor.

  • #github-actions
  • #ci-cd
  • #security
  • #devops
  • #open-source

İlgili yazılar