恶意Python包使用Unicode欺骗来逃避检测和窃取数据

已发现Python包索引(PyPI)存储库中的恶意Python包使用Unicode作为逃避检测和部署信息窃取恶意软件的技巧。
有问题的软件包名为onyxproxy,已于2023年3月15日上传到PyPI,并具有收集和泄露凭据和其他有价值数据的功能。它已被删除,但在吸引了183次下载之前。
根据软件供应链安全公司Phylum的说法,该软件包将其恶意行为合并到一个安装脚本中,该脚本包含数千个看似合法的代码字符串。
这些字符串包括粗体和斜体的混合字体,仍然可读,可以被Python解释器解析,只是为了在安装包时激活窃取恶意软件的执行。
“这种奇怪方案的一个明显和直接的好处是可读性,”该公司指出。“此外,这些可见的差异并不会阻止代码运行,而确实如此。”
这之所以成为可能,是因为使用了看似相同字符的Unicode变体(又名同形文字)来在看似无害的函数和变量中伪装其真实颜色(例如,self 与 𝘀𝘦𝘭𝘧)。
剑桥大学研究人员Nicholas Boucher和Ross Anderson之前在一种名为Trojan Source的攻击技术中披露了使用Unicode将漏洞注入源代码的方法。
该方法缺乏复杂性,但它通过创建一段新颖的混淆代码来弥补它,尽管它展示了来自其他来源的复制粘贴工作的明显迹象。
这一发展突显了部分威胁行为者继续尝试寻找新的方法来绕过基于字符串匹配的防御,利用“Python解释器如何处理 Unicode 来混淆他们的恶意软件”。
在相关说明中,加拿大网络安全公司 PyUp详细介绍了三个新的欺诈性Python包的发现——aiotoolbox、asyncio-proxy 和pycolorz——它们被累计下载了 1,000 多次,旨在从远程服务器检索混淆代码。
本文来源于Lonely Blog -全球网络安全资讯平台, 转载请注明出处: https://blog.wuhao13.xin/5352.html