- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Web应用SQL注入漏洞检测工具的设计与实现.doc
Web应用SQL注入漏洞检测工具的设计与实现
【 摘 要 】 由于Web应用系统的开发周期较短,同时开发人员安全编程意识不足,Web应用程序会存在漏洞。因此,检测Web应用系统的安全性是安全领域的亟待解决的问题。SQL注入漏洞检测工具模拟黑客攻击的方式,采用网络爬虫技术建立需检测的URL库,依据SQL注入模板精心构造URL,并从根据浏览器返回信息,判定是否存在SQL注入点。可以提前意识到Web应用存在的漏洞,并及时修补,降低系统受攻击的风险,是有效的Web安全防护手段。
【 关键词 】 SQL注入;漏洞检测;Web安全
【 中图分类号 】 TP311
1 引言
采用B/S架构,并通过HTTP或HTTPS协议提供访问的应用服务统称为Web应用。目前,几乎所有政府、通信、证券、银行以及电子商务都支持在线交易和查询服务,包括个人账户、用户信息、交易记录等在内的用户的敏感信息,都通过Web应用系统存储在数据库中,一旦数据被盗取或篡改,都会造成巨大损失。为降低系统受攻击的风险,可利用Web应用安全漏洞扫描技术,可以实现在线的Web应用健康检查,提醒网站管理员进行修补,是效果好的Web安全防护手段。
2 Web 应用中常见漏洞攻击
Web 应用大多涉及服务器端的动态处理,同时,开发人员可能在开发过程中疏忽参数的输入检查,因此会出现各种Web 应用安全问题,会产生相关漏洞,例如文件包含漏洞,目录遍历漏洞,信息泄露漏洞和SQL 注入漏洞给攻击者留下可乘之机。
由于SQL 注入漏洞利用Web应用开放的端口,通常防火墙等设备无法检测到,所以其隐蔽性高,如果攻击者不留下痕迹,或者管理员没有查看数据库日志的习惯,基本不会发现。
根据美国国家漏洞数据库(NVD)的统计,SQL注入在针对Web应用攻击手段中名列榜首,是互联网危害最大的安全漏洞。SQL注入攻击的几个过程。
(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语句在数据库中查找表名、字段名、用户名和密码的长度等内容。
(4)寻找Web系统管理后台入口。通常Web系统后台管理的界面不向普通用户开放,要寻找到后台的登录路径,可以利用扫描工具,测试可能的后台入口地址进行。
(5)实施入侵和破坏。成功登录管理系统后,接下来就可以任意进行读写,篡改网页、木马上传、修改、泄漏用户信息等,并进一步入侵数据库服务器。
由于大多数Web应用检测软件成本较高,不适合中小型网站,所以需要一种简单方便的网站检测服务。该漏洞检测工具针对MySQL数据库服务器,对用户提交的URL进行安全检测,对漏洞划分不同的危险等级,发现问题后显示危险URL,不显示其他敏感信息。
3 SQL注入漏洞检测工具的设计
3.1 SQL注入漏洞检测方法
可以采用模仿黑客攻击的方法来检测是否存在SQL注入漏洞,与SQL注入攻击的步骤类似,如图1所示。
(1)在检测过程中,采用网络爬虫技术,先将整个网站的所有网页抓取完成。将重复的 URL以及链接到被检测网站外的URL剔除后,存入网页URL数据库。
(2)访问网页URL的数据库,获得一条URL。
(3)对网页URL数据库中存储的URL进行检测,检测的步骤同攻击过程。为了提高检测的效率,采用模板参数填充的方法。可需要根据实际情况对表1所示的SQL 注入模板的参数进行填充,以构成可执行的SQL攻击语句。其中u表示URL;%s表示SQL语句的条件部分;~u表示将URL中SQL语句的条件取反。如果构建的SQL语句未通过URL检测,那么该URL不存在SQL注入漏洞,转步骤2。如果构建的SQL语句通过URL检测,那么存在SQL注入漏洞,转步骤4。
(4)以MySQL4及以上版本为例,列出检测信息。构建SQL语句,进一步获取基本信息,猜解数据和列名,并读取和写入文件。
(5)如果网页URL的数据库的每一条URL都检测过后,算法终止。
3.2 整体架构图
注入漏洞检测工具的基础构架如图2所示。分为三个功能模块:(1)网络爬虫:创建网页URL数据库;(2)SQL注入检测引擎:采用图2所示的流程进行SQL注入漏洞
您可能关注的文档
最近下载
- PICC护士进修汇报心得ppt.pptx
- 一次性使用止血套环产品技术要求北京中诺恒康生物科技.docx
- Q/GDW 13238.3—2018 10kV电力电缆采购标准(第3部分:10kV三芯电力电缆-专用技术规范).pdf
- 佛山事业单位真题2023.docx VIP
- 〖地理〗亚洲及欧洲——河流课件-2024-2025学年七年级地理下学期(湘教版2024).pptx VIP
- 水文地质学基础,课件(15章全,共400页).ppt
- 绿城企业文化系列读本绿城管理者论.doc
- 2025年轻人文娱消费趋势图鉴.docx VIP
- GBT17395-2008无缝钢管尺寸外形重量及允许偏差.pdf VIP
- 右正中神经电刺激早期干预对颅脑损伤昏迷患者的临床疗效观察.pdf VIP
文档评论(0)