面向pyhon的客流控制模型.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向pyhon的客流控制模型 0 基于动态净化的优化设计 随着互联网技术的快速发展,网络规模和网络用户的快速增长,web服务为人们的生活带来了极大的便利。与此同时,针对Web服务的各种攻击手段及技术层出不穷,安全形势日益严峻。而Web应用不可避免地会存在一些脆弱点,导致攻击者能够窃取服务端的秘密数据、破坏系统完整性,并影响服务的可用性。 污点分析是查找软件脆弱点的一种自动化方法,常用于检测Web程序中的漏洞 动态污点分析通过监测程序的运行状态,实时跟踪程序运行过程中污点数据的流向,可以精确检测程序中的漏洞。因此,目前的Web应用程序更倾向于采用动态污点分析。研究人员通过修改Perl、Ruby、PHP的解释器,增加一种特殊的运行模式———污点模式,实现了面向Web脚本语言的动态污点分析 但是,上述动态污点分析方法大多只提供Web应用的污点跟踪和分析,缺乏完善的信息流策略和模型,对信息流的控制也较为粗糙。因此,为了更好地满足Web服务的安全需求,需要在动态污点分析的基础上,设计并实施有效的信息流控制。现有的基于动态污点分析的信息流控制(information flow control,IFC)方法及模型大部分是在操作系统进程级实现的 基于上述分析,本文提出了一个面向Python的信息流控制模型(information flow control for Python,PIFC)。模型的基本思想是,将Python程序中的对象抽象为实体并赋予相应的能力和标记;将信息流控制转换为方法调用所涉及实体间(调用者、被调用者、参数及返回值)的信息交互控制;引入实体的降密及净化能力来防止污点积累。依据此模型设计并实现了一个Python库LPIFC,提供污点标记存储及标记的动态调整支持。PIFC模型实现了应用程序内部的实时污点传播和跟踪,以及细粒度、完整的、灵活的信息流控制,有效地防止了Python Web应用程序漏洞导致的信息泄露及系统完整性破坏等安全问题;LPIFC库的实现轻量、易用、简洁,充分利用Python中装饰器和动态分发机制等高级特性 1 基于python的信息流检测模型 1.1 对象不同 1)实体O应用程序中的对象,即在Python中,类、类实例和方法等一切都是对象。 2)标签(污点)一个标签t 3)标记一个标记L 4)能力一个能力C 5)权限映射函数f(t 6)决策集D={allow,reject},其中allow表示允许实体间的信息流动,reject表示拒绝实体间的信息流动。 1.2 实体b标记中的标签 在Python、Ruby等面向对象的语言中,类、类实例和方法等一切都是对象。因此,本文将对象抽象为信息流控制模型的基本实体。对象的属性和方法记录了该对象的状态信息和行为,程序中的所有信息流都是由对象的方法调用所产生的 1)信息流动规则 信息可以从实体A流向实体B,当且仅当,对于实体A的标记中的任意标签,实体B的能力中都包含该标签,不论该标签的权限为正还是为负。例如,L 2)污点传播规则 当实体A的污点信息流向具有相应被污染能力的实体B时,实体B将会受到相应的污染,发送能力将变弱。也就是说,如果允许信息从实体A流向实体B,那么,若实体A标记中的标签在实体B的能力中权限为正,则该标签将会被添加到实体B的标记中。 3)污点去除规则 当实体A的污点信息流向具有相应去污能力的降密器或净化器B时,实体A的标记中的相应标签将会被去除。例如,L 该模型中只对需要跟踪的敏感实体明确地赋予相应的标记和能力。而对于其他未明确授权的实体,隐含一个默认能力C 1.3 实体特色功能 完整性意味着被保护的实体不接收其能力范围外的不可信数据。首先,将实体的能力标签集初始化为空,即该实体不具备任何接收能力和被污染能力,因而无法接收任意带有恶意污点类型标签的信息;然后,对可能产生攻击的用户恶意输入数据设置相应的污点标签,如XSS标签(跨站脚本攻击)、SQLI标签(SQL注入攻击)等;最后,分析应用程序的完整性需求,根据实体的完整性保护级别,赋予实体相应的被污染能力,即向实体的能力标签集中添加相应的标签。因此,当攻击者试图通过注入数据来实施完整性破坏时,信息流控制的实施将阻止恶意数据流向敏感实体。 2)保密性 保密性意味着防止敏感秘密数据被非法泄露给不可信实体。首先,对秘密数据或秘密数据源设置相应的污点标签,如secret标签(秘密数据)、privacy标签(个人隐私数据)等,保证该标签会在整个应用程序中传播;然后,对具有秘密数据处理能力的实体赋予相应的能力标签。因此,当攻击者试图将秘密数据泄露给未授权的第三方不可信实体时,将会自动被信息流控制规则所阻止。 3)降密/净化 降密/净化的本质是移除实体的相应污点标签,以防止污点数据积累所导致的实体发送能力越来越弱。例如,

文档评论(0)

xcwwwwws + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档