Hasty Briefsbeta

双语

Arbitrary file read and remote code execution in Active Storage

9 hours ago
  • 使用Active Storage和图像变体的Rails应用程序可能允许未经身份验证的攻击者读取任意文件,包括secret_key_base和凭据,从而可能导致远程代码执行。
  • 漏洞源于Active Storage未禁用libvips的未模糊化操作,攻击者可通过精心构造的文件上传来调用这些操作。
  • 受影响的应用程序使用libvips进行图像处理(config.active_storage.variant_processor = :vips),并允许来自不可信用户的图像上传。
  • 缓解措施需要将activestorage升级到修复版本,将libvips升级到>= 8.13,并更改所有已暴露的密钥,如secret_key_base和凭据。
  • 如果libvips < 8.13,除了移除libvips外没有其他解决方法;对于libvips >= 8.13,可以通过环境变量或Ruby代码阻止未模糊化操作。
  • 密钥必须完全替换(而不仅仅是轮换),因为可能已经发生泄露;升级仅能防止未来的利用。