Description
sbt is a build tool for Scala, Java, and others. Given a specially crafted zip or JAR file, `IO.unzip` allows writing of arbitrary file. This would have potential to overwrite `/root/.ssh/authorized_keys`. Within sbt's main code, `IO.unzip` is used in `pullRemoteCache` task and `Resolvers.remote`; however many projects use `IO.unzip(...)` directly to implement custom tasks. This vulnerability has been patched in version 1.9.7.
Remediation
References
https://github.com/sbt/io/commit/124538348db0713c80793cb57b915f97ec13188a
https://github.com/sbt/io/issues/358
https://github.com/sbt/io/pull/360
https://github.com/sbt/sbt/security/advisories/GHSA-h9mw-grgx-2fhf
Related Vulnerabilities
CVE-2019-13173 Vulnerability in npm package fstream
CVE-2014-4172 Vulnerability in maven package org.jasig.cas:cas-client-core
CVE-2020-35460 Vulnerability in maven package net.sf.mpxj:mpxj
CVE-2021-22204 Vulnerability in npm package exiftool-vendored
CVE-2021-39147 Vulnerability in maven package com.thoughtworks.xstream:xstream