tinytracer

  • 实践
    • CTF
    • 项目实践
  • 技术
    • C++
    • 逆向与汇编
    • 区块链安全
  • 探索
    • OWASP汉化
    • SQL
    • Kali
TinyTracer
In solitude, where we were at least alone.
  1. 首页
  2. 探索
  3. OWASP汉化
  4. 正文

(OWASP个人汉化)攻击系列大全:Windows ::交换数据流

2018年4月22日 3766点热度 0人点赞 0条评论

最新版本: 01/19/2011

翻译自Windows ::DATA alternate data stream

漏洞介绍

  • NTFS文件系统包含对交换数据流的支持。这不是一个众所周知的功能,主要是为了提供与Macintosh文件系统中文件的兼容性。交换数据流允许文件包含多个数据流。每个文件至少包含一个数据流。在Windows下,默认的数据流被称为:$DATA。
  • Windows资源管理器不提供查看文件中的交换数据流的方法(或者在不删除文件的情况下删除它们的方法),但可以轻松创建和访问它们。由于它们很难找到,它们经常被黑客用来隐藏他们已经入侵的机器上的文件(可能是rootkit的文件)。交换数据流中的可执行文件可以从命令行执行,但它们不会显示在Windows资源管理器(或控制台)中。关于创建和访问交换数据流的信息请参考示例1。
  • 由于每个文件都存在:$DATA交换数据流,因此它可以作为访问任何文件的备用方式。参考示例2获悉关于访问文本文件里:$DATA交换数据流的信息。任何创建文件或查看或取决于文件名(或扩展名)末尾的应用程序都应该意识到这些交换数据流的可能性。如果使用未处理的用户输入来创建或引用文件名,攻击者可以利用:$DATA来改变软件的行为。旧版本的IIS中存在一个众所周知的这种性质的漏洞。当IIS看到对具有ASP扩展名文件的请求时,它将ASP文件发送到与该扩展名关联的应用程序。此应用程序将运行ASP文件中的服务器端代码并为请求生成HTML响应。由于这些版本的IIS的解析扩展存在缺陷,filename.asp::$DATA与扩展名不匹配,并且由于没有为asp::$DATA扩展名注册的应用程序,所以将asp源代码返回给攻击者。
  • 正确的用户输入过滤是抵御此类攻击的最佳防御措施。

攻击示例

示例1 - 创建交换数据流

C:\> type C:\windows\system32\notepad.exe > c:\windows\system32\calc.exe:notepad.exe
C:\> start c:\windows\system32\calc.exe:notepad.exe

示例2 - 访问:$DATA交换数据流

C:\> start c:\textfile.txt::$DATA

示例3 - 执行ASP交换数据流泄露代码漏洞

普通访问:
http://www.alternate-data-streams.com/default.asp

访问:$DATA交换数据流显示代码:
http://www.alternate-data-streams.com/default.asp::$DATA

在包含漏洞的版本中,IIS将此文件的扩展名解析为asp::$DATA,而不是ASP。因此,与ASP扩展关联的应用程序未被调用,并且攻击者可以查看ASP源代码。

相关威胁

相关攻击

相关的漏洞

  • 无限制的文件上传

相关防御措施

  • 类别:输入验证
标签: ADS
最后更新:2018年4月22日

Chernobyl

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据。

COPYRIGHT © 2021 tinytracer.com. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang