TL; កុង
ប្រតិបត្តិករ npm តែមួយបានចំណាយពេលប្រាំមួយសប្តាហ៍ដើម្បីបោះពុម្ពផ្សាយកញ្ចប់ "ឧបករណ៍ប្រើប្រាស់" TypeScript ក្លែងក្លាយដូចជា ts-form-utils, ts-project-lintនិង ts-enum-helper.
ខណៈពេលដែលកញ្ចប់បង្ហាញឧបករណ៍ជំនួយសុពលភាពតូចៗដែលមើលទៅស្របច្បាប់ បន្ទុកផ្ទុកទិន្នន័យពិតប្រាកដដំណើរការនៅពេលដំឡើង ឬតម្រូវឱ្យដំឡើងដំបូង ហើយអនុវត្តការស្កេនស្នាមម្រាមដៃរបស់ម៉ាស៊ីន ការស្វែងរកអង្គការ GitHub ការក្លូនឃ្លាំង និងការលួចយកកូដប្រភព។
មេរោគនេះកំណត់គោលដៅជាពិសេសលើអង្គការ GitHub ដែលមានតម្លៃខ្ពស់ រួមទាំងអង្គការជាច្រើន។ Shopify ឃ្លាំងទិន្នន័យ បន្ទាប់មករក្សាទុក និងច្រោះចេញដើមឈើប្រភពដែលអាចទៅដល់បានទៅកាន់ចំណុចបញ្ចប់នៃការប្រមូលទិន្នន័យកណ្តាល។
ជាផ្នែកមួយនៃលំហូរការងារសម្របសម្រួល បន្ទុកបន្ទុក commitsa ត្រឡប់ទៅក្នុងឃ្លាំងឯកសារជនរងគ្រោះវិញ ខណៈពេលកំពុងក្លែងបន្លំអត្តសញ្ញាណកូដស្វ័យប្រវត្តិរបស់ Google google-labs-jules[bot].
យើងបានតាមដានយុទ្ធនាការ — ដែលមានឈ្មោះថា ជូលស៍ ជែកឃើរ — ឆ្លងកាត់វិសាលភាពអ្នកបោះពុម្ពផ្សាយច្រើន និងយ៉ាងហោចណាស់ជំនាន់ payload ចំនួនប្រាំ រួមទាំងវ៉ារ្យ៉ង់ដែលបានអ៊ិនគ្រីប និង sandbox-aware។
វ៉ារ្យ៉ង់ថ្មីបំផុតនេះ ផ្តោតជាពិសេសលើហេដ្ឋារចនាសម្ព័ន្ធវិភាគមេរោគ៖ វាធ្វើឱ្យសកម្មតែនៅក្នុងបរិយាកាសវិភាគ លួចយកថូខឹនគណនីសេវាកម្មទិន្នន័យមេតាលើពពក និងស៊ើបអង្កេតយន្តហោះត្រួតពិនិត្យ Kubernetes និងធុងផ្ទុកទិន្នន័យលើពពក។
IOC ចម្បងដែលបានចែករំលែកនៅទូទាំងជំនាន់ payload ទាំងអស់គឺជាចំណុចបញ្ចប់នៃការប្រមូល។ aaronstack[.]com/jules-collect.
ភាពធ្ងន់ធ្ងរ៖ ធ្ងន់ធ្ងរ។
ការវាយប្រហារ៖ របៀបដែលវាដំណើរការ
កញ្ចប់ JulesJacker នីមួយៗធ្វើតាមគំរូដូចគ្នា។ កញ្ចប់ ផ្សព្វផ្សាយកម្មវិធីជំនួយ TypeScript ដ៏ល្អមួយដែលមានអាជ្ញាប័ណ្ណ MIT និងគ្មានឃ្លាំងប្រភពដែលបានភ្ជាប់។ index.js ។ នាំចេញមុខងារជាក់ស្តែងមួយចំនួនដែលដំណើរការ — regexes អ៊ីមែល ផែនទី enum តារាងច្បាប់ lint — ដូច្នេះអ្នកអភិវឌ្ឍន៍ដែលនាំចូលកញ្ចប់ពិតជាមើលឃើញឥរិយាបថសមហេតុផល។ ព្យាបាទរស់នៅកន្លែងផ្សេង៖ នៅក្នុង ក្រោយការដំឡើង ទំពក់ ឬនៅក្នុងប្លុកមួយនៅខាងក្រោម index.js ។ ដែលប្រតិបត្តិនៅពេលដែលម៉ូឌុលត្រូវបានទាមទារ។
បន្ទុកបានវិវត្តន៍ឆ្លងកាត់ដំណាក់កាលផ្ទៃក្នុងដែលមានលេខច្បាស់លាស់ (ប្រតិបត្តិករដាក់ស្លាកព្រឹត្តិការណ៍តេឡេម៉ែត្រផ្ទាល់ខ្លួន) sc៤-, sc៤-, sc៤-, និងដូច្នេះបន្តបន្ទាប់) ហើយការមើលការវិវត្តន៍នោះគឺជាវិធីច្បាស់លាស់បំផុតដើម្បីយល់ពីយុទ្ធនាការនេះ។
ជំនាន់ទី 1–2៖ ការឈ្លបយកការណ៍ និងការលួច git-config
កញ្ចប់ដំបូងបំផុតគឺជា infostealers សាមញ្ញៗ។ នៅពេលដំឡើង ពួកគេបានប្រមូលអថេរបរិស្ថាន ឯកសារម៉ាស៊ីន GitHub CLI និងការកំណត់រចនាសម្ព័ន្ធ git សកល (git config –global –list, git ពីចម្ងាយ -v) បន្ទាប់មកបានបង្ហោះបាច់ទៅកាន់ចំណុចបញ្ចប់នៃការប្រមូល។ នេះបានបង្កើតហត្ថលេខារបស់ប្រតិបត្តិករ៖ រឿងរ៉ាវគម្រប "ឧបករណ៍ប្រើប្រាស់សុពលភាពទម្រង់ TypeScript" សញ្ញាបញ្ជូនទៅកាន់ដែនតែមួយ និងចំណង់ចំណូលចិត្តចំពោះព័ត៌មានសម្គាល់អ្នកអភិវឌ្ឍន៍ជាជាងទិន្នន័យអ្នកប្រើប្រាស់។
ជំនាន់ទី 3: hypervisor និង kernel escape probes
កំណែពាក់កណ្តាលយុទ្ធនាការមួយបានបង្វែរយ៉ាងខ្លាំងទៅជាការវាយប្រហារហេដ្ឋារចនាសម្ព័ន្ធ។ ជំនួសឱ្យការលួចការកំណត់រចនាសម្ព័ន្ធ វាបានដំណើរការការស៊ើបអង្កេតតាមខ្សែសង្វាក់ស៊ើបការណ៍សម្ងាត់។ AF_VSOCK រន្ធ, តំបន់ virtio MMIO, / dev / memនិងទង់ជាតិពង្រឹងខឺណែល និងសូម្បីតែការប៉ុនប៉ងគាំងខឺណែលដែលបង្កឡើងដោយ sysrq — ឥរិយាបថដែលជាប់ទាក់ទងនឹងការប៉ុនប៉ងបំបែកចេញពីម៉ាស៊ីននិម្មិត ឬកុងតឺន័រ។ ស្លាកតេឡេមេទ្រី (s0-vmm-recon, s1-vmm-vsock-fuzz, s2-vmm-mmio, ការស៊ើបអង្កេតខឺណែល s3) បានបង្ហាញចេតនាយ៉ាងច្បាស់។ វ៉ារ្យ៉ង់នេះមានគោលបំណងច្បាស់លាស់ បរិស្ថាន cloud-sandbox និង serverless-runner — ប្រភេទម៉ាស៊ីនមេបណ្ដោះអាសន្នដែលបង្កើត និងសាកល្បងលេខកូដដែលមិនគួរឱ្យទុកចិត្ត។
ជំនាន់ទី 3 (SC3): ដង្កូវសរសេរឆ្លង repo
ចំណុចកណ្តាលនៃទំនាញរបស់យុទ្ធនាការនេះបានក្លាយជាចោរលួច repo ដែលរីករាលដាលដោយខ្លួនឯង។ នៅពេលដំឡើង payload ដំណើរការលំដាប់ពេលវេលាប្រាំដំណាក់កាល៖
- ដំណាក់កាល 0 (~100 ms): ស្នាមម្រាមដៃម៉ាស៊ីន — ឈ្មោះម៉ាស៊ីន ព័ត៌មានអ្នកប្រើប្រាស់ អត្តសញ្ញាណ git។
- ដំណាក់កាល 1 (~៣ វិនាទី): កំណត់ថាតើជនរងគ្រោះជាកម្មសិទ្ធិរបស់អង្គការណាដោយការត្រួតពិនិត្យ git ពីចម្ងាយ -vបន្ទាប់មករកមើល hardcoded ORG_CONFIG ការចូលប្រើតារាង និងឃ្លាំងសាកល្បងជាមួយ git ls-remote — បានបញ្ជូនតាមរយៈប្រូកស៊ី SSRF ដែលគ្រប់គ្រងដោយអ្នកវាយប្រហារនៅ http://git@192.168.0.1:8080.
- ដំណាក់កាល 2 (~១០ វិនាទី): ក្លូន git ឃ្លាំងទិន្នន័យដែលអាចទៅដល់បានទាំងអស់នៅក្នុងបញ្ជីគោលដៅ tarball និង gzip ដើមឈើ base64-encode វា និង chunk-exfiltrate វា។
- ដំណាក់កាល 3 (~៤៥ វិនាទី): “ភស្តុតាងនៃការចូលប្រើ” — ចម្លងឃ្លាំងដែលអាចសរសេរបាន ទម្លាក់ឯកសារមួយដែលមានឈ្មោះថា SECURITY-POC.md ហើយ commit វាជាមួយអ្នកនិពន្ធដែលបានកំណត់ទៅ google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> ហើយការងារសារ៖ ធ្វើបច្ចុប្បន្នភាពឃ្លាំងសម្ងាត់អាស្រ័យ បន្ទាប់មករុញទៅកាន់សាខាខ្សែសំខាន់របស់ជនរងគ្រោះ។
បញ្ជីគោលដៅដែលបានអ៊ិនកូដរឹងមិនមែនជាទូទៅទេ។ វារាយបញ្ជីច្រើនជាងសាមសិប Shopify ឃ្លាំងទិន្នន័យតាមឈ្មោះ — ហាង Shopify/ហាង Shopify, Shopify/អត្តសញ្ញាណ, Shopify/ការចេញវិក្កយបត្រ, Shopify/បន្ទប់សុវត្ថិភាព, Shopify/អាថ៌កំបាំង, Shopify/ហេដ្ឋារចនាសម្ព័ន្ធ, Shopify/.githubនិងច្រើនទៀត — រួមជាមួយនឹងអង្គការសាកល្បងមួយ អារ៉ុន ស្តាក់ បានស៍ដែលប្រតិបត្តិករហាក់ដូចជាគ្រប់គ្រង និងប្រើជាគោលដៅសរសេរ។
ជំនាន់ទី 4 (SC4): អ៊ិនគ្រីប និងបិទទ្វារ
វ៉ារ្យ៉ង់ថ្មីបំផុតដែលប្រឈមមុខនឹងអ្នកអភិវឌ្ឍន៍បន្ថែមស្រទាប់គេចវេសពីរនៅលើកំពូលនៃដង្កូវ SC3។
ទីមួយ បន្ទុកទិន្នន័យលែងដឹកជញ្ជូនជាអត្ថបទធម្មតាទៀតហើយ។ តក្កវិជ្ជាពិតប្រាកដស្ថិតនៅក្នុងប្លុកដែលបានអ៊ិនគ្រីប AES-256-CBC។ lib/.perf.datដោយមាន IV នៅក្នុងបៃដប់ប្រាំមួយដំបូងរបស់វា។ ឧបករណ៍ផ្ទុកនៅក្នុង index.js ។ សាងសង់ឡើងវិញនូវសោឌិគ្រីបពីបំណែកខ្សែអក្សរដែលភ្ជាប់គ្នា ឌិគ្រីប blob ហើយដំណើរការវាជាមួយ អនុគមន៍ថ្មី ()សូម្បីតែឈ្មោះម៉ូឌុលក៏ត្រូវបានបំបែកដើម្បីគេចពីម៉ាស៊ីនស្កេនឋិតិវន្តដែរ — require('crypt' + 'o'), តម្រូវការ ('f' + 's').
ទីពីរ វាត្រូវបានបិទដោយម៉ាស៊ីនមេ។ វ៉ារ្យ៉ង់មួយឌិគ្រីប និងដំណើរការតែនៅពេលដែល ឈ្មោះម៉ាស៊ីន os.() ស្មើ ប្រអប់អភិវឌ្ឍន៍ or ubuntu-fc-uvm (លំនាំដើមរបស់ Firecracker microVM) ឬមានខ្សែអក្សររង ប្រអប់អភិវឌ្ឍន៍ច្រកទ្វារមួយទៀតនៅលើវត្តមាននៃ .ជូលស៍/ ថតឯកសារការងារ៖
ម្យ៉ាងវិញទៀត បន្ទុកទិន្នន័យ SC4 ត្រូវបានរចនាឡើងដើម្បីនៅស្ងៀមនៅលើកុំព្យូទ័រយួរដៃរបស់អ្នកអភិវឌ្ឍន៍ធម្មតា ហើយភ្ញាក់ឡើងតែនៅខាងក្នុងភ្នាក់ងារ AI ដោយស្វ័យប្រវត្តិ និង បរិស្ថានប្រអប់ខ្សាច់ ប្រតិបត្តិករពិតជាចង់សម្របសម្រួល។
ការបើកដំណើរការមន្ទីរពិសោធន៍៖ វ៉ារ្យ៉ង់វិភាគ-ហេដ្ឋារចនាសម្ព័ន្ធ
កញ្ចប់ថ្មីបំផុតនៅក្នុងយុទ្ធនាការនេះ ts-enum-helperមិនវាយប្រហារអ្នកអភិវឌ្ឍន៍ ឬ Shopify ទាល់តែសោះ។ របស់វា postinstall.sh បើកជាមួយនឹងច្រកទ្វារដែលផ្តល់ឱ្យហ្គេម៖
ស្គ្រីបនេះមិនធ្វើអ្វីទាំងអស់ លុះត្រាតែអថេរបរិស្ថានជាក់លាក់ចំពោះវេទិកាវិភាគមេរោគត្រូវបានកំណត់។ នៅពេលដែលវាត្រូវបានកំណត់ បន្ទុកផ្ទុកដឹងថាវាកំពុងដំណើរការនៅខាងក្នុងប្រអប់ខ្សាច់ដែលមានដើម្បីបំផ្ទុះ និងសិក្សាកញ្ចប់ដូចគ្នានឹងកញ្ចប់នេះ — ហើយវាតបតវិញ។
ដំបូងវាទាញយកថូខឹន OAuth គណនីសេវាកម្ម GCP ពីម៉ាស៊ីនមេទិន្នន័យមេតារបស់ឧទាហរណ៍ ហើយច្រោះវា។ បន្ទាប់មក ដោយប្រើថូខឹននោះ វាបោសសម្អាត Kubernetes គ្រប់គ្រងយន្តហោះ អាចទាក់ទងបាននៅ kubernetes.default.svc:
- រាយបញ្ជី ClusterRoleBindings, ClusterRoles និង Nodes;
- ស៊ើបអង្កេត pods, secrets និង configmaps នៅទូទាំង ប្រព័ន្ធ kube, លំនាំដើម, kube-សាធារណៈ, ជួលណូដរបស់គូបេនិងឈ្មោះលំហវិភាគ;
- បញ្ហាដែល SelfSubjectAccessReview ហៅដើម្បីធ្វើផែនទីឲ្យច្បាស់អំពីអ្វីដែលអត្តសញ្ញាណដែលត្រូវបានគេលួចត្រូវបានអនុញ្ញាតឱ្យធ្វើ។
ជាចុងក្រោយវាប្រើឈ្មោះធុងផ្ទុកទិន្នន័យ Google Cloud Storage ដែលបង្កើតឡើងពីលេខសម្គាល់គម្រោង GCP ដែលបានអ៊ិនកូដយ៉ាងរឹងមាំ (អ្នកចុះហត្ថលេខាដ៏កម្រ-៤៣៧៦០៣-ទំព័រ៩) និងលេខគម្រោង បន្សំនៃការទាយដូចជា *-សាងសង់, *-វត្ថុបុរាណនិងជាច្រើន ម៉ាលីស៊ីស បុព្វបទ (លទ្ធផលនៃការវិភាគកោសិកាឈាម, កញ្ចប់ម៉ាលីស៊ីស, ការស្កេនម៉ាលីស៊ីស)។ កូដឆ្លើយតប និងតួអត្ថបទនីមួយៗត្រូវបានកត់ត្រាទុក និងបង្ហោះត្រឡប់ទៅទីតាំងដើមវិញ។ ជូលស៍-ខូល ចំណុចបញ្ចប់។
នេះជាករណីកម្រមួយនៃបន្ទុកខ្សែសង្វាក់ផ្គត់ផ្គង់ដែលបង្កើតឡើងជាពិសេសដើម្បីវាយប្រហារហេដ្ឋារចនាសម្ព័ន្ធរបស់អ្នកការពារផ្ទាល់។ រឿងរ៉ាវគ្របដណ្តប់ទូទាំងយុទ្ធនាការទាំងមូល — បំណែកដែលលេចឡើងនៅខាងក្នុងបន្ទុកជាមតិយោបល់ដែលកំណត់ឥរិយាបថជា "Security Research PoC … សរសេរឆ្លងកាត់ repo តាមរយៈសញ្ញាសម្ងាត់ប្រូកស៊ី git ដែលបានពង្រីកវិសាលភាព" — គឺជាយុត្តិកម្មដូចគ្នា មិនថាគោលដៅពេលដំណើរការគឺជា Shopify monorepo ឬម៉ាស៊ីនមេមេតារបស់ចង្កោមវិភាគនោះទេ។
ពេលវេលា និងការធ្វើចំណាកស្រុកវិសាលភាព
JulesJacker មិនមែនជាប្រតិបត្តិការដែលកើតឡើងភ្លាមៗនោះទេ។ វាគឺជាប្រតិបត្តិការដ៏យូរអង្វែងមួយ ដែលបានរួចផុតពីការលុបបញ្ជីឈ្មោះចេញ ដោយគ្រាន់តែផ្លាស់ប្តូរឈ្មោះរបស់វា។
| ពេលណា | ព្រឹត្តការណ៍ |
|---|---|
| ពាក់កណ្តាលខែមេសាឆ្នាំ ២០២១ | កញ្ចប់ដំបូងលេចឡើងក្រោមវិសាលភាពអ្នកបោះពុម្ពផ្សាយដើម៖ TS-utility façade, environment និង git-config exfiltration។ |
| ដើមខែឧសភា ឆ្នាំ 2026 | វ៉ារ្យ៉ង់ស៊ើបការណ៍សម្ងាត់ Hypervisor និង kernel-escape ត្រូវបានបោះពុម្ពផ្សាយ។ |
| ពាក់កណ្តាលដល់ចុងខែឧសភា ឆ្នាំ២០២៦ | មេរោគ SC3 cross-repo write worm លេចឡើងរួមជាមួយ payloads ដែលកំណត់គោលដៅដោយ Shopify និង google-labs-jules[bot] ការក្លែងបន្លំ។ SC4 ណែនាំកម្មវិធីផ្ទុកទិន្នន័យដែលបានអ៊ិនគ្រីប AES និង host-gated។ |
| ចុងខែឧសភា ឆ្នាំ 2026 | npm លុបវិសាលភាពអ្នកបោះពុម្ពផ្សាយដើម; ឈ្មោះកញ្ចប់ដោះស្រាយទៅជាកន្លែងដាក់សុវត្ថិភាពទទេ។ |
| សប្តាហ៍ដូចគ្នា | ប្រតិបត្តិករផ្លាស់ទីទៅវិសាលភាពដែលមើលទៅស្ទើរតែដូចគ្នាបេះបិទ ហើយបោះពុម្ពផ្សាយដង្កូវនេះឡើងវិញ រួមទាំងវ៉ារ្យ៉ង់វិភាគ-ហេដ្ឋារចនាសម្ព័ន្ធ។ |
ការធ្វើចំណាកស្រុកគឺជាផ្នែកដែលអ្នកការពារគួរតែពិចារណា។ ការលុប scope ដំបូងមិនបានបញ្ចប់យុទ្ធនាការ ឬសូម្បីតែធ្វើឱ្យវាយឺតនោះទេ។ ប្រតិបត្តិករបានរៀបចំ scope ស្របគ្នាដែលមានឈ្មោះខុសពីដើមដោយតួអក្សរតែមួយ ហើយបានបន្តបោះពុម្ពផ្សាយក្នុងរយៈពេលមួយសប្តាហ៍ដដែល។ គិតត្រឹមការសរសេរនេះ scope ថ្មី... ts-form-utils (កំណែ 1.0.0 ដល់ 1.1.0) របស់វា ts-project-lint (១.០.០ និង ១.១.០) និងឯករាជ្យ ts-enum-helper (1.0.0) នៅតែអាចដំឡើងបាន។
សូចនាករនៃការសម្របសម្រួល
សូចនាករទាំងអស់ខាងក្រោមត្រូវបានបញ្ជាក់ប្រឆាំងនឹងប្រភពកញ្ចប់។
| វាយបញ្ចូល | ទ្រនិចបង្ហាញ | ភក្ដិកំណត់ត្រាកំណត់ |
|---|---|---|
| បណ្តាញ (C2) | aaronstack[.]com/jules-collect | ចំណុចបញ្ចប់នៃការប្រមូលតែមួយនៅទូទាំងជំនាន់នីមួយៗ; ទទួលបានទូរមាត្រ JSON និងបំណែក tarball របស់ឃ្លាំង base64-gzip។ |
| បណ្តាញ (ប្រូកស៊ី SSRF) | http://git@192.168.0.1:8080 | ផ្នែកខាងមុខសម្រាប់ថូខឹនប្រូកស៊ី git ដែលបានពង្រីកវិសាលភាព ដែលប្រើដើម្បីទៅដល់ឃ្លាំងរបស់អង្គការគោលដៅ។ |
| បណ្តាញ (ពពក) | metadata.google.internal/computeMetadata/v1kubernetes.default.svcstorage.googleapis.com/storage/v1/b | ត្រូវបានប្រើដោយវ៉ារ្យ៉ង់ហេដ្ឋារចនាសម្ព័ន្ធវិភាគសម្រាប់ការលួចសញ្ញាសម្ងាត់ និងការឈ្លបយកការណ៍លើយន្តហោះត្រួតពិនិត្យ Kubernetes តែប៉ុណ្ណោះ។ |
| អត្តសញ្ញាណ | google-labs-jules[bot]161369871+google-labs-jules[bot]@users.noreply.github.com | បានក្លែងបន្លំ commit អត្តសញ្ញាណអ្នកនិពន្ធត្រូវបានរុញចូលទៅក្នុងសាខាសំខាន់ៗរបស់ជនរងគ្រោះ។ |
| ឯកសារ | lib/.perf.dat | ប្លុកបន្ទុកដែលបានអ៊ិនគ្រីប AES-256-CBC; IV ត្រូវបានរក្សាទុកក្នុង 16 បៃដំបូង និងសោត្រូវបានបង្កើតឡើងវិញជាថាមវន្តនៅក្នុង index.js. |
| ឯកសារ | SECURITY-POC.md | ទម្លាក់ចោលហើយ commitបានបញ្ជូនត្រឡប់ទៅឃ្លាំងឯកសារជនរងគ្រោះវិញជាមួយនឹងសារ chore: update dependency cache. |
| ឯកសារ | scripts/postinstall.sh | បានបើកទ្វារ $MALYSIS_ANALYSIS_IDកំណត់អត្តសញ្ញាណវ៉ារ្យ៉ង់នៃការកំណត់គោលដៅវិភាគ-ហេដ្ឋារចនាសម្ព័ន្ធ។ |
| ឥរិយាបថ | os.hostname() ពិនិត្យសម្រាប់ devbox / ubuntu-fc-uvm | ច្រកទ្វារបរិស្ថាន Sandbox និង AI-agent មុនពេលឌិគ្រីប និងការប្រតិបត្តិ payload។ |
| ឥរិយាបថ | .jules/ និង /app/.jules ការអានថតឯកសារ | ការកំណត់គោលដៅច្បាស់លាស់នៃបរិស្ថានកន្លែងធ្វើការរបស់ភ្នាក់ងារ AI។ |
| ឥរិយាបថ | sc1-, sc3-, sc4-, s0-vmm-recon | ស្លាកដំណាក់កាលទូរមាត្រដែលកំណត់ដោយប្រតិបត្តិករមានប្រយោជន៍សម្រាប់ការរកឃើញ និងការបរបាញ់។ |
| គោលដៅពពក | rare-signer-437603-p9malysis-* ការស្មានដាក់ធុង | ឧបករណ៍កំណត់អត្តសញ្ញាណគម្រោង GCP ដែលបានអ៊ិនកូដរឹង និងលំនាំនៃការរាប់បញ្ចូលធុងផ្ទុកដែលបានបង្កប់នៅក្នុងវ៉ារ្យ៉ង់ហេដ្ឋារចនាសម្ព័ន្ធវិភាគ។ |
| រូបរាងកញ្ចប់ | ផ្នែកខាងមុខកញ្ចប់ឧបករណ៍ប្រើប្រាស់ TS ដែលគ្មានវាលឃ្លាំង | គំរូយុទ្ធនាការដែលស៊ីសង្វាក់គ្នា៖ កញ្ចប់ឧបករណ៍ប្រើប្រាស់ TypeScript ក្លែងក្លាយជាមួយនឹងបន្ទុកផ្ទុកដែលមានគំនិតអាក្រក់ដែលបានបង្កប់នៅក្នុង postinstall hooks ឬភ្ជាប់ជាមួយ index.js. |




