DDOS防御专家-提供超强DDoS高防/CC防护/大流量清洗服务!
当前位置:主页 > CC防护 > 正文

ddos防攻击_江诗丹顿高防_限时优惠

01-12 CC防护

ddos防攻击_江诗丹顿高防_限时优惠

作为PEASOUP(防止对来源不确定的软件进行攻击)合同1的一部分,我在弗吉尼亚大学的同事(他们是这个项目的合作伙伴)开发了一种有趣的技术,叫做指令位置随机化(ILR)2。我们相信ILR对arc注入攻击,包括面向返回的编程攻击是有效的。然而,我们已经注意到,关于ILR似乎有一些混乱。例如,斯诺等人。在他们关于"实时代码重用:细粒度地址空间布局随机化的有效性"的论文中,对ILR提出了一些有争议的主张,这是一项非常出色的工作3。所以我想写几句话来重申和澄清ILR,并提供额外的安全分析4。什么是指令位置随机化(ILR)?从概念上讲,ILR使用了一种新的程序表示,我将其称为ILR表示。在程序执行之前(例如,在加载时),它将一个主题程序转换为ILR表示。然后,它使用软件动态翻译(又称动态二进制翻译)从ILR表示中高效地执行。ILR程序表示由两个映射组成:指令映射-将地址映射到指令。我们将此映射域中的地址称为ILR地址。FallThruMap—从一个ILR地址映射到下一个故障转移指令的ILR地址。这种表示的优点是指令的"位置"可以完全随机,因为根据FallThruMap是邻居的指令可以被赋予(随机)非相邻的ILR地址。例如,我们可以:说明MAP[3377756]→添加eax、ecx说明MAP[8899973]→添加eax,3故障穿越图[3377756]→8899973编写一个以ILR表示执行程序的解释器相当简单,尽管性能是一个严重的问题。ILR通过使用改进的软件动态转换器来解决性能问题。当转换器第一次到达给定的ILR地址时,它会将指令映射中该地址处的指令复制到代码缓存中。指令被放在代码缓存中,以便它们相邻(在处理器使用的虚拟地址空间中),从长远来看,指令直接从代码缓存中执行,而不参考ILR表示。这里的安全含义是代码缓存中的指令比原始程序表示中的随机性小,我将在下面详细讨论。ILR安全事实关于ILR表示和ILR使用它的方式有两个重要的观察。首先,ILR只通过InstructionMap查找指令。对于给定的地址a,进程在地址a的内存内容是不相关的,并且可能与InstructionMap[a]的内容完全不同。例如,非映射地址或进程中可以使用的非il6地址和非映射地址。即使攻击者知道合法的ILR地址a,他们也必须知道指令映射的位置和编码,ddos攻击防御极贵,以便在指令映射[a]处查找指令。其次,知道ILR地址A本身不足以计算指令映射中不同指令的ILR地址。ILR地址不是相邻的,实际上是随机的。攻击者需要知道FallThruMap的位置和编码,以便从一条指令的ILR地址转到另一条指令的ILR地址。(如果没有ILR,攻击者通常可以使用简单的算术从内存中的一条指令的地址转到内存中另一条指令的地址。)示例:实时代码重用要遵循"实时代码重用"中使用的方法,攻击者必须能够"发现单个代码指针,例如,通常通过堆或堆栈分配对象描述的函数指针找到"[或由调用指令推送到运行时堆栈]。从那里,攻击会反复调用DiscloseByte原语,该原语显示进程内存的一个字节。通过反复调用DiscloseByte,该攻击映射代码页并发现小工具。针对ILR的即时代码重用攻击的成功与否完全取决于初始代码地址可能泄漏的内容。在ILR下,程序使用ILR表示确定的ILR地址执行。关键的是,所有表示代码地址的应用程序数据都将保存一个ILR地址(当程序使用该地址时,ILR将使用InstructionMap和FallThruMap表对其进行解释)。通常,攻击者可能会从应用程序数据中泄漏ILR地址,因为信息泄漏漏洞很常见。然而,通过知道单个ILR地址所造成的损害是非常有限的:攻击者无法在该地址查找指令(尽管在许多情况下,他们可能能够根据已知的应用程序逻辑推断出它),并且无法了解其他指令或其他指令地址。即时代码重用攻击的有效性受到严重破坏。为了证明这一点,我认为ILR至少在防御强度上等同于执行一个粗略的控制流完整性6策略,其中一类允许目标用于返回指令,另一类目标用于间接调用和jmp指令7。如果攻击者可以泄漏其他地址而不是ILR地址,那么它们可能会造成更大的损害。特别是,如果攻击者能够获得指令映射和/或FallThruMap的地址,则他们可能能够使用实时代码重用攻击的修改版本映射ILR程序表示并发现小工具。如果攻击者发现软件动态转换器和/或代码缓存中的地址,他们将能够成功地发起即时代码重用攻击,因为这些位置中的代码是本机执行的,而不是在翻译过程中执行的。(这些位置中的代码最初由ASLR保护。)信息泄漏与软件动态翻译针对ILR的成功攻击所需的地址不在应用程序数据中。诸如即时代码重用攻击和盲ROP8攻击等攻击常常引起信息泄漏漏洞的普遍存在。当攻击ILR时,应用程序中普遍存在的信息泄漏是无关紧要的;重要的是来自上面讨论的危险地址的软件动态转换器的信息泄漏。通过精心设计,这种泄漏可以被消除,此时许多针对ILR的所谓攻击都变得无效。在PEASOUP下,我们还为软件动态翻译器开发了一种新的架构,它阻止了对上述许多敏感的翻译器代码和数据的访问。总的来说,高防cdn怎么开启,我相信软件动态翻译可以有效地"隐藏"安全相关的数据,以防暴露在主题程序中的弱点。再举一个例子,我们可以构造一个堆分配器,它(a)将其元数据存储在外部分配的块中,(b)使用软件动态转换器随机定位元数据,并确保它不可从程序(原始)代码或运行时数据访问。通常,地址空间布局随机化(ASLR)会被(无处不在)信息泄漏破坏。只要你的软件动态翻译器没有信息泄漏,它就可以与ASLR一起使用,以保护(元数据)数据不受翻译程序中的信息泄漏的影响。1本材料基于美国空军根据合同号FA8650-10-C-7025支持的工作。本材料中表达的任何意见、调查结果和结论或建议均为作者的观点,ddos防御能力对比,防御cc是什么意思,并不一定反映美国空军的观点。希瑟、杰森、安阮拓、米歇尔公司、马修霍尔和杰克·W·戴维森。"伊尔:我的小玩意去哪儿了?"安全与隐私(SP),2012年IEEE研讨会,第571-585页。IEEE,2012.3。斯诺、凯文Z、费边·蒙罗斯、卢卡斯·戴维斯、亚历山德拉·德米特里科、克里斯托弗·利布钦和艾哈迈德·雷扎·萨德吉。"即时代码重用:细粒度地址空间布局随机化的有效性〉,怎么识别假的ddos防御,《不安全与隐私(SP)》,2013年IEEE研讨会,第574-588页。IEEE,2013.4。为了解释清楚,我会走一些捷径。这是我自由发挥的地方之一:IIRC,实际实现将指令的"自然"穿透地址映射到新地址;我希望我描述的方法是等效的,并且稍微容易理解。阿巴迪、马汀、米哈伊·布迪乌、乌尔法尔·厄林森和杰伊·利加蒂。"控制流完整性〉,载于第12届计算机与通信安全会议论文集,第340-353页。ACM,2005年7月。Göktas等人的工作。关于克服控制流完整性防御也是ILR关注的问题:Göktas、Enes、Elias Athanasopoulos、Herbert Bos和Gerogios Portokalidis。"失控:克服控制流完整性",见IEEE S&P.2014.8。比特陶、安德烈、亚当·贝拉、阿里·马什蒂扎德、大卫·马齐耶斯和丹·博内。"黑客盲。"第35届IEEE安全与隐私研讨会论文集。2014

版权保护: 本文由 DDOS防御专家 原创,转载请保留链接: /ddos/61111.html

DDoS防御专家简介孤之剑
国内资深白帽子二十人组成员,前BAT资深网络安全工程师,知名网络安全站点板块大神,每年提交Google及微软漏洞,原sina微博负载插件开发者,现在整体防御复合攻击长期接受1-4.7T攻击,CC防护自主开发指纹识别系统,可以做到99.9999%的无敌防御。
  • 文章总数
  • 8147692访问次数
  • 建站天数

    QQ客服

    400-0797-119

    X