Linux和Windows如何保护特权帐户?

最近,我开始从事一家中型公司的应用程序安全性工作,从安全咨询(笔试等)中脱离了5年以上。 我从一开始就看到的最大挑战之一是安全扫描器和其他工具使用root / Administrator访问权限,因为这是供应商告诉他们使用的,很可能是因为易于configuration。 我真的不喜欢这个想法。 例如,Nexpose和Nessus都被configuration为使用root和Administrator。

我的问题 – pipe理访问这些特权帐户的最佳做法是什么? 我最初的想法是有一种密码保险库系统,只知道系统的密码。 然后,用户可以根据需要“检查”根/pipe理员密码“特别是对于Nessus,只有几个命令以root身份运行,所以我认为创build标准用户并将其添加到sudoers文件,而只允许这些特定的命令。

谢谢!

如果您正在寻找一个集中的组织或用户pipe理器,那么有许多商业应用程序来完成这一点。

在你的Linux机器上,以root身份禁用login,并让用户以自己身份login。 如果该方框对LDAP或AD进行身份validation,则会logging此类事务。 你仍然需要给这个用户特定的权利。 一旦login到盒子,使用sudo也可以使审计和跟踪更容易。

不知道你的公司是如何组织和分配的,这个问题很难回答。 安全,服务器pipe理员,应用程序pipe理员是我受雇的独立部门。 应用程序pipe理员没有pipe理员权限来运行只有服务器pipe理员才能执行的工具。 服务器pipe理员,他们可以添加/删除/删除本地帐户不能改变AD / LDAP。 安全审计所有的服务器,以获得当地的帐户是在一个特定的盒子,需要人certificate他们的使用。

使用通用用户login可能会使系统处于开放状态,无法确定问题的原因。 最好locking下来,根据需要给予访问,然后假设人们会诚实和新的东西。 这是更多的工作,但它会让你晚上睡得更好。 更重要的是,你从来没有活过,直到你发现你的一台服务器已经被攻破,CIO想知道为什么。

在我现在的雇主现场,许多安全措施之一就是使用logging所有活动的特权会话监视器只能访问的破解窗口帐户。

对于特定的系统,所有特权帐户的密码pipe理都被移交给外部密码库应用程序,甚至pipe理员也不知道root / Administrator / DB-owner等密码。

在明确定义的RBAC不足以及root / Administrator / etc的情况下。 访问是必需的,pipe理员请求访问,在安全操作小组批准后(四眼原则,更改/事件编号的审计跟踪),并通过密码保险库,使用来自保pipe库的正确凭证启动SSH或RDP。 pipe理员不会收到保pipe库中存储的密码的明文副本。 可以监视SSH或RDP会话,并logging所需的审计跟踪。 会话closures后,保pipe库应用程序将再次更改密码。

当然,这些程序的实际安全性很大程度上取决于configurationpipe理的质量和安全意识,事件监控和运营团队的一般成熟度。

你运行的风险(实际上是现实)是事件的解决,甚至预定的工作将花费更长的时间,但至less你会有一个很好的审计跟踪为什么这样!