Despite being beneficial for managing computing infrastructure automatically, Puppet manifests are susceptible to security weaknesses, e.g., hard-coded secrets and use of weak cryptography algorithms. Adequate mitigation of security weaknesses in Puppet manifests is thus necessary to secure computing infrastructure that are managed with Puppet manifests. A characterization of how security weaknesses propagate and affect Puppet-based infrastructure management, can inform practitioners on the relevance of the detected security weaknesses, as well as help them take necessary actions for mitigation. To that end, we conduct an empirical study with 17,629 Puppet manifests mined from 336 open source repositories. We construct Taint Tracker for Puppet Manifests (TaintPup), for which we observe 2.4 times more precision compared to that of a state-of-the-art security static analysis tool. TaintPup leverages Puppet-specific information flow analysis using which we characterize propagation of security weaknesses. From our empirical study, we observe security weaknesses to propagate into 4,457 resources, i.e, Puppet-specific code elements used to manage infrastructure. A single instance of a security weakness can propagate into as many as 35 distinct resources. We observe security weaknesses to propagate into 7 categories of resources, which include resources used to manage continuous integration servers and network controllers. According to our survey with 24 practitioners, propagation of security weaknesses into data storage-related resources is rated to have the most severe impact for Puppet-based infrastructure management.
翻译:尽管有助于自动管理计算机基础设施,但《傀儡宣言》很容易受到安全弱点的影响,例如,硬编码秘密和使用薄弱的加密算法。因此,必须适当减少《傀儡宣言》中的安全弱点,以确保使用《傀儡宣言》管理的计算机基础设施的安全。描述安全弱点如何传播和影响《傀儡》基础设施管理,可以让执行人员了解所发现的安全弱点的相关性,帮助他们采取必要的缓解行动。为此,我们进行了一项经验研究,从336个开放源库中提取了17,629个《傀儡宣言》。我们为《傀儡宣言》(TaintPup)建造了塔恩追踪器(TaintPup),为此,我们观察到,与最先进的安全定点分析工具相比,我们观察了2.4倍的精确度。TaintPup利用了《傀儡宣言》特定的信息流分析,我们用这种分析来描述安全弱点的特征。我们从经验研究中看到,安全弱点传播到4,457个资源,即用于管理基础设施的《木偶客专用代码》要素。一个单一的例子是,安全弱点可以扩散成许多,作为35个独特的安全弱点,我们使用的安全弱点的储存服务器管理工具,我们观测了安全弱点,把资源升级数据转换为24个数据库的弱点,我们用来管理。