描述
这种攻击利用的使用符号链接(符号链接)为了写敏感文件。攻击者可以创建一个符号链接链接到目标文件无法访问。当特权程序试图创建一个临时文件名称相同的符号链接链接,它会写入目标文件指出,攻击者的符号链接的链接。如果攻击者可以在临时文件中插入恶意内容他们将写敏感文件使用符号链接。比赛是因为系统检查是否存在临时文件,然后创建该文件。攻击者通常会创建一个符号链接之间的间隔期间检查和临时文件的创建。
攻击的可能性
典型的严重性
执行流程
探索
确认目标主机的平台支持符号链接。 这种攻击模式只能应用于支持符号链接的平台。
技术
研究目标平台确定它是否支持符号链接。
创建一个符号链接,并确保它同样适用于给定的平台。
检查应用程序的文件I / O行为: 分析应用程序的文件I / O的行为以确定它存储文件,以及执行读/写文件操作。
技术
使用内核跟踪实用程序,如ktrace监控应用程序行为。
使用调试工具,如文件监视器监视应用程序的文件系统I / O调用
观察临时目录看到当创建临时文件,修改和删除。
分析源代码的开源系统,如Linux, Apache等。
实验
验证写入文件系统的能力: 攻击者编写验证能力目标主机的文件系统。
技术
创建一个文件,目标目录(如不存在。“碰temp.txt”在类unix系统中)
在区分文件的创建和文件的平台上修改,如果应用程序写入目标文件已经存在,试图修改它。
验证目标目录权限
利用
替换文件的符号链接一个敏感的系统文件。 时间之间的应用程序检查一个文件是否存在(或如果用户能够访问它),实际上应用程序打开文件的时候,攻击者替换文件的符号链接一个敏感的系统文件。
技术
创建一个无限循环包含命令,如“rm - f tempfile.dat;ln - s /etc/shadow tempfile.dat”。等待一个实例,下面的步骤发生在给定的顺序:(1)应用程序确保tempfile。dat存在,用户可以访问它,(2)“rm - f tempfile.dat;ln - s /etc/shadow tempfile。dat”,(3)应用程序打开tempfile。dat写作,无意中打开/etc/shadow写作。
使用其他技术调试工具替换文件之间的时间应用程序检查文件和应用程序打开它。
先决条件
攻击者能够在目标主机上创建符号链接的链接。
从攻击者使用和污染数据复制到临时文件。
目标主机安全创建临时文件。
技能要求
(级别:中等)
这种攻击是复杂的,因为攻击者必须克服一些挑战,如在目标主机上创建符号链接在一个精确的时间,临时文件中插入恶意数据,了解创建的临时文件(文件名称和函数创建)。
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围
影响
可能性
完整性
修改数据
保密
访问控制
授权
获得特权
可用性
资源消耗
缓解措施
使用安全库在创建临时文件。例如可以使用标准库函数mkstemp安全地创建临时文件。对于shell脚本,系统实用mktemp做同样的事。
访问目录应该限制阻止攻击者操纵文件。拒绝访问一个文件可以防止攻击者替换该文件链接到一个敏感文件。
遵循最小特权原则当分配访问权限文件。
确保良好的系统提供保护区的划分,可以信任。
例子,实例
在这个天真的例子中,Unix程序foo是setuid。它的功能是为指定的账户用户检索信息。“效率”,这类请求的账户到一个临时文件(自然/ tmp / foo)之前查询。
人人可写的目录/ tmp。恶意用户创建一个符号链接文件/。rhosts命名为/ tmp / foo。然后,他们用“用户”作为请求调用foo帐户。(临时)文件的程序创建/ tmp / foo(真的创建/ . rhosts)并将请求的帐户(如。“用户密码”)。它删除临时文件(仅仅删除符号链接)。
现在/。rhosts包含+ +,这是必要的咒语来允许任何人使用远程登录命令作为超级用户登录到计算机。
(ref - 115 ]
GNU“ed”实用程序(0.3)之前允许本地用户覆盖任意文件通过一个符号链接攻击临时文件,可能在open_sbuf函数。参见:cve - 2006 - 6939
OpenmosixCollector和OpenMosixView OpenMosixView 1.5允许本地用户覆盖或删除任意文件通过一个符号链接攻击(1)OpenmosixCollector目录中的临时文件或(2)nodes.tmp。参见:cve - 2005 - 0894
Setuid产品允许文件阅读通过替换一个文件正在编辑符号链接到目标文件,解析失败时泄露导致的错误消息。参见:cve - 2000 - 0972
引用
内容的历史
提交
提交日期
提交者
组织
2014-06-23
(版本2.6)
CAPEC内容团队
manbetx客户端首页
修改
修改日期
修饰符
组织
2017-01-09
(版本2.9)
CAPEC内容团队
manbetx客户端首页
更新Related_Attack_Patterns
2018-07-31
(版本2.12)
CAPEC内容团队
manbetx客户端首页
更新Attack_Phases Examples-Instances
2019-09-30
(版本3.2)
CAPEC内容团队
manbetx客户端首页
更新Related_Attack_Patterns
2020-07-30
(版本3.3)
CAPEC内容团队
manbetx客户端首页
更新描述,Example_Instances