




已阅读5页,还剩28页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
sql盲注解决方案篇一:景安安全培训-SQL 注入漏洞-盲注SQL 注入漏洞 一漏洞说明 1. SQL 注入定义 SQL 注入攻击(SQL Injection) ,简称注入攻击,SQL注入是 web开发中最常见的一种安全漏洞。 SQL注入漏洞可以用来从数据库获取敏感信息,或者利用数据库的特性执行添加用户,导出文件等一系列恶意操作,甚至有可能获取数据库乃至系统最高权限 注入漏洞原理 由于程序没有过滤用户的输入,攻击者通过响服务器提交恶意的 SQL查询语句,应用程序接收后错误的将攻击者的输入作为原始 SQL查询语句的一部分执行,导致改变了程序原始的 SQL查询逻辑,额外的执行了攻击者构造的SQL查询语句 注入实例: 假设用户登录时其中一个 SQL语句为:SELECT FROM tablogins tb WHERE =“ “ AND passwd=“ “;引号” ”内部,既是是我们登录时填写的用户名或密码。假如用户名、密码框内我们输入:1”or”1”=”1 或者 1”or”1”=”1” - MYSql 中的执行结果分别如下: (1)输入 1”or”1”=”1,此语句永远都能正确执行,用户轻易骗过系统,获取合法身份。 (2)输入 1”or”1”=”1” - ,用户名中输入此语句,不管语句后有什么条件,都会正确执行,获取合法身份。 二SQL 注入的位置 无论是内网环境还是外网环境(互联网) ,B/S 架构的Web应用(以下指网站)都直接或者间接地受到各种类型的Web攻击的影响。 对于后台数据库来说,以 SQL注入攻击危害最为普遍,由于网站服务端语言自身的缺陷与程序员编写代码的安全意识不足,攻击者可以将恶意 SQL语句注入到正常的数据库操作指令中去,从而使该恶意 SQL语句在后台数据库中被解析执行。 在 SQL注入攻击之前,首先要找到网站中各类与数据库形成交互的输入点。通常情况下,一个网站的输入点包括: 1. 2. 3. 4. 5. 表单提交,主要是 POST请求,也包括 GET请求。 URL参数提交,主要为 GET请求参数。 Cookie参数提交。 HTTP请求头部的一些可修改的值,比如Referer、User_Agent 等。 一些边缘的输入点,比如.mp3文件的一些文件信息等。 服务端从客户端直接或间接获取数据的过程都是一次输入过程, 无论直接或间接,默认情况下输入的数据都应该认为是不安全的。 上面列举的几类输入点,只要任何一点存在过滤不严,过滤缺陷等问题, 都有可能发生 SQL注入攻击。 大多数情况下,SQL 注入的过程都是由工具完成的, 其中包括大批量注入工具的使用。 三SQL 注入的危害 这些危害包括但不局限于: ? ? ? ? ? ? 数据库信息泄漏:数据库中存放的用户的隐私信息的泄露。 网页篡改:通过操作数据库对特定网页进行篡改。网站被挂马,传播恶意软件:修改数据库一些字段的值,嵌入网马链接,进行挂马攻击。 数据库被恶意操作:数据库服务器被攻击,数据库的系统管理员帐户被窜改。 服务器被远程控制,被安装后门。经由数据库服务器提供的操作系统支持,让黑客得以修改或控制操作系统。 破坏硬盘数据,瘫痪全系统。 四常见的 SQL注入测试工具 ? ? Pangolin , /Products/scrawlr/ 五SQL 注入漏洞的解决方案解决 SQL注入问题的关键是对所有可能来自用户输入的数据进行严格的检查、对数据库配置使用最小权限原则。1. 所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到 SQL语句中。当前几乎所有的数据库系统都提供了参数化 SQL语句执行接口,使用此接口可以非常有效的防止 SQL注入攻击。 2. 对进入数据库的特殊字符(“尖括号等)进行转义处理,或编码转换。 3. 严格限制变量类型,比如整型变量就采用 intval()函数过滤,数据库中的存储字段必须对应为 int型。 4. 数据长度应该严格规定,能在一定程度上防止比较长的 SQL注入语句无法正确执行。 5. 网站每个数据层的编码统一,建议全部使用 UTF-8编码,上下层编码不一致有可能导致一些过滤模型被绕过。6. 严格限制网站用户的数据库的操作权限,给此用户提供仅仅能够满足其工作的权限,从而最大限度的减少注入攻击对数据库的危害。 7. 避免网站显示 SQL错误信息,比如类型错误、字段不匹配等,防止攻击者利用这些错误信息进行一些判断。8. 在网站发布之前建议使用一些专业的 SQL注入检测工具进行检测,及时修补这些 SQL注入漏洞。 9. 确认 PHP配置文件中的 magicquotesgpc选项保持开启 研发部测试组 XX 年 10月 14日 篇二:SQL 深盲注入技术(Deep Blind SQL Injection)SQL 深盲注入技术(Deep Blind SQL Injection) SQL 深盲注入技术已在多篇文章中被描述.如果注入点是完全盲目的,那么提取数据库数据 的唯一方法就是基于时间差的攻击,比如 WAITFOR DELAY , BENCHMARK等等. 现在已知有 2种方法来读取数据, 1. 逐字节读取数据 2. 在字符模式下通过二进制搜索算法来读取数据 这 2种方法都有“一个请求-一个响应”的限制,并且平均每一个字符需要发送 6个 请求给服务器。 在深盲 SQL注入中读取数据比传统盲注更加复杂,但是,它仍然是有可能获取数据的,而且发送给服务器的请求数有可能会减少 66%,因为获取每个字符只需要发送 2次请求而不是 6 次。 深盲 SQL注入在 MS SQL服务器上工作良好,也可能可以工作在其它数据库上,比如 ORACLE, PostgreSQL 等等。 这种一个请求收到多个响应的注入方式是基于时间差来完成的。例如,如果字符的前半字节是 6,那么数据库将等待 12秒,如果后半字节是 1的话将等待 2秒。攻击者应该储存服务器的响应次数并且把响应以每 2次为单位进行分割来理解。结果,在 2个请求中我们得到 0x61,也就是a。很明显,根据情况使用比 2更大或者更小的单位来分割响应信息 也是可以的。 实例 对 SQL服务器攻击的一个功能部分: 程序代码 程序代码 DECLARE x as int; DECLARE w as char(6); SET x=ASCII(SUBSTRING(_varbintohexstr(CAST(QUERY as varbinary(8000),POSITION,1); IF x97 SET x=x-87 ELSE SET x=x-48; SET w=0:0:+CAST(x*SECONDS as char); WAITFOR DELAY w QUERY是你想获得的数据这些数据可以使变量比如USER,函数比如 db_name(2)或者是返 回一行和一列的 Select声明。 POSITION 是欲读取的半字节。你需要添加 2来替换 SQL服务器响应开始部分字串的 “0x” 。SECONDS是等待时间的乘数。等待时能以毫秒计,但是也可以使用分数计算比如 等待延 时0:0: 。 相同的代码可以以不同的方式表达,有少许不同、更短但是更难读。 程序代码 程序代码 DECLARE x as int; DECLARE w as char(6); SET x=ASCII(SUBSTRING(_varbintohexstr(CAST(QUERY as varbinary(8000),POSITION,1); SET w=0:0:+CAST(x+(x WAITFOR DELAY w 实际攻击 总的来说深盲 SQL攻击还是不适合手动攻击,明智的做法是采用自动攻击,这些功能已经 在“BSQL Hacker”得以实现。 限制 ? 如果连接时间太慢或者其它的原因导致服务器不可预知的响应次数,软件将不稳定 ? 大多数的服务器脚本和数据库连接都有大约 30秒的连接超时限制(虽然对于使用 2元 2次乘法(?)来枚举一个半字节来说 30秒钟已经足够,但是为了增加在其它环境中结 果的稳定性,可能需要更长的超时限制,一般建议设置为 60秒) 篇三:常见安全漏洞的处理及解决方法 1目录 1 Web层安全漏洞 .4 跨站点脚本编制 .4 危害 . 4 整改建议 . 4 基于 DOM 的跨站点脚本编制 . 4 危害.4 整改建议 . 4 多供应商 Java Servlet 容器跨站点脚本编制 . 4 危害. 4 整改建议 .5 SQL 注入 .5 危害. 5 整改建议 .5 SQL 盲注 .5 危害. 5 整改建议 .5 启用了不安全的 HTTP 方法 . 6 危害. 6 整改建议 .6 HTTP 参数污染攻击 .6 危害. 6 整改建议 .6 文件目录遍历 . 6 危害. 6 整改建议 .6 Http 请求头的额外的回车换行符注入 .7 危害. 7 整改建议 .7 脚本代码暴露 . 7 危害. 7 整改建议 .7 Padding Oracle Vulnerability .7 危害. 7 整改建议 .7 Apache mod_isapi Dangling Pointer . 8 危害. 8 解决方案 .8 Apache http server的拒绝服务漏洞 .8 危害. 8 安全建议 .8 FCKeditor 任意文件上传漏洞 . 8 危害. 8整改建议 .8 Apache mod_rewrite模块单字节缓冲区溢出漏洞 9 危害. 9 整改建议 .9 已解密的登录请求 .9 危害. 9 整改建议 .9 目录列表 . 9 危害. 9 整改建议 .9 Microsoft FrontPage 目录列表 . 10 危害. 10 整改建议 .10 Jquery XSS . 10 危害. 10 整改建议 .10 会话固定 . 10 危害. 10 整改建议 .10 CSRF 跨站请求伪造 . 11 危害. 11 整改建议 .11 Url 重定向漏洞 .11 危害. 11 整改建议 .11 IIS 短文件/文件夹漏洞 . 12 危害. 12 整改建议 .12 HTML 敏感信息泄露 . 12 危害. 12 整改建议 .12 通过框架钓鱼 .13 危害.13 整改建议 .13 主机允许从任何域进行 flash访问 .13 危害. 13 整改建议 .13 信息泄露 . 13 危害. 13 整改建议 .13 文件上传漏洞 .14 危害. 14 整改建议 .14 2 文件包含 . 14 危害.14 整改建议 .14 错误的页面信息 .14 危害. 14 整改建议 .14 应用层.15网站木马.15 危害. 15 整改建议 .15 网站暗链.15 危害. 15 整改建议 .15 页面篡改.16 危害. 16 整改建议 .16 后台管理.16 危害. 16 整改建议 . 16 攻击痕迹.17 危害. 17 整改建议 .17 危险端口.17 危害. 17 整改建议 .17 中间件.17 危害.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025贷款借款合同书范本
- 2025电子产品销售代理合同范本
- 楼道扶梯工程合同范本
- 宠物无偿领养合同范本
- 2025股权转让合同示范范文
- 2025标准购房合同协议书写才有效
- 装修换租房合同范本
- 2025汽车租赁合同及车辆安全管理规范
- 易装修合同范本
- 铁矿购销石合同范本
- 2025年匹克球裁判试题及答案
- 2025秋苏教版科学三年级上册教学设计(附目录)
- 2025国家能源投资集团有限责任公司审计中心社会招聘12人笔试参考题库附带答案详解(10套)
- 《初中必读名著导读:《水浒传》核心知识点与深度解读》
- 深圳微利房管理办法
- 诊断学血管检查
- 大连市甘井子区社区工作者招聘笔试真题2024
- 生产安全会议纪要
- 哪个团队收益大+课件2025-2026学年+北师大版(2024)八年级数学上册
- 智慧校园建设“十五五”发展规划
- GB/T 17622-2008带电作业用绝缘手套
评论
0/150
提交评论