为什么本地root可以变成任何LDAP用户?

我知道这已经在这里问过了,但是我对这个答案并不满意,不知道是否可以重振和劫持一个老问题。

我们有在LDAP服务器上validation用户的工作站。 但是,本地root用户可以使用任何LDAP用户而不需要密码。 从我的angular度来看,这听起来像是一个巨大的安全问题,我希望在服务器级别可以避免。

我可以想象下面的情况下,用户可以模仿另一个,不知道如何防止它:

  1. UserA具有有限的权限,但可以使用其LDAP密码login到公司工作站。 他们可以cat /etc/ldap.conf找出LDAP服务器的地址, ifconfig可以查看自己的IP地址。 (这只是一个如何获得LDAP地址的例子,我不认为这通常是一个秘密,隐晦不难解决)
  2. UserA拿出自己的个人笔记本电脑,configurationauthentication和networking接口,以匹配公司工作站,并将networking电缆从工作站插入到他们的笔记本电脑,引导和login作为本地(这是他的笔记本电脑,所以他有本地根)
  3. 作为root用户,他们在LDAP上可能拥有或不具有更多权限(不需要密码!)的任何其他用户,但至less可以模拟该用户而没有任何问题。

在这里的其他答案说,这是正常的UNIX行为,但它听起来真的不安全。

例如,模拟的用户可以在NFS挂载上扮演那个用户的angular色吗? (笔记本电脑甚至有相同的IP地址)。 我知道他们将无法在远程机器上作为根用户,但他们仍然可以是任何他们想要的用户!

必须有一种方法来防止在LDAP服务器级别的权利? 或者也许在NFS服务器级别? 是否有一部分的过程,我错过了,实际上阻止了这一点?

谢谢!!

我不认为你的情况是有效的。

假设一个攻击者会遵循你的1,2,3点,并在他们自己的机器上成为一个不同的UID(用户)。

那到底是什么? 他们已经以root用户身份访问自己的机器,并且在自己的系统上使用匿名LDAP作为用户后端来访问用户,就像:

 useradd differentUser su - differentUser 

…根本不使用LDAP。

由于LDAP只会replace本地用户存储(例如/etc/passwd ),请参阅nsswitch.conf和它的手册。

如果他们想要login到networking上的任何其他机器,他们仍然需要为不同的用户提供有效的证书。

那怎么不安全?

NFS挂载

不可以。为了能够在NFS挂载上充当该用户,他们首先必须能够从某个地方挂载NFS共享。

如果NFS服务器上的/etc/exports允许他们挂载NFS共享,那么他们不需要LDAP,只要挂载它并浏览即可。