Shai hulud - npm packages - supply chain attack

Shai-Hulud: npm Paketləri Qurdunun İzahı

TL; DR

14 sentyabr 2025-ci ildə tədqiqatçılar müəyyən etdilər Şai Hulud, içərisində gizlənmiş öz-özünə çoxalan bir qurd npm paketləri, adi asılılıq yeniləməsini tam miqyaslı bir yeniləməyə çevirir təchizat zənciri hücumuİlk dəfə görüldü @ctrl/tinycolor Daniel dos Santos Pereira tərəfindən hazırlanan paketdə Shai-Hulud sirləri toplayır, onları GitHub depoları və iş axınları vasitəsilə ifraz edir və oğurlanmış etimadnamələrdən istifadə edərək özünü reyestrdə yenidən dərc edir. Bir neçə gün ərzində yoluxmuş paketlərin sayı onlarladan yüzlərləyə yüksəldi və bu da təsdiqləyir ki, Şeyhulud sadəcə başqa bir troyan deyil, npm ekosistemində avtomatik olaraq yayılmaq üçün hazırlanmış bir qurddur.

Təsir: İctimai npm paketlərini quraşdıran hər hansı bir geliştirici və ya CI çalışdırıcısı risk altındadır.

Təcili tədbirlər: məlum versiyaları bloklayın, yalnız kilid faylı quraşdırmalarına keçin, npm və GitHub tokenlərini fırladın, iş axınlarını yoxlayın və Güzəşt Göstəricilərini (IoC) izləyin.

Nə baş verir?

The Şay-Hulud təchizat zəncirinə npm paketlərində hücum son dövrlərin ən dağıdıcı hadisələrindən biridir. Təcrid olunmuş troyanlardan fərqli olaraq, bu qurd qarışıqdır etimadnamə oğurluğu, avtomatlaşdırılmış ekfiltrasiya və özünükopyalamaNəticə etibarilə, infeksiya müddəti həftələrdən cəmi bir neçə saata qədər qısaldı.

DevOps komandaları üçün dərs aydındır: əgər hər quraşdırma kodu icra edə bilirsə, onda hər asılılıq yeniləməsi potensial pozuntu nöqtəsidir.

Mümkün İlkin Vektor və Hədəflənmiş Etimadnamələr

Erkən təhlil hücumun ehtimal ki, başladığını göstərir oğurlanmış etimadnamələrMəsələn, fişinq kampaniyaları npm-i saxtalaşdırır. login və ya MFA sorğuları geliştirici tokenlərini ələ keçirmiş ola bilər. Hücumçular ilk dayaq nöqtəsini əldə etdikdən sonra, qurd özünü npm paketlərinə yerləşdirərək və daha çox sirri oğurlayaraq yayıldı:

  • npm konfiqurasiya faylları kimi .npmrc, tez-tez dərc tokenlərini ehtiva edir.
  • Ətraf mühit dəyişənləri və GitHub PAT-ları ilə konfiqurasiyalar və CI/CD sirləri.
  • Bulud metaməlumatlarının son nöqtələri (AWS, GCP, Azure) yanal hərəkət üçün qısamüddətli etimadnamələr verir.

Buna görə də, etimadnamə oğurluğu işə salma platformasına çevrildi. Etibarlı npm tokenləri və GitHub sirləri ilə Shai-Hulud əlavə insan səyi olmadan birdən çox paket və depoda özünü təkrarlaya bildi.

Şay-Hulud Təchizat Zəncirinə Hücumun İcraçı Təsiri

Shai-Hulud bu gün də aktivdir. Bu qurd təsir qrafikini sürətləndirir. Bir vaxtlar troyanla həftələrlə davam edən şey indi saatlarla açılır. Nəticədə, yayılma daha sürətli və cilovlamaq daha çətindir. Bu, aşağıdakılarla irəliləyir:

  • npm publish tokenlərini və GitHub sirlərini oğurlamaq.
  • Özünü digər npm paketlərinə yenidən dərc edir.
  • Davamlılıq üçün zərərli GitHub Actions iş axınları əlavə olunur.

Kim təsirlənir:

İctimai npm paketlərini quraşdıran istənilən komanda təhlükə altındadır. Bundan əlavə, keşlənmiş npm və ya GitHub tokenləri olan tərtibatçılar yüksək risklə üzləşirlər. Genişmiqyaslı sirlərdən istifadə edən CI çalışdırıcıları da həssasdırlar.

Biznes riski

Biznesə təsiri sürətlə artır. Oğurlanmış tokenlər hesabın ələ keçirilməsinə, paketlərin oğurlanmasına və hətta buluddan sui-istifadəyə səbəb ola bilər. Bundan əlavə, GitHub iş axınlarında davamlılıq təmizləməyi çətinləşdirir. Buna görə də, komandalar Şai-Huluda qapalı bir hadisə kimi deyil, davam edən bir hadisə kimi yanaşmalıdırlar.

Shai-Hulud Təchizat Zəncirinin Hücumu npm paketlərində necə işləyir

Hücumçunun məqsədləri və motivləri

Kampaniya üç şey üçün optimallaşdırılır:

  • Birinci məqsəd budur ki, miqyasda etimadnamələri oğurlamaq geliştirici noutbuklarından və CI çalışdırıcılarından. Buraya npm dərc tokenləri, GitHub tokenləri və bulud etimadnamələri daxildir. Əslində, çoxsaylı təhlillər TruffleHog-un işə salınması və bulud metaməlumatlarının son nöqtələrinə sorğu edilməsi kimi sistematik gizli məlumat toplamağı təsdiqləyir.
  • İkinci məqsəd isə avtomatik olaraq yayılır pozulmuş texniki xidmət təminatçılarının nəşr hüquqlarından sui-istifadə etməklə. Nəticədə, bir dayaq tez bir zamanda bir çoxuna yayılır, çünki digər paketlərin yeni yoluxmuş versiyaları əlavə insan səyi olmadan ortaya çıxır.
  • Üçüncü məqsəd isə etibarlı şəkildə davam edin və eksfiltrasiya edin GitHub infrastrukturu vasitəsilə. Hücumçular ikiqat bazalı “Shai-Hulud” adlı ictimai repo yaradırlar64 data.jsonvə əlavə olaraq, onlar seriallaşdıran bir iş axını qururlar ${{ toJSON(sirlər) }} və onu statik vebhook-a yerləşdirir.

Ehtimal olunan nəticəyə reyestrlərə və mənbə kodlarına uzunmüddətli giriş, bulud hesablarına sürətli lateral keçid və təchizat zəncirini daha da silahlandırmaq seçimi daxildir. İctimai hesabatlar göstərir ki, özəl depolar ictimaiyyətə açıqdır “-miqrasiya” məlumatların təsirini və impulsunu artıran şəkilçi

Şai-Hulud yükünün içərisində: bundle.js npm Paketlərində

Şay-Hulud gəmiləri böyük, Webpack-paketli və çox minifləşdirilmiş JavaScript faylı (bundle.js, təxminən 3–3.7 MB) birdən icra edən quraşdırma sonrası ilgək paket.jsonNəticə etibarilə, Hər quraşdırma avtomatik olaraq faydalı yükü işə salır. Bu dizayn identifikatorları gizlədir, idarəetmə axınını sıxışdırır və bütün məntiqi quraşdırma zamanı işə düşən tək bir artefakta itələyir. Analitiklər ardıcıl olaraq Webpack paketini, qeyri-adi fayl ölçüsünü və quraşdırma müddətinin icrasını təsdiqləyirlər.

Nümunələrdə görəcəyiniz qarışıqlıq və anti-analiz xüsusiyyətləri:

  • Minifiqləşdirilmiş modul qrafiki rəqəmli modul ID-ləri, seyrək şərhlər və düzləşdirilmiş idarəetmə axını ilə. Üstəlik, Bu struktur əl ilə yoxlamanı olduqca çətinləşdirir.
  • İp gizlətmə base64 təbəqələri və tikinti köməkçiləri vasitəsilə. Məsələn, təkrarlanan base64 kodlaşdırması və dekodlanması adətən eksfiltrasiya prosedurları ətrafında görünür.
  • Dinamik göndərmə vasitəsilə qiymətləndir-stil nümunələri və yaradılan funksiya gövdələri, buna görə də kodun iş vaxtında davranışı dəyişdirməsinə imkan verir.
  • ƏS filtrləmə Xüsusilə CI çalışanlarında və geliştirici noutbuklarında Linux və macOS icrasına üstünlük vermək.

Funksional baxımdan, dəst moduldur. Yazılar, ƏS kəşfi, fayl sistemi və git gizli skanları, bulud SDK girişi, GitHub API əməliyyatları və saxlayıcının sahib olduğu digər paketləri redaktə edən yayma mühərriki üçün modulları təsvir edir. Əslində, StepSecurity və ReversingLabs hər ikisi zərərli çəngəl ilə paketləri avtomatik olaraq yeniləyən bir funksiyanı vurğulayır.

Shai-Hulud-da Quraşdırma Zamanı İcrası: npm Paketləri Qurdu Necə Tetikleyir

Hücum nə vaxt başlayır postinstall node işlədir bundle.js. Bu mərhələdə skript yaddaşdakı iş vəziyyətini işə salır və paketdən çıxarır və bununla da qurdun tam işləməsi üçün zəmin yaradır.

Kəşf və məhsul yığımı

  • Faydalı yük, process.env faylını zibilləyir və yüksək entropiyalı sirlər və token prefiksləri üçün yerli faylları skan edir. Bundan əlavə, TruffleHog-u işə salmaqla əhatə dairəsini genişləndirir.
  • Qısamüddətli etimadnamələri toplamaq üçün bulud metaməlumatlarının son nöqtələrini sorğulayır. Misal üçün, zənglər 169.254.169.254 AWS-də və ya metadata.google.internal GCP üzərində tez-tez yoluxmuş hostlarda görünür.
  • Nəticədə, Tapılan hər hansı bir etimadnamə dərhal yeni npm paketlərini dərc etmək və ya GitHub iş axınlarını təkanlamaq üçün istifadə edilə bilər.

Eksfiltrasiya

  • Qurd adlı yeni GitHub reposu yaradır Şai Hulud və ikiqat base64 kodlu yazır data.json platforma detalları, mühit boşluqları və sirrlərlə. Göründüyü kimi, müdafiəçilər hara baxacaqlarını bilirlərsə, bu səs-küylü davranışı asanlıqla aşkar etmək olar.
  • Həmçinin, tez-tez adlı bir budaqda GitHub Actions iş axını qurur şai-hulud, seriyalaşdıran ${{ toJSON(secrets) }} və məlumatları statik vebhook-a yerləşdirir. Bundan əlavə, bu iş axını kimsə onu aktiv şəkildə silənə qədər davam edir.

Artma

  • Aşkar edilmiş hər hansı bir npm tokeni ilə, faydalı yük, pozulmuş saxlayıcıya məxsus bütün paketləri sadalayır. Daha sonra, hər bir tarballı alır, bundle.js və postinstall girişini yerləşdirir və paketi yenidən dərc edir.
  • Nəticədə, bir neçə saat ərzində onlarla yoluxmuş paket peyda ola bilər və bu da ekosistemdəki partlayış radiusunu çoxaldır.

Davamlılıq və məruz qalma

  • Qurd zərərli iş axınlarını canlı saxlayır və bir neçə halda şəxsi repozitoriyaları public-ə çevirir “-miqrasiya” şəkilçi. Ümumilikdə, bu, hücumçunun dayaq mövqeyini qorumasını və məlumat sızmasını maksimum dərəcədə artırmasını təmin edir.

Açar aşkarlama qeydi
Bu qeyri-adi istifadə ${{ toJSON(secrets) }} Actions iş axınları nadir hallarda rast gəlinir. Buna görə də, Komandalar ov zamanı buna yüksək siqnal göstəricisi kimi yanaşmalıdırlar.

Axtarmalı olduğunuz dezinfeksiya edilmiş iş axını nümunəsi

Bu qeyri-adi istifadə üçün JSON(sirlər) Actions bu hadisədə yüksək siqnal göstəricisidir.

Yüksək səviyyəli yayılma psevdo-kodu (təhlükəsiz, təsviri)

Analitiklər bu döngəni miqyasda müşahidə etdilər ki, bu da onlarla yoluxmuş paketdən yüzlərləyə sürətli sıçrayışı izah edir.

Niyə bu paket ekosistemində qurddur

Qurd, hər mərhələdə əl ilə operator addımları tələb etmədən öz-özünə yayılan zərərli proqramdır. Əməliyyat sistemlərində qurdlar adətən bir maşından digərinə keçmək üçün şəbəkə zəifliklərindən istifadə edirlər. Bunun əksinə olaraq, Shai-Hulud npm reyestrinin daxilində fəaliyyət göstərir. Onun səmərəli yolu etimadnamənin təkrar istifadəsi.

Qurd oğurlanmış npm publish tokenlərindən istifadə edir. Etibarlı etimadnamələri əldə edən kimi, yoluxmuş versiyaları eyni texniki xidmət təminatçısına məxsus digər paketlər altında yenidən dərc edir. Daha sonra həmin paketlər şübhəsiz tərtibatçılar və ya CI çalışdırıcıları tərəfindən quraşdırılır və dövr təkrarlanır.

Bu səbəbdən, təhlükəsizlik analitikləri, o cümlədən Qaranlıq oxu, Şai-Hulud kimi təsnif edin özünü çoxaldan qurd sadə bir troyan və ya yazı səhvi hadisəsi deyil. Fərq vacibdir: bir troyan adətən bir sahibi təhlükəyə atır, lakin bir qurd təsirini avtomatik olaraq ekosistemdə artırır.

“Necə işləyir” fırıldaq vərəqi

Şai-Huludun həyat dövrünü xülasə etmək üçün bir mənfi cəhət varcisonun əsas mərhələlərinin təhlili:

  • Bir paket quraşdırma sonrası quraşdırılıb və bundle.js icra edir.
  • Fayload mühit dəyişənlərini boşaldır, faylları və git tarixçəsini skanlayır, işə salır TruffleHog, və bulud metaməlumat xidmətlərinə sorğu göndərir. Nəticə etibarilə, tapılan hər hansı bir sirr dərhal faydalı olur.
  • Eksfiltrasiya iki şəkildə baş verir: birincisi, adlı ictimai repo yaratmaqla Şai Hulud ikiqat base64 kodlu ilə data.jsonikincisi, GitHub Actions iş axını yaratmaqla ${{ toJSON(secrets) }} veb-hook-a.
  • Oğurlanmış npm tokenindən istifadə edərək, qurd eyni zərərli çəngəl ilə pozulmuş saxlayıcıya məxsus bütün digər paketləri yenidən dərc edir. Bu şəkildə infeksiya sürətlə çoxalır.
  • Nəhayət, təcavüzkar daha çox sirr, yaymaq üçün daha çox bağlama saxlayır və əzmkarlıq GitHub hesabları və depoları daxilində.

Bu hücum sinfindən praktik olaraq necə qaçınmaq olar

Şai-Hulud bir oyanış çağırışıdır. Tokenləri oğurlayıb özünü yenidən nəşr edən bir qurd gələcək risk deyil, o, canlıdır npm paketləri ekosistemi bu gün. Bu tipli halların qarşısını almaq üçün təchizat zənciri hücumu, komandaların proqramlaşdırıla bilən, avtomatlaşdırılmış və birbaşa tətbiq edilə bilən idarəetmə vasitələrinə ehtiyacı var CI/CD pipelines. Bunlar artıq tətbiq edə biləcəyiniz eyni müdafiə vasitələridir Xygenie.

Darvazada pis əsərləri dayandırın

npm paketlərini və tarballs fayllarını geliştiricilərə və ya CI işlərinə çatmazdan əvvəl skan etməlisiniz. Böyük ölçülü. bundle.js fayllar, şübhəli post-install hooksvə qarışıqlıq markerlərinin hamısı erkən təhlükə siqnalları kimi xidmət edir. Bundan əlavə, soyutma dövrlərinin tətbiqi və sancaqlanmış versiyalar pipelines, təzə, yoxlanılmamış buraxılışların avtomatik olaraq istehlak edilməsinin qarşısını alır.

Harden CI/CD default olaraq

Guardrails in CI/CD vacibdir. Onlar yeni skriptlər və ya ikili fayllar təqdim edən birləşmələri və ya quraşdırmaları rədd edirlər. Eyni zamanda, sirləri seriyalaşdıran və ya xarici yazıları sınayan iş axınlarını bloklayırlar. Komandalar həmçinin yalnız kilid faylı quraşdırmalarını tələb etməlidirlər (npm ci) hər yerdə pipelines beləliklə, asılılıq dəstləri təkrarlana bilən və təhlükəsiz qalır.

Token partlayış radiusunu azaldın

Sirrlər tək bir uğursuzluq nöqtəsinə çevrilməməlidir. Kodu, konfiqurasiyaları və pipeline üçün çıxış açıqlanmış etimadnamələrTokenlər qısa ömür müddəti nəzərə alınmaqla dar çərçivədə olmalı və ifşa aşkar edildikdə avtomatik olaraq fırlanmalıdır. Bir qayda olaraq, şübhəli postinstall əməliyyatını yerinə yetirən hostda istifadə edilən hər hansı bir tokeni pozulmuş hesab edin.

Qurd davranışını erkən görün

Anomaliyanın aşkarlanması Əsas məsələdir. Məsələn, npm dərc hadisələrində qəfil sıçrayışlar, səbəbsiz görünən yeni iş axınları və ya qəribə kodlanmış fayllarla dolu yeni ictimai depolar hamısı qurd fəaliyyətini siqnal edə bilər. Buna görə də, komandalar tez bir zamanda xəbərdarlıqlar etməli və bu xəbərdarlıq əlamətləri göstərən hər hansı bir texniki xidmət işçisini və ya işəgötürəni təcrid etməlidirlər.

Quruluşları pozmadan tez bir zamanda təmir edin

Sürət və təhlükəsizlik birlikdə olmalıdır. Avtomatlaşdırılmış pull requests pozulmuş npm paketlərini yoxlanılmış versiyalarla əvəz edə bilər. Bundan əlavə, əlçatanlıqistismar qabiliyyəti Analiz, yeniləmələrin minimal və sabit qalmasını təmin edir. Nəhayət, məruz qalma təsdiqləndikdən sonra təsirlənmiş CI qaçışçılarını təmiz görüntülərdən bərpa edin və hücumun daha da yayılmasının qarşısını alın.

Kompromis Göstəriciləri (IoC)

Şay-Huludu təhlil edərkən komandalar hər ikisinə diqqət yetirməlidirlər statik IoC-lər fayllarda və Davranış IoC-ləri in pipelines. Birlikdə, bu siqnallar infeksiyaları erkən aşkar etməyə və qurdun daha da yayılmasından əvvəl reaksiya verməyə kömək edir.

Statik IoC-lər

Aşağıdakı SHA-256 daycestlərinin uyğunluğu müşahidə edildi bundle.js nümunələr:

  • 46faab8ab153fae6e80e7cca38eab363075bb524edd79e42269217a083628f09
  • 81d2a004a1bca6ef87a1caf7d0e0b355ad1764238e40ff6d1b1cb77ad4f595c3
  • dc67467a39b70d1cd4c1f7f7a459b35058163592f4a9e8fb4dffcbba98ef210c

Bundan əlavə, bu təkrarlanan nümunələrə diqqət yetirin:

  • A bundle.js paketin kökündə.
  • "postinstall": "node bundle.js" daxili package.json.
  • Depolar adlı Şai Hulud.
  • GitHub iş axınları ehtiva edir ${{ toJSON(secrets) }}.

Davranış IoC-ləri

Fayl imzalarından başqa, qurd fəaliyyəti özünü davranış vasitəsilə göstərir. Məsələn:

  • Birdən-birə npm partlayışları bir texniki işçidən hadisələri dərc edir.
  • Məlumatları xarici son nöqtələrə yönləndirən yeni iş axınları.
  • CI çalışdırıcılarından tetiklenen gedən POST sorğuları.
  • Bu yaxınlarda kodlanmış ləkələrlə ictimai depolar yaradıldı.

Sürətli ovlar

Nəticə: Şey-Huluddan dərslər

The Şay-Hulud təchizat zəncirinə hücum npm paketlərindəki skaner bugünkü proqram təminatı təchizat zəncirinin nə qədər kövrək olduğunu göstərir. Bu qurd zərərli kod əlavə etməklə kifayətlənməyib. Tokenləri oğurlayıb, məlumatları göndərib və sonra özünü avtomatik olaraq yenidən dərc edib. Buna görə də hücum həftələr əvəzinə saatlarla yayılıb.

Tərtibatçılar və DevOps komandaları üçün dərslər aydındır:

  • Hər quraşdırma kodu işlədir. Hətta adi bir npm paketi belə postinstall qurdunu gizlədə bilər.
  • Hər bir tokenin yüksək dəyəri var. Oğurlandıqdan sonra, zərərli proqram təminatını daha da yaymaq üçün istifadə edilə bilər.
  • Hər pipeline yoxlamalara ehtiyacı var. Without guardrails Asılılıqlar, iş axınları və sirrlər mövzusunda bir kompromis tez bir zamanda istehsala zərbə vura bilər.

Buna görə də, Shai-Hulud kimi hücumların qarşısını almaq üçün avtomatik və tətbiqi asan olan idarəetmə vasitələri tələb olunur. Komandalar quraşdırmadan əvvəl npm paketlərini skan etməli, kilid faylı qurmalarından istifadə etməli, qəribə nəşr fəaliyyətini aşkarlamalı və tokenləri qısa müddətli saxlamalıdırlar. Bu addımlar artıq könüllü deyil. Əksinə, onlar müasir dünyada dayanıqlığın təməlidir. pipelines.

Xygeni-də biz Şai-Hulud təchizat zəncirinə hücumu bütün açıq mənbəli ekosistemə xəbərdarlıq kimi görürük. Davamlı irəliləyiş yolu təchizat zəncirinin təhlükəsizliyini birbaşa inkişaf prosesinə, kod, npm paketləri və pipelineəlaqə.

Aşağıda Shai-Hulud-da oğurlanmış kimi bildirilən npm paketlərinin və versiyalarının tam siyahısı verilmişdir. Kilid fayllarınızı, reyestrlərinizi və CI-ni yoxlamaq üçün istifadə edin. pipelineməruz qalma üçün s.

Təhlükəli paketlərin siyahısı

📦 Güzəştə gedən npm paketlərinin önizləməsi

Paket Adı Versiya Yayın tarixi
json-rules-engine-sadələşdirilmiş0.2.12025-09-14T17:58:51.203Z
təyyarə pilotu0.8.82025-09-14T18:35:07.600Z
mcp-bilik-qrafiki1.2.12025-09-14T18:35:09.494Z
başlıq0.3.12025-09-14T18:35:09.521Z
tullanma qapısı0.0.22025-09-14T18:35:09.651Z
tvi-cli0.1.52025-09-14T18:35:10.996Z
@thangved/geri çağırış pəncərəsi1.1.42025-09-14T20:31:38.479Z
@tnf-dev/api1.0.82025-09-14T20:31:39.547Z
@tnf-dev/js1.0.82025-09-14T20:31:41.251Z
@tnf-dev/mui1.0.82025-09-14T20:31:41.259Z
@tnf-dev/core1.0.82025-09-14T20:31:42.728Z
@teselagen/reaksiya cədvəli6.10.202025-09-14T20:37:08.597Z
@hestjs/demo0.1.22025-09-14T20:45:52.348Z
@nexe/eslint-config0.1.12025-09-14T20:45:53.625Z
@hestjs/eslint-config0.1.22025-09-14T20:45:55.044Z
@nexe/config-meneceri0.1.12025-09-14T20:45:55.066Z
@nexe/logger0.1.32025-09-14T20:45:55.170Z
@hestjs/logger0.1.62025-09-14T20:45:55.197Z
@hestjs/validation0.1.62025-09-14T20:45:55.595Z
@hestjs/core0.2.12025-09-14T20:45:55.888Z
➡️ Təhlükəli Paketlərin Tam Siyahısına Baxın
Paket Adı Versiya Yayın tarixi
json-rules-engine-sadələşdirilmiş0.2.12025-09-14T17:58:51.203Z
təyyarə pilotu0.8.82025-09-14T18:35:07.600Z
mcp-bilik-qrafiki1.2.12025-09-14T18:35:09.494Z
başlıq0.3.12025-09-14T18:35:09.521Z
tullanma qapısı0.0.22025-09-14T18:35:09.651Z
tvi-cli0.1.52025-09-14T18:35:10.996Z
@thangved/geri çağırış pəncərəsi1.1.42025-09-14T20:31:38.479Z
@tnf-dev/api1.0.82025-09-14T20:31:39.547Z
@tnf-dev/js1.0.82025-09-14T20:31:41.251Z
@tnf-dev/mui1.0.82025-09-14T20:31:41.259Z
@tnf-dev/core1.0.82025-09-14T20:31:42.728Z
@teselagen/reaksiya cədvəli6.10.202025-09-14T20:37:08.597Z
@hestjs/demo0.1.22025-09-14T20:45:52.348Z
@nexe/eslint-config0.1.12025-09-14T20:45:53.625Z
@hestjs/eslint-config0.1.22025-09-14T20:45:55.044Z
@nexe/config-meneceri0.1.12025-09-14T20:45:55.066Z
@nexe/logger0.1.32025-09-14T20:45:55.170Z
@hestjs/logger0.1.62025-09-14T20:45:55.197Z
@hestjs/validation0.1.62025-09-14T20:45:55.595Z
@hestjs/core0.2.12025-09-14T20:45:55.888Z
@hestjs/cqrs0.1.62025-09-14T20:45:55.966Z
@hestjs/scalar0.1.72025-09-14T20:45:56.386Z
ng2-fayl yükləmə7.0.32025-09-15T02:44:29.555Z
kondensator-bildiriş idarəedicisi0.0.22025-09-15T04:54:48.431Z
kondensator-plugin-vonage1.0.22025-09-15T04:54:48.501Z
kondensator-plugin-sağlamlıq tətbiqi0.0.22025-09-15T04:54:48.704Z
capacitorandroidpermissions0.0.42025-09-15T04:54:48.753Z
voip-callkit1.0.22025-09-15T04:54:49.223Z
kondensator-plugin-ihealth1.1.82025-09-15T04:55:08.113Z
@art-ws/common2.0.222025-09-15T05:21:15.411Z
@art-ws/config-eslint2.0.42025-09-15T05:21:17.199Z
ngx-ws1.1.52025-09-15T05:21:17.514Z
@art-ws/slf2.0.152025-09-15T05:21:17.524Z
@art-ws/http-server2.0.212025-09-15T05:21:17.745Z
pm2-gelf-json1.0.42025-09-15T05:21:18.413Z
@art-ws/di2.0.282025-09-15T05:21:18.488Z
@art-ws/di-node2.0.132025-09-15T05:21:18.849Z
@art-ws/config-ts2.0.72025-09-15T05:21:19.408Z
@art-ws/db-context2.0.212025-09-15T05:21:19.814Z
@art-ws/openapi0.1.92025-09-15T05:21:19.969Z
@art-ws/web-app1.0.32025-09-15T05:21:20.383Z
@art-ws/ssl-info1.0.92025-09-15T05:21:20.927Z
sca-tools-proqram-kompozisiya-analiz-alətləri
Proqram təminatı risklərinizi prioritetləşdirin, aradan qaldırın və təhlükəsizləşdirin
Pulsuz Hesabınızı əldə edin.
Kredit kartı tələb olunmur.

Proqram təminatınızın hazırlanması və çatdırılmasını təmin edin

Xygeni Məhsul Dəsti ilə