供应链投毒:NPM

0x01 前言

同事在群里发了下面这篇关于 npm 供应链投毒的文章,顺便学习一下 npm 相关的投毒手法

原文地址:https://thehackernews.com/2023/11/48-malicious-npm-packages-found.html

分析文章:https://blog.phylum.io/dozens-of-npm-packages-caught-attempting-to-deploy-reverse-shell/

0x02 文章概要

文中提到 hktalent 用户在 https://www.npmjs.com/~hktalent 上发布了39个包含投毒的攻击手法(截止目前投毒样本均已被删除)

image-20231105230527769

攻击者通过利用 package.json 配置文件中的 scripts 来实现执行恶意 js 代码,其中恶意的 js 代码就是一段混淆了的反弹shell 代码

首先就是在 scripts 中通过 node 执行了 scripts 下的 js 文件

image-20231105231137041

init.js 中指向了 rsh.js 可以看到 rsh.js 做了一些混淆的处理

image-20231105231531149

首先是最外层的一些 unicode 编码

首先看到最上面是进行了受害机器的网络信息的收集,然后会进行本机环境变量信息的收集

接下来就是重头戏可以看到s1应该是投毒作者的核心利用代码,为了防止被分析还做了加密的处理

image-20231105231719897

但是很显然解密函数就是 uS 所以我们只要运行一下解密函数结合得到下面的类似内容,可以看到代码就是一个用来做反弹shell的

image-20231105232012206

0x03 复现

简单复现一下,模拟受害者的执行流,为了本地测试我把 host 改成 localhost 了

然后执行 npm install 触发恶意投毒包

image-20231105232245146

我们只需要稍等片刻就可以等到投毒包的本机信息搜集的数据

image-20231105232626093

解密一下可以发现就是上面 rsh.js 中环境变量收集的那个代码执行结果

image-20231105232805389

之后就是正常的反弹shell了

image-20231105232925146

0x04 说在最后

博客已经积了厚厚一层灰了。。先水一篇..

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇