社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

开源≠安全!记一次Github中的恶意软件分析

白帽子左一 • 3 月前 • 125 次点击  

扫码领资料

获网安教程


Track安全社区投稿~  

千元稿费!还有保底奖励~(https://bbs.zkaq.cn)

前言

在我随意浏览 GitHub、探寻找 Twitter 自动化工具的过程中,我偶然发现了一个看似无辜的 Python 工具,它在众多克隆和分支中比较受欢迎。然而,里面却隐藏着一个惊喜:一个shell。在这篇短文中,我将引导您完成揭开这个隐藏shell的过程,以及瞄准毫无戒心的用户是多么简单。

我随意浏览并在 GitHub 上发现了一个新工具,可以使用 tweepy 库实现 Twitter 自动化。该工具已经使用了大约三周,有分支和详细的自述文件。一切看起来都很好,但有一个隐藏的shell。让我们仔细看看代码。

揭开隐藏的shell

在 VSCode 中打开入口点文件。反向shell隐藏在这里。你能发现它吗?

应用程序的入口点

选择文本时,我注意到代码第一行有大量制表字符

这里的制表字符太多

这是恶意代码。有数百个制表字符,但是当您启用自动换行时,您可以看到隐藏的内容。默认情况下,VSCode 或 PyCharm 等 IDE 不进行自动换行。

Linux 的“cat”将单词包裹起来。因此恶意代码可以被发现。

分析payload

有一个 exec() 语句,并且payload是从远程服务器接收的。直接访问远程 C2 后,很明显,payload以 Windows 计算机为目标,并使用 fernet 加密进行加密,这可能有助于绕过一些效率较低的防病毒程序。

来自远程服务器的payload

受损的存储库所有者

经过对提交记录和拥有者账户的调查,可以得出结论:该仓库拥有者的账户在几天前遭到入侵,随后该账户被用来注入恶意代码。


有一个带有恶意代码的新签名提交

结论

该GitHub 存储库乍一看是一个有用的 Twitter 自动化开源工具,但结果却隐藏着隐藏的 shell 和payload。受损所有者的帐户促进了该恶意软件的注入,该恶意软件以 Windows 计算机为目标,并采用 fernet 加密来潜在规避防病毒程序。小编也在这里提醒大家在下载GitHub上的资源时,还是要稍微注意下工具的安全问题,开源≠安全!

以上内容由白帽子左一翻译并整理。原文:https://medium.com/@s_novoselov/open-source-secure-43db79cbabbe

声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。所有渗透都需获取授权

如果你是一个网络安全爱好者,欢迎加入我的知识星球:zk安全知识星球,我们一起进步一起学习。星球不定期会分享一些前言漏洞,每周安全面试经验、SRC实战纪实等文章分享,微信识别二维码,只需25,即可加入,如不满意,72 小时内可在 App 内无条件自助退款。


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/174658
 
125 次点击