首页> 外文会议>International Conference on Language and Automata Theory and Applications >Reachability Analysis of Pushdown Systems with an Upper Stack
【24h】

Reachability Analysis of Pushdown Systems with an Upper Stack

机译:上层堆叠的下推系统的可达性分析

获取原文

摘要

Pushdown systems (PDSs) are a natural model for sequential programs, but they can fail to accurately represent the way an assembly stack actually operates. Indeed, one may want to access the part of the memory that is below the current stack or base pointer, hence the need for a model that keeps track of this part of the memory. To this end, we introduce pushdown systems with an upper stack (UPDSs), an extension of PDSs where symbols popped from the stack are not destroyed but instead remain just above its top, and may be overwritten by later push rules. We prove that the sets of successors post and predecessors pre* of a regular set of configurations of such a system are not always regular, but that post is context-sensitive, so that we can decide whether a single configuration is forward reachable or not. In order to underapproximate pre* in a regular fashion, we consider a bounded-phase analysis of UPDSs, where a phase is a part of a run during which either push or pop rules are forbidden. We then present a method to overapproximate post that relies on regular abstractions of runs of UPDSs. Finally, we show how these approximations can be used to detect stack overflows and stack pointer manipulations with malicious intent.
机译:下推系统(电气传动系统)是用于顺序程序的自然模式,但它们可能无法精确地表示一个组件叠层实际操作的方式。事实上,人们可能想要访问,表示当前栈或基址指针下方的存储器,因此需要进行一个跟踪存储器的这一部分的模型的一部分。为此,我们引入具有上叠层(UPDSs),电气传动系统的延伸,其中从堆叠没有被破坏弹出符号而是保持略高于其顶部下推系统,并且可以通过稍后推规则被覆盖。我们证明了接班人的集发布和前辈预*定期一套这样的系统的配置的并不总是有规律,但这个职位是上下文相关的,这样我们就可以决定一个单一的配置是否向前到达与否。为了underapproximate前*规则的方式,我们认为UPDSs,其中一个阶段是在此期间,无论是推或流行的规则是禁止运行的一部分的有界相分析。然后,我们呈现给overapproximate后依靠UPDSs的运行经常抽象的方法。最后,我们将展示这些近似如何可以用来检测堆栈溢出和堆栈指针的操作具有恶意。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号