原文来自公众号:小乙时间

我知道你在想什么。“一篇安全文章告诉我天塌下来了。”好吧,那就抓起你最爱的咖啡饮料,系好安全带快跑吧,天真的塌下来了。而且它恰好落在了 JavaScript 生态系统上(抱歉,我的幽默感有点崩)。

Image

“受信任”的软件包如何变成蠕虫

就在两周前,一个看似普通的星期一早晨(2025年9月8日),JavaScript世界遭遇了安全研究人员所称的npm历史上最具破坏性的供应链攻击之一。此次攻击影响了18个广泛使用的软件包,每周下载量总计超过26亿次。

Josh Junon,在 npm 社区中以“qix”为人熟知,成为了他所说的“乍一看似乎合法”邮件的受害者。这封邮件来自“support@npmjs.help”——这个域名在攻击发生前三天才注册。在经历了一个“惊慌失措的早晨”和“紧张的一周”之后,他点击了钓鱼链接,并输入了自己的凭证。然后,就是他的道歉了:

“抱歉各位,我应该多注意一点的。这不像我,这周压力太大了。”

就这样,只需轻轻一点,攻击者就获得了现代网络的一些最基本的构建模块的访问权限。

Junon 是多个 NPM 软件包的开发者。值得一提的是,其中有多个非常重要的 NPM 软件包。而且,他的软件包也被多个非常重要的 NPM 软件包所使用,例如lint、carbon等等。

多米诺骨牌效应

这些被入侵的软件包看起来就像 JavaScript 实用程序的名人录:chalk、debug、ansi-styles、strip-ansi 以及其他 15 个。它们并非带有华丽营销页面的浮华库。它们是维系 JavaScript 生态系统的隐形基础设施。

最最恐怖的是,目前已公布超500+受害包,而且还在持续增加!!!!!!

这里查看受害包列表:https://socket.dev/blog/ongoing-supply-chain-attack-targets-crowdstrike-npm-packages

该恶意软件精准度极高它不会让应用程序崩溃,也不会显示勒索信息。相反,它悄悄潜伏在浏览器环境中,拦截加密货币交易。它使用编辑距离算法,将钱包地址替换为攻击者控制的、外观相似的地址。

该恶意软件的复杂程度令人惊讶:其目标包括以太坊、比特币、Solana、波场币、莱特币和比特币现金,维护了超过 280 个硬编码的攻击者地址以实现冗余,并使用十六进制编码来规避检测。根据 Socket 的分析,攻击者从此次攻击活动中获利约 600 美元——虽然不是什么大数目,但却证明了其可能造成更大损失。

吞噬 JavaScript 生态系统的蠕虫

但 9 月 8 日的攻击仅仅是个开始。9 月 15 日,一个新的威胁出现了:“Shai-Hulud”攻击,它展现出了 npm 生态系统中前所未有的攻击方式。这是一种自我复制、类似蠕虫的行为。

当我发现这一点时,我非常兴奋。不过,我们先来深入了解一下吧。

当该恶意软件在受感染的环境中发现 npm 令牌时,它不仅仅是窃取它们。它会自动利用这些令牌发布任何可访问软件包的恶意版本。ReversingLabs将其描述为“首款能够自我复制的蠕虫”,目前已感染超过 180 个软件包,并且感染数量还在不断增加。

该蠕虫会在被感染的账户下创建名为“Shai-Hulud”的公共 GitHub 仓库,本质上是将受害者自己的账户变成了窃取凭证的数据存储地。在此次持续的攻击活动中, CrowdStrike 的一些 npm 软件包甚至遭到入侵。

社区确实迅速做出了反应——Aikido Security 在 5 分钟内检测到了攻击,npm 在数小时内开始删除恶意版本,而Vercel 等平台则主动清除了构建缓存。

Tanium 的 Melissa Bischoping 试图平息恐慌:“你受此影响的可能性几乎为零......它们在那段时间内被下载并传送到你的软件中的可能性非常非常小。。。。。”

但当你考虑到下一次攻击可能不会在 5 分钟内被发现、可能不仅限于加密货币盗窃、并且可能不会在安全研究人员警惕时部署时,这种推理就显得过于乐观了。

让我们来谈谈这一事件迫使我们面对的一些令人不安的现实

热门软件包是主要攻击目标。受影响最严重的软件包下载量巨大——chalk 软件包每周下载量超过 4000 万次,debug 软件包每周下载量超过 3.5 亿次。热门软件包带来了虚假的安全感,同时也让它们对攻击者极具吸引力。

供应链攻击正在迅速演变。短短几个月内,我们就见证了从简单的恶意软件包到复杂的网络钓鱼活动,再到自我复制的蠕虫的演变。根据 ReversingLabs 的 2025 年报告,2024 年 23 起与加密相关的恶意活动中,有 14 起针对的是 npm。

爆炸半径呈指数级增长。研究人员声称“每周下载量达 26 亿次”,但实际上每次下载都可能成为部署到生产环境的构建构件的一部分,缓存在 CI/CD 系统中,并捆绑到服务于真实用户的应用程序中。

这意味着,在这段时间内,您处于易受攻击的状态,无法检查是否受到攻击。此外,您自己的团队/组织也可能会发现易受攻击的软件包,并且必须立即检查您生态系统中的所有 Node.js 产品。

当然,您可以npm list手动逐一运行并检查所有依赖项,但这是一项漫长的任务。

目前建议的操作

  • 检查依赖包和锁定文件,并审核可疑更改和存储库创建。
  • 完全更换 CI/CD 和管理凭证。
  • 修复对受信任版本的依赖关系并考虑使用私有 npm 注册表。
  • 实施安全措施,包括强制性拉取请求审查和强制提交和依赖项扫描。
  • 文章还公布了受影响软件包的列表,敦促开发人员立即检查并删除更新。
  • NPM 漏洞检查器为您提供构建主动防御的工具。

    - https://github.com/SamratDuttaOfficial/npm-packages-checker

    - https://github.com/AikidoSec/safe-chain

最后,祝你们好运!

PS:截至2025-09-19的受侵入包一览(建议快速搜一下有没有直接用到的包!!!

Total packages: 526

  1. @ahmedhfarag/ngx-perfect-scrollbar@20.0.20

  2. @ahmedhfarag/ngx-virtual-scroller@4.0.4

  3. @art-ws/common@2.0.28

  4. @art-ws/config-eslint@2.0.4

  5. @art-ws/config-eslint@2.0.5

  6. @art-ws/config-ts@2.0.7

  7. @art-ws/config-ts@2.0.8

  8. @art-ws/db-context@2.0.24

  9. @art-ws/di-node@2.0.13

  10. @art-ws/di@2.0.28

  11. @art-ws/di@2.0.32

  12. @art-ws/eslint@1.0.5

  13. @art-ws/eslint@1.0.6

  14. @art-ws/fastify-http-server@2.0.24

  15. @art-ws/fastify-http-server@2.0.27

  16. @art-ws/http-server@2.0.21

  17. @art-ws/http-server@2.0.25

  18. @art-ws/openapi@0.1.12

  19. @art-ws/openapi@0.1.9

  20. @art-ws/package-base@1.0.5

  21. @art-ws/package-base@1.0.6

  22. @art-ws/prettier@1.0.5

  23. @art-ws/prettier@1.0.6

  24. @art-ws/slf@2.0.15

  25. @art-ws/slf@2.0.22

  26. @art-ws/ssl-info@1.0.10

  27. @art-ws/ssl-info@1.0.9

  28. @art-ws/web-app@1.0.3

  29. @art-ws/web-app@1.0.4

  30. @crowdstrike/commitlint@8.1.1

  31. @crowdstrike/commitlint@8.1.2

  32. @crowdstrike/falcon-shoelace@0.4.1

  33. @crowdstrike/falcon-shoelace@0.4.2

  34. @crowdstrike/foundry-js@0.19.1

  35. @crowdstrike/foundry-js@0.19.2

  36. @crowdstrike/glide-core@0.34.2

  37. @crowdstrike/glide-core@0.34.3

  38. @crowdstrike/logscale-dashboard@1.205.1

  39. @crowdstrike/logscale-dashboard@1.205.2

  40. @crowdstrike/logscale-file-editor@1.205.1

  41. @crowdstrike/logscale-file-editor@1.205.2

  42. @crowdstrike/logscale-parser-edit@1.205.1

  43. @crowdstrike/logscale-parser-edit@1.205.2

  44. @crowdstrike/logscale-search@1.205.1

  45. @crowdstrike/logscale-search@1.205.2

  46. @crowdstrike/tailwind-toucan-base@5.0.1

  47. @crowdstrike/tailwind-toucan-base@5.0.2

  48. @ctrl/deluge@7.2.1

  49. @ctrl/deluge@7.2.2

  50. @ctrl/golang-template@1.4.2

  51. @ctrl/golang-template@1.4.3

  52. @ctrl/magnet-link@4.0.3

  53. @ctrl/magnet-link@4.0.4

  54. @ctrl/ngx-codemirror@7.0.1

  55. @ctrl/ngx-codemirror@7.0.2

  56. @ctrl/ngx-csv@6.0.1

  57. @ctrl/ngx-csv@6.0.2

  58. @ctrl/ngx-emoji-mart@9.2.1

  59. @ctrl/ngx-emoji-mart@9.2.2

  60. @ctrl/ngx-rightclick@4.0.1

  61. @ctrl/ngx-rightclick@4.0.2

  62. @ctrl/qbittorrent@9.7.1

  63. @ctrl/qbittorrent@9.7.2

  64. @ctrl/react-adsense@2.0.1

  65. @ctrl/react-adsense@2.0.2

  66. @ctrl/shared-torrent@6.3.1

  67. @ctrl/shared-torrent@6.3.2

  68. @ctrl/tinycolor@4.1.1

  69. @ctrl/tinycolor@4.1.2

  70. @ctrl/torrent-file@4.1.1

  71. @ctrl/torrent-file@4.1.2

  72. @ctrl/transmission@7.3.1

  73. @ctrl/ts-base32@4.0.1

  74. @ctrl/ts-base32@4.0.2

  75. @hestjs/core@0.2.1

  76. @hestjs/cqrs@0.1.6

  77. @hestjs/demo@0.1.2

  78. @hestjs/eslint-config@0.1.2

  79. @hestjs/logger@0.1.6

  80. @hestjs/scalar@0.1.7

  81. @hestjs/validation@0.1.6

  82. @nativescript-community/arraybuffers@1.1.6

  83. @nativescript-community/arraybuffers@1.1.7

  84. @nativescript-community/arraybuffers@1.1.8

  85. @nativescript-community/gesturehandler@2.0.35

  86. @nativescript-community/perms@3.0.5

  87. @nativescript-community/perms@3.0.6

  88. @nativescript-community/perms@3.0.7

  89. @nativescript-community/perms@3.0.8

  90. @nativescript-community/perms@3.0.9

  91. @nativescript-community/sentry@4.6.43

  92. @nativescript-community/sqlite@3.5.2

  93. @nativescript-community/sqlite@3.5.3

  94. @nativescript-community/sqlite@3.5.4

  95. @nativescript-community/sqlite@3.5.5

  96. @nativescript-community/text@1.6.10

  97. @nativescript-community/text@1.6.11

  98. @nativescript-community/text@1.6.12

  99. @nativescript-community/text@1.6.13

  100. @nativescript-community/text@1.6.9

  101. @nativescript-community/typeorm@0.2.30

  102. @nativescript-community/typeorm@0.2.31

  103. @nativescript-community/typeorm@0.2.32

  104. @nativescript-community/typeorm@0.2.33

  105. @nativescript-community/ui-collectionview@6.0.6

  106. @nativescript-community/ui-document-picker@1.1.27

  107. @nativescript-community/ui-document-picker@1.1.28

  108. @nativescript-community/ui-drawer@0.1.30

  109. @nativescript-community/ui-image@4.5.6

  110. @nativescript-community/ui-label@1.3.35

  111. @nativescript-community/ui-label@1.3.36

  112. @nativescript-community/ui-label@1.3.37

  113. @nativescript-community/ui-material-bottom-navigation@7.2.72

  114. @nativescript-community/ui-material-bottom-navigation@7.2.73

  115. @nativescript-community/ui-material-bottom-navigation@7.2.74

  116. @nativescript-community/ui-material-bottom-navigation@7.2.75

  117. @nativescript-community/ui-material-bottomsheet@7.2.72

  118. @nativescript-community/ui-material-core-tabs@7.2.72

  119. @nativescript-community/ui-material-core-tabs@7.2.73

  120. @nativescript-community/ui-material-core-tabs@7.2.74

  121. @nativescript-community/ui-material-core-tabs@7.2.75

  122. @nativescript-community/ui-material-core-tabs@7.2.76

  123. @nativescript-community/ui-material-core@7.2.72

  124. @nativescript-community/ui-material-core@7.2.73

  125. @nativescript-community/ui-material-core@7.2.74

  126. @nativescript-community/ui-material-core@7.2.75

  127. @nativescript-community/ui-material-core@7.2.76

  128. @nativescript-community/ui-material-ripple@7.2.72

  129. @nativescript-community/ui-material-ripple@7.2.73

  130. @nativescript-community/ui-material-ripple@7.2.74

  131. @nativescript-community/ui-material-ripple@7.2.75

  132. @nativescript-community/ui-material-tabs@7.2.72

  133. @nativescript-community/ui-material-tabs@7.2.73

  134. @nativescript-community/ui-material-tabs@7.2.74

  135. @nativescript-community/ui-material-tabs@7.2.75

  136. @nativescript-community/ui-pager@14.1.36

  137. @nativescript-community/ui-pager@14.1.37

  138. @nativescript-community/ui-pager@14.1.38

  139. @nativescript-community/ui-pulltorefresh@2.5.4

  140. @nativescript-community/ui-pulltorefresh@2.5.5

  141. @nativescript-community/ui-pulltorefresh@2.5.6

  142. @nativescript-community/ui-pulltorefresh@2.5.7

  143. @nexe/config-manager@0.1.1

  144. @nexe/eslint-config@0.1.1

  145. @nexe/logger@0.1.3

  146. @nstudio/angular@20.0.4

  147. @nstudio/angular@20.0.5

  148. @nstudio/angular@20.0.6

  149. @nstudio/focus@20.0.4

  150. @nstudio/focus@20.0.5

  151. @nstudio/focus@20.0.6

  152. @nstudio/nativescript-checkbox@2.0.6

  153. @nstudio/nativescript-checkbox@2.0.7

  154. @nstudio/nativescript-checkbox@2.0.8

  155. @nstudio/nativescript-checkbox@2.0.9

  156. @nstudio/nativescript-loading-indicator@5.0.1

  157. @nstudio/nativescript-loading-indicator@5.0.2

  158. @nstudio/nativescript-loading-indicator@5.0.3

  159. @nstudio/nativescript-loading-indicator@5.0.4

  160. @nstudio/ui-collectionview@5.1.11

  161. @nstudio/ui-collectionview@5.1.12

  162. @nstudio/ui-collectionview@5.1.13

  163. @nstudio/ui-collectionview@5.1.14

  164. @nstudio/web-angular@20.0.4

  165. @nstudio/web@20.0.4

  166. @nstudio/xplat-utils@20.0.5

  167. @nstudio/xplat-utils@20.0.6

  168. @nstudio/xplat-utils@20.0.7

  169. @nstudio/xplat@20.0.5

  170. @nstudio/xplat@20.0.6

  171. @nstudio/xplat@20.0.7

  172. @operato/board@9.0.35

  173. @operato/board@9.0.36

  174. @operato/board@9.0.37

  175. @operato/board@9.0.38

  176. @operato/board@9.0.39

  177. @operato/board@9.0.40

  178. @operato/board@9.0.41

  179. @operato/board@9.0.42

  180. @operato/board@9.0.43

  181. @operato/board@9.0.44

  182. @operato/board@9.0.45

  183. @operato/board@9.0.46

  184. @operato/board@9.0.47

  185. @operato/board@9.0.48

  186. @operato/board@9.0.49

  187. @operato/board@9.0.50

  188. @operato/board@9.0.51

  189. @operato/data-grist@9.0.29

  190. @operato/data-grist@9.0.35

  191. @operato/data-grist@9.0.36

  192. @operato/data-grist@9.0.37

  193. @operato/graphql@9.0.22

  194. @operato/graphql@9.0.35

  195. @operato/graphql@9.0.36

  196. @operato/graphql@9.0.37

  197. @operato/graphql@9.0.38

  198. @operato/graphql@9.0.39

  199. @operato/graphql@9.0.40

  200. @operato/graphql@9.0.41

  201. @operato/graphql@9.0.42

  202. @operato/graphql@9.0.43

  203. @operato/graphql@9.0.44

  204. @operato/graphql@9.0.45

  205. @operato/graphql@9.0.46

  206. @operato/graphql@9.0.47

  207. @operato/graphql@9.0.48

  208. @operato/graphql@9.0.49

  209. @operato/graphql@9.0.50

  210. @operato/graphql@9.0.51

  211. @operato/headroom@9.0.2

  212. @operato/headroom@9.0.35

  213. @operato/headroom@9.0.36

  214. @operato/headroom@9.0.37

  215. @operato/help@9.0.35

  216. @operato/help@9.0.36

  217. @operato/help@9.0.37

  218. @operato/help@9.0.38

  219. @operato/help@9.0.39

  220. @operato/help@9.0.40

  221. @operato/help@9.0.41

  222. @operato/help@9.0.42

  223. @operato/help@9.0.43

  224. @operato/help@9.0.44

  225. @operato/help@9.0.45

  226. @operato/help@9.0.46

  227. @operato/help@9.0.47

  228. @operato/help@9.0.48

  229. @operato/help@9.0.49

  230. @operato/help@9.0.50

  231. @operato/help@9.0.51

  232. @operato/i18n@9.0.35

  233. @operato/i18n@9.0.36

  234. @operato/i18n@9.0.37

  235. @operato/input@9.0.27

  236. @operato/input@9.0.35

  237. @operato/input@9.0.36

  238. @operato/input@9.0.37

  239. @operato/input@9.0.38

  240. @operato/input@9.0.39

  241. @operato/input@9.0.40

  242. @operato/input@9.0.41

  243. @operato/input@9.0.42

  244. @operato/input@9.0.43

  245. @operato/input@9.0.44

  246. @operato/input@9.0.45

  247. @operato/input@9.0.46

  248. @operato/input@9.0.47

  249. @operato/input@9.0.48

  250. @operato/layout@9.0.35

  251. @operato/layout@9.0.36

  252. @operato/layout@9.0.37

  253. @operato/popup@9.0.22

  254. @operato/popup@9.0.35

  255. @operato/popup@9.0.36

  256. @operato/popup@9.0.37

  257. @operato/popup@9.0.38

  258. @operato/popup@9.0.39

  259. @operato/popup@9.0.40

  260. @operato/popup@9.0.41

  261. @operato/popup@9.0.42

  262. @operato/popup@9.0.43

  263. @operato/popup@9.0.44

  264. @operato/popup@9.0.45

  265. @operato/popup@9.0.46

  266. @operato/popup@9.0.47

  267. @operato/popup@9.0.48

  268. @operato/popup@9.0.49

  269. @operato/popup@9.0.50

  270. @operato/popup@9.0.51

  271. @operato/pull-to-refresh@9.0.35

  272. @operato/pull-to-refresh@9.0.36

  273. @operato/pull-to-refresh@9.0.37

  274. @operato/pull-to-refresh@9.0.38

  275. @operato/pull-to-refresh@9.0.39

  276. @operato/pull-to-refresh@9.0.40

  277. @operato/pull-to-refresh@9.0.41

  278. @operato/pull-to-refresh@9.0.42

  279. @operato/pull-to-refresh@9.0.43

  280. @operato/pull-to-refresh@9.0.44

  281. @operato/pull-to-refresh@9.0.45

  282. @operato/pull-to-refresh@9.0.46

  283. @operato/pull-to-refresh@9.0.47

  284. @operato/shell@9.0.22

  285. @operato/shell@9.0.35

  286. @operato/shell@9.0.36

  287. @operato/shell@9.0.37

  288. @operato/shell@9.0.38

  289. @operato/shell@9.0.39

  290. @operato/styles@9.0.2

  291. @operato/styles@9.0.35

  292. @operato/styles@9.0.36

  293. @operato/styles@9.0.37

  294. @operato/utils@9.0.22

  295. @operato/utils@9.0.35

  296. @operato/utils@9.0.36

  297. @operato/utils@9.0.37

  298. @operato/utils@9.0.38

  299. @operato/utils@9.0.39

  300. @operato/utils@9.0.40

  301. @operato/utils@9.0.41

  302. @operato/utils@9.0.42

  303. @operato/utils@9.0.43

  304. @operato/utils@9.0.44

  305. @operato/utils@9.0.45

  306. @operato/utils@9.0.46

  307. @operato/utils@9.0.47

  308. @operato/utils@9.0.48

  309. @operato/utils@9.0.49

  310. @operato/utils@9.0.50

  311. @operato/utils@9.0.51

  312. @rxap/ngx-bootstrap@19.0.3

  313. @rxap/ngx-bootstrap@19.0.4

  314. @teriyakibomb/ember-velcro@2.2.1

  315. @teselagen/bio-parsers@0.4.30

  316. @teselagen/bounce-loader@0.3.16

  317. @teselagen/bounce-loader@0.3.17

  318. @teselagen/file-utils@0.3.22

  319. @teselagen/liquibase-tools@0.4.1

  320. @teselagen/ove@0.7.40

  321. @teselagen/range-utils@0.3.14

  322. @teselagen/range-utils@0.3.15

  323. @teselagen/react-list@0.8.19

  324. @teselagen/react-list@0.8.20

  325. @teselagen/react-table@6.10.19

  326. @teselagen/react-table@6.10.20

  327. @teselagen/react-table@6.10.22

  328. @teselagen/sequence-utils@0.3.34

  329. @teselagen/ui@0.9.10

  330. @thangved/callback-window@1.1.4

  331. @things-factory/attachment-base@9.0.42

  332. @things-factory/attachment-base@9.0.43

  333. @things-factory/attachment-base@9.0.44

  334. @things-factory/attachment-base@9.0.45

  335. @things-factory/attachment-base@9.0.46

  336. @things-factory/attachment-base@9.0.47

  337. @things-factory/attachment-base@9.0.48

  338. @things-factory/attachment-base@9.0.49

  339. @things-factory/attachment-base@9.0.50

  340. @things-factory/attachment-base@9.0.51

  341. @things-factory/attachment-base@9.0.52

  342. @things-factory/attachment-base@9.0.53

  343. @things-factory/attachment-base@9.0.54

  344. @things-factory/attachment-base@9.0.55

  345. @things-factory/auth-base@9.0.42

  346. @things-factory/auth-base@9.0.43

  347. @things-factory/auth-base@9.0.44

  348. @things-factory/auth-base@9.0.45

  349. @things-factory/email-base@9.0.42

  350. @things-factory/email-base@9.0.43

  351. @things-factory/email-base@9.0.44

  352. @things-factory/email-base@9.0.45

  353. @things-factory/email-base@9.0.46

  354. @things-factory/email-base@9.0.47

  355. @things-factory/email-base@9.0.48

  356. @things-factory/email-base@9.0.49

  357. @things-factory/email-base@9.0.50

  358. @things-factory/email-base@9.0.51

  359. @things-factory/email-base@9.0.52

  360. @things-factory/email-base@9.0.53

  361. @things-factory/email-base@9.0.54

  362. @things-factory/email-base@9.0.55

  363. @things-factory/email-base@9.0.56

  364. @things-factory/email-base@9.0.57

  365. @things-factory/email-base@9.0.58

  366. @things-factory/email-base@9.0.59

  367. @things-factory/env@9.0.42

  368. @things-factory/env@9.0.43

  369. @things-factory/env@9.0.44

  370. @things-factory/env@9.0.45

  371. @things-factory/integration-base@9.0.42

  372. @things-factory/integration-base@9.0.43

  373. @things-factory/integration-base@9.0.44

  374. @things-factory/integration-base@9.0.45

  375. @things-factory/integration-marketplace@9.0.43

  376. @things-factory/integration-marketplace@9.0.44

  377. @things-factory/integration-marketplace@9.0.45

  378. @things-factory/shell@9.0.42

  379. @things-factory/shell@9.0.43

  380. @things-factory/shell@9.0.44

  381. @things-factory/shell@9.0.45

  382. @tnf-dev/api@1.0.8

  383. @tnf-dev/core@1.0.8

  384. @tnf-dev/js@1.0.8

  385. @tnf-dev/mui@1.0.8

  386. @tnf-dev/react@1.0.8

  387. @ui-ux-gang/devextreme-angular-rpk@24.1.7

  388. @yoobic/design-system@6.5.17

  389. @yoobic/jpeg-camera-es6@1.0.13

  390. @yoobic/yobi@8.7.53

  391. airchief@0.3.1

  392. airpilot@0.8.8

  393. angulartics2@14.1.1

  394. angulartics2@14.1.2

  395. another-shai@1.0.1

  396. browser-webdriver-downloader@3.0.8

  397. capacitor-notificationhandler@0.0.2

  398. capacitor-notificationhandler@0.0.3

  399. capacitor-plugin-healthapp@0.0.2

  400. capacitor-plugin-healthapp@0.0.3

  401. capacitor-plugin-ihealth@1.1.8

  402. capacitor-plugin-ihealth@1.1.9

  403. capacitor-plugin-vonage@1.0.2

  404. capacitor-plugin-vonage@1.0.3

  405. capacitorandroidpermissions@0.0.4

  406. capacitorandroidpermissions@0.0.5

  407. config-cordova@0.8.5

  408. cordova-plugin-voxeet2@1.0.24

  409. cordova-voxeet@1.0.32

  410. create-hest-app@0.1.9

  411. db-evo@1.1.4

  412. db-evo@1.1.5

  413. devextreme-angular-rpk@21.2.8

  414. ember-browser-services@5.0.2

  415. ember-browser-services@5.0.3

  416. ember-headless-form-yup@1.0.1

  417. ember-headless-form@1.1.2

  418. ember-headless-form@1.1.3

  419. ember-headless-table@2.1.5

  420. ember-headless-table@2.1.6

  421. ember-url-hash-polyfill@1.0.12

  422. ember-url-hash-polyfill@1.0.13

  423. ember-velcro@2.2.1

  424. ember-velcro@2.2.2

  425. encounter-playground@0.0.2

  426. encounter-playground@0.0.3

  427. encounter-playground@0.0.4

  428. encounter-playground@0.0.5

  429. eslint-config-crowdstrike-node@4.0.3

  430. eslint-config-crowdstrike-node@4.0.4

  431. eslint-config-crowdstrike@11.0.2

  432. eslint-config-crowdstrike@11.0.3

  433. eslint-config-teselagen@6.1.7

  434. eslint-config-teselagen@6.1.8

  435. globalize-rpk@1.7.4

  436. graphql-sequelize-teselagen@5.3.8

  437. graphql-sequelize-teselagen@5.3.9

  438. html-to-base64-image@1.0.2

  439. json-rules-engine-simplified@0.2.1

  440. json-rules-engine-simplified@0.2.4

  441. jumpgate@0.0.2

  442. koa2-swagger-ui@5.11.1

  443. koa2-swagger-ui@5.11.2

  444. mcfly-semantic-release@1.3.1

  445. mcp-knowledge-base@0.0.2

  446. mcp-knowledge-graph@1.2.1

  447. mobioffice-cli@1.0.3

  448. monorepo-next@13.0.1

  449. monorepo-next@13.0.2

  450. mstate-angular@0.4.4

  451. mstate-cli@0.4.7

  452. mstate-dev-react@1.1.1

  453. mstate-react@1.6.5

  454. ng2-file-upload@7.0.2

  455. ng2-file-upload@7.0.3

  456. ng2-file-upload@8.0.1

  457. ng2-file-upload@8.0.2

  458. ng2-file-upload@8.0.3

  459. ng2-file-upload@9.0.1

  460. ngx-bootstrap@18.1.4

  461. ngx-bootstrap@19.0.3

  462. ngx-bootstrap@19.0.4

  463. ngx-bootstrap@20.0.3

  464. ngx-bootstrap@20.0.4

  465. ngx-bootstrap@20.0.5

  466. ngx-color@10.0.1

  467. ngx-color@10.0.2

  468. ngx-toastr@19.0.1

  469. ngx-toastr@19.0.2

  470. ngx-trend@8.0.1

  471. ngx-ws@1.1.5

  472. ngx-ws@1.1.6

  473. oradm-to-gql@35.0.14

  474. oradm-to-gql@35.0.15

  475. oradm-to-sqlz@1.1.2

  476. ove-auto-annotate@0.0.10

  477. ove-auto-annotate@0.0.9

  478. pm2-gelf-json@1.0.4

  479. pm2-gelf-json@1.0.5

  480. printjs-rpk@1.6.1

  481. react-complaint-image@0.0.32

  482. react-complaint-image@0.0.35

  483. react-jsonschema-form-conditionals@0.3.18

  484. react-jsonschema-form-conditionals@0.3.21

  485. react-jsonschema-form-extras@1.0.4

  486. react-jsonschema-rxnt-extras@0.4.9

  487. remark-preset-lint-crowdstrike@4.0.1

  488. remark-preset-lint-crowdstrike@4.0.2

  489. rxnt-authentication@0.0.3

  490. rxnt-authentication@0.0.4

  491. rxnt-authentication@0.0.5

  492. rxnt-authentication@0.0.6

  493. rxnt-healthchecks-nestjs@1.0.2

  494. rxnt-healthchecks-nestjs@1.0.3

  495. rxnt-healthchecks-nestjs@1.0.4

  496. rxnt-healthchecks-nestjs@1.0.5

  497. rxnt-kue@1.0.4

  498. rxnt-kue@1.0.5

  499. rxnt-kue@1.0.6

  500. rxnt-kue@1.0.7

  501. swc-plugin-component-annotate@1.9.1

  502. swc-plugin-component-annotate@1.9.2

  503. tbssnch@1.0.2

  504. teselagen-interval-tree@1.1.2

  505. tg-client-query-builder@2.14.4

  506. tg-client-query-builder@2.14.5

  507. tg-redbird@1.3.1

  508. tg-redbird@1.3.2

  509. tg-seq-gen@1.0.10

  510. tg-seq-gen@1.0.9

  511. thangved-react-grid@1.0.3

  512. ts-gaussian@3.0.5

  513. ts-gaussian@3.0.6

  514. ts-imports@1.0.1

  515. ts-imports@1.0.2

  516. tvi-cli@0.1.5

  517. ve-bamreader@0.2.6

  518. ve-bamreader@0.2.7

  519. ve-editor@1.0.1

  520. ve-editor@1.0.2

  521. verror-extra@6.0.1

  522. voip-callkit@1.0.2

  523. voip-callkit@1.0.3

  524. wdio-web-reporter@0.1.3

  525. yargs-help-output@5.0.3

  526. yoo-styles@6.0.326

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐