基于注入式SQL的云端存储安全研究

合集下载

SQL注入的原理及防范

SQL注入的原理及防范

SQL注入的原理及防范SQL注入(SQL Injection)是一种常见的安全漏洞,攻击者通过在输入框或URL参数中输入恶意SQL语句来执行未经授权的数据库操作。

SQL注入的原理是攻击者通过构造恶意的SQL语句,将其插入到应用程序的输入参数中,利用应用程序对用户输入数据的信任来获取或修改数据库中的信息。

要防范SQL注入攻击,开发人员和系统管理员需要遵循以下几个原则:1.使用参数化查询:参数化查询是防范SQL注入攻击最有效的方式之一、通过使用参数化查询,可以将用户输入的数据作为参数传递给SQL查询,而不是直接将用户输入的数据拼接到SQL语句中。

这样可以避免攻击者利用恶意SQL语句来执行未经授权的数据库操作。

2.输入验证和过滤:对用户输入数据进行验证和过滤是防范SQL注入攻击的另一个重要措施。

在接收用户输入数据之前,应该对数据进行验证,确保数据格式符合预期,并在需要时进行过滤,去除不安全的字符。

例如,可以使用正则表达式来验证输入数据是否符合特定的格式,或使用内置的函数来过滤危险字符。

3.最小化权限:在数据库的设计中,应该尽量采用最小权限原则,即只给予应用程序访问数据库所需的最小权限。

这样即使攻击者成功注入恶意SQL语句,也只能执行受限的操作,减少损失。

4.错误消息处理:在应用程序中,应该避免直接将数据库错误信息暴露给用户。

攻击者可以通过数据库错误信息来获取有关数据库结构和操作的信息,从而更有针对性地进行攻击。

应该对错误信息进行适当处理,显示友好的提示信息而不是详细的错误信息。

5.定期更新和维护:对应用程序和数据库进行定期的更新和维护也是防范SQL注入攻击的有效措施。

及时修补系统漏洞和更新软件版本可以减少攻击者利用已知漏洞进行注入攻击的机会。

总的来说,防范SQL注入攻击需要开发人员和系统管理员共同努力,采取多种手段综合防范。

只有在建立完善的安全机制和规范的开发流程的基础上,才能有效地防止SQL注入这种常见的安全威胁,保护应用程序和数据库的安全。

SQL注入式攻击及其防范措施研究

SQL注入式攻击及其防范措施研究

SQL注入式攻击及其防范措施研究SQL注入式攻击是一种常见的Web应用程序攻击技术,通过恶意注入SQL语句,攻击者可以绕过应用程序的身份验证和授权机制,获取或修改数据库中的敏感数据。

本文将详细介绍SQL注入式攻击的原理和常见的攻击手段,并提出有效的防范措施。

一、SQL注入原理及其危害1.SQL注入原理SQL注入攻击利用了应用程序未对用户输入的数据进行完全验证和过滤的漏洞。

当用户输入的数据直接拼接到SQL查询语句中时,攻击者可以通过在输入中插入恶意代码,改变SQL查询的逻辑,从而获取或修改数据库中的数据。

2.SQL注入的危害(1)数据泄露:攻击者可以通过恶意注入的SQL语句获取数据库中的敏感数据,如用户的账号、密码、信用卡信息等。

(2)数据修改:攻击者可以修改数据库中的数据,包括删除、修改、添加数据,从而破坏应用程序的功能或篡改系统配置。

(3)绕过身份验证:通过注入的SQL语句,攻击者可以绕过应用程序的身份验证和授权机制,以管理员或其他特权用户的身份执行恶意操作。

(4)拒绝服务:攻击者可以利用SQL注入攻击导致数据库崩溃或系统资源耗尽,从而拒绝正常用户的服务。

二、SQL注入攻击的常见手段1.基于报错的注入攻击攻击者通过输入恶意代码,触发应用程序产生报错信息,从而获取数据库中的信息,如表名、列名等。

常见的攻击代码包括单引号、注释符、SQL语句的拼接等。

2.盲注攻击盲注攻击是一种注入攻击的变种,攻击者无法直接获取数据库的信息,但可以通过不断尝试恶意代码并观察应用程序的响应来判断数据库是否存在漏洞。

常见的盲注攻击包括利用布尔盲注和时间盲注。

3.堆叠查询攻击攻击者利用应用程序允许同时执行多条SQL查询的漏洞,将多条恶意SQL语句堆叠在一起执行,从而获取或修改数据库中的数据。

三、防范SQL注入式攻击的措施1.输入验证与过滤应用程序应对用户的输入进行完全验证和过滤,将用户输入的字符、特殊字符和SQL敏感字符进行转义或替换。

基于SQL注入攻击漏洞问题研究

基于SQL注入攻击漏洞问题研究

基于SQL注入攻击漏洞问题研究SQL注入攻击是一种常见的网络安全漏洞,常见于Web应用程序中。

攻击者通过恶意构造的SQL查询语句,在不经意间获取或修改数据库中的敏感数据。

本文将研究SQL注入攻击的原理、常见类型及防范方法。

一、SQL注入攻击原理SQL注入攻击利用了Web应用程序对用户输入的处理不严谨,或者没有对用户输入进行充分的验证和过滤。

攻击者通过构造恶意的输入,使得Web应用程序在解析用户输入的过程中,将恶意的SQL语句当作合法的查询请求执行。

常见的SQL注入攻击原理包括:1. 可能的注入点:攻击者寻找Web应用程序中可能存在的注入点,一般是通过用户的输入来构造SQL查询语句。

如用户输入的搜索关键词、用户名、密码等。

2. SQL语法破坏:攻击者构造恶意的输入,在用户输入的查询参数中插入特殊字符,破坏SQL语句的结构,使其变成可执行的SQL语句。

3. SQL查询结果的泄露:攻击者通过注入恶意的SQL语句,获取数据库中的敏感数据。

如用户的登录凭证、个人信息等。

二、SQL注入攻击的类型SQL注入攻击的类型繁多,常见的攻击类型包括:1. 基于布尔盲注的攻击:攻击者通过构造布尔表达式,并观察Web应用程序在不同输入下的响应结果,进而推测出数据库中的信息。

2. 基于错误消息的攻击:攻击者通过构造恶意的输入,使得数据库在执行SQL查询语句时抛出错误消息,从中获取有关数据库结构的信息。

三、SQL注入攻击的防范方法为了保护Web应用程序免受SQL注入攻击的威胁,可以采取以下防范措施:1. 输入验证和过滤:对用户输入的数据进行验证和过滤,确保输入的数据符合预期的格式和规范。

可以使用正则表达式或特定的过滤函数对用户输入进行检查。

2. 使用参数化查询或预编译语句:将用户输入的数据作为参数传递给SQL查询语句,而不是直接拼接在SQL语句中。

参数化查询能够有效防止SQL注入攻击。

3. 最小权限原则:为数据库用户分配最小的权限,限制用户在数据库中的操作。

基于SQL注入攻击漏洞问题研究

基于SQL注入攻击漏洞问题研究

基于SQL注入攻击漏洞问题研究【摘要】SQL注入攻击是一种常见的网络安全漏洞,攻击者通过在输入框中插入恶意的SQL代码,成功执行未经授权的数据库操作。

本文围绕SQL注入攻击展开研究,分析了其原理和常见手段,探讨了检测和防范的方法,并通过实例分析和案例研究验证了其危害性。

在总结了研究成果,展望了未来发展方向,并提出了建议,希望可以为网络安全领域提供有益的参考。

通过深入探讨SQL注入攻击漏洞问题,可以帮助提高对网络安全威胁的认识,提升信息安全防护水平。

【关键词】SQL注入攻击漏洞、引言、概述、研究背景、研究意义、SQL注入攻击原理、常见的SQL注入攻击手段、检测和防范SQL注入攻击的方法、实例分析、案例研究、总结、展望、建议。

1. 引言1.1 概述SQL注入攻击是一种常见的网络安全威胁,利用应用程序对用户输入数据的处理不严谨,通过构造恶意的SQL语句,从而实现对数据库的非法操作。

SQL注入攻击可能导致数据库信息泄露、篡改或者数据库服务器被远程控制等严重后果。

本文将深入探讨SQL注入攻击的原理、常见手段、检测和防范方法,并通过实例分析和案例研究来更好地理解SQL注入攻击的危害和防范措施。

本文目的在于帮助读者深入了解SQL注入攻击的危害和防范方法,提高大家对网络安全的重视程度。

通过学习SQL注入攻击的原理和常见手段,读者可以更加准确地识别潜在的安全隐患,加强系统的安全防护;通过实例分析和案例研究,读者可以更好地理解SQL注入攻击的危害和后果,从而有效地避免成为攻击者的下一个目标。

本文旨在提高读者对网络安全问题的认识,帮助大家更好地保护自己的信息安全和网络安全。

1.2 研究背景SQL注入攻击是目前网络安全领域中一种常见的攻击方式,它利用网站或应用程序对用户输入数据的处理不当,通过在输入数据中插入SQL语句,从而实现对数据库的非法访问和控制。

SQL注入攻击不仅会导致数据泄露、数据损坏,甚至可能导致系统的完全崩溃,给信息系统的安全造成严重威胁。

针对SQL注入的研究及其预防对策

针对SQL注入的研究及其预防对策

针对SQL注入的研究及其预防对策摘要:Web中�稻菘獾挠τ迷嚼丛焦惴海�SQL的注入也成为了黑客攻击数据库比较常见的手段。

文章对SQL注入攻击的一些相关原理进行了简要的说明。

并对现阶段SQL 注入攻击的特点进行了研究和剖析,然后在这个基础之上提供了几种对SQL进行预防的防护方法。

并且对这些方法的使用情况进行了必要的说明关键词:SQL注入研究预防对策随着互联网的发展,大量的web网站开始涌现,极大地方便了人们的信息获取需求。

与此同时,黑客针对网站的攻击也屡屡出现,造成了或多或少的经济损失现代社会,而近年来互联网技术的发展迅猛,以因特网为基础平台的Web应用系统在计算机的各个领域都有了越来越广泛的用途。

譬如企业的办公系统以及电子商务系统等等。

这些系统绝大多数都是采用的HTTP的方式进行数据的传递,然后将这些数据相关组织的数据库当中,这些数据对一些不法分子来说具有非常大的吸引力,这就给数据的安全性造成了很大的安全隐患,比较典型的就是SQL的注入。

一、SQL注入从目前的情况来看,现在的Web应用程序在一般情况下采用的都是依靠数据库为用户进行写、度数据的方法,但是,在另一方面,由于从事程序编程人员的水平参差不齐,绝大多数编程的工作者没有在编写程序的时候对用户数据的合法性进行辨别,这就导致在应用程序的过程中出现了安全隐患。

SQL注入,简单的来说,就是不法分子利用高科技手段改变原来数据的查询语句,并把这个命令提交给服务器,并在这个基础之上执行恶意的SQL命令然后不法分子在依据数据返回的结果中获取攻击者想要得到的信息,进行下一步的不法活动。

关于SQL的注入原理众所周知,SQL注入的目的就是对数据库进行攻击,然后在攻击数据库的基础之上在攻击其所在的服务器,而这种攻击的主要方式就是不法分子将代码在参数中进行植入,而这些参数会被植入SQL命令中加已执行。

例如将恶意的代码插入到字符串当中,然后在这个基础之上将这些字符串保存在数据库当中的数据表中,或者将其当作元数据,当被存储的字符串植入到动态的SQL命令当中来的时候,这些恶意的代码就会被执行。

SQL注入攻击的防范及安全措施研究

SQL注入攻击的防范及安全措施研究

SQL注入攻击的防范及安全措施研究随着互联网时代的到来,人们利用计算机技术进行业务操作和数据存储的方式也发生了巨大的变化。

数据库系统已经成为了企业和网站数据管理的核心。

然而,网络上也存在着各种各样的安全问题。

SQL注入攻击就是网络安全威胁中非常危险的一种形式,可以使服务瘫痪或者造成用户数据泄漏,给服务提供者和用户带来损失。

本文将探讨SQL注入攻击的特点,防范方法和安全措施。

一、SQL注入攻击的特点1. 特点一:利用SQL的漏洞SQL注入攻击首先是一种利用Web开发中SQL语句的漏洞进行的攻击方式。

在传统网站中,前端页面与后端数据库之间的交互过程中使用了SQL查询语句,比如查询用户信息、商品信息、订单信息等。

攻击者利用SQL的漏洞注入恶意代码,成功运行后即可轻松地在后台数据库中获取、修改、添加、或删除一些数据。

2. 特点二:目标明确SQL注入攻击者通常不是一些不知道自己攻击目标的随意入侵者,而是有明确目标和目的的攻击者。

他们可能是企业内部的敌对势力或竞争对手,或者是黑客社区中专业攻击者。

攻击者的目的往往是为了获取对于网站或企业较为敏感的信息或者数据,比如企业用户数据、账户密码等敏感信息。

3. 特点三:攻击简单有效SQL注入攻击并不需要攻击者具备过于复杂的技术技能,普通的黑客即可进行此类攻击。

并且SQL注入攻击极其危险,注入成功后攻击者可以随意操作数据库,而且通常不会给网站或者企业留下任何痕迹。

二、防范方法1. 参数化查询参数化查询是防范SQL注入攻击中最基本的方法。

参数化查询和普通的查询有所不同,它不使用带有可执行数据的字符串查询语句,而是把数据作为参数来操作数据库。

这样可以有效防止注入攻击,因为当参数传递给SQL语句时,SQL语句中的关键字和数据分开来传递。

2. 过滤用户提交的数据在网站表单提交等页面中,可以利用脚本语言对用户输入的数据进行验证和过滤,将不可信数据过滤掉,如不合法字符、危险字符等,就可以有效避免SQL注入攻击。

基于SQL注入攻击漏洞问题研究

基于SQL注入攻击漏洞问题研究

基于SQL注入攻击漏洞问题研究SQL注入攻击是一种常见的网络安全漏洞,它允许攻击者通过篡改应用程序的输入来执行恶意的数据库操作。

在此研究中,我们将探讨SQL注入攻击的原理、常见的攻击方式和相应的防护措施。

SQL注入攻击的原理是利用应用程序没有正确过滤用户输入,将恶意的SQL代码注入到正常的SQL查询中。

这使得攻击者可以执行未经授权的数据库操作,如访问敏感数据、修改数据、删除数据等。

一种常见的SQL注入攻击方式是通过修改应用程序的输入参数来执行恶意SQL查询。

攻击者可以在输入框中输入一些特殊字符或SQL关键字,以实现对数据库的非法操作。

攻击者可以通过在用户名输入框中输入`' OR '1'='1' -- `来绕过认证,因为这样构造的SQL 查询总是返回真值,使攻击者能够绕过登录验证。

另一种常见的攻击方式是通过错误的错误处理机制来获取敏感信息。

攻击者可以利用数据库错误消息泄露出来的信息来推断数据库结构和数据内容。

当应用程序在处理错误时显示了数据库错误消息,攻击者可以根据错误消息的内容逐渐获得对数据库的更多了解。

为了防止SQL注入攻击,我们可以采取以下措施:1. 使用参数化查询或预编译语句。

参数化查询或预编译语句可以将用户输入和SQL查询语句分开处理,从而避免注入攻击。

参数化查询使用占位符来表示输入参数,而不直接将用户输入拼接到SQL查询中。

2. 对用户输入进行验证和过滤。

应当对用户输入进行合法性验证和过滤,删除或转义特殊字符。

应当对字符`'`、`"`、`;`等进行过滤或转义,以防止注入攻击。

3. 最小化数据库用户的权限。

确保数据库用户仅具有执行必要操作的权限,以降低攻击者的影响范围。

避免将数据库用户赋予具有敏感操作权限的角色。

4. 定期更新和管理数据库。

及时修补数据库软件的安全漏洞,定期备份和还原数据库,以减少恶意攻击的影响。

5. 遵循安全开发和部署最佳实践。

数据库中的SQL注入攻击与防范技术研究

数据库中的SQL注入攻击与防范技术研究

数据库中的SQL注入攻击与防范技术研究概述:SQL注入攻击是一种常见的网络攻击手法,攻击者通过在应用程序中插入恶意的SQL代码,来获取或者修改数据库的数据。

这种攻击可以导致数据泄露、数据破坏甚至服务器被完全控制。

在本文中,我们将对SQL注入攻击的原理、常见的注入方式及防范技术进行深入研究。

一、SQL注入攻击原理:SQL注入攻击利用了应用程序未对用户输入进行有效验证和过滤的漏洞,从而使攻击者能够向数据库中注入恶意代码。

一旦这些恶意代码被数据库执行,攻击者就可以执行任意的数据库操作。

通常情况下,一个正常的应用程序会接收用户输入数据,使用这些数据构建SQL查询语句并将其发送到数据库。

然而,如果应用程序没有对用户输入进行足够的验证和过滤,攻击者就可以在输入中注入恶意的SQL代码。

例如,下面是一个常见的登录验证SQL查询语句:```sqlSELECT * FROM users WHERE username='$username' andpassword='$password'```假设攻击者在用户名输入框中输入`' OR '1'='1`,相应的SQL查询语句就会变成:```sqlSELECT * FROM users WHERE username='' OR '1'='1' and password='$password'```通过这样的注入,攻击者可以绕过原来的登录验证,直接获取到数据库中的用户信息。

二、常见的注入方式:SQL注入攻击有多种方式,以下是一些常见的注入形式:1. 基于用户输入的注入:攻击者在用户输入的字段中插入恶意的代码,常见的注入点包括表单、URL参数、HTTP头等。

2. 盲注SQL注入:攻击者通过不断猜测数据库的返回结果进行攻击,以获得数据库中的信息。

这种注入方式不需要从数据库中获取任何实际信息。

网络安全测试中的SQL注入漏洞与防范

网络安全测试中的SQL注入漏洞与防范

网络安全测试中的SQL注入漏洞与防范SQL注入漏洞是网络安全测试中一种常见的安全漏洞,它可以导致数据库被非法访问和篡改。

本文将探讨SQL注入漏洞的原理、测试方法和防范措施。

一、SQL注入漏洞原理SQL注入是一种利用Web应用程序对数据库进行非法操作的攻击方式。

它利用了应用程序对用户输入的处理不当的漏洞,将恶意的SQL代码插入到应用程序的数据库查询语句中,从而绕过应用程序的认证和授权机制,执行恶意操作。

SQL注入漏洞从根本上来说是由于应用程序没有对用户输入进行充分的验证和过滤造成的。

当应用程序接收到用户输入并将其拼接到数据库查询语句中时,如果没有对输入进行适当的处理,攻击者可以通过输入特殊的字符来修改原本的查询语句,进而对数据库进行非法操作。

二、SQL注入漏洞的测试方法为了发现和修复SQL注入漏洞,安全测试人员可以通过以下几种常用的测试方法:1. 基于错误消息的注入测试:测试人员在用户输入中插入一些恶意的SQL代码,观察应用程序返回的错误消息是否包含数据库相关的信息。

如果错误消息暴露了数据库的结构或内容,那么就存在SQL注入漏洞。

2. 基于盲注的注入测试:测试人员通过观察应用程序在不同输入情况下的响应时间或返回结果来判断是否存在注入漏洞。

攻击者可以通过构造一系列特定的SQL查询语句和恶意输入,来判定应用程序是否存在注入漏洞。

3. 基于布尔盲注的注入测试:测试人员通过构造一系列特定的SQL 查询语句和恶意输入,观察应用程序在不同输入情况下的布尔返回值来判断是否存在注入漏洞。

攻击者可以通过这种方式逐位地猜测数据的值,最终获取敏感信息。

4. 基于时间盲注的注入测试:测试人员通过观察应用程序在不同输入情况下的响应时间来判断是否存在注入漏洞。

攻击者可以通过构造一系列特定的SQL查询语句和恶意输入,通过应用程序的响应时间来获取敏感信息。

三、SQL注入漏洞的防范措施为了避免SQL注入漏洞的发生,开发人员和系统管理员可以采取以下几种常见的防范措施:1. 使用参数化语句或预编译语句:开发人员应该使用参数化查询或预编译语句来处理用户输入,而不是直接将用户输入拼接到SQL查询语句中。

SQL注入攻击原理及安全防范措施研究

SQL注入攻击原理及安全防范措施研究

SQL注入攻击原理及安全防范措施研究SQL注入攻击原理及安全防范措施研究随着Web应用程序的普及和开发技术的进步,访问Web应用程序已经成为人们日常工作和生活中的重要组成部分。

为了实现给用户在Internet上提供交互服务的能力,Web应用程序通常通过与建立在数据库管理系统上的应用程序交互来提供查询、更新和插入信息等服务。

这些数据库管理系统使用SQL语句来管理数据库,Web应用程序通常使用这些SQL语句来与数据库管理系统交互。

这就为黑客利用SQL注入漏洞进行攻击提供了机会。

SQL注入攻击是最知名和最常见的网络攻击之一,是一种针对数据库驱动的Web应用程序的攻击方式。

本文将介绍SQL注入攻击的原理及其安全防范措施。

1. SQL注入攻击的基本原理SQL注入攻击是指攻击者通过向Web应用程序提交恶意注入数据库中相应数据的字符串,进而在数据库中执行攻击者想要执行的SQL语句。

攻击者通常使用一些特殊的SQL语句来实现他们的目的。

因此,SQL注入攻击被描述为一个将被插入到Web应用程序中的数据项中的恶意注入SQL数据项的过程。

SQL注入攻击是一个多步过程,因此,它需要读取大量的信息来获得访问系统的权限。

下面是SQL注入攻击者可能采取的一些步骤:1)确定Web应用程序的数据请求路径黑客通过检测Web应用程序的数据请求路径来对系统进行侵入。

他们通常认为注入可成功的路径必须包括所有与数据库相关的查询和入库操作。

如果识别了这些路径,它们可以继续执行黑客操作而不被系统检测到。

2)提供恶意注入的SQL语句攻击者可以使用现有的SQL注入语句或手动创建自己的SQL 注入语句来注入数据。

在手动创建SQL注入时,攻击者可以使用一些技巧,如将特殊字符编码来避免引起系统的警报。

3)注入SQL注入语句到Web应用程序中攻击者需要通过输入在恶意注入代码中的值来注入SQL注入语句到Web应用程序中。

当用户在输入数据时,攻击者会在恶意代码中插入特殊字符、脚本或其他命令。

SQL注入攻击原理及安全防范措施研究的研究报告

SQL注入攻击原理及安全防范措施研究的研究报告

SQL注入攻击原理及安全防范措施研究的研究报告研究报告:SQL注入攻击原理及安全防范措施研究一、前言近年来,随着互联网和移动互联网的发展,Web开发和应用的重要性逐渐凸显,然而随之而来的是Web安全问题的加剧。

其中,SQL注入攻击是目前较为普遍和严重的一类Web安全漏洞,也是黑客攻击中常用的一种方式。

本文将从SQL注入攻击的原理、实现、危害以及防范措施等方面进行深入探讨,并希望对读者提供一定的帮助。

二、SQL注入攻击原理1、概念SQL注入攻击是指黑客通过在Web应用程序中注入恶意的SQL语句,以获取非法的系统访问权限、窃取重要数据或者破坏系统等目的的一种攻击方式。

2、攻击原理SQL注入攻击的基本原理是,利用Web应用程序未经过严格验证的用户输入信息,往SQL语句中注入一些非法的代码,从而修改原有的SQL语句逻辑,执行非法的操作。

例如,一个Web应用程序可能有一个登录功能,当用户输入正确的用户名和密码时,系统会对其进行身份认证,如果认证通过,则将用户登录到系统中。

具体实现过程可能是,将用户输入的用户名和密码拼凑成一个SQL语句,通过查询数据库来验证身份是否正确。

如果攻击者提交了错误的用户名和密码,系统有可能返回一个错误提示,例如“您输入的用户名或密码不正确!”。

而黑客在这里就可以进行攻击,他可以在错误提示中注入一些SQL代码,比如“ ' or '1'='1 ”,从而改变原有的SQL语句,查询到了所有用户的数据。

这就是SQL注入攻击。

3、攻击实现SQL注入攻击的原理比较简单,但攻击的实现却比较复杂和细致。

具体实现过程包括以下几个方面:(1)了解目标网站的结构和数据库类型,用于指定注入的攻击方式(如MySQL,Oracle等)。

(2)寻找目标站点,常用的方法是搜索引擎、高级搜索命令以及漏洞扫描工具等。

(3)分析目标站点的URL及数据提交表单,寻找可注入点,并比较可注入点的差异。

基于SQL注入的数据库安全问题研究

基于SQL注入的数据库安全问题研究

基于SQL注入的数据库安全问题研究随着信息技术的不断发展,互联网已成为现代社会不可或缺的一部分。

而数据库作为互联网上一种重要的数据存储方式,也被广泛应用于各种应用程序之中。

但随之而来的是,安全问题的显现。

尤其是基于SQL注入的数据库安全问题,已经成为当前亟待解决的一大难题。

一、什么是SQL注入SQL注入是指攻击者通过在Web应用程序中恶意注入SQL语句,从而达到欺骗数据库服务器执行它们,并能够访问和修改数据库中的数据的攻击方式。

SQL 注入攻击在目前的许多Web应用程序中存在,其危害性非常大,已经成为互联网安全领域的一大难题。

二、SQL注入的危害SQL注入攻击可以导致多个方面的安全问题,其中包括:1. 数据泄漏SQL注入攻击者可以利用此方法直接地访问和修改数据库。

这可能会导致敏感数据泄漏,例如用户的密码、信用卡信息等。

2. 数据篡改SQL注入攻击可在必要时访问和修改有关数据库中的数据。

此外,攻击者还可以在数据上执行比如删除、修改等操作。

这将导致数据的完整性被破坏,影响各种操作。

3. 身份伪装SQL注入攻击可查询管理员账号的用户名和密码,进而将其用于未经授权的访问。

使用此方法,攻击者可能会在未经授权的情况下获取管理员权限。

三、SQL注入攻击的解决方法SQL注入攻击的解决方法很多,其中比较常用的方法包括:1. 输入验证输入验证是防止SQL注入攻击的第一个防线。

对用户输入的数据进行验证,将不符合规则的数据的拒绝掉。

这包括对所输入的数据进行格式和类型检查,并确保输入的数据不包含没有必要的特殊字符。

2. 操作权限管理对数据库操作权限进行管理,确保只有被授权的用户才能访问和修改数据库。

此外,应拒绝所有没有必要的操作,例如删除等操作。

3. 数字签名数字签名可以确保数据不被不良攻击者篡改。

数字签名可以在发送数据时使用,此时发送的数据已经被证明是信誉良好的,并已被确认为没有被修改过或与其它数据一起被修改。

4. 安全开发原则遵循安全开发原则,编写安全的程序,对于减轻SQL注入攻击的危害是有效的。

对SQL注入漏洞的研究与防范措施的探讨

对SQL注入漏洞的研究与防范措施的探讨

2S QL注入 的 思路及 注入 漏 洞的 判断 方法
这就 是经典 的 1 11 2测试法 。 = 、= 仔细分析一 下三个网址返 如果读者不了解 S L注入 ,那么首先从桌面 m 菜单 工 回的结果可以得 出结论 : Q 具 ̄ Ie t 项 高级 显示友好 H T n me选 t T P错误信 息前面 的勾 ① 正常显示 。( 是必然 的 , 这 不然就是程序有错误了。 ) 去掉 。否则 ,不论服务器返 回什么错误 , 都只显示为 H T m TP 50服务器错误 , 0 不能获得更多 的提示信息 。
维普资讯

3 ・ 0
Co m e a No. 1 0 6 mp r Er 1 2 0
对S QL注入漏洞的研究与防范措施的探讨
张 涛 ’ 王行 建 ,
108 ; . ( 黑龙江大学现代教育技术中心,黑龙江 哈 尔滨 500 2 东北林业大学信息与计算机工程学院) 1 .
收集程 序及服务 器的信 息 , 从而获取 攻击者 槛 不高 , 程序 员的水平及 经验也参 差不齐 , 当大一部 分程序 提 交特 殊 的代 码 , 相 员在编 写代码 的时候 ,没有 对用 户输 入数据 的合法性 进行判 想得到 的资料 。 断, 使应 用程 序存在安全隐患 。用 户可 以提交一段 数据库查询 代码 , 据程 序返 回的结果 , 根 获得某些他想得知 的数据 , 这就 是
答案如下 :
问没什么区别 , 以 目前防火墙都 不会对 S L注入发 出警报 。 所 Q
如果管理 员没有查看 I I S日志 的习惯 ,可能被入侵很长时 间都 不会发觉 。 本文对 A P注入 的方法及技巧进行详细的讲解 , S 希望对 安 全工作者和程序员都有裨益 。

sql注入实验报告

sql注入实验报告

sql注入实验报告SQL注入实验报告引言:SQL注入是一种常见的网络安全漏洞,攻击者通过在用户输入的数据中插入恶意的SQL代码,从而获取非法访问数据库的权限,进而导致数据泄露、篡改或者破坏。

本实验旨在通过模拟SQL注入攻击的方式,探索其原理和危害,以期加强对该漏洞的认识和防范。

实验设计:本次实验分为两个部分:SQL注入攻击和防范措施。

1. SQL注入攻击:首先,我们选择一个具有漏洞的网站进行攻击。

在实验过程中,为了确保安全,我们仅使用了合法的手段,不进行任何非法操作。

通过分析网站的URL参数和表单输入,我们发现一个存在SQL注入漏洞的登录功能。

我们尝试在用户名和密码输入框中注入恶意的SQL代码,以获取未授权的数据库访问权限。

2. 攻击实验过程:我们首先输入正常的用户名和密码进行登录,以确认登录功能的正常工作。

然后,我们在用户名输入框中注入以下代码:' OR '1'='1'--。

这段代码的目的是绕过登录验证,使得SQL查询语句永远返回真值,从而绕过用户名和密码的验证。

3. 攻击结果:通过注入恶意代码,我们成功绕过了登录验证,并获得了未授权的数据库访问权限。

我们可以执行任意的SQL查询和修改操作,包括获取用户敏感信息、删除数据库记录等。

这表明SQL注入攻击对系统的危害是非常严重的。

4. 防范措施:为了防止SQL注入攻击,我们需要采取一系列的安全措施。

首先,合理使用参数化查询和预编译语句,确保用户输入的数据不会被解释为SQL代码。

其次,对用户输入进行严格的验证和过滤,防止恶意代码的注入。

此外,及时更新数据库软件和补丁,以修复已知的漏洞,也是防范SQL注入攻击的重要手段。

结论:SQL注入攻击是一种常见且危害严重的网络安全漏洞。

通过本次实验,我们深入了解了SQL注入攻击的原理和危害,并探讨了相应的防范措施。

在实际应用中,我们应该时刻保持对SQL注入漏洞的警惕,加强安全意识,采取有效的措施来防范和修复这一漏洞,确保系统和用户数据的安全。

网络安全sql注入

网络安全sql注入

网络安全sql注入网络安全是当今互联网环境下面临的一个重要问题,而SQL 注入是其中一种常见的攻击方式。

SQL注入指的是攻击者利用网站的漏洞,通过在用户输入的数据中注入SQL代码,从而获取非法的访问权限或者执行恶意操作。

SQL注入攻击是非常危险的,因为它能够绕过网站的身份认证机制,直接对数据库进行操作。

一旦攻击成功,攻击者可以获取或者修改数据库中的数据,甚至完全控制整个网站。

对于涉及用户个人信息或者敏感数据的网站,SQL注入攻击会对用户的隐私造成严重威胁。

要防范SQL注入攻击,首先是要对用户输入的数据进行严格的过滤和验证。

可以通过编写合适的输入验证规则,对用户输入的数据进行检查和过滤。

特别是对于用户输入的特殊字符,如引号、分号等进行转义或者删除,以防止攻击者通过这些字符绕过验证。

另外,还可以限制用户输入的长度和数据类型,以确保用户输入的数据不会破坏数据库的结构和安全。

其次,要使用参数化查询或者预编译语句来执行SQL查询。

参数化查询可以将用户输入的数据作为参数传入查询语句中,而不是直接拼接到查询语句中。

这样可以防止攻击者在输入中注入SQL代码,因为参数化查询会自动对用户输入进行转义或者编码处理,避免了SQL注入攻击。

另外,数据库的访问权限也是非常重要的。

合理的数据库权限设置可以限制用户对数据库的操作,避免攻击者使用恶意SQL语句进行破坏。

在部署网站时,应该根据不同的角色和功能需求,设置不同的数据库权限,以降低潜在风险。

此外,定期更新和修补数据库和网站的安全漏洞也是非常重要的。

数据库供应商和开发者通常会发布安全更新和补丁,以修复已知的漏洞。

及时安装这些更新和补丁,可以避免已知漏洞被攻击者利用。

同时,开发者也应该不断对自己的代码进行审查和测试,及时修复可能存在的安全漏洞。

总之,网络安全是一个需要长期关注和保护的问题。

对于SQL注入攻击,可以通过严格的输入验证、参数化查询、合理的数据库权限设置和定期更新修补等方式进行防范。

基于SQL注入攻击漏洞问题研究

基于SQL注入攻击漏洞问题研究

基于SQL注入攻击漏洞问题研究随着互联网的发展,Web应用程序的安全性问题也越来越受到关注。

SQL注入攻击是一种常见的Web应用程序安全漏洞,通过利用用户输入绕过应用程序的安全验证,从而执行恶意的SQL语句,可能导致敏感数据泄露、数据篡改等严重后果。

SQL注入攻击的原理是攻击者在输入框或URL参数中,添加恶意的SQL代码,使之与应用程序原有的SQL语句合并执行。

由于应用程序没有对用户输入进行足够的过滤和验证,导致攻击者可以通过注入的SQL语句来获取应用程序的数据库信息。

SQL注入攻击的漏洞主要存在于以下几个方面:2. 使用动态拼接SQL语句。

在一些应用程序中,为了方便操作数据库,会使用动态拼接SQL语句的方式进行数据库操作。

如果没有对用户输入进行正确的处理,攻击者可以通过注入恶意的SQL代码来执行任意的数据库操作。

3. 错误的权限设置。

如果应用程序的数据库连接用户拥有过高的权限,攻击者可以通过注入SQL语句获取到敏感数据或者进行数据库的篡改操作。

为了防止SQL注入攻击,我们可以采取以下几种方式:1. 使用参数化查询。

参数化查询是通过将用户输入的数据作为参数传递给预定义的SQL语句,而不是直接将用户输入的数据拼接到SQL语句中。

这样可以阻止攻击者对SQL 语句的注入攻击。

2. 对用户输入进行验证和过滤。

对用户输入进行验证和过滤是防止SQL注入攻击的重要手段。

可以使用正则表达式对用户输入的数据进行验证,过滤掉非法的字符。

也要注意对用户输入进行转义处理,防止特殊字符被当作SQL语句的一部分执行。

4. 定期更新和维护应用程序和数据库。

及时安装和更新数据库和应用程序的补丁,修复已知的漏洞,增强系统的安全性。

SQL注入原理及防范措施

SQL注入原理及防范措施

SQL注入原理及防范措施SQL注入利用了应用程序没有正确过滤、转义或验证用户输入的漏洞。

攻击者将恶意代码插入到应用程序的输入字段中,当应用程序将此输入作为SQL查询的一部分发送给数据库时,攻击者的恶意代码也被执行。

这使得攻击者可以执行任意的SQL查询,包括读取、修改或删除数据库中的数据。

防范措施:1.输入验证和过滤:应该对用户输入的数据进行验证和过滤,确保数据符合预期的格式和类型。

可以使用正则表达式、特定格式的函数等方法进行验证。

此外,还应该对输入进行过滤,确保没有特殊字符或SQL关键字被插入。

2.参数化查询:参数化查询是一种预编译SQL查询的方法,将查询语句和参数分离,避免将用户输入直接拼接到SQL语句中。

通过将参数化查询传递给数据库,可以确保输入被正确处理,从而防止SQL注入攻击。

3.使用ORM框架:ORM(对象关系映射)框架可以自动处理SQL查询,从而减少人为错误的可能性。

ORM框架会根据代码中的对象模型生成相应的SQL查询,同时自动处理参数化查询和转义字符,可以有效地防止SQL注入攻击。

4.最小权限原则:数据库用户应该被授予最小的权限,以限制攻击者能够对数据库执行的操作。

对于只读操作,应该使用只读用户执行,而对于写操作,应该使用有限的权限用户执行。

这样即使发生了SQL注入攻击,也能够最大程度地减少攻击者对数据库的影响。

5.监控和日志记录:应该实时监控数据库的操作,并记录所有的登录和查询请求。

通过分析日志,可以及时发现潜在的攻击,并采取相应的措施进行防护。

6.更新和修复:及时更新和修补应用程序和数据库系统,以确保已知的漏洞得到修复。

同时,还需要及时处理供应商发布的安全补丁,以避免新的漏洞被攻击者利用。

7.安全编码实践:开发人员应该不断学习并遵循最佳的安全编码实践。

这包括保密用户输入、使用安全的API、避免动态SQL等。

通过遵循安全编码准则,可以最大程度地减少应用程序中的漏洞,从而减少SQL注入的风险。

基于SQL注入攻击漏洞问题研究

基于SQL注入攻击漏洞问题研究

基于SQL注入攻击漏洞问题研究随着互联网的快速发展和信息技术的不断进步,网络安全问题也日益受到人们的重视。

SQL注入攻击是目前互联网中最为常见的一种攻击手段之一,它利用了应用程序对用户输入内容的不当处理,导致攻击者可以通过篡改数据库查询语句来实现非法的数据库操作,甚至是获取敏感信息。

本文将重点对SQL注入攻击进行问题研究,探讨其危害性及防范方法。

一、SQL注入攻击的原理SQL注入攻击是利用应用程序对用户输入数据的不当处理,导致最终拼接到数据库查询语句中的数据被攻击者所控制,从而实现对数据库的非法操作。

在通常情况下,应用程序通过用户输入构建SQL查询语句,如用户登录时输入用户名和密码,应用程序会将这些数据拼接到SQL查询语句中,再进行数据库查询。

攻击者利用这一点,可以通过在用户输入中注入SQL代码,来篡改原本的SQL查询语句,从而去操作数据库。

SQL注入攻击对于数据库的危害是非常大的,它可以导致数据泄露、数据篡改、数据库被破坏等严重后果。

攻击者可以通过SQL注入攻击来获取用户的敏感信息,如用户名、密码、个人隐私等;或者是篡改数据库中的数据,比如在网站上发布虚假信息、删除他人数据等。

对于一些关键性的系统,比如金融系统、医疗系统等,如果受到SQL注入攻击,可能造成严重的经济和社会问题,甚至危及用户的生命安全。

SQL注入攻击可以在各种类型的应用程序中发生,比如网站、电子商务系统、社交网络平台等。

攻击者可以通过在网站的搜索框、登录框等地方注入SQL代码,来实现对数据库的非法操作。

由于目前大部分的网站都使用了数据库来存储用户的信息和网站的数据,因此SQL注入攻击成为了攻击者获取敏感信息的一种常见手段。

为了防范SQL注入攻击,开发人员需要注意以下几点:1. 使用参数化查询:开发人员在构建SQL查询语句时,应该使用参数化查询的方式,而不是直接拼接用户输入数据到SQL语句中。

参数化查询可以有效地阻止SQL注入攻击,因为用户输入的数据不会被当做SQL代码来执行,而是作为查询参数传递到SQL引擎中。

基于“SQL 注入”漏洞谈网络安全问题防范

基于“SQL 注入”漏洞谈网络安全问题防范

141Internet Security互联网+安全随着互联网技术的迅猛发展,黑客攻击网站的手段也不断提高。

借助某种技术手段,非法获取机密数据或非法获取高于系统给定权限的系列行为都属于黑客攻击[1]。

如今犯罪分子利用网络安全漏洞进行犯罪的行为已不鲜见,SQL(结构化查询语言,Structured Query Language)注入漏洞就是最常见的一种网络安全漏洞。

网络安全漏洞不容小觑。

SQL 注入属于高危风险网络安全漏洞,攻击者通过SQL 注入可以获取到网站服务器的数据库名、表名、字段名,进而得到整个网站服务器的数据,对网站用户的数据造成极大的安全威胁。

除此以外,攻击者在获取到的数据库信息中,可能得到很多用户的信息,甚至是后台系统管理员的帐号信息,利用管理员的权限对网页进行恶意篡改。

这样不仅造成网站数据库信息泄露,对整个网站系统也造成严重破坏。

一、事件经过笔者一直从事对网站的网络安全漏洞扫描工作,于2021年3月发现一起比较典型的SQL 注入漏洞,供读者参考。

漏洞详细情况如下:漏洞名称为SQL 注入漏洞;漏洞数量1个;漏洞等级为高危;漏洞URL 地址为 https:///ehall/index.asp(“---”代表网站部分URL 地址)。

漏洞描述为,SQL 注入漏洞,就是通过执行用户输入的SQL 命令,获取网站数据库信息,简单来说就是欺骗网站服务器从而执行用户输入的恶意SQL 命令。

具体来说,SQL 注入攻击就是利用网站应用程序存在的安全漏洞,向SQL 语句中插入了异常代码,改变原有的SQL 命令语义,从而获取到基于“SQL 注入”漏洞谈网络安全问题防范孙海波 国家广播电视总局广播电视科学研究院刘志斌 张凤雨 冯伟 宁夏回族自治区广播电视台□【摘要】 本文就工作中发现的一起SQL 注入网络安全漏洞,从事件经过、验证过程、防护建议几个方面,对该漏洞进行了介绍。

使读者能够对SQL 注入漏洞有一个比较清晰的认识,防止攻击者利用该漏洞对网站数据库进行拖库、撞库、洗库、社工库等操作,进而导致数据泄露、修改网站内容、控制网站等安全事件的发生。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第25卷第23期电子设计工程2017年12月Vol.25 No.23 Electronic Design Engineering Dec. 2017基于注入式S Q L的云端存储妥会研究蔡翔,宋贤睿,顾广宇,张淑娟(国网安徽省电力公司电力科学研究院安徽安庆230601)摘要:针对云端存储面对的注入式SQL攻击的问题,本研究在深入分析注入式SQL攻击的基础上,阐述了报错注入式和U R L编码转换的攻击原理。

通过构建对称参数明文加解密的方式,分别利用NnCcVvC编码和指定key值的形式对存储进行加密,结合加密逆向流程完成对云端存储字符串的PH P解密。

整合了参数校验和数据过滤的操作步骤,降低了用户访问云端数据库的权限设置,通过存储的加解密双向操作为云端存储提供更安全的保障。

关键词:注入式SQL;云端存储;加密算法;安全管理中图分类号:TN929.1 文献标识码:A文章编号:1674-6236(2017)23-0182-04Research on security of cloud storage based on injection SQLCAI Xiang,SONG Xian-rui,GU Guang-yu,ZHANG Shu-juan(State Grid Anhui Electric Power Company Electric Power Research Institute,Anqing230601 ,China)Abstract:The analysis of injection SQL attacks,this paper discusses the attack principle of error-injection and URL- encoding conversion.By constructing the symmetric parameter encryption anddecryption method,the storage is encrypted with NnCcVvC code and designated key value respectively,and the PHP decryption of the cloud storage string is completed by combining the encryption reverse flow.The integration of the parameter calibration and data filtering steps,reducing t he user access to database permissions settings,encryption and decryption through the storage of two-way operation forcloud storage to provide more security.Key words:injected SQL;cloud storage;encryption algorithm;security management伴随着云计算技术的飞速发展,云端数据库信 息存储安全被认为是信息安全保证的重要屏障,但 云端数据库的安全性一直在学术界引起了广泛的关 注传统的云存储防御和检测方法存在较高的安全隐患,数据库攻击者可通过重言式[和延时盲注 的方式对云端数据库的信息进行窃取。

与此同时,数据信息的管理者通过检测字符串表达式的形式对 云端存储漏洞进行排查,并结合关键词ASCII编码 将不合法参数在存储过程中进行进制替换,从而检 测了数据库攻击者的非法访问权限。

针对云端存储 的安全性问题,本研究在梳理注人式SQL攻击方式 的基础上,详细剖析了报错注人和编码转换的攻击 方式,并介绍了应对注人式SQL攻击的程序调用防 御方法。

在融合众多防御方法优点的理论支撑下,给出了一种对称参数明文加解密的云端存储安全保障编码方案,该方案利用参数字符串加密的信息进 行云端存储的加密,同时,依据逆向加密的流程给出 了云端数据库抽取数据的参数解密,双向的数据信 息加解密为云端存储提供了更高的安全保障。

1注入式SQL攻击1.1基本原理注人式SQL通过构建非法SQL语句来攻击达到 云端数据库的目的[]。

在云端数据库未设置检验和 安全过滤时,信息安全攻击方通过搭建非法字符串 的形式对云端资源进行抽取,并结合设定程序有目 的的攻击用户数据信息[]。

本文以云端数据存储为 研究对象,详细阐述报错注人和编码转换1两种注 人式SQL攻击。

1)报错注人收稿日期:2016-10-03稿件编号:201610004 利用EXP函数对云端数据库进行程序调用,攻作者简介:蔡翔(1983—),男,安徽蚌埠人,硕士,工程师。

研究方向:信息安全、渗透测试、无线安全。

-182-蔡翔,等基于注入式S Q L的云端存储安全研究击者有目的地对存储数据实现溢出效应,在众多数 据中抽取对攻击者有利的数据信息,最终使得云端 数据库出现报错信息提示。

即页面显示结果如下:Select(favorable information)FROM(Cloud database) WHERE SQL num=’1EXP(Select (Key Information) FROM (Database))AND 1=,1Error:DOUBLE value is out of ranks in EXP (select (User name@server address)from (Terminal Server))由以上的基于EXP函数的报错注入错误信息提 示可见,’User name@server address’给出了云端存储 的用户名和服务器地址的关键信息。

2)编码转换与报错注入的形式不同,编码转换利用URL地 址解码的方式对云端存储数据信息集合调用进行攻 击。

即网址的显示结果如下:h tp://serveraddress/clouddatabase/main/search.php tag=favorableinformation%15 %122%2c+ 2%4e2 + all+ select+ user+%3ddatabase%+%15% 3440% + 4c%36% 37%4d1.防御方法1用户输入检测用户输入检测分别注入字符检测和输入参数检 测两种方法[12]。

其中,注入字符检测利用正则方式 和更换方式将注入式SQL字符串关键词进行替换;输入参数检测是利用数据信息的整数参数进行强制 性的转换为整型,其他类型的参数也同样进行使用 前的转化,整体上避免了整型参数后添加SQL语句。

2) 数据存储的加密通过对重要数据信息进行针对性的加密存储以 降低信息外泄的损失,例如银行卡号、用户帐号和身 份验证信息等在云端存储数据库中以加密式的非明 文形式进行存储,有效的降低了数据库攻击者在窃 取重要信息后的字符串识别能力。

3) 参数优化查询参数优化查询则是依据用户输入数据信息后在 云端存储中设定的参数遍历查询[13],在受到数据库 攻击时,攻击者并不能依据参数的设置去破解分析 参数字符串的真正含义,通过这种方式的构建避免 了数据库攻击者利用SQL语句调用执行和破译数据 信息,进而确保了云端数据库的安全性。

4) 服务器权限设置通过终端服务器和云端数据库服务器的配置设 定完成对服务器权限设置,在权限设置过程中依据用户存储信息重要性权限的最小值进行设置[14],即终端管理的R o t权限分配给对应的数据存储用户,同时,在云端数据库存储的编码权限进行集中管理,数据库的访问需要通过复杂的密码进行验证。

2对称参数明文加解密2.存储加密对于云端数据库在存储数据信息时,通过对称 参数明文加密和重构的方式利用指定编码(NnCcVvC)对数据存储前进行加密编码[15],参数编 码和重构方式如图1所示。

丨加密数据I校验编码1|〇(0校验)|〇(0校验)|加密数据I校验编码2|〇(尾校验)| ll r l;i^l i l i i i i|端序64bit |端序32bit|无字符串|有字符串|端序Mbit丨端序32bit|有字ff¥~|图1参数编码和重构在数据信息在云端存储之前都进行如图1的数 据字符串的对称参数加密重组,其中,包含两个C重 构无字符串的0校验,n重构和〃重构段序位置上的 32 b it的校验编码和两个有字符串的0尾校验。

具 体的参数编码如表1所示。

表1参数编码字符串编码含义编码含义N非字符串长编码(64bit以上)c字符串插入非字符串短编码V非字符串长编码n(32bit以上)(64bit以内)C非字符串插入v非字符串短编码(32bit以内)由表1可见,字符串与非字符串的编码值均匀 的分布在数据信息重组中。

由于云端存储库面对众 多的用户上传数据信息,则避免数据加密的校验值 存在相同情况,本研究中增加了用户自定义n重构 的校验编码1和r重构的校验编码2。

为了利用校验 编码在字符串对数据加密更方便的被编辑,采用数 据复杂度的固定值求余的方式生成的以防止非法数 据值输入对云端存储的窃取。

依据对称加密算法对指定key进行加密[16],其中 key值可以根据不同的存储数据类型进行替换,本研 究中利用的key值为j%N&#H*具体的云端存储 数据加密流程如图2所示。

2.2存储解密针对云端存储数据在导出过程中的解密同样采-183-《电子设计工程》2017年第23期图2云端存储数据加密流程用非整数的形式,这样可以避免整数后附加攻击性 的注入式SQL语句并且防止了除用户外的权限ID 访问云端数据库。

具体的解密流程如下:Step.1:利用对称参数加密逆向解密;Step.2:解密后的数据字符串进行如图1所示的 尾校验;Step.3:将各校验编码和加密字符串校验编码进 行对比,若校验编码相同则解密成功,若不相同则说 明数据解密后的字符串为非法访问,即可判断访问 来自于外部攻击,返回0校验。

数据解密实质上是对数据加密过程的逆操作,具体操作流程如图3所示。

图3云端存储数据解密流程3实验结果为验证本研究提出的针对注入式SQL的对称参 数加密可靠性,实验利用合肥城市云数据中心开发 了一个测试网站,该网站在RJS集成运行环境下,结 合Javascript、PH P和html等语言进行源代码的编写。

采用SQLMAP和SSQLInjection作为漏洞测试工 具,使用上述对称参数明文加解密对云端存储进行 漏洞测试,结果如下:master static function decode($str){$str=pack(‘strval($str),);$block=mcrpyt_get_block_size(‘strval’,’str’);$str=str_repeat(chr($pad));retyrn bin4hex(enrypt($str),strlen($str%$block));}从结果中明显发现云端存储存在3种攻击方 式:’1= 1'sleep和UNION。

相关文档
最新文档