在线编程 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

相关推荐

  • 开源无国界?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
  • 小心恶意NPM包让你成为51Pwn的肉鸡

    10月31日,墨菲安全实验室监测到名为hktalent的开发者在NPM中央仓库发布了aliyundrive、spring-projects 等15个NPM投毒包,组件包通过混淆进行反检测,开发者难以发现隐藏的恶意代码。 其中 aliyundrive 组件包仿冒了阿里云盘名称,国内用户开发者在使用阿里云盘过程中有可能中招。 当用户安装时会窃取用户的操作系统、网…

    2023年11月1日
    0
  • 投毒者对 PyPi 上的开源组件开发者下手了

    简述 OSCS 近期监测到 PyPi 官方发布公告称有攻击者针对 PyPi 上的开源组件开发者进行钓鱼,试图窃取 PyPi 贡献者的凭据。本次攻击是通过贼喊捉贼的假装PyPi官方给恶意包发邮箱进行钓鱼,开发者可以通过开启2FA认证防止被攻击者窃取凭据后更改项目。 钓鱼事件 通过钓鱼邮件获取 PyPi 贡献者的凭据 根据PyPi官方发布的公告得知: PyPi …

    2023年8月9日
    0
  • shaikhyaser在NPM 仓库中投放67个恶意包

    一、事件简述: 7 月 16 日 ,OSCS 安全社区监测到shaikhyaser一天内在NPM仓库中不间断投放了十多个组件包,这些组件包都包含恶意行为。截止到21日,该用户已向 NPM 仓库投放了 67个不同版本的的恶意组件包,这些包也在代码中注明了该用户的邮箱,推测是hackerone中的用户。 这些恶意包的攻击方式相同,下面来分析其攻击手法。 二、 手…

    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