文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

针对区块链从业者的招聘陷阱:疑似Lazarus(APT-Q-1)窃密行动分析

码农的梦想

码农的梦想

2024-05-12 08:35

关注

团伙背景

Lazarus是疑似具有东北亚背景的APT组织,奇安信内部跟踪编号APT-Q-1。该组织因2014年攻击索尼影业开始受到广泛关注,其攻击活动最早可追溯到2007年。Lazarus早期主要针对政府机构,以窃取敏感情报为目的,但自2014年后,开始攻击全球金融机构、虚拟货币交易场所等目标,从受害者处盗取金钱资产。Lazarus曾多次利用虚假的社交账号,以提供工作机会为伪装,向特定行业人员发起钓鱼攻击。

事件概述

近期多名安全研究人员发现一类携带恶意JS代码的ZIP压缩包[1-4],样本涉及的恶意软件与去年11月国外Unit 42团队披露的”Contagious Interview”攻击活动[5]一致。

经过进一步调查,奇安信威胁情报中心发现,攻击者在去年底被披露后仍频繁展开攻击行动,受害者主要是区块链行业的开发者。攻击者在工作平台(比如linkedIn、Upwork、Braintrust等)上创建虚假的身份,伪装为雇主、独立开发者或初创公司创始人,发布具有丰厚报酬或者紧急任务的工作信息,工作内容通常是软件开发或者问题修复。这些工作信息会吸引到主动搜索而来的开发者,或者借助平台的推送机制呈现在目标人群面前。在讨论具体工作内容时,攻击者试图说服应聘人员在自己设备上运行由他们提供的代码。一旦应聘者不加怀疑地运行程序,其中插入的恶意JS代码将会窃取感染设备上与虚拟货币相关的敏感信息,并植入其他恶意软件。攻击流程如下所示。1715331883_663de32b0004195d5f4a4.png

这批攻击样本与”Contagious Interview”行动所用的网络基础设施重叠,且攻击者发起网络钓鱼的手法特点和受害者所属行业与Lazarus组织之前的活动相似,因此这次持续进行的攻击行动可能和Lazarus组织有关。

详细分析

网络钓鱼

伪造的网站

携带恶意JS代码的部分攻击样本中提到app.freebling[.]io这个域名。1715331895_663de33735112f8a0c108.png

该域名对应网站如下,主页自称是web3营销和奖励平台。

1715331901_663de33dc857845aff5f8.png

根据这个域名,我们发现在数月前就有不少区块链行业从业者发帖[6-9]称,收到与该网站相关的开发工作邀请,委派工作的客户要求他们在本地运行所提供的代码,部分应聘者的加密货币钱包因此失窃。

1715331911_663de3479ae91cabe02f3.png1715332310_663de4d69504d9ec4f3e6.png

网络钓鱼方式

对网上公开的攻击活动记录进行整理后,我们发现攻击者利用的工作信息发布平台至少包括linkedIn[6,9,10]、Upwork[7,8]、Braintrust[11]。

1715332322_663de4e287b599385c738.png

1715332327_663de4e76ab37098519f2.png1715332334_663de4ee1ee485d361123.png

攻击者以伪装的身份与吸引而来的应聘人员进行沟通,向应聘人员呈现详细的项目设计和需求,增加伪装身份的说服力,并通过一系列社会工程学手段诱使应聘者在本地运行攻击者提供的代码,具体方式包括:

(1) 声称是编码挑战,为了测试应聘者的技能是否满足工作要求;

(2) 声称项目代码存在问题需要修复,让应聘者运行程序看看是否能重现问题。

恶意代码托管

攻击者通过代码托管平台存放包含恶意代码的软件包,供应聘者下载,使用的代码托管平台包括Github,GitLab和Bitbucket。

与攻击活动有关的Github账号如下,部分Github账号有多年的活动记录,看起来与普通账号无异。

Github账号说明
https[:]//github[.]com/plannet-plannet/账号删除
https[:]//github[.]com/bmstoreJ/账号删除
https[:]//github[.]com/CodePapaya/账号删除
https[:]//github[.]com/Allgoritex/账号删除
https[:]//github[.]com/bohinskamariia/账号删除
https[:]//github[.]com/danil33110/账号删除
https[:]//github[.]com/aluxiontemp/账号删除
https[:]//github[.]com/komeq1120/账号删除
https[:]//github[.]com/aufeine/账号自2024-04-15开始活动
https[:]//github[.]com/dhayaprabhu/账号自2019年开始活动恶意代码库(dhayaprabhu/Crypto-Node.js)于2024-02-01首次提交
https[:]//github[.]com/MatheeshaMe/账号自2021年开始活动恶意代码库(MatheeshaMe/etczunks-marketplace)于2023-10-11提交
https[:]//github[.]com/Satyam-G5/账号自2023年开始活动恶意代码库(Satyam-G5/etczunks-marketplace)于2023-10-12 Fork自MatheeshaMe/etczunks-marketplace
https[:]//github[.]com/emadmohd211/账号自2021年开始活动
https[:]//github[.]com/alifarabi/账号自2020年开始活动恶意代码库(alifarabi/organ-management)于2024-03-30首次提交

GitLab存放的恶意代码库如下,涉及两个账号:Adrian John(@cleverpan43)和NYYU IO(@aminengineerings)。

GitLab库链接GitLab账号
https[:]//gitlab[.]com/crypto-trading5202718/trading-initial-projecthttps[:]//gitlab[.]com/cleverpan43
https[:]//gitlab[.]com/e-commerce-platform1/e-commerce-hdemo8811https[:]//gitlab[.]com/cleverpan43
https[:]//gitlab[.]com/nft-marketplace-platform/nft_wallet_hirdemo800118https[:]//gitlab[.]com/cleverpan43
https[:]//gitlab[.]com/initial-card-game-demo/2d_card_game_demo_kmug0801https[:]//gitlab[.]com/cleverpan43
https[:]//gitlab[.]com/benhermas/bh-vp-betahttps[:]//gitlab[.]com/aminengineerings
https[:]//gitlab[.]com/benhermas/bh-cryptoweb-betahttps[:]//gitlab[.]com/aminengineerings
https[:]//gitlab[.]com/ndbtechnology/ndb-school-15121-express-reacthttps[:]//gitlab[.]com/aminengineerings
https[:]//gitlab[.]com/ndbtechnology/ndb-school-15120-express-reacthttps[:]//gitlab[.]com/aminengineerings
https[:]//gitlab[.]com/ndbtechnology/ndb-school-16120-nest-reacthttps[:]//gitlab[.]com/aminengineerings

1715332443_663de55bce2241bf55ff6.png

1715332455_663de5677b8ed28517fcb.png

Bitbucket存放的恶意代码库如下,代码库链接来自提及freebling网站的攻击活动记录[7-9]。

Bitbucket库
https[:]//bitbucket[.]org/juandsuareza/main/src/main/
https[:]//bitbucket[.]org/freebling/landing-web-app/src/main/


1715332478_663de57ea7b40cbe613b5.png

恶意软件

攻击者使用的恶意软件与此前披露的”Contagious Interview”攻击活动一致,因此这里只进行简单的说明。


应聘者下载的软件包某个文件中潜藏有恶意Javascript代码,植入的恶意代码存放在一行之内,攻击者通常在前面加上单行注释和一长串空白符,如果文本编辑器未使用换行模式,将很难发现恶意代码的存在。1715332486_663de5867be8acc6958cb.png

Javascript恶意代码

JS代码通过base64编码和字符串切分对关键字符串进行保护。

1715332493_663de58de698e14b95fa9.png

以样本(MD5: 97868b884fc9d01c0cb1f3fa4d80b09f)为例进行分析,其中携带的恶意JS代码会重复运行主函数nt多次。1715332512_663de5a0b2d4f81813cb6.png

主函数nt首先收集Windows, Linux, macOS平台上多款浏览器的敏感信息,尤其是加密货币钱包有关的浏览器插件数据。1715332521_663de5a952d3543c24c7a.png


平台收集的信息
WindowsChrome, Brave, Opera, Edge浏览器的加密货币钱包插件信息
LinuxChrome, Brave, Opera浏览器的加密货币钱包插件信息;“~/.local/share/keyrings/”目录下的文件;Chrome, Firefox浏览器保存的密码数据。
macOSChrome, Brave, Opera浏览器的加密货币钱包插件信息;login.keychain和login.keychain-db文件;Chrome, Brave, Firefox浏览器保存的密码数据。

将收集的敏感信息回传到C2服务器(147[.]124.214.237:1244),回传信息的URL为”/uploads”。

1715332529_663de5b12ee7040e40e24.png

从C2服务器的”/clients/”下载后续Python脚本并运行。Linux和macOS平台直接调用python3命令执行;而在Windows平台上会先检查”%HOME%\.pyp\python.exe”是否存在,如果不存在,则从”/pdown”下载包含Python运行环境的ZIP压缩包,并解压到%HOME%目录。

1715332536_663de5b8ba4f6cd813f73.png

Python恶意代码

从”/clients/”下载的Python脚本解密后续载荷然后执行。其中sType变量为campaign_id的值,如果下载URL中的campaign_id省略,sType值则为”default”,因此会因为sType值的不同导致下载得到的Python脚本hash值发生变化。

1715332555_663de5cb9f11dc4db78be.png

该脚本下载额外的两个脚本并执行:

1715332565_663de5d51aa4d8709af69.png

Bow脚本同样支持Windows、Linux、macOS三个平台,用于进一步窃取多款浏览器的数据,并将其发送回C2的”/keys” URL。

1715332577_663de5e160355377293f2.png1715332585_663de5e943d85704d7469.png

Pay脚本包含两部分内容。第一部分用于收集设备信息,包括用户名、操作系统版本、IP和地理位置,同样发送回C2的”/keys” URL。

1715332592_663de5f09415f536d1420.png

第二部分为Python木马,C2为45[.]61.131.218:1245,木马指令和之前报告披露的一致。其中一个指令ssh_any会从第一阶段C2服务器(147[.]124.214.237:1244)的”/adc/” URL下载用于部署AnyDesk的Python脚本。1715332606_663de5fee0a9cc7087e0f.png

溯源关联

此次攻击活动所用恶意软件与Unit 42披露的BeaverTail和InvisibleFerret一致,关联样本(MD5: 51494dc0c88cc2d8733dd82c2e63e0d6)使用的C2服务器172[.]86.123.35:1244同样出现在此前活动中,因此这次针对区块链行业的钓鱼攻击是”Contagious Interview”活动的延续。

1715332634_663de61a9a458c1f8457f.png

Lazarus组织曾利用linkedIn平台扮演雇主身份,以编码挑战为理由诱使应聘者执行恶意代码[12],使用的钓鱼手法和本次活动存在相似之处,且加密货币和区块链行业长期以来都是Lazarus频繁攻击的领域,因此我们认为此次大规模钓鱼攻击可能和Lazarus组织有关。

总结

攻击者为了达成窃取加密货币的目的,选择将目光投放在区块链行业的技术人员身上,通过构造虚假网络身份,以工作招聘为幌子吸引目标群体。由于这一领域的远程开发工作十分常见,加上攻击者预先准备了网站和设计文档以增加可信度,使得很难和正常的工作招募区分开来。一旦应聘者不加提防地按照攻击者要求在自己设备上运行看似正常的代码,将落入陷阱之中,造成财产损失和敏感数据泄露。

IOC

MD5

(Javascript)

0f229f0929c081cab93f8276e29fe11b

7624fc8b47cb5[]8444ff0176edd7f15cb

7859ef9ca6f7fa800a058d3586164672

4120ce03d7d662d5ddf10e4565495055

560a2438bea7a7421b92f66b4d7c756b

1ca6bcea09b3b9b3cb338faf8161b7e8

ac55b61572eb8424192316c0970ccb54

6e5a8473832d376165906a99395ec1bd

ca294d9ccb1e41dd8592cec7158590cb

770ce85b7d4658812562be93e7a5ea52

51494dc0c88cc2d8733dd82c2e63e0d6

c753611ab87bd41cdf4ff9b140440fe2

979bb789ecd5a3881ad3d4823ca8fdc1

1a7581f412ff361d82091eb5f07c27a8

804ac0a47f7bb78afa666358325629bc

c1c1c5b2a76a3d463cb4f7c22c88bbe5

1e20dfc8145abced35dd934d5136e5dd

78f972104c48c25b6f5e7d3ffc2b4e1a

67d5c6db5cc292e00fdcfeb11fda9e0e

b73ba1327abb95eba44a233d9d502c79

e8fcc05c328b612918b3384638873a6d

5cb77e93ebe96f22741285592cd35100

647d26e94b9be5a1237a59d0b2b38442

67cee5b180370eb03d9606f481e48f36

1822bea1d0ec9ae1db9c265386699102

ce00e20489f75fde53992bc69abe7b62

d6c5c1d4510d0fccad5e0bc1de3cf80e

(压缩包)

c4c62c35ac06ffa843d2f84af089c94c

04e5082bdeebfbbc2aef66b17e64e2f7

d7783ba8476f1a2f0831f32abf9c3e69

1948c99104e09ecaa0f4cb3fdac276d5

2ed1b5[]0ed4ca84c0fdde84a585fac536

48fc7c946c34771b82a5e49a93d405a6

c2d7a7460bb15b3a9c082f6d88ee0b84

dbda4a6e6741fa3d7819c3c88ed22e88

f1b78698b108fbf5bfcbb6d7f3bbad76

93b7dbf5980de29cf7fb9a610229bb5a

907f39788d1d1439eed333091fd16730

eb0ba3a1623e95e57fb5a2aedb97d45f

95362a0f440990992cc9ad04e6675e77

58db0d021b75eb2a581c7773844703b5

110a7556e2ebcca7255be1c6ee999b94

37f4c3fb5925f0e39b2c9e7e5eb4450d

53ec27df858d3d133808ec338df29fc6

7a5a694ac7d4068f580be624ece44f4f

fa174cdd22080f11e13844c1e3326cd2

e6d09c7ad340d10109e6781bfb05a319

aad9dcd3a2045dafea47eef776ec5b8a

d3a85f6ccf117fb1cdb5[]06094edddd22

31922228868dc24dfe9b067d2b3c6d18

97868b884fc9d01c0cb1f3fa4d80b09f

46b2cfef633e6e531928a9c606b40b16

355b1bedeb19b546800de5ecc7933849

2a16962b336cc5296bb4e4230a5e5404

6ca874b098ba768ad5814bef9cf409fa

a07cd2703361ad566c5857a4e8e1652a

ebe250b7ca9122231f1d114b12d27821

3b5501885ba5283ec08101bc4cb9d613

8e13d8b8d0c965b95408a2efdde32847

31725dc195bb09fc32a842a554cc931b

a6fad33175e33ab7306e879f4f022662

093ea7c80ab1a192a91f4132078c02b1

5e5f51a859b170151714df1c5b648e31

C&C

http[:]//172.86.97.80:1224

http[:]//172.86.123.35:1244

http[:]//147.124.212.89:1244

http[:]//147.124.212.146:1244

http[:]//147.124.213.11:1244

http[:]//147.124.213.29:1244

http[:]//147.124.214.129:1244

http[:]//147.124.214.131:1244

http[:]//147.124.214.237:1244

http[:]//67.203.7.171:1244

http[:]//67.203.7.245:1244

http[:]//91.92.120.135:3000

45.61.131.218:1245

173.211.106.101:1245


参考链接

[1].https://twitter.com/malwrhunterteam/status/1781619431728123981

[2].https://twitter.com/dimitribest/status/1782609281897902426

[3].https://twitter.com/asdasd13asbz/status/1782951380568936481

[4].https://twitter.com/BaoshengbinCumt/status/1783402882903277983

[5].https://unit42.paloaltonetworks.com/two-campaigns-by-north-korea-bad-actors-target-job-hunters/

[6].https://www.linkedin.com/posts/abhisheksinghsoni_blockchainsecurity-cryptoscamalert-defijobs-activity-7127542067001475073-71xU

[7].https://www.linkedin.com/pulse/i-got-hacked-what-did-do-after-lokicheck-zuzkc

[8].https://twitter.com/syedasadkazmii/status/1769710505953026109

[9].https://www.linkedin.com/posts/nikhil-jain-385456190_cryptoscam-jobsecurity-walletsecurity-activity-7166506226401329153-wnGJ

[10].https://github.com/0x50D4/0x50d4.github.io/blob/main/_posts/2024-04-03-python-malware.md

[11].https://github.com/tayvano/lazarus-bluenoroff-research/blob/main/hacks-and-thefts/braintrust_job_dev_scam.md

[12].https://www.welivesecurity.com/en/eset-research/lazarus-luring-employees-trojanized-coding-challenges-case-spanish-aerospace-company/

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     428人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     199人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     159人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     239人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     62人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-网络安全
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯