su
我需要一些有关运行/的 *nix 平台上可能的攻击向量的信息sudo
。
恶意进程是否可以等待用户运行su
或sudo
然后以某种方式利用该根访问权限?或者这已经以某种方式受到保护了吗?
例如,如果 /dev/tty2 已root
模拟su
:
# inject text
echo Adding malicious text to a root tty, like Enter Password: > /dev/tty2
# read keystrokes
cat /dev/tty2
# not sure how to write keystrokes or if it is possible
也许这绝对是有记录的或受保护的,如果是这样,请链接我的文档。
PS:请不要把我当成是在请求帮助进行漏洞利用。我不是。问题是关于在上下文中使用su
/sudo
与日志记录的风险root
讨论关于 Windows 是否应该有一个sudo
命令。我需要弄清楚我的事实。
答案1
是的,进程可以通过以下方式将输入注入到 tty 中TIOCSTI
读写控制。至少在 Linux 上,这会受到一些影响限制: 用户应该是 root ( CAP_SYS_ADMIN
)或者注入其控制终端。
这仍然是相当危险的,而且TIOCSTI
是被掏空的在像 OpenBSD 这样的系统中,但它的威胁模型通常比你的问题相反:root 应该使用su
(或其他东西)作为普通用户运行命令,并且该命令能够将密钥插入控制 tty它正在与其特权调用者共享。查看示例这里和这里。
当然,也可以通过在启动的biff(1)
同一个 tty 中运行的某个或其他程序来利用它su root
,但这看起来并不那么有趣:如果攻击者能够掌握能够su
或的帐户sudo
,则可能有更简单更好的升级方式。