web应用sql注入漏洞检测工具的设计与实现

web应用sql注入漏洞检测工具的设计与实现

ID:31365917

大小:108.50 KB

页数:6页

时间:2019-01-09

web应用sql注入漏洞检测工具的设计与实现_第1页
web应用sql注入漏洞检测工具的设计与实现_第2页
web应用sql注入漏洞检测工具的设计与实现_第3页
web应用sql注入漏洞检测工具的设计与实现_第4页
web应用sql注入漏洞检测工具的设计与实现_第5页
资源描述:

《web应用sql注入漏洞检测工具的设计与实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、Web应用SQL注入漏洞检测工具的设计与实现  【摘要】由于Web应用系统的开发周期较短,同时开发人员安全编程意识不足,Web应用程序会存在漏洞。因此,检测Web应用系统的安全性是安全领域的亟待解决的问题。SQL注入漏洞检测工具模拟黑客攻击的方式,采用网络爬虫技术建立需检测的URL库,依据SQL注入模板精心构造URL,并从根据浏览器返回信息,判定是否存在SQL注入点。可以提前意识到Web应用存在的漏洞,并及时修补,降低系统受攻击的风险,是有效的Web安全防护手段。  【关键词】SQL注入;漏洞检测;Web安全  【

2、中图分类号】TP311  1引言  采用B/S架构,并通过HTTP或HTTPS协议提供访问的应用服务统称为Web应用。目前,几乎所有政府、通信、证券、银行以及电子商务都支持在线交易和查询服务,包括个人账户、用户信息、交易记录等在内的用户的敏感信息,都通过Web应用系统存储在数据库中,一旦数据被盗取或篡改,都会造成巨大损失。为降低系统受攻击的风险,可利用Web应用安全漏洞扫描技术,可以实现在线的Web应用健康检查,提醒网站管理员进行修补,是效果好的Web安全防护手段。  2Web应用中常见漏洞攻击  Web6应用大多

3、涉及服务器端的动态处理,同时,开发人员可能在开发过程中疏忽参数的输入检查,因此会出现各种Web应用安全问题,会产生相关漏洞,例如文件包含漏洞,目录遍历漏洞,信息泄露漏洞和SQL注入漏洞给攻击者留下可乘之机。  由于SQL注入漏洞利用Web应用开放的端口,通常防火墙等设备无法检测到,所以其隐蔽性高,如果攻击者不留下痕迹,或者管理员没有查看数据库日志的习惯,基本不会发现。  根据美国国家漏洞数据库(NVD)的统计,SQL注入在针对Web应用攻击手段中名列榜首,是互联网危害最大的安全漏洞。SQL注入攻击的几个过程。  (

4、1)判断Web应用是否可以进行SQL注入。如果URL仅是对静态网页的访问,不存在SQL注入问题。只有存在数据库动态查询请求的URL,才可能存在SQL注入,如:http://www.***.cn/web.jsp?id=36,其中id=36表示数据库查询变量。  (2)寻找SQL注入点。完成带参URL的查找后,通过构造一些特殊SQL语句,替换原有的URL参数值,再根据浏览器返回信息,判断该URL是否为SQL注入点。  (3)猜解用户名和密码。软件开发人员设计的数据库表名、字段名通常是有规律可循的。通过构建SQL语句在数

5、据库中查找表名、字段名、用户名和密码的长度等内容。  (4)寻找Web系统管理后台入口。通常Web系统后台管理的界面不向普通用户开放,要寻找到后台的登录路径,可以利用扫描工具,测试可能的后台入口地址进行。6  (5)实施入侵和破坏。成功登录管理系统后,接下来就可以任意进行读写,篡改网页、木马上传、修改、泄漏用户信息等,并进一步入侵数据库服务器。  由于大多数Web应用检测软件成本较高,不适合中小型网站,所以需要一种简单方便的网站检测服务。该漏洞检测工具针对MySQL数据库服务器,对用户提交的URL进行安全检测,对漏

6、洞划分不同的危险等级,发现问题后显示危险URL,不显示其他敏感信息。  3SQL注入漏洞检测工具的设计  3.1SQL注入漏洞检测方法  可以采用模仿黑客攻击的方法来检测是否存在SQL注入漏洞,与SQL注入攻击的步骤类似,如图1所示。  (1)在检测过程中,采用网络爬虫技术,先将整个网站的所有网页抓取完成。将重复的URL以及链接到被检测网站外的URL剔除后,存入网页URL数据库。  (2)访问网页URL的数据库,获得一条URL。  (3)对网页URL数据库中存储的URL进行检测,检测的步骤同攻击过程。为了提高检测的

7、效率,采用模板参数填充的方法。可需要根据实际情况对表1所示的SQL注入模板的参数进行填充,以构成可执行的SQL攻击语句。其中u表示URL;%s表示SQL语句的条件部分;~u表示将URL中SQL语句的条件取反。如果构建的SQL语句未通过URL检测,那么该URL不存在SQL注入漏洞,转步骤2。如果构建的SQL语句通过URL检测,那么存在SQL注入漏洞,转步骤4。6  (4)以MySQL4及以上版本为例,列出检测信息。构建SQL语句,进一步获取基本信息,猜解数据和列名,并读取和写入文件。  (5)如果网页URL的数据库的

8、每一条URL都检测过后,算法终止。  3.2整体架构图  注入漏洞检测工具的基础构架如图2所示。分为三个功能模块:(1)网络爬虫:创建网页URL数据库;(2)SQL注入检测引擎:采用图2所示的流程进行SQL注入漏洞检测;(3)公共组件:支持前两个模块相应功能的实现。  4SQL注入检测引擎的实现  4.1SQL注入漏洞扫描  1)构造不同类型的payload

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。