Key points are not available for this paper at this time.
污点分析是一种广泛用于分析 Android 应用程序的技术,能够跟踪应用程序内部的数据流。其中的一个关键步骤包括识别哪些方法充当 SOURCE(即感兴趣数据的发源地)和 SINK(数据可能暴露的地方)。现有方法通常分为两类:➀ 手工制定的列表,这些列表存在不完整性且容易迅速过时;以及 ➁ 自动化技术,这类技术虽然具有可扩展性,但会过度近似并产生大量假阳性,这主要是由于难以明确定义什么符合 SOURCE 的条件。尽管识别 SINK 通常更为直接(因为它们对应于明确的暴露点),但要为构成 SOURCE 的条件定义一个通用标准仍然具有固有挑战性。例如,isMicrophoneMute () 通常可能不被视为 SOURCE,但在特定上下文中它可能代表着重大的隐私隐患。这种上下文依赖性凸显了静态、通用 SOURCE 方法列表的局限性。我们提出了 TaskFlow,这是一种新型的 LLM 驱动框架,用于生成与特定分析目标相一致的任务特定 SOURCE(或 SINK)方法列表。通过对 API 语义和上下文用法进行推理,TaskFlow ➀ 减少了过于宽泛的列表通常引入的噪声,从而实现更精确的污点分析;并 ➁ 解决了人工方法的不完整性问题。
Alecci et al. (Fri,) 研究了这一问题。