Bu, yazılım tedarik zinciri saldırılarının en yaygın türü olan, yazılım bileşenlerinin kamuya açık bir kaydını (kötüye) kullanan saldırılar hakkında bir makale serisinin ilk bölümüdür. açık kaynaklı projeler Diğer kullanıcılarla paylaşılabilecek dosyaları yüklemek için. Kötü niyetli kişiler, kayıt defterini kötü amaçlı yazılım dağıtımı için bir araç olarak kullanarak orada zararlı yazılım yayınladığında, mağdur kuruluşlar enfekte olmuş yazılım bileşenini yüklediğinde veya çalıştırdığında bir tedarik zinciri saldırısı meydana gelir.
Tartışmayı basitleştirmek için şunlardan bahsedeceğiz: yazılım paketleri:, üçüncü taraflarca üretilen paketlenmiş bileşenler. Bu, yalnızca NPM veya Poetry gibi paket yöneticileri tarafından kullanılan bileşenleri değil, aynı zamanda işletim sistemi bileşenleri Kütüphaneler ve çalıştırılabilir ikili dosyalar dahil, konteyner görüntüleri, ve sanal makineler veya araç uzantıları Geliştirme, derleme ve dağıtım araçları için. Her yerde kötü amaçlı paketler gördük. Siber suçlular bunu umursamıyor: Modern yazılım altyapılarının sağladığı alternatiflerden memnunlar ve amaçlarına en uygun kayıt defterini ve aracı kullanıyorlar. Bu nedenle lütfen yazılım paketlerinin konteyner imajları, ikili paketler, açık kaynak depoları ve her türlü uzantı veya eklenti (IDE'ler, CI/CD (sistemler, derleme araçları). Hepsi rutin olarak saldırı altında.
Dizi 5 bölümden oluşacak:
- Açık Kaynak Paketlerinin Sorunu Nedir? Bu yazının teması bu. Her türden suçlu neden zararlı yazılım paketleri yayınlıyor? Neden endişelenmeliyim?
- Zararlı Paketlerin Anatomisi: Eğilimler Nelerdir? Bu bölümde, MEW sistemimizle her gün izlediğimiz tehdide odaklanıyoruz. Yazım hatası veya bağımlılık karışıklığı kullanan çok sayıda kötü amaçlı paket nedeniyle oluşan yüksek arka plan gürültüsüne rağmen, saldırıların daha küçük bir yüzdesi çok daha sinsi ve daha büyük bir risk oluşturuyor. Kötü niyetli aktörlerin işletim sistemine ilişkin davranışları son zamanlarda nasıl değişti? Rakamlar neler? Kullanılan taktikler, teknikler ve prosedürler neler ve görülen zararlı eylemler neler?
- Açık Kaynaklı Zararlı Paketlere Karşı Korunma: Neler İşe Yarar (Yaramaz)?Güvenlik konusunda bilinçli profesyonellerin çoğu bu tehditle nasıl başa çıkılacağına dair fikirlere sahip. Güvenlik yöneticilerinin tereddüt etmeden şunları söylediğini duyduk: SCA Araçlar zaten bir paket sürümünün kötü amaçlı yazılım olup olmadığını size bildiriyor. Ya da bilinen, yüksek puanlı yazılım bileşenlerine bağımlı olduklarını ve herhangi bir kötü amaçlı yazılımın derhal tespit edilip kaldırılacağını söylüyorlar. Açık kaynak kodlu küçük/yama sürümlerini otomatik olarak güvenlik açığı düzeltmeleri almak için kullandıklarını ve bunun "erken yamala, sık sık yamala" ilkesini izleyerek açık kaynak bağımlılıklarındaki riski azaltmanın doğru ve önerilen yolu olduğunu söylüyorlar. Bu bölümde, bu fikirlerin neden yanlış olduğunu ve bu tür yanlış anlamaların bu saldırı mekanizmasının popülaritesine ve kuruluşların yaşadığı ezici riske nasıl katkıda bulunduğunu inceleyeceğiz. Son olarak, neyin işe yaradığını ve bunun için gereken çaba ve kaynakları ele alacağız.
- Açık Kaynaklı Zararlı Paketler: Xygeni YaklaşımıBu bölümde, Xygeni'de Kötü Amaçlı Yazılım Erken Uyarı (MEW) sistemimiz için izlediğimiz stratejiyi sunuyoruz. Yeni bir paket sürümü yayınlandığında bu çok aşamalı sistem gerçek zamanlı olarak nasıl çalışıyor, farklı kaynaklardan kanıtlar nasıl toplanıyor, önceliklendirme nasıl yapılıyor, hangi sınıflandırma kriterlerini izliyoruz ve kötü amaçlı bir paket adayının doğasını doğrulamak için neden hala bazı manuel analizlere ihtiyaç duyuluyor? Dahili ve kayıt defteri ekiplerimizden gelen geri bildirimlerin, sistemin geçmişte toplanan kanıtlardan öğrenmesine ve yanlış pozitifleri minimuma indirmesine nasıl yardımcı olduğunu açıklayacağız. Ayrıca, NPM, GitHub, PyPI ve açık kaynak ekosistemlerindeki diğer önemli altyapıların bekleme sürelerini azaltmalarına nasıl yardımcı olduğumuzu da açıklayacağız..
- Açık Kaynak Yazılımların İstismarı: Kötü Niyetli Adamlardan Ne Beklemeli?Seri, düşmanların saldırıları daha gizli, tespit edilmesi daha zor, belirli sektörlere daha hedefli hale getirmek ve bu saldırı türünden daha fazla fayda sağlamak için benimsediği en yeni yöntemlere odaklanarak sona eriyor. Fidye yazılımı saldırıları bu yöntemle mi gerçekleştirilecek? Kötü niyetli kişiler, daha karmaşık kötü amaçlı paketler sunmak için yapay zeka araçlarından nasıl yararlanıyor? En popüler projeler tehlikede mi? Bu, okuyuculara bu silahlanma yarışı hakkında bir fikir vermek ve kısa vadede (2024'ün ikinci yarısı) ve orta vadede (2025) neler bekleyeceklerini göstermek içindir. Son zamanlarda yaşanan saldırılar gibi saldırıların nasıl işlediğini öğreneceğiz. XZ-Utils Arka Kapısıya da toprağa bağlı yaşam tarzına yönelik saldırı elektron oluşturucu Mart 2024'te yaşananlar, rakiplerin nasıl evrim geçirdiğine karşı tetikte olmamız gerektiğini gösteriyor.
Sahneyi ilk bölümle açalım: Kötü amaçlı açık kaynak kodlu paketlerle ilgili neler oluyor?
Açık Kaynak Paketlerinin Sorunu Nedir?
Son yıllarda, her türden suçlu, kötü amaçlı davranışları yaymak için açık kaynaklı yazılım kayıtlarını kullandı. Bu faaliyetler açık kaynak yazılımın kendisi kadar eskidir, ancak son üç yılda sıklıkları katlanarak arttı.
Zararlı bileşenlerin kamuya açık kayıtlara yayınlanması (bağımlılık tabanlı saldırılar(Bu, tehdit aktörlerinin bilinmeyen geliştiricilerden gelen açık kaynaklı bileşenlere kuruluşların duyduğu güveni kullanarak kötü amaçlı yazılım dağıtmak için kullandığı asimetrik gerilla savaşıdır (hatırlayın ki...)) bağımlılık xkcd çizgi romanıÇünkü paketlere güveniyorsunuz ve paket içeriklerini ve bağımlılıklarını manuel olarak incelemekten çekinmiyorsunuz, bu nedenle bu saldırılar son derece etkili. Asimetri ise büyük ölçüde otomatikleştirilebilmelerinden ve kötü niyetli kişilerin kurbanla doğrudan etkileşime girmesine gerek olmamasından kaynaklanıyor. Paketi halka açık kayıt defterine yükleyip bırakıyorlar.
Zararlı paketler 2022'de 6 kat arttıve 2023'te 2.5 kat büyümeye devam etti. Geçen yıl, önceki yılların toplam sayısının iki katından fazla olan 245,000 gibi devasa bir rakama ulaşan zararlı yazılım paketi tespit edildi. Bu, üstel bir büyüme! 2021'de yüzlerce, 2022'de ise binlerce paketin zararlı yazılım olarak doğrulanarak kaldırılmasının ardından, 2023'te çok daha fazla "gürültü" gördük ve bu yıl da benzer bir hızda devam etti. Ve "en az direnç yolunu" izleyen deneyimsiz siber suçluların neden olduğu bu arka planda, az sayıda yüksek profilli saldırı genel medyada bile manşetlere çıktı.
Bu neden bu kadar büyük bir sorun? Bunun bir sebebi var. aşırı güven Zincirin her yerinde. Açık kaynak yazılım, kaynak koduyla birlikte dağıtılır ve belirli bir lisans altında yayınlanır. Evet, herkes kaynak kodunu inceleyebilir; ancak bunu genel olarak kim yapıyor? Yazılımda kötü amaçlı yazılım bulunmadığını inceledikten sonra, yazılımı kaynaklardan kim derliyor? Paketlenmiş bileşeni (aynı zamanda bir yazılım olarak da bilinir) dağıtmadan önce kim... paketPaket yöneticisine veya derleme aracına giden süreçte, paketin kötü amaçlı yazılımlarla dolu olmadığından ve gelmesi gereken kaynak kodla eşleştiğinden emin olur mu?
Altyapı neden bu kadar kolay saldırılara izin veriyor?
Paket kayıtları Genellikle yayıncının kimliğinin minimum düzeyde doğrulanmasını gerektiren açık platformlardır. "Herkes burada yazılımını yayınlayabilir!" Saldırganlar için çıta düşüktür: Kısa, kimlik avı benzeri kampanyalarda yüzlerce kötü amaçlı paket oluşturmak için tek kullanımlık e-posta adresleri ve tek kullanımlık GitHub hesapları kullanırlar. Sadece hedefli saldırılar için daha yüksek bir karmaşıklık gereklidir: Birçok yıldıza sahip güvenilir bir GitHub kaynak deposu oluşturmanın bile mümkün olduğunu gördük. commitBirden fazla sahte katkıda bulunan kişiden ve popülerlik ve bakımın diğer ölçütlerinden elde edilen veriler. Gökbilimciler ve sahte katkılardan kaynaklanan itibar Otomasyonu sağlamak zor değil. Sadece kötü amaçlı yazılımlar değil, her türlü açık kaynaklı yazılım altyapısında suistimaller gördük. çay protokolü olayı.
Paket yöneticileri, güvenlikten ziyade kullanım kolaylığı için tasarlanmıştır.. Kurulum öncesi ve sonrası komut dosyalarını çalıştırabilirler (bazen bir kütüphane için yerel kod derlemek gerekebilir). Ayrıca, Paket yöneticileri Birden fazla kaynaktan paketler yükleniyor ve bazen varsayılan olarak genel kayıt defterleri kullanılıyor. Yayınlama isteğindeki meta veriler ile paketin kendisindeki meta veriler arasında bir uyumsuzluk olup olmadığını kontrol etmediler.
Bağımlılıklar iç içe geçmiş ve bir grafik oluşturur. Node (JavaScript) gibi belirli ekosistemlerde, küçük taneli bağımlılıklar yüzlerce veya binlerceye ulaşır. Yazılım projelerim tarafından tanımlanan doğrudan bağımlılıklar üzerinde sıkı kontrol sahibi olmak bir şeydir, ancak geçişli bağımlılıklar Kontrol edilmesi daha zordur. Açık kaynak kodlu yazılımlar "arkadaşlarımın arkadaşları da benim arkadaşımdır" ilkesini izledi. Uzak Doğu'nun vahşi ortamında kardeşlik normdur! Tehdit aktörleri bunu biliyor ve kötü niyetli davranışlarını genellikle bilinmeyen, belirsiz bağımlılıkların derinliklerine gizliyorlar. Bu durum, şu olayda da yaşandı: olay akışı hedef alan olay Ortak ödeme cüzdanı.
Açık kaynak yazılım, başlangıcından beri böyle çalıştı. Çok fazla değişmeyecek. Bazı paket kayıt defterleri en iyi ihtimalle iki faktörlü kimlik doğrulama talep ediyor ve genellikle sadece en popüler paketler için geçerli. Bazı kayıt defterleri, onaylanmış bir kuruluş tarafından sahip olunan bir ad alanı olan kapsamlar sağlıyor, ancak trajik bir şekilde Diğerleri bunu desteklemiyor (PyPI) veya isteğe bağlı hale getiriyor (NPM). İlginçtir ki, hatta bir basit tarama şeması (DNS veya GitHub deposu/kuruluşunun grup kimliğiyle eşleşmesi temelinde) ve bunu yaparak PGP imzaları zorunludur. Sağlama toplamları hariç tüm yapılar için, "gürültü"nün çoğunu, yazım hatasıyla alan dolandırıcılığı gibi kötü amaçlı paketleri ortadan kaldırır ve büyük ölçüde sınırlandırır. bağımlılık karışıklığıGelişmiş saldırılar mümkün ancak çok daha zor; bunlardan sadece birkaçı şu şekilde: com.github.codingandcoding:maven-compiler-plugin Maven Central ile tanınır. Ve tüm Maven kayıt defterleri aynı uygulamaları izlemez!
Paket yöneticilerindeki güvenlik kontrolleri, bağımlılık saldırılarını zorlaştırabilir ancak engellemez. Çok faktörlü kimlik doğrulamanın sorunu, otomasyon için, otomasyon komut dosyalarından yapılan API API çağrılarında kullanılacak hesaplar için erişim belirteçleri veya API API anahtarları gibi türetilmiş kimlik bilgilerinin oluşturulmasıdır; bu durumda ikinci bir faktör sağlayan etkileşimli bir kullanıcı bulunmaz. Çok faktörlü kimlik doğrulama, kullanıcı hesaplarını parola sızıntılarından korumak için iyidir, ancak oluşturulan erişim belirteçleri veya API API anahtarları aktifken korunmalıdır, aksi takdirde sahipleri düşmanlar tarafından taklit edilecektir. Paket tabanlı tedarik zinciri kampanyalarının büyük bir kısmı, sızdırılmış bir anahtar/belirteç ile başlar. Şu gibi olayları hatırlayın: Defteri kebir, 3CXVe daha birçok örnekte, tedarik zinciri saldırısını başlatmak için yapılan ön hazırlık aşamasında etkileşimli olmayan kimlik bilgileri ilk olarak ele geçirildi.
Bu tehdide verilen yanıt yeterince güçlü değildi. Üçüncü bölümde, işe yarayan ve feci şekilde başarısız olan şeylere odaklanacağız. Sektörün bu konuda kolektif olarak çalışması gerekiyor. standardKüresel tedarik zincirlerindeki riskleri azaltmak için stratejiler, süreçler, eğitim ve araçlar gereklidir. Bu, tek bir kuruluşun kendi başına çözebileceği bir sorun değildir.
Bu bölümü sonlandırırken, en önemli yanlış anlaşılmaya değinelim: Biz şunlardan bahsediyoruz: kötü niyetli paketler değil savunmasız Birincisi, güvenlik açıkları tasarım veya kodlama hatalarından kaynaklanır, kötü niyet olmaksızın kazara ortaya çıkar. Bu güvenlik açıkları istismar edilebilir, ancak çoğu edilmez. Kötü amaçlı yazılım paketleri her zaman kasıtlıdır ve çalıştırıldıkları takdirde %100 istismar edilebilirler. Karşılaştırılabilir bir risk yok! Bu nedenle Güvenlik açıklarını tespit etmeye ve azaltmaya yönelik bunca çabaya karşılık, kötü amaçlı bileşenler için eşdeğer önlemlerin olmaması paradoksal bir durum..
“Güvenliği ciddiye alıyoruz.”
Alışılagelmiş olanı hayal edelim. Acme ŞirketiWileCoyote.com'un önemli bir tedarikçisi olan Acme, yazılımlarının çoğunu üçüncü taraflardan, %80'den fazlasını ise açık kaynak projelerinden temin ediyor. Şirket, iç kullanım için yazılım üretmenin yanı sıra ortakları, tedarikçileri ve müşterileri/son kullanıcıları için de yazılım sağlıyor. Acme'nin yazılımları Go, JavaScript, Java, C# ve Python dillerinde yazılmış olup, yazılımlarının büyük çoğunluğunu Kubernetes kümeleri altında bulutta çalıştırıyor. Acme, özel imajlarını Docker Hub ve diğer kayıt defterlerinden alınan temel imajlardan oluşturuyor. Ayrıca, bazı kütüphaneleri, paketleri ve konteyner imajlarını da halka açık kayıt defterlerinde paylaşıyor.
Acme güvenliğe çok önem veriyor. Güvenlik sorunlarının farkındalar. open source securityve bunun getirdiği risk. Tüm geliştiriciler, sistem yöneticileri ve DevOps mühendisleri, ikinci faktör kimlik doğrulaması olarak bu sevimli küçük kripto anahtarlarını kullanıyor. commitKod depoları imzalanır, dal koruması etkinleştirilir ve zorunlu kod incelemeleri yapılır. CI/CD Kilitli, gizli bilgiler gizli bir kasada saklanıyor ve yalnızca izin verilen, beyaz listeye alınmış bileşenlerin depolandığı, harici kayıt defterlerini kısmen yansıtan dahili bir kayıt defteri bulunuyor. Acme tarafından geliştirilen yazılımların bu kayıt defterinden üçüncü taraf bağımlılıklarını alması gerekmektedir.
Muhtemelen çoğu kuruluş bu profile uyuyor. Sevgili okuyucu, eğer hala buradaysanız, sizin kuruluşunuz da kesinlikle bu profile uyuyor, değil mi?
Sonra talihsiz bir günde, önemli bir ön uç geliştiricisi Acme'de koştu npm install acme-cute-lib@acme/cute-lib'in doğru kapsamda bir bağımlılık olduğunu unutarak hata yaptılar. Tam olarak hangi hatanın yapıldığı önemli değil, yazılım yaşam döngüsünün mükemmel kontrolüne sahip olunsa bile birçok şey ters gidebilir. Geliştiricimiz, bir APT grubunun Acme'yi hedef aldığını bilmiyordu ve kötü amaçlı bir bileşeni bu isim altında, kötü amaçlı davranışın yalnızca yazılım Acme bilgisayarlarına yüklendiğinde etkinleşeceği kurnaz bir şekilde yayınladı. Paket, yayınlandıktan haftalar sonra bile tespit edilemedi.
Kurulum betiği çalıştırılır ve kimlik bilgilerini arar (geliştiricimizin dizüstü bilgisayarında birçok değerli erişim belirteci vardı), bu da dahili yazılım depolarına ve elbette yalnızca VPN üzerinden erişilebilen söz konusu dahili depoya erişim sağlar. Kötü amaçlı kod, mevcut VPN bağlantısını kullanarak ikinci aşama kötü amaçlı bir bileşeni dahili kayıt defterine yayınlamayı başardı ve Acme tarafından sunulan yazılımların çoğunun paylaştığı ortak bir yardımcı program kütüphanesini etkiledi.
Haftalar sonra, Acme'nin yayınladığı araçları kullanan diğer kuruluşlar, ağlarında garip trafik görmeye başladı; trafik Acme'nin protokolünü kullanıyor ancak Acme alan adına benzeyen sunuculara yönlendiriliyordu. Trafik şifrelenmişti ancak sistem izleme araçları beklenmedik dosyalara erişim ve sistem komutları gibi görünen ancak indirilen yürütülebilir dosyaları çalıştıran işlemlerin yürütüldüğünü tespit etti.
Gerisi malum: Acme ilk başta bu tür davranışların kendilerine atfedilemeyeceğini ve tüm güvenlik önlemlerinin yerinde olduğunu reddetti. Ancak siber güvenlik medyası, tespit edilen davranışın kaynağının Acme'nin bileşenlerinden kaynaklandığını sorgulamaya başlayınca ve güvenlik analizleri bu bileşenlerin gizli kötü amaçlı yazılımlarla ne kadar dolu olduğunu ortaya koyunca, Acme olayı kabul etmek zorunda kaldı ve bir olay müdahale firmasını çağırdı. Zor kazanılmış güveni bir saniyede yerle bir eden olumsuz bir pazarlama kampanyası.Acme, di'ye ulaşmak için sadece bir npm install işlemine ihtiyaç duyuyordu.sasterBu, sıkça kullanılan bir başlıktı. Ardından davalar ve iptal edilen sözleşmeler geldi.
Geçmişteki bilinen olaylarla benzerlikler görüyor musunuz? Acme, iki aşamalı bir tedarik zinciri olayına kurban gitti ve bu olayda çeşitli yöntemler kullanıldı. bağımlılık karışıklığı/yazım hatasıyla ele geçirme Geliştirici iş istasyonunu, üçüncü taraflarca kullanılan yazılımlardaki bileşenlere bulaşan virüslerin yayılması için bir üs olarak kullanan saldırılar. Bu nasıl önlenebilir veya hafifletilebilir?
Zehirli paketler neden bu kadar yaygın?
Bu varsayımsal olay, açık kaynak güvenliğine makul bir yaklaşım sergilense bile, kuruluşların açık kaynak bileşenlerindeki kötü amaçlı yazılımlara karşı korunmak için özel önlemler alması gerektiğini göstermektedir. Şematik olarak, tehdit aktörü şunları yapabilir:
- Yeni bir paket oluşturun (bilinen yazım hatasıyla alan adı ele geçirme veya bağımlılık karışıklığı yollarını izleyerek, bu, kötü niyetli kişilerin en sık kullandığı yöntemdir);
- Mevcut bir virüsü, kaynak koduna enjekte ederek veya katkıda bulunan biri gibi göstermeye çalışarak enfekte etmeyi deneyin. pull requestveya sosyal mühendislik kullanarak bir bakımcı haline gelmek (tıpkı "Jao Tan"ın XZ Backdoor'da yaptığı gibi) sağ9ctrl GitHub kullanıcısı şunu yaptı: olay akışı (2018 sonbaharındaki olay) veya açık kaynak kodlu depo kimlik bilgilerini elde ederek ve depo yöneticisinin kimliğine bürünerek;
- Paket oluşturma işlemi sırasında, kötü amaçlı bir derleme komut dosyası çalıştırarak kötü amaçlı yazılım enjekte edin.Ya da ortadaki adam saldırılarıyla paket indirmelerine müdahale etmek (neyse ki, artık çoğu kayıt defterinde TLS her zaman zorunludur).
- Paketlenmiş bileşeni doğrudan kayıt defterine enjekte edin, genellikle kayıt defteri kimlik bilgilerini ele geçirerek (Acme'nin saldırısı gibi birçok gelişmiş saldırı için tercih edilen alternatif; burada ilk aşamada ele geçirilen iş istasyonunda dahili kayıt defteri erişim belirteci bulunuyordu, örneğin olağan şekilde). .env or ~/.m2/settings.xml(Kötü niyetli kişiler gizli bilgilerin nerede olduğunu biliyorlar). Kayıt defterlerindeki güvenlik açıkları da istismar edildi.
Kötü amaçlı yazılımlarla kayıt defterlerini zehirlemek, bağımlılık saldırılarının temelini oluşturur. Bu yeni bir şey değil: yaygınlığı hızla arttı, ancak aynı teknikler beş yıl önce olduğu gibi bugün de işe yarıyor.
Kaynak: Hainin Bıçak Koleksiyonu.
Zararlı paket, kurulum sırasında, yazılım derleme sırasında veya çalışma zamanında çalışabilir. Davranışı ise bilgi sızdırmadan (örneğin ikinci aşama girişim için gizli bilgileri çıkarmak) kaynak kod çıkarmaya ve ek zararlı yazılım bırakmaya kadar değişebilir. Bir sonraki bölümde, zararlı paketleri ve nasıl yayıldıklarını inceleyeceğiz.
Ek okuma
Sonraki bölüm Zararlı Paketlerin Anatomisi: Eğilimler Nelerdir? Bu yazımızda, Kötü Amaçlı Yazılım Erken Uyarı sistemimizle her gün izlediğimiz gerçek vakalara odaklanacağız. Hangi tür kötü amaçlı yazılımların görüldüğünü ve hangi taktiklerin, tekniklerin ve prosedürlerin en çok tercih edildiğini inceleyeceğiz. Gizleme yöntemlerini ve potansiyel inceleyicilerden nasıl saklanmaya çalıştıklarını, tespit edilmekten kaçınmak için kullanılan teknikleri ve telemetri ve yatay hareketlerle nasıl evrim geçirdiklerini ele alacağız. Takipte kalın!
Referanslar
- Arkadan Bıçaklayanın Bıçak Koleksiyonu: Açık Kaynak Yazılım Tedarik Zinciri Saldırılarının Bir İncelemesiM. Ohm ve diğerleri, Mayıs 2020.
- Açık Kaynak Kodlu Kötü Amaçlı Yazılım KorumasıXygeni'den teknik doküman.
- Software Supply Chain Security Geçmişe Bakış: Daha Güvenli Bir 2024'ü ŞekillendirmekXygeni'den gelen rapor.





