开源编程语言 R 曝光存在 8.8 分代码执行漏洞,可

2024-05-04 15:03:28

  安全公司 HiddenLayer 近日发现开源编程语言 R 存在一项允许黑客执行恶意代码的重大漏洞 CVE-2024-27322。该漏洞风险评级为 8.8 分,允许恶意文件在反序列化时执行任意代码。如果相关代码牵涉到软件包,则可能引发供应链攻击。

  注:序列化是将对象转化为可传输的字节序列过程,而反序列化便是将字节序列重新转换为对象的过程,序列化和反序列化通常发生在数据存储和网络传输过程中,例如从软件包库下载软件包便涉及反序列化。

  据悉,R 语言使用 RDS 文件格式进行序列化数据的存储或传输,其中 RDS 格式包括 .rdb 文件和.rdx 文件。R 程序运行过程中使用 readRDS 函数从软件包库中读取这两种文件,然后使用 eva1 函数判断文件中表达式的值,以便反序列化 RDS 文件中的对象。

  研究人员指出,CVE-2024-27322 涉及到 R 程序的序列化 / 反序列化过程中利用 promise 对象和惰性求值。在反序列化加载 RDS 文件或软件包时,由于 R 支持惰性求值,未能及时检查 RDS 文件中的 promise 对象的指令值。因此黑客可以创建包含特定指令值的 RDS 文件,然后通过钓鱼手法诱使用户下载打开文件,进而发动攻击。研究人员指出,一旦黑客悄悄替换了原始的.rdx 或.rdb 文件,就可以利用相关软件包发动供应链攻击。

  目前 R 语言开发团队已经发布了新版本 R Core Version 4.4.0 来解决这个漏洞,安全公司也呼吁开发人员尽快更新。

下一篇:奇瑞星纪元 ET 车型 5 月 9 日上市,目前订单已突
上一篇:摩托罗拉 moto X50 Ultra 手机通过 3C 认证,三证齐全
返回顶部小火箭