一种混合LLM工作流可帮助识别任意规模程序中的用户权限相关变量
密码学与安全
2024-07-10 v2 软件工程
摘要
许多程序涉及操作和操纵用户权限的逻辑,这对于组织的安全至关重要。因此,攻击者常见的恶意目标是获取或提升权限,导致权限泄露。为了保护程序和组织免受权限泄露攻击,消除可能被利用来实现此类攻击的漏洞非常重要。不幸的是,虽然内存漏洞相对容易发现,但逻辑漏洞更为紧迫、有害且难以识别。因此,许多分析人员选择首先找到用户权限相关(UPR)变量,作为调查可能使用UPR变量的代码的起点,以查看是否存在任何漏洞,尤其是逻辑漏洞。在本文中,我们介绍了一种大语言模型(LLM)工作流,可以帮助分析人员识别此类UPR变量,这被认为是一项非常耗时的任务。具体来说,我们的工具将审计程序中的所有变量,并为每个变量输出一个UPR分数,即变量与用户权限之间的关联程度(接近度)。所提出的方法避免了直接提示LLM查找UPR变量所带来的缺点,其重点是在语句级别利用LLM,而不是向LLM提供非常长的代码片段。那些具有高UPR分数的变量本质上是潜在的UPR变量,应进行人工调查。我们的实验表明,使用典型的UPR分数阈值(即UPR分数>0.8),假阳性率(FPR)仅为13.49%,而找到的UPR变量显著多于基于启发式的方法。
引用
@article{arxiv.2403.15723,
title = {A hybrid LLM workflow can help identify user privilege related variables in programs of any size},
author = {Haizhou Wang and Zhilong Wang and Peng Liu},
journal= {arXiv preprint arXiv:2403.15723},
year = {2024}
}