我有能力在“apache”用户上运行任意 Python 代码。我能造成什么伤害?

信息安全 linux 渗透测试 SSH mysql Python
2021-08-21 16:32:16

因此,由于我的一位前同事的不良编程,我们的一个内部网络应用程序允许用户上传和运行任意 Python 文件。这最近通过匿名提示曝光。到目前为止,我还没有做任何太疯狂的事情,只是使用 os 库浏览目录结构一点。不过,我不确定我能造成多大的伤害。服务器上运行着一个 Python Web 应用程序和一个 MySQL 数据库。

我能以某种方式给自己 SSH 访问权限吗?我无法完全弄清楚我将如何去做。我也不认为我可以访问数据库,因为我没有任何用户信息。

那么,我可以在这里造成的最严重损害的实际限制是多少?

1个回答

您可以编写一些 Python 代码来上传 SSH 服务器二进制文件,然后运行它,这将为您提供 Apache 用户权限下的完整 SSH 访问权限。

从那里您可以轻松地读取 Python 应用程序的配置文件并使用那里的凭据连接到数据库,这将允许您获取机密数据(此处无需利用,因为应用程序已经可以访问数据库)。

此外,正如@Aroth在评论中指出的那样,您还可以破坏在同一用户帐户下运行的其他应用程序。

最后,您可以查看正在运行的内核/库是什么版本,并最终使用漏洞利用来获得 root 权限。