【24h】

English shellcode

机译:英文shellcode

获取原文
获取原文并翻译 | 示例

摘要

History indicates that the security community commonly takes a divide-and-conquer approach to battling malware threats: identify the essential and inalienable components of an attack, then develop detection and prevention techniques that directly target one or more of the essential components. This abstraction is evident in much of the literature for buffer overflow attacks including, for instance, stack protection and NOP sled detection. It comes as no surprise then that we approach shellcode detection and prevention in a similar fashion. However, the common belief that components of polymorphic shellcode (e.g., the decoder) cannot reliably be hidden suggests a more implicit and broader assumption that continues to drive contemporary research: namely, that valid and complete representations of shellcode are fundamentally different in structure than benign payloads. While the first tenet of this assumption is philosophically undeniable (i.e., a string of bytes is either shellcode or it is not), truth of the latter claim is less obvious if there exist encoding techniques capable of producing shellcode with features nearly indistinguishable from non-executable content. In this paper, we challenge the assumption that shellcode must conform to superficial and discernible representations. Specifically, we demonstrate a technique for automatically producing English Shellcode, transforming arbitrary shellcode into a representation that is superficially similar to English prose. The shellcode is completely self-contained---i.e., it does not require an external loader and executes as valid IA32 code)---and can typically be generated in under an hour on commodity hardware. Our primary objective in this paper is to promote discussion and stimulate new ideas for thinking ahead about preventive measures for tackling evolutions in code-injection attacks.
机译:历史表明,安全社区通常采用分而治之的方法来应对恶意软件威胁:识别攻击的基本和不可分割的组成部分,然后开发直接针对一个或多个基本组成部分的检测和预防技术。在许多有关缓冲区溢出攻击的文献中,这种抽象是显而易见的,例如,堆栈保护和NOP底座检测。因此,以类似的方式进行shellcode检测和预防就不足为奇了。但是,人们普遍认为不能可靠地隐藏多态shellcode的组件(例如,解码器),这暗示着一个更加隐含和更广泛的假设,这一假设继续推动着当代研究的发展:即,有效且完整的shellcode表示在结构上与良性上根本不同。有效载荷。尽管此假设的第一个原则在哲学上是不可否认的(即,一串字节要么是shellcode要么不是shellcode),但如果存在能够产生具有与非可执行内容。在本文中,我们对shellcode必须符合表面且可辨别的表示形式的假设提出质疑。具体来说,我们演示了一种自动生成英语Shellcode的技术,该技术可将任意Shellcode转换为表面上类似于英语散文的表示形式。 Shellcode是完全独立的-即它不需要外部加载程序并以有效的IA32代码执行)-通常可以在不到一小时的时间内在商品硬件上生成。本文的主要目的是促进讨论,​​并激发出新的思路,以便提前考虑预防措施以应对代码注入攻击中的演变。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号