在线编程 IDE =远程网络攻击?

背景:

黑客通常使用受感染的机器而不是直接从个人拥有的设备发起攻击,这使他们能够隐藏其来源。在最近的事件响应中,Profero 的事件响应团队调查了一种可能的情况,假设威胁参与者使用 Datacamp 的在线 IDE 对云基础设施发起攻击。但是,因为Datacamp、ISP 和在线 IDE 之间错综复杂的关系,使得Profero 的事件响应团队对使用云 IDE 隐藏攻击来源的想法很感兴趣,并启动了一个研究项目来探索这一策略。

在线IDE是什么?

在线IDE,也叫Cloud IDE,主要基于HTML5相关技术构建,通常在浏览器里即可完成传统IDE的大部分开发工作。不幸的是,许多用户和组织没有正确配置他们的资源和云环境,导致恶意攻击者发现并利用此错误配置,发起攻击行为。

DataCamp是一个国外的在线学习平台,DataCamp projects中使用了 Jupyter Notebook,Jupyter是一个开源 Web 应用程序,其在github上的star为13.6k,是一个允许用户创建和共享文本的文档。

Profero 的 Omri Segev Moyal表示,恶意攻击者可以滥用在线编程学习平台来发起远程网络攻击、窃取数据并扫描易受攻击的设备。DataCamp 允许攻击者编译恶意工具、托管或分发恶意软件,并连接到外部服务。

在DataCamp平台的个人工作区,有一个用于练习和执行自定义代码、上传文件和连接到数据库的 IDE。

此IDE 允许用户导入 Python 库、下载和编译存储库,然后执行编译的程序。换句话说,任何一个威胁参与者都可能直接从 DataCamp 平台内发起远程攻击。

在线编程 IDE =远程网络攻击?

DataCamp Python 编译器中的端口扫描器

如何通过在线IDE发起攻击?

一、代码

在Datacamp 网站上的使用示例之一,是演示如何连接到 PostgreSQL 服务器。

那换个角度想,既然可以连接到外部PostgreSQL 服务器,其他服务器是否可行?云服务或者Amazon S3 bucket又会是什么结果?

在对攻击者可能使用 DataCamp 的资源来达到隐藏攻击来源的事件做出响应后, Profero 公司的研究人员决定调查这种情况。

他们发现 DataCamp 的高级在线 Python IDE 为用户提供了安装第三方模块的能力,这些模块允许连接到 Amazon S3 bucket。Omri Segev Moyal 表示,他们在 DataCamp 平台上尝试了上述场景,能够访问 S3 bucket并将所有文件泄露到平台网站上的工作区环境中。

要访问AWS资源,首先安装 boto3 模块:

在线编程 IDE =远程网络攻击?

下一步是连接到 S3 bucket,罗列并下载其中的所有文件:

在线编程 IDE =远程网络攻击?

从攻防中的防御方来看,文件下载的 CloudTrail 日志如下:

"eventSource": "s3.amazonaws.com","eventName": "GetObject","awsRegion": "eu-west-1","sourceIPAddress": "34.192.118.171","userAgent": "[Boto3/1.17.22 Python/3.8.10 'Linux/5.4.176-91.338.amzn2.x86_64 Botocore/1.20.53 Resource]","requestParameters": {"bucketName": "test_bucket","Host": "test_bucket.s3.eu-west-1.amazonaws.com","key": "test.jpg"

文件上传日志如下:

"eventSource": "s3.amazonaws.com","eventName": "GetObject","awsRegion": "eu-west-1","sourceIPAddress": "34.192.118.171","userAgent": "[Boto3/1.17.22 Python/3.8.10 'Linux/5.4.176-91.338.amzn2.x86_64 Botocore/1.20.53 Resource]","requestParameters": {"bucketName": "test_bucket","Host": "test_bucket.s3.eu-west-1.amazonaws.com","key": "test.jpg"

通过两个日志可以看出,useragent为:

[Boto3/1.17.22 Python/3.8.10 Linux/5.4.176–91.338.amzn2.x86_64 Botocore/1.20.53 Resource]

这允许使用boto框架从python脚本中快速识别响应,

另外,查看日志中的ip地址时,发现流量显示来自 Amazon

在线编程 IDE =远程网络攻击?

由于DataCamp 使用 AWS的服务器,来自 DataCamp 的活动很可能会成功执行,而蓝队无法检测到此类的活动。即使是那些进一步检查连接的人也会陷入死胡同,因为没有已知的确定来源。

以上是可以执行攻击的基本示例,在使用Github API、Azure API 和任何在线资源等其他场景时都可能受到此方法的影响。

二、工具

为了对攻击场景的研究更进一步,研究人员试图导入或安装通常用于网络攻击的工具,例如 Nmap 网络映射工具。

下载链接可用于通过简单的 Web 请求将其他恶意软件下载到受感染的系统。

此外,这些下载链接可能会在其他类型的攻击中被滥用,例如托管恶意软件以进行网络钓鱼攻击,或通过恶意软件下载其他有效负载。

尽管 Profero 没有将他们的研究扩展到其他学习平台,但研究人员认为,DataCamp 并不是黑客可以滥用的唯一平台。

在线编程 IDE =远程网络攻击?

参考链接:

https://medium.com/proferosec-osm/online-programming-learning-sites-can-be-manipulated-by-hackers-to-launch-cyberattacks-a684d9f4daef
https://www.bleepingcomputer.com/news/security/online-programming-ides-can-be-used-to-launch-remote-cyberattacks/
(0)
上一篇 2023年8月9日 下午5:46
下一篇 2023年8月9日 下午5:58

相关推荐

  • 多个不同名称的 PyPI 包中发现 W4SP 窃取器

    威胁参与者已经向 Python 包索引(PyPI)发布了另一轮恶意软件包,目的是在受到威胁的开发人员机器上发布窃取信息的恶意软件。 有趣的是,尽管这个恶意软件有很多名字,比如ANGEL Stealer,Celestial Stealer,Fade Stealer,Leaf $tealer,PURE Stealer,Satan Stealer和@skid St…

    2023年8月9日
    0
  • ihateniggers:针对Python开发者的Windows远控木马分析

    背景 墨菲安全实验室在持续监测开源软件仓库中的投毒行为,5 月 9 日起发现 4 个包含 “ihateniggers” 远程控制木马的 Python 包被 nagogy@gmail.com 邮箱关联的账号发布到 PyPI 仓库,试图针对Windows系统下 Python 开发者进行攻击。木马利用了discord、replit、playit 等多个平台托管后门…

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

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

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

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

    2023年8月9日
    0
  • npm 包 chalk-next 被开发者投毒,源码 SRC 目录被删除

    一、事件简述 1月5日,有开发者在 twitter 中发文称遭遇了名为 chalk-next 的组件投毒事件,该组件存在收集配置信息和删除本地文件的恶意逻辑,当前 NPM 仓库已经下线了该组件。 chalk-next 组件的开发者也是 vue-admin-beautiful 项目的作者 chuzhixin,vue-admin-beautiful 项目在 Gi…

    2023年8月9日
    0