QuietPolyfill, wani sinadari mai rage gudu na NPM wanda ya tashi

QuietPolyfill: Wani na'urar rage gudu ta NPM da ta tashi

TL, DR

Fakiti ashirin na npm da aka buga a cikin kwanaki biyu a ƙarshen Yuli da farkon Agusta 2026 suna nuna kansu a matsayin ɗakunan karatu na UI na ciki da kuma kayan aikin baya-bayan da aka raba. Babu ɗayansu da ke aiwatar da aikin da suke tallatawa. Kowannensu yana jigilar aji na stub, README wanda ke bayyana fakitin a matsayin na ciki, da fayil mai suna _polyfill.js.

Abin sha'awa shine daga ina aka fara amfani da wannan fayil ɗin. Ba ƙugiya ce ta shigarwa ba — bayanan ba su bayyana cewa babu shigarwa, shigarwa, ko shigarwar bayan an shigar da su kwata-kwata. Madadin haka, layin ƙarshe na index.js ya karanta: try { require("./_polyfill"); } catch (_) {}Nauyin da aka ɗauka yana gudanar da lambar aikace-aikacen karo na farko da ya shigo da kunshin. Shigarwa tare da --ignore-scripts, da standard shawara don rage fallasa sarkar samar da kayayyaki a lokacin shigarwa, baya hana shi.

Abin da _polyfill.js Yana aiki ne don dawo da wani takamaiman dandamali wanda za a iya aiwatarwa daga ɗaya daga cikin rukunin Cloudflare Workers guda uku, rubuta shi zuwa wani babban fayil na wucin gadi a ƙarƙashin sunan da aka yi bazuwar, yi masa alama a matsayin wanda za a iya aiwatarwa, sannan a ƙaddamar da shi a ware daga tsarin iyaye. Wannan mai aiwatarwa da kansa mai ɗaukar kaya ne: yana lissafa samfuran tsaro na ƙarshen maki ta sunan tsari, yana duba sunan mai amfani na yanzu akan asusun bincike-muhalli da aka sani, yana gyara hanyoyin sadarwa na AMSI da ETW a cikin ƙwaƙwalwar ajiya, yana shigar da juriya a ƙarƙashin sunan ɓangaren sauti na Windows, kuma yana dawo da babban adadin megabytes na uku a girman. Mataki na uku ya isa ɓoye kuma yana an cire shi kuma an aiwatar da shi a cikin ƙwaƙwalwar ajiya maimakon a rubuta shi zuwa faifai.

A ranar 1 ga Agusta, kimanin sa'o'i huɗu bayan an tabbatar da cewa fakitin ba su da kyau a kan bitar hannu, an cire sunayen goma sha tara daga cikin ashirin daga npm ta hannun mai buga su a cikin jerin daƙiƙa ashirin da biyar. A ranar 2 ga Agusta an sake yin rijistar ɗaya daga cikin waɗannan sunayen - ta wani asusu daban, yana ɗauke da lambar iri ɗaya. Kayayyakin isar da kayayyaki suna aiki a dukkan matakai uku lokacin da aka rubuta wannan.

PaketeSunaye 20 npm, ~ sigar da aka buga 74
Suna jigogibeaver-ui-* (13), accounts-* (3), ƙari afisha-storybook-default, bcore-bravo-eslint-config, arbocrate-sla-prober-arbocrate-sla-prober-core, a.poltoradnev-package-c
TriggerShigo da module (require), ba rubutun zagayowar rayuwa ta npm ba
Stage 1_polyfill.js - dawo da kaya da kuma ƙaddamar da kaya
Stage 2Na'urar ɗaukar kaya mai alaƙa da static, cike take da UPX akan Linux; ƙididdige tsaro na ƙarshe, facin AMSI/ETW, juriya
Stage 3beacon_linux.bin / beacon_mac.bin / update_win.exe, 4–13 MB; an kawo shi a ɓoye, an aiwatar da shi a cikin ƙwaƙwalwa
dandamaliLinux x64 da arm64, macOS na duniya, Windows x64
Masu bugawaAsusu biyu, tushen lambar sirri ɗaya
StatusSunaye 19 cikin 20 da ba a buga ba ta mai aiki; 1 sake bugawa kuma kai tsaye; kayayyakin isarwa kai tsaye

Harin jiki

Mataki na 1 — kunshin

Kowane memba yana jigilar nau'in fayil guda uku iri ɗaya. index.js fitar da aji tare da init() wanda ke sanya boolean, a sigar(), Da kuma wani saita() wanda ke haɗa wani abu na zaɓuɓɓuka. Babu wani abu kuma. KARANTAME.md yana ba da layin shigarwa, a buƙatar layi, da kuma jimla "Kunshin ciki. Duba CONTRIBUTING.md don jagorori" — GUDUMAWAR.md ba ya cikin kwandon tarba.

_polyfill.js Yana ɗan ƙasa da 5 KB kuma yana karanta a matsayin lambar kayan more rayuwa ta yau da kullun. Yana buɗewa da duba muhalli guda uku:

if (process.env.DISABLE_TELEMETRY ||
    process.env.ANALYTICS_OPT_OUT ||
    process.env.DO_NOT_TRACK)
  return;

Waɗannan masu canji su ne tsarin tsare sirri na al'ada. A nan suna shiga ko an sauke kuma an aiwatar da binary. Injin da ke saitawa YI_BA_TAWA_BA an tsallake shi gaba ɗaya.

Na gaba sai tambarin gudu sau ɗaya: fayil a /tmp/.analytics_state, ko analytics_state karkashin % TEMP% akan Windows, wanda lokacin gyarawa aka kwatanta da taga mai tsawon daƙiƙa 20,357. A cikin wannan taga, na'urar tana dawowa nan take, don haka ana sake shigo da kaya akai-akai yayin gini, wanda ke haifar da yunƙurin dawo da su maimakon da yawa.

Masu masaukin da za su je ba su nan a matsayin kalmomi na zahiri. An haɗa su a lokacin gudu daga gutsuttsura:

["oob-worker.cf102-","baf.workers.d","ev"].join("") 

Ana gina runduna uku ta wannan hanyar kuma ana haɗa su kafin amfani, don haka odar ta bambanta a kowane aiwatarwa. Maidowa shine HTTPS GET da aka makala zuwa IPv4 tare da Mai amfani of ɗauko node/2.6 — ƙima mai yiwuwa ga tsarin Node ya fitar. Ana jefar da martanin da ke ƙasa da byte 1,000 kuma ana gwada mai masaukin baki na gaba.

Idan duka ukun suka gaza, tsarin zai koma DNS. Yana bayar da tambayar TXT don c. don samun adadin guntu, sannan a nemi 0. saboda n. a cikin rukuni goma, yana haɗa amsoshin, kuma base64 yana fassara sakamakon. Wannan hanyar tana ɗauke da irin wannan aikin da za a iya aiwatarwa akan bayanan DNS TXT, wanda ke tsira daga yanayin da aka tace HTTP na waje amma ƙudurin DNS ba ya nan.

An rubuta byte da aka dawo dasu zuwa /var/tmp/.cache_<8-hex> akan Unix, ko %TEMP%\dotnet_diag_<8-hex>.exe akan Windows - sunan fayil wanda ke karantawa azaman kayan aikin ganewar .NET. A kan Unix an ba da fayil ɗin yanayin 0755. Launch shine spawn tare da ware: gaskiya, stdio: "yi watsi", Da kuma unref(), don haka yaron ya fi tsawon tsarin Node da ya fara shi; a kan Windows, kiran ya ƙara windowsƁoye: gaskiya.

Cikakkun bayanai guda biyu ne suka cika hoton. Mai taimako wanda aka bayyana a matsayin const _l = (…a) => tsari.stderr.write(“”) ana kiransa a kowane mataki na dawo da shi - yana rubuta igiya mara komai kuma yana watsar da hujjojinsa, yana mamaye matsayin da za a ajiye rajista. Kuma kowane fakiti yana aika fayil 81 KB a lib/telemetry.js wanda sharhin kanun labarin ya bayyana "SDK na nazari" tare da "jigilar HTTPS tare da juyawa da sake gwadawa" da kuma "gano ayyukan DNS bisa tushen failover". A cikin ginin na yanzu babu abin da ake buƙata.

Mataki na 2 — mai ɗaukar kaya

Linux x64 binary ELF ne mai haɗin kai wanda aka matse tare da UPX 3.96. Tsarin macOS na binary ne na duniya wanda ke rufe x86_64 da arm64; tsarin Windows ɗin an cire shi ne daga na'urar wasan bidiyo ta PE32+. An dawo da dukkan huɗun kuma an bincika su ta hanyar da ba ta dace ba; babu wanda aka aiwatar.

Ana shigo da kayan aikin Windows da kuma teburin igiya da aka yi amfani da shi wajen gina Windows ya bayyana halinsa a sarari. IsDebuggerPresent, DubaNa'urar gyara daga nesaYana gabatarwa, Da kuma Tsarin Bayanin NtQuery, kuma yana karatu SYSTEM\CurrentControlSet\Services\Disk\Enum — hanyar rajista wacce ƙimarta ke gano masu sarrafa faifai na kama-da-wane. GetDiskFreeSpaceExW da kuma Matsayin Memory na Duniya, daidai da duba ko albarkatun mai masaukin baki sun dace da misalin bincike na ɗan gajeren lokaci.

Yana ɗauke da jerin sunayen masu amfani: Mai amfani da Yanzu, IT IT, Hong Lee, AKWATI NA GWAJI, hapubws, milozs, jariri, admin, malware, samfurin, virus, yanayiDa yawa daga cikin waɗannan abubuwa ne da aka yi amfani da su wajen nazarin abubuwan da aka rubuta a bainar jama'a.

Hakanan yana ɗauke da jerin samfuran tsaro na ƙarshen-maki da sunayen tsarin aikinsu, waɗanda aka lissafa ta hanyar CreateToolHelp32Snapshot da kuma Tsarin aiki32FirstW/Tsarin aiki32NextW:

  • CrowdStrike Falcon (csfalconservice, CSFalconContainer)
  • carbon Black (cb.exe)
  • Sahihi (cylancesvc.exe)
  • Bitdefender (bdagent.exe)
  • Kaspersky (avp.exe, kavfs.exe)
  • Tsarin Tsaro na Micro da Zurfi na Trend (coreServiceShell, ds_agent.exe)
  • FireEye/Trellix (xagt.exe)
  • Tanium (taniumclient.exe)
  • HarshaBari (hmpalert.exe)
  • na roba (elastic-agent.exe, elastic-endpoint, filebeat.exe, winlogbeat.exe)
  • Wazuh da OSSEC (wazuh-agent.exe, ossec-agent.exe)
  • Duba Point
  • Fayil na Windows

Akwai wasu alamomi guda biyu: AmsiScanBuffer, wurin shiga Windows yana fallasa don duba abubuwan da ke cikin ƙwaƙwalwar ajiya, kuma EtwEventWrite, aikin da Binciken Abubuwan da suka faru na Windows ke amfani da shi. Dukansu abubuwa ne da aka saba amfani da su don gyara a cikin tsari wanda ke danne tsarin da waɗannan hanyoyin sadarwa za su samar.

Juriya tana bayyana sau biyu a Windows. Ana kwafi binary ɗin zuwa %APPDATA%\Microsoft\Windows\Themes\SystemSoundsService.exe, kuma hanyoyi guda biyu suna nuni zuwa gare shi: ƙima a ƙarƙashin SOFTWARE\Microsoft\Windows\CurrentVersion\Run, da kuma aikin da aka tsara wanda aka yi wa rijista a matsayin

schtasks /Create /F /SC ONLOGON
  /TN "\Microsoft\Windows\Multimedia\SystemSoundsService"
  /TR "\"%s\""
  /RL HIGHEST

Hanyar aiki, sunan aiki, da sunan aiwatarwa duk suna nuna ainihin ɓangaren sauti na Windows. /RL MAFI GIRMA yana buƙatar mafi girman matakin gata da ake da shi.

Gina macOS yana bin tsari iri ɗaya tare da sunaye masu dacewa da dandamali: yana rubuta jerin kadarorin zuwa ~/Laburare/LaunchAgents/com.apple.windowserver.helper.plist kuma yana sanya aikin da za a iya aiwatarwa a ~/.local/raba/runtime/com.apple.runtimeYana duba /Applications/VMware Fusion.app da kuma /Laburare/Tallafin Aikace-aikace/Kayan aikin VMware.

Ƙarfin hanyar sadarwa ya ƙunshi jigilar kaya guda uku: WININET.dll don HTTPS tare da https://%s:%d%s tsarin igiya, WS2_32.dll soket, da kuma DNSAPI.dll tare da DnsQuery_A tare da c.%s.%s Tsarin tsari - siffar tambaya iri ɗaya da matakin farko ke amfani da ita.

Bayanin da ke sama shine abin da shigo da bayanai, igiyoyi, da hanyoyin rajista na binary ke nunawa yayin dubawa. Binciken jama'a na injina da yawa na samfurin Windows iri ɗaya ya ƙara cikakkun bayanai cewa karatun tsaye na teburin shigo da kaya ba zai iya kafawa da kansa ba, kuma an danganta shi a nan maimakon a sake maimaita shi azaman lura ta farko. Wannan binciken ya ba da rahoton cewa nassoshin AMSI da ETW ba wai kawai an warware su ba amma an gyara su - AmsiScanBuffer in amsi.dll da kuma EtwEventWrite in ntdll.dll - wanda ke hana duba abubuwan da ke cikin ƙwaƙwalwa da kuma bin diddigin abubuwan da suka faru don tsarin. Yana bayar da rahoton binciken hana bincike a matsayin wanda ya dogara da lokaci da kuma DubaNa'urar gyara daga nesaYana gabatarwa, kuma yana gano Samu Ma'anar Zaren kira a matsayin duba na'urar hardware-breakpoint yana karanta rajistar gyara kurakurai. Hakanan yana ba da rahoton mutex na misali ɗaya, Global\{7A3B9E1F-C2D4-4F8A-B5E6-D7A1F0C3E2B9}, da sunaye Sabis na SystemSounds a matsayin ƙimar maɓalli na Run. Wannan ƙimar mutex ba ta cikin igiyoyin da aka gano a nan ba - matatar cirewa da aka yi amfani da ita ba tare da alamun babban harafi-hex ba - kuma an rubuta ta a cikin teburin nuni akan ƙarfin wannan binciken jama'a maimakon lura kai tsaye.

Stage 3

Mai lodawa yana nuna wasu hanyoyin da ke kan wannan rukunin yanar gizon. Duk an iya isa gare su yayin bincike: beacon_linux.bin a 5.3 MB, beacon_mac.bin a 13.3 MB, update_win.exe a 10.3 MB, kuma hannun.bin a 4.3 MB. Ba a samo waɗannan ba, kuma ba a san halinsu ba.

Ga hanyar Windows, nazarin jama'a game da na'urar ɗaukar kaya ya bayyana yadda ake sarrafa wannan mataki na uku: ana ɗaukarsa ta hanyar WinINet, ana zuwa da shi ta hanyar ɓoye, kuma ana ɓoye shi a cikin ƙwaƙwalwar ajiya kuma ana aiwatar da shi ta hanyar tunani - an ware ƙwaƙwalwar ajiya, an warware shigo da kaya, an sarrafa ƙaura, kuma an ba da iko zuwa sabon zaren ta hanyar Ƙirƙiri ZarenSaboda haka, ba a taɓa rubuta mataki na uku zuwa tsarin fayil ba, don haka gano fayil ɗin da aka yi bisa ga fayil da kuma binciken diski bayan faruwar lamarin ba su da abin da za su iya samu daga gare shi. Hakanan yana nufin dawo da byte daga mai karɓar bayanai zai samar da ciphertext, ba aikin da za a iya aiwatarwa ta hanyar nazari ba.

 

tafiyar lokaci

Duk tambarin lokaci UTC ne kuma sun fito ne daga bayanan rajista na npm, wanda ke rikodin ƙirƙirar fakiti da kuma fitar da su ba tare da wani mai lura ba.

A lokacin da Abin da
2026-07-31 09:25:05 → 09:29:56 An ƙirƙiri sunaye goma, kowanne yana farawa daga sigar 0.0.1, kusan daƙiƙa goma sha uku tsakanin su.
2026-08-01 09:38 → 11:29 Sunaye da ke akwai suna hawa ta hanyar lambobin sigar da aka ƙaru, 6.1.9 saboda 6.1.12, 9.9.9 saboda 9.9.12, 8.9.3 saboda 8.9.6, 5.4.6 saboda 5.4.9.
2026-08-01 13:04:14 → 13:04:18 Guda tara kuma beaver-ui-* An ƙirƙiri sunaye a cikin fashewar daƙiƙa huɗu, kowannensu an buga shi kai tsaye a sigar 12.x ba tare da wani tarihi na baya ba.
2026-08-01 ~13:00–14:30 Sigogi da aka rarraba a matsayin masu cutarwa akan bita da hannu.
2026-08-01 17:39:49 → 17:40:14 Ba a buga sunayen goma sha tara daga cikin ashirin ba cikin daƙiƙa ashirin da biyar, a jere, kimanin daƙiƙa 1.2 tsakanin su.
2026-08-02 18:58:41 a.poltoradnev-package-c an sake ƙirƙira shi a ƙarƙashin wani asusun mai kula da shi daban, sigar 0.0.2.
2026-08-02 19:20:28 version 33.9.5 an buga shi da suna ɗaya.
2026-08-02 20:14 Duk isarwa guda uku suna ɗaukar nauyin hidimar matakai na biyu da na uku; amsawar DNS tare da ƙidayar guntu.

Biyu daga cikin waɗannan rubuce-rubucen suna da daraja a yi la'akari da su.

Fashewar ƙarfe 13:04 ta sanya fakiti tara a cikin rajista cikin daƙiƙa huɗu, kowannensu yana da sigar guda ɗaya a cikin goma sha biyu kuma babu 0.0.1 a ƙasa da shi. Lambobin sigar da ke kan wannan sikelin, a kan sunayen da aka yi kwana ɗaya da suka wuce, ba sa bayyana tarihin fitowar.

Jerin fitar da sakamakon yana daidai da na'ura: sunaye goma sha tara, daƙiƙa ashirin da biyar, daidai tazara. npm yana rubuta waɗannan a matsayin abubuwan da suka faru na rashin bugawa na yau da kullun maimakon mai riƙe wurin da aka cire rajista da aka fara barinsa, wanda ke sanya aikin tare da asusun bugawa maimakon tare da rajista.

 

Alamomin sulhu

An lalata masu masauki da hanyoyin. Kada a warware ko a dawo da su daga tsarin samarwa.

type darajar
Mai masaukin isar da kaya oob-worker[.]cf99-9b3[.]workers[.]dev
Mai masaukin isar da kaya oob-worker[.]cf102-baf[.]workers[.]dev
Mai masaukin isar da kaya oob-worker[.]cf103-070[.]workers[.]dev
Sufurin DNS tin[.]dl[.]well1[.]site (Linux x64), tina[.] (hannu 64), ldr[.] (macOS), win[.] (Windows) - ƙidayar guntu a c.<domain>, bayanai a <n>.<domain>
Hanyoyi na Mataki na 2 /pkg/package, /pkg/package-arm64, /pkg/loader_mac, /pkg/package.exe
Hanyoyi na Mataki na 3 /pkg/beacon_linux.bin, /pkg/beacon_mac.bin, /pkg/update_win.exe, /pkg/arm.bin
Hanyar saukewa (Unix) /var/tmp/.cache_<8-hex>
Hanyar saukewa (Windows) %TEMP%\dotnet_diag_<8-hex>.exe
Juriya (Windows) %APPDATA%\Microsoft\Windows\Themes\SystemSoundsService.exeaiki \Microsoft\Windows\Multimedia\SystemSoundsService; Ƙimar maɓallan gudu SOFTWARE\Microsoft\Windows\CurrentVersion\Run\SystemSoundsService
Mutex (Windows) Global\{7A3B9E1F-C2D4-4F8A-B5E6-D7A1F0C3E2B9}
Juriya (macOS) ~/Library/LaunchAgents/com.apple.windowserver.helper.plist; binary a ~/.local/share/runtime/com.apple.runtime
Tambarin gudu sau ɗaya /tmp/.analytics_state, %TEMP%\analytics_state (Taga ta 20,357 daƙiƙa)
Nemi sa hannu HTTPS GET, IPv4-pinned, Mai Amfani: node-fetch/2.6
Fayil mataki na 1 _polyfill.js, SHA-256 392dc9ec85042ce1796bfa9b8c7bf6e05c7710579aab8b7b1eb73788683883af
Fayil ɗin da ba a yi nuni ba lib/telemetry.js, SHA-256 2266c9b8e199daebe31a9afcb61d9b0d76706b63c92312fc8223d22de42e63c7
Mataki na 2 (Linux x64) SHA-256 7e486657f30594afda379b97030252a09a19fe8055e25c9e371544f59bd8e9e3
Mataki na 2 (Linux arm64) SHA-256 aafc37589c0d21fb729761a1579ca3b278b95bce152aacfa29243ffd27f5eeb7
Mataki na 2 (macOS) SHA-256 c214746c74cae8ece8bdaf69aa05da4db6ce013f9e77452d1eed1a002fd9ba00
Mataki na 2 (Windows) SHA-256 d632c2c0c7801c3da57cf849fe4b4ca8351d9a7fe73c31050bf5dbcc96a16791

Sunayen fakiti

beaver-ui-drawer maɓallin aikin beaver-ui babban katin beaver-ui-katin mai ɗaukar beaver-ui-date siffar beaver-ui-form siffar beaver-ui-form-modal abu mai siffar beaver-ui beaver-ui-grid beaver-ui-header beaver-ui-hooks makullin beaver-ui-icon kayan beaver-ui-tare da ƙari tsarin beaver-ui fom ɗin ƙarshe na asusu yanayin lodawa asusu lissafin-lokaci littafin labarin afisha-tsoho saitin bcore-bravo-eslint arbocrate-sla-prober-arbocrate-sla-prober-core a.poltoradnev-package-c

Ba da izini da kuma ɗabi'ar da aka lura da ita

Asusun npm guda biyu suna da hannu. An buga sunayen mutane goma sha tara da ba a buga ba ta asusun ɗaya; a.poltoradnev-package-c An sake yin rijista a ranar 2 ga Agusta a ƙarƙashin sunan asusu daban da kuma wani adireshin imel daban. Lambar iri ɗaya ce a duka biyun, kuma rajista ta biyu tana ɗauke da masu masaukin isarwa iri ɗaya, yankin DNS na baya ɗaya, ginin hanyar sauke kaya iri ɗaya, da kuma tambarin gudu ɗaya ɗaya.

Ma'auratan da aka sake bugawa sun kuma nuna yadda aka haɗa su. 0.0.2 da kuma 33.9.5 suna kama da byte banda sigar da ke cikin fakamari.json, Da index.js an aika kamar yadda 0.0.2 ayyana SIFFAR CONST = “33.9.5”An yanke dukkan kayan tarihi guda biyu daga itace ɗaya kuma an yi musu lambobi daga baya. Babu 0.0.2 tarihin ci gaba don 0.0.2 saki don wakilta.

Lambobin sigar da ke cikin dukkan saitin suna bin irin wannan dabarar. Sunayen fakiti a cikin wannan kamfen ɗin suna kama da abubuwan da za su kasance a cikin ƙungiya maimakon a cikin rajistar jama'a: saitin abubuwan UI, tsarin ESLint, mai binciken SLA, fakitin da aka sanya wa suna bayan mutum. Lokacin da gini ya warware dogaro da suna kuma ya tuntuɓi rajistar jama'a tare da na sirri, lambar sigar mafi girma ita ce wacce ta yi nasara. Sunan da aka ƙirƙira a 0.0.1 ranar Litinin da kuma ɗaukar kaya 12.9.6 a ranar Talata ne aka sanya shi don wannan kwatancen.

Raƙuman wallafe-wallafen guda biyu suma sun bambanta ta hanyar da ke nuna maimaitawa. Lambar da ta gabata ta sanya wa fayil ɗin da aka biya kuɗinsa suna. saitin.js kuma an jera sunayen masu karɓar isarwa guda biyar; fayil ɗin na yanzu an sanya masa suna _polyfill.js kuma ya lissafa uku. Sigar da ta gabata ta cire fayil ɗin da aka sauke da daƙiƙa biyar bayan ƙaddamarwa, ta bar tsarin yana gudana daga inode da aka goge; sigar da ke yanzu ba ta yi ba. lib/telemetry.js ya kasance a cikin tarball a duka biyun, har yanzu ana jigilar shi, ba a sake haɗa shi ba.

Wani abin lura game da kashe-kashe ya cancanci a faɗi kafincisely, domin yana yanke hukunci akan karatu na gama gari. DAKATAR_TELEMETRY, ANALYTICS_OPT_OUT, Da kuma YI_BA_TAWA_BA ana girmama su, kuma ana duba su kafin wani abu ya faru. Wani mai bincike wanda yanayin bincikensa ya sanya kowanne daga cikinsu ya lura da wani fakiti wanda ba ya yin komai kwata-kwata.

Tasiri da abin da masu kare kansu za su iya yi

Sakamakon da ke tattare da abin da ke haifar da shigo da kaya a lokacin yana da ɗan ƙarami kuma ya cancanci a faɗi da kansa. shigar npm –ignore-scripts yana hana rubutun zagayowar rayuwa aiki, kuma shawara ce mai kyau. Ba shi da wani tasiri a nan, domin wannan lambar ba ta amfani da rubutun zagayowar rayuwa. Nauyin yana aiki lokacin da lambar aikace-aikace, gwajin gudu, bundler, ko linter suka fara shigo da module ɗin. A kan mai gudu na CI wanda ke shigarwa sannan ya gina nan take, biyun suna da ɗan daƙiƙa kaɗan.

Ga farauta, siginar da ke da ɗorewa tana da tsari maimakon ta zahiri. Masu masaukin baki, sunan fayil, da hanyoyin faɗuwa za su canza; waɗannan siffofi suna da wahalar bambantawa:

  • Wurin shiga module wanda bayanin ƙarshe shine gwada { buƙatar(“./x”); } kama (_) {} a kusa da fayil ɗin da ba na API ɗin da aka fitar ba. Kunshin da ke ɗauke da ainihin polyfill yana shigo da shi a saman kuma yana amfani da sakamakonsa. Haɗiye kowace kuskure daga shigarwar ƙasan fayil ba shine sarrafa kurakurai ba.
  • An haɗa igiyoyin mai masaukin baki ta hanyar .shiga(“) daga jerin gutsuttsura. Lambar da aka amince da ita ba ta da wani dalili na raba sunan mai masauki a tsakanin abubuwan tsararru.
  • Kunshin da aka ayyana dogaronsa babu komai a ciki amma wanda ya kai ga https, dns, Da kuma tsari na yaro a lokacin shigo da kaya. Dawowa da aiwatarwa a cikin fakitin da ke tallata ɓangaren UI shine cikakken sakamakon.
  • Lambobin sigar ba su dace da shekarun fakitin ba. Sunan da aka fara bugawa kwanaki da suka gabata a wani babban sigar mai lambobi biyu, ba tare da fitowar da ta shiga tsakani ba, yana bayyana wani abu banda ci gabansa.
  • Ya rubuta zuwa / var / tmp or % TEMP% biye da chmod zuwa 0755 da kuma wani ɗan ƙaramin yaro. Jerin yana da gajere, tsari, kuma ba kasafai yake da sauƙi tare ba.

A kan masu masaukin Windows akwai duba guda biyu masu rahusa da aminci. Abubuwan da suka shafi juriya suna da tsayayyun tsare-tsare kuma babu ɗayansu da ke cikin tsarin tsabta: aiki da aka tsara a \Microsoft\Windows\Multimedia\SystemService, ƙimar maɓallin Run mai suna Sabis na SystemSounds, da kuma wani aiki da za a iya aiwatarwa na wannan sunan a ƙarƙashin %APPDATA%\Microsoft\Windows\Themes\. Sabis ɗin sauti na Windows na gaske ba ya zama a cikin waɗannan wurare. Na biyu, mai loda yana amfani da mutex mai tsayayyen misali guda ɗaya, Global\{7A3B9E1F-C2D4-4F8A-B5E6-D7A1F0C3E2B9}Kasancewarsa a kan mai masaukin baki alama ce ta nuna, kuma saboda mai lodawa yana ɗaukar mutex da ke akwai a matsayin "wanda ke aiki", ƙirƙirar shi kafin lokaci shine allurar rigakafi mai amfani na ɗan gajeren lokaci yayin da ake tsara gyara.

Ganowa a mataki na uku matsala ce mai wahala kuma ya kamata a fayyace ta. Dangane da asusun da aka bayar ta hanyar nazarin jama'a, ana ɓoye shi kuma ana tsara shi a cikin ƙwaƙwalwa maimakon a rubuta shi zuwa faifai, don haka duba fayiloli da binciken diski ba za su gan shi ba. Abin da ya rage a gani shi ne sawun mai lodawa - shigarwar juriya, mutex, da buƙatun fita zuwa masu masaukin baki ko yankin DNS-TXT.

Ga mahalli waɗanda ke warware dogaro daga rajistar sirri da ta jama'a, ragewar ba ta canzawa ta hanyar komai a nan: duba sunayen cikin gida don haka sunan jama'a ba zai iya gamsar da su ba, da kuma sanya ƙuduri a cikin rajistar ciki don waɗannan ma'auni. Halin hauhawar sigar da aka bayyana a sama yana aiki ne kawai inda babban sigar jama'a zai iya lashe suna.

A ƙarshe, rashin buga littafin ya cancanci a karanta shi da kyau maimakon a matsayin ƙarshe. Sunaye goma sha tara sun bar rajistar cikin daƙiƙa ashirin da biyar sannan ɗaya ya dawo kwana ɗaya bayan haka a ƙarƙashin sabon asusu, tare da kayan aikin isar da kaya ba a taɓa su ba a ko'ina. Cire fakitin ba cire aikin ba ne; masu masaukin baki sun ci gaba da hidimar kowane mataki yayin da aka rubuta wannan. Duk wani bishiyar dogaro da ta warware ɗaya daga cikin waɗannan sunaye tsakanin 31 ga Yuli da 1 ga Agusta ya kamata a ɗauke shi a matsayin wanda ya sami damar aiwatar da mataki na farko, ko da sunan yana nan ko a'a.

References

kayan aikin nazarin kayan aikin sca-tools-composition
Fifiko, gyara, da kuma kare haɗarin software ɗinka
Sami Asusunka Kyauta.
Babu katin bashi da ake bukata.

Tabbatar da Haɓaka Software da Isarwarka

tare da Xygeni Product Suite