某信息安全机构披露Alpine Linux当中存在一项远程代码执行缺陷,而这一发行版目前正在众多Docker容器内得到广泛应用。
众包Bug赏金系统Bountygraph缔造者兼研究员Max Justica于上周四表示,此项漏洞可能被恶意攻击者利用,通过中间人(简称MITM)网络访问或操作恶意软件包镜像经由apk(Alpine的默认软件包管理器)实现任意代码注入。
Justicz指出,这一漏洞特别危险。首先,由于体积小巧,因此Alpine被广泛应用于各类Docker镜像。第二,大多数软件包apk都没有通过安全的TLS连接提供服务,因此极易受到篡改。
在最糟糕的情况下,攻击者能够在Docker镜像构建过程中拦截apk的打包请求,向其中注入恶意代码,而后将其传递至目标计算机。这些计算机会对软件包进行解压缩,并在Docker容器当中运行这些代码。
Justicz在接受采访时指出,“在Alpine的默认配置当中,如果我们能够运行「apk」命令的机器进行流量MITM攻击,即可使该机器执行任意代码。甚至在恶意代码开始运行之后,我仍然可以成功执行Docker build命令。”
“一旦攻击者在已经构建的镜像上执行其代码,则在该镜像后续开始运行后,其即可对目标计算机加以全面控制。”
此项安全漏洞源自apk解压归档文件以及处理可疑代码的具体方式。Justicz发现如果恶意软件可以隐藏在软件包的commit_hooks目录当中,则其将可逃避清理,而后得以正常执行。
这一结果意味着,上游恶意攻击者或者网络窃听者能够直接将恶意软件引入Docker容器,并在未经用户允许的情况下加以运行。此时,攻击者将在受害计算机上运行该代码,意味着其将能够针对目标容器或主机系统实施进一步攻击。
Alpine的最新版本已经对apk进行了修复更新,因此我们建议开人员利用经过更新的Alpine版本重构自己的Docker镜像。
原文链接:https://www.theregister.co.uk/2018/09/15/alpine_linux_bug/