PRELOADER

当前文章 : 《从RCE到LDAP访问》

12/2/2019 —— 

从RCE到LDAP访问

首发:先知社区:https://xz.aliyun.com/t/4449

原文链接:https://medium.com/@thbcn/from-rce-to-ldap-access-9ce4f9d2fd78

这是我的第二篇文章,随时在Twitter(@thibeault_chenu)或评论中给我反馈,这样可以帮助我。

介绍

几个月前,我对一家法国公司进行了安全审计。

该公司有一个网站,您可以在其中找到新闻,联系页面或下载文档。

要加载某些内容,将发送AJAX请求,它们由2个参数组成。

此请求允许您以HTML格式获取包含来自站点的最新新闻的响应。

远程执行代码

由此可以了解网站的工作原理。名为ajax的端点允许您使用任何类的任何方法。

在找到下面的技术之前,我尝试了使用stdClass类和方法的各种尝试,但没有任何功能。

然后我有一个想法,就是简单地删除class参数以尝试显示phpinfo()函数。

我的想法有效,现在我怎样才能更有效地使用它?

在PHP中有一个名为system(https://secure.php.net/manual/fr/function.system.php)的函数,它允许您执行命令并返回此命令的结果。

system(string $ command [,int&$ return_var]):string

但是,正如您所看到的,我需要一个允许我放置我选择的命令的参数。为此,我将使用我在某些页面上看到的参数,此参数称为args(我知道并不是很难)。

现在我知道我可以执行任何UNIX命令,但有很多事情是可能的。在这种情况下,我将进一步搜索,因为我现在可以访问文件夹和文件以及其中的内容。

LDAP服务器

最有趣的是我找到了配置文件,在其中我可以找到有关数据库凭据的信息。

幸运的是,我找到了一个包含一组登录和数据库密码(20个数据库)和一个LDAP服务器的配置文件。

但为什么是LDAP服务器呢?首先,让我们记住LDAP服务器是什么。

  1. 我们对LDAP服务器比对数据库更感兴趣。由于服务器上安装了一个phpMyAdmin版本,即使它们在localhost外部无法访问,我也可以连接并进行访问。

  2. 在轻量级目录访问协议(LDAP /ɛldæp/)是一个开放的,厂商中立的行业标准应用协议,用以通过互联网协议(IP)网络访问和维护分布式目录信息服务。

  3. 目录服务通过允许在整个网络中共享有关用户,系统,网络,服务和应用程序的信息,在开发Intranet和Internet应用程序中发挥着重要作用。

  4. 作为示例,目录服务可以提供任何有组织的记录集,通常具有分层结构,例如公司电子邮件目录。类似地,电话簿是具有地址和电话号码的订户列表。

  5. 资料来源:https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol

为了简化对LDAP的理解,重要的是要记住它是用户的目录。此目录可用于允许用户仅连接一次并可访问各种应用程序和网站。此目录还允许打开Windows会话。

要回答“为什么网站配置文件中存在LDAP访问?”这一问题,这些访问允许您为站点上经过身份验证的用户定义权限。

要连接到MacOS下的公司LDAP服务器,我发现很少有免费应用程序,我个人使用LDAPSoft。

如果你有一个开源替代品我很感兴趣,因为当每个用户有大约40个字段时,使用终端连接到LDAP服务器很烦人。

LDAP凭据的访问权限仅限于读取权限,我无法修改用户的数据。

感谢维基百科和LDAP服务器,我能够知道安全漏洞涉及40,000人。

对于我能够访问的每个人:

  1. 名字和姓氏

  2. 个人电邮地址

  3. 出生日期

  4. 电话号码

  5. 密码清除(随机数……)

  6. 有关RFID标签(MiFare)的信息

  7. 用于启动Windows会话的个人目录

每个员工的RFID标签允许访问公司的建筑物,可以购买空白RFID标签以输入LDAP服务器中存在的信息,从而欺骗性地访问建筑物。

我知道这种类型的标签并不昂贵且易于编程。

短信紧急警报

有一个我以前从未在其它公司见过的系统,该系统可以向公司的所有员工发送警报短信,以防入侵大楼或恐怖袭击。

实际上,通过搜索其中一个配置文件,我能够从SMS发送服务获取API密钥。

使用此密钥的简单HTTP请求将允许我向整个公司发送SMS。

结论

  1. 获取40,000名前雇员或雇员的信息,

  2. 访问大约20个数据库的可能性,

  3. 是否可以使用RFID标签(?)访问公司的建筑物,

  4. 是否可以获取每个用户的密码,从而获得其他访问权限(?)

该公司被警告并纠正了RCE的缺陷。