首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 140 毫秒
1.
一种利用PHP防御SQL注入攻击的方法   总被引:1,自引:0,他引:1       下载免费PDF全文
丁翔  仇寅  郑滔 《计算机工程》2011,37(11):152-154,157
PHP在Web应用程序开发中的广泛运用使得PHP Web应用程序成为众多恶意攻击者的攻击对象。基于此,通过对PHP解释器和运行时库的修改,使PHP Web应用程序无需修改便能够防御SQL注入攻击。与传统的利用动态着色方法防御漏洞不同,使用基于可信任输入的着色机制,采用SQL方言感知的检查方法,可解决传统方法防御Web漏洞的诸多问题,提高防御的准确率,消除误报。实验结果表明,该方法准确有效,对应用程序执行造成的负载较低。  相似文献   

2.
随机化技术防御进程控制流劫持攻击, 是建立在攻击者无法了解当前内存地址空间布局的基础之上, 但是, 攻击者可以利用内存信息泄露绕过随机化防御获得 gadget 地址, 向程序注入由 gadget 地址构造的 payload, 继续实施控制流劫持攻击, 窃取敏感数据并夺取或破坏执行软件的系统。目前, 异构冗余执行系统是解决该问题的方法之一, 基本思想是同一程序运行多个多样化进程, 同时处理等效的程序输入。随机化技术使冗余的进程对恶意输入做出不同的输出, 同时正常功能不受影响。近年来,一些符合上述描述的系统已经被提出, 分析进程异构冗余执行系统的表决设计可以发现, 基于 ptrace 的实现方法会引入大量的上下文切换, 影响系统的执行效率。率先直接修改内核设计出一种进程异构冗余执行系统, 表决过程完全在内核中完成, 冗余的进程独立地采用内存地址空间随机化技术, 构建相互异构的内存地址空间布局, 在与内存信息泄露相关的系统调用处进行表决,发现泄露信息不一致, 阻断进程控制流劫持攻击。即使攻击者跳过内存信息泄露进行漏洞利用, 异构内存空间布局也使得注入由 gadget 地址构造的 payload 无法同时在冗余的进程中有效, 阻断进程控制流劫持攻击。实现了原型系统 KMBox, 实验证明该系统能够有效抵御进程控制流劫持攻击, 性能相较于基于 ptrace 的进程异构冗余执行系统有所提高。  相似文献   

3.
针对当前代码注入型攻击防御机制容易被绕过的现状,提出一种基于指令集随机化的防御技术。该技术制定了指令集随机化规则,利用该规则改变obj文件中的指令,从而实现了指令集的随机化。外部注入代码与生成的指令集不兼容,经过动态二进制分析平台翻译后,程序代码正常执行而注入代码变为乱码。基于该技术设计了一套原型系统,并通过大量实验表明可以防御大部分代码注入型攻击。该技术打破了缓冲区溢出漏洞利用所需要的稳态环境,实现了对攻击的主动防御。  相似文献   

4.
代码复用攻击日趋复杂,传统的代码随机化方法已无法提供足够的防护.为此,提出一种基于运行时代码随机化的代码复用攻击防御方法LCR.该方法在目标程序正常运行时,实时监控攻击者企图获取或利用gadgets的行为,当发现监控的行为发生时,立即触发对代码进行函数块级的随机化变换,使攻击者最终获取或利用的gadgets信息失效,从而阻止代码复用攻击的实现.设计实现了LCR原型系统,并对提出的方法进行了测试.结果表明:LCR能够有效防御基于直接或间接内存泄漏等实现的代码复用攻击,且在SPEC CPU2006上的平均开销低于5%.  相似文献   

5.
二阶SQL注入攻击防御模型   总被引:1,自引:0,他引:1  
随着互联网技术的快速发展,Web应用程序的使用也日趋广泛,其中基于数据库的Web应用程序己经广泛用于企业的各种业务系统中。然而由于开发人员水平和经验参差不齐,使得Web应用程序存在大量安全隐患。影响Web应用程序安全的因素有很多,其中SQL注入攻击是最常见且最易于实施的攻击,且SQL注入攻击被认为是危害最广的。因此,做好SQL注入攻击的防范工作对于保证Web应用程序的安全十分关键,如何更有效地防御SQL注入攻击成为重要的研究课题。SQL注入攻击利用结构化查询语言的语法进行攻击。传统的SQL注入攻击防御模型是从用户输入过滤和SQL语句语法比较的角度进行防御,当数据库中的恶意数据被拼接到动态SQL语句时,就会导致二阶SQL注入攻击。文章在前人研究的基础上提出了一种基于改进参数化的二阶SQL注入攻击防御模型。该模型主要包括输入过滤模块、索引替换模块、语法比较模块和参数化替换模块。实验表明,该模型对于二阶SQL注入攻击具有很好的防御能力。  相似文献   

6.
防御代码注入式攻击的字面值污染方法   总被引:1,自引:0,他引:1  
当前几乎所有的Web应用程序都面临着诸如跨站脚本(XSS)和SQL注入等代码注入式攻击的威胁,这种威胁源自于程序对用户输入缺乏验证和过滤,导致恶意输入可作为数据库查询或页面中的脚本而执行,从而破坏网站的数据完整性,泄露用户隐私.为了增强应用程序对此类攻击的抵抗性,提出一种针对Web程序的字面值污染方法,该方法能够对代码注入式攻击给予高效的防御且十分易于部署.此方案通过强化服务器端脚本配合可自定义的安全过滤策略,达到对此类攻击的完全免疫.尽管需要对Web应用程序进行插桩等修改,但该过程是完全自动化和正确的,在处理大规模的程序时具有很强的实用价值.通过实现该技术的原型系统PHPHard对若干PHP应用程序的初步实验,可以发现该方法能够移除恶意脚本,成功阻止跨站脚本的攻击.与传统方法相比,它在精确度和有效性上具有优势,且仅引入了很小的开销.  相似文献   

7.
尽管现有多种防御方法和技术,但是针对软件系统和网络的攻击仍然是难以防范的威胁.在引入只读/写和地址空间随机化排列方法后,现代操作系统能有效地应对恶意代码注入类型的攻击.但是攻击者可以利用程序中已经存在的代码,将其组装成具有图灵完全计算功能的连续的代码块,用以绕过已有的防御机制.针对代码复用类攻击防御方法的局限性,提出了一种利用返回地址实时保护机制的防御方法,以有效防御代码复用类攻击,特别是ROP攻击.在程序运行时,通过对其栈中返回地址值的加密保护和实时检测,防止所有的以0xC3字符(即ret指令)结尾的短序列代码段的连续执行.该方法不需要源代码和调试信息,能完全防御ROP攻击,并且其性能开销也具有明显的优势.  相似文献   

8.
由于C与C++等计算机程序中广泛存在的漏洞,攻击者可以通过这些漏洞读取或篡改内存中的数据,改变计算机程序原有的执行状态达到破坏的目的。为此研究者进行了不懈地努力并采取了一些卓有成效的保护机制,例如数据不可执行与内存布局随机化,这些防御机制对于早期的代码注入攻击起到了极好的防御效果,然而计算机系统的安全性依然不容乐观。攻击者在无法通过向内存中注入自己的代码并执行的方式完成攻击后,开始利用内存中原有的代码,通过控制它们执行的顺序来达到自己的目的,这种攻击方式称为代码重用攻击,它具有极大的威胁性,能够绕过多种现行的安全措施,并成为攻击者的主流攻击方式。为此,研究界针对代码重用攻击的研究也逐渐增多。本文简述了代码重用攻击的起源,攻击实现的方式,系统化地总结了现有的防御机制并对这些防御机制进行了评价。对代码重用攻击的根本原因进行了简要的分析,并提出了一种新的防御机制设计思路。  相似文献   

9.
即时编译机制(just-in-time compilation)改善了网页浏览器执行JavaScript脚本的性能,同时也为攻击者向浏览器进程注入恶意代码提供了便利.借助即时编译器,攻击者可以将脚本中的整型常数放置到动态代码缓存区,以便注入二进制恶意代码片段(称为gadget).通过常数致盲等去毒化处理,基于常数的注入已经得到有效遏制.证实了不使用常数转而通过填充脚本代码块也能实施gadget注入,并实现图灵完备的计算功能.在编译一段给定的脚本代码时,即时编译器生成的动态代码中通常存在着一些固定的机器指令序列.这些指令序列的存在性不受常数致盲和地址空间布局随机化等安全机制的影响,同时,这些指令序列中可能蕴涵着攻击者期望的gadget.在实施攻击时,攻击者可以汇集特定的脚本代码块来构造一个攻击脚本,再借助即时编译器来注入gadget.在x86-64架构上评估了这种注入攻击在SpiderMonkey和GoogleV8这两个开源即时编译引擎上的可行性.通过给这两个引擎输入大量的JavaScript脚本,可以得到较为丰富的动态代码块.在这些动态代码块上的统计分析结果表明,这两个引擎生成的动态代码中都存在图灵完备的gadget集合.在实际攻击场景中,攻击者可以利用的脚本集合完全包含且远远多于实验用的脚本.因此,攻击者可以采用该方法注入需要的gadget,以便构造出实现任意功能的ROP(return-orientedprogramming)代码.  相似文献   

10.
指令集随机化技术是一种通过随机变换程序指令编码来抵御代码注入攻击的新型防御技术。现有指令集随机化技术还存在一定缺陷,如性能损耗大、指令数据混杂造成的编码难等。针对这些问题,提出一种基于编译置换的指令随机化技术。该技术在不降低防御效果的同时减少了随机化指令的数量,并在编译过程中实现了关键指令的随机置换,提高了指令随机化的性能和编码精确度。设计并实现了一套基于编译置换的指令随机化原型系统,验证了该技术的有效性。  相似文献   

11.
Code injection attacks are one of the most powerful and important classes of attacks on software. In these attacks, the attacker sends malicious input to a software application, where it is stored in memory. The malicious input is chosen in such a way that its representation in memory is also a valid representation of a machine code program that performs actions chosen by the attacker. The attacker then triggers a bug in the application to divert the control flow to this injected machine code. A typical action of the injected code is to launch a command interpreter shell, and hence the malicious input is often called shellcode. Attacks are usually performed against network facing applications, and such applications often perform validations or encodings on input. Hence, a typical hurdle for attackers, is that the shellcode has to pass one or more filtering methods before it is stored in the vulnerable application??s memory space. Clearly, for a code injection attack to succeed, the malicious input must survive such validations and transformations. Alphanumeric input (consisting only of letters and digits) is typically very robust for this purpose: it passes most filters and is untouched by most transformations. This paper studies the power of alphanumeric shellcode on the ARM architecture. It shows that the subset of ARM machine code programs that (when interpreted as data) consist only of alphanumerical characters is a Turing complete subset. This is a non-trivial result, as the number of instructions that consist only of alphanumeric characters is very limited. To craft useful exploit code (and to achieve Turing completeness), several tricks are needed, including the use of self-modifying code.  相似文献   

12.
在包括物联网(Internet of Things,IoT)设备的绝大部分边缘计算应用中,基于互联网应用技术(通常被称为Web技术)开发的应用程序接口(Application Programming Interface,API)是设备与远程服务器进行信息交互的核心。相比传统的Web应用,大部分用户无法直接接触到边缘设备使用的API,使得其遭受的攻击相对较少。但随着物联网设备的普及,针对API的攻击逐渐成为热点。因此,文中提出了一种面向物联网服务的Web攻击向量检测方法,用于对物联网服务收到的Web流量进行检测,并挖掘出其中的恶意流量,从而为安全运营中心(Security Operation Center,SOC)提供安全情报。该方法在对超文本传输协议(Hypertext Transfer Protocol,HTTP)请求的文本序列进行特征抽取的基础上,针对API请求的报文格式相对固定的特点,结合双向长短期记忆网络(Bidirectional Long Short-Term Memory,BLSTM)实现对Web流量的攻击向量检测。实验结果表明,相比基于规则的Web应用防火墙(Web Application Firewall,WAF)和传统的机器学习方法,所提方法针对面向物联网服务API的攻击具有更好的识别能力。  相似文献   

13.
对一个无证书签名方案进行安全性分析,指出该方案不能抵抗公钥替换攻击和恶意的KGC攻击,即攻击者可以通过替换签名者的公钥来伪造任意消息的签名,恶意的KGC(Key Generation Center)可以获取用户的私钥。分析结果显示该方案不能满足无证书签名方案的安全性要求,同时为了应对这两种攻击,提出了改进的方案。  相似文献   

14.
Web应用同本地应用一样面临恶意主机威胁.如何确保暴露于用户主机中的Web应用核心算法或关键业务流程等重要信息的安全成为亟待解决的问题.针对现有JavaScript代码保护方法难以抵御动态分析且抗累积攻击效果差的问题,提出了一种具有时间多样性的JavaScript代码保护(TDJSP)方法.首先,通过程序多样化处理和路径空间模糊化,使JavaScript程序在执行时具有多样性效果,以有效抵御累积攻击;其次,检测调试器、模拟器等非正常执行环境的特征,并根据检测结果进行响应,增加攻击者进行动态分析的难度.理论分析和实验结果表明,JavaScript程序的抗逆向分析能力得到了提高,同时,其空间增长率约为3.1(优于JScrambler3),时间延迟为毫秒级.因此,该方法能够在不影响程序性能的前提下提升Web应用的安全性.  相似文献   

15.
深度学习在众多领域取得了巨大成功。然而,其强大的数据拟合能力隐藏着不可解释的“捷径学习”现象,从而引发深度模型脆弱、易受攻击的安全隐患。众多研究表明,攻击者向正常数据中添加人类无法察觉的微小扰动,便可能造成模型产生灾难性的错误输出,这严重限制了深度学习在安全敏感领域的应用。对此,研究者提出了各种对抗性防御方法。其中,对抗训练是典型的启发式防御方法。它将对抗攻击与对抗防御注入一个框架,一方面通过攻击已有模型学习生成对抗样本,另一方面利用对抗样本进一步开展模型训练,从而提升模型的鲁棒性。为此,本文围绕对抗训练,首先,阐述了对抗训练的基本框架;其次,对对抗训练框架下的对抗样本生成、对抗模型防御性训练等方法与关键技术进行分类梳理;然后,对评估对抗训练鲁棒性的数据集及攻击方式进行总结;最后,通过对当前对抗训练所面临挑战的分析,本文给出了其未来的几个发展方向。  相似文献   

16.
Web应用已成为互联网和企事业单位信息管理的主要模式。随着Web应用的普及,攻击者越来越多地利用它的漏洞实现恶意攻击,Web应用的安全评估已成为信息安全研究的热点。结合Web应用的业务逻辑,提出了其相关资源软件攻击面的形式化描述方法,构造了基于软件攻击面的攻击图模型,在此基础上,实现对Web应用的安全评估。本文构造的安全评估模型,在现有的通用漏洞检测模型基础上,引入业务逻辑安全性关联分析,解决了现有检测模型业务逻辑安全检测不足的缺陷,实现了Web应用快速、全面的安全评估。  相似文献   

17.
随着 Internet 的发展,恶意用户利用 Web 应用程序存在的漏洞,对 Web 站点实施攻击,从而完成获取信息资料、植入病毒木马、伪装钓鱼网站、恶意插入广告等恶意操作,危害用户的利益,降低网站的可信度。随着 Web 攻击的日益增长,网站的安全风险达到了前所未有的高度。针对 Web 站点安全问题,在 HTTP 协议模型的基础上,结合 URL 解析技术及 Web 服务器核心扩展技术,文章设计并实现了一个基于 ISAPI 过滤器的 Web 防火墙系统。该系统可抵御常见网络攻击行为,为基于 HTTP 协议的 IIS 网站提供安全保障。系统主要包括3个组成部分:配置模块、过滤模块及日志模块。文章对系统过滤模块的设计与实现进行了详尽的阐述,系统的主要功能包括:过滤 HTTP 请求类型、限制头部长度、禁止 SQL 注入、禁止 Cookie 注入、禁止跨站攻击、防止敏感目录扫描、过滤请求文件类型以及 IP 黑名单。系统通过上述功能可以有效检测 Web 攻击行为并能做出正确处理,为 Web 网站安全提供有效保障。文章最后对系统进行功能测试,测试表明,系统可以对常见的 Web 攻击行为进行过滤处理并做出预期响应。系统符合设计目标,具有较高的实用价值。  相似文献   

18.
李明 《福建电脑》2020,(5):25-27
基于Web的互联网应用蓬勃发展。Web应用在每个人的日常生活中扮演着重要的角色,积聚了大量的用户信息和数据,引起了黑客们的广泛关注。这使得Web应用的安全形势日渐严峻。保障Web应用程序和用户数据安全关系重大,本文对存在范围广、威胁程度高的SQL注入攻击进行了论述,分析了SQL注入攻击的机理及可能造成的危害,探讨了发现SQL注入攻击的方法以及如何实施防御措施,以期为Web应用安全性能的提升、为开发人员、网络安全工作者提供参考。  相似文献   

19.
高级持续威胁(APT,advanced persistent threats)会使用漏洞实现攻击代码的自动加载和攻击行为的隐藏,并通过复用代码攻击绕过堆栈的不可执行限制,这是网络安全的重要威胁.传统的控制流完整性和地址随机化技术虽然有效抑制了APT的步伐,但软件的复杂性和攻击演化使软件仍存在被攻击的时间窗口.为此,以资...  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号