首页> 外文会议>International Conference on Availability, Reliability and Security >V-DIFT: Vector-Based Dynamic Information Flow Tracking with Application to Locating Cryptographic Keys for Reverse Engineering
【24h】

V-DIFT: Vector-Based Dynamic Information Flow Tracking with Application to Locating Cryptographic Keys for Reverse Engineering

机译:V-DIFT:基于矢量的动态信息流跟踪及其在定位逆向工程的加密密钥中的应用

获取原文

摘要

Dynamic Information Flow Tracking (DIFT) is a technique for tracking information as it flows through a program's execution. DIFT systems track information by tainting data and propagating the taint marks throughout execution. These systems are designed to have minimal overhead and thus often miss indirect flows. If indirect flows were propagated naively overtainting would result, whereas propagating them effectively causes overhead. We describe the design and evaluation of a system intended for offline analysis, such as reverse engineering, that can track information through indirect flows. Our system, V-DIFT, uses a vector of floating point values for each taint mark. The use of vectors enables us to track a taint's provenance and handle indirect flows, trading off some performance for these abilities. These indirect flows via control and address dependencies are thought to be critical to tracking information flow of cryptographic programs. Therefore we tested V-DIFT's effectiveness by automatically locating keys in simple programs that use a variety of symmetric cryptographic algorithms found in three common libraries. This application does not require that the program run in real time, just that it be much faster than a manual approach. Our V-DIFT implementation tests average 3.6 seconds, and with the right parameters can identify memory locations that contain keys for 24 out of 27 algorithms tested. Our results show that many cryptographic algorithm implementations' address and/or control dependencies must be tracked for DIFT to be effective.
机译:动态信息流跟踪(DIFT)是一种用于跟踪信息在程序执行过程中的流向的技术。 DIFT系统通过污染数据并在整个执行过程中传播污染标记来跟踪信息。这些系统被设计为具有最小的开销,因此经常会丢失间接流。如果间接流动被天真地传播,则会导致超载,而有效地传播它们则会导致开销。我们描述了旨在用于脱机分析(例如反向工程)的系统的设计和评估,该系统可以通过间接流程跟踪信息。我们的系统V-DIFT对每个污点标记使​​用一个浮点值向量。向量的使用使我们能够跟踪污点的出处并处理间接流,为这些能力权衡一些性能。这些通过控制和地址依赖性的间接流被认为对于跟踪密码程序的信息流至关重要。因此,我们通过在简单的程序中自动定位密钥来测试V-DIFT的有效性,这些简单的程序使用了在三个常见库中找到的各种对称密码算法。该应用程序不需要实时运行程序,只是它比手动方法要快得多。我们的V-DIFT实施测试平均需要3.6秒,并且使用正确的参数可以识别包含27种测试算法中的24种密钥的内存位置。我们的结果表明,必须跟踪许多密码算法实现的地址和/或控件依赖性,才能使DIFT有效。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号