失效链接处理 |
SQL注入攻击与防御 第2版 PDF 下载
转载自:http://www.jb51.net/books/519366.html
本站整理下载:版权归出版社和原作者所有,链接已删除,请购买正版
用户下载说明:
电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
http://product.dangdang.com/25299528.html
相关截图:
资料简介: SQL注入攻击是一种已经长期存在,但近年来日益增长的安全威胁,本书致力于深入探讨SQL注入问题。本书前一版荣获2009Bejtlich*图书奖,第2版对内容做了全面更新,融入了一些*的研究成果,包括如何在移动设备上利用SQL注入漏洞,以及客户端SQL注入等。本书由一批SQL注入专家编写,他们对Oracle、SQLServer、MySQL和PostgreSQL数据库平台的SQL注入问题具有独到的见解。
主要内容 ● 发现、确认和自动发现SQL注入漏洞 ● 通过SQL注入利用漏洞 ● 在代码中发现SQL注入的方法和技巧 ● 利用操作系统的漏洞 ● 在代码层和平台层防御SQL注入攻击
● 确定是否已经遭到SQL注入攻击 第1章 什么是SQL注入 1 1.1 概述 1 1.2 理解Web应用的工作原理 2 1.2.1 一种简单的应用架构 3 1.2.2 一种较复杂的架构 4 1.3 理解SQL注入 5 1.4 理解SQL注入的产生过程 10 1.4.1 构造动态字符串 10 1.4.2 不安全的数据库配置 16 1.5 本章小结 18 1.6 快速解决方案 18 1.7 常见问题解答 19 第2章 SQL注入测试 21 2.1 概述 21 2.2 寻找SQL注入 21 2.2.1 借助推理进行测试 22 2.2.2 数据库错误 28 2.2.3 应用程序的响应 39 2.2.4 SQL盲注 42 2.3 确认SQL注入 45 2.3.1 区分数字和字符串 46 2.3.2 内联SQL注入 46 2.3.3 终止式SQL注入 52 2.3.4 时间延迟 59 2.4 自动寻找SQL注入 60 2.5 本章小结 68 2.6 快速解决方案 68 2.7 常见问题解答 69 第3章 复查代码中的SQL注入 71 3.1 概述 71 3.2 复查源代码中的SQL注入 71 3.2.1 危险的编码行为 73 3.2.2 危险的函数 78 3.2.3 跟踪数据 81 3.2.4 复查Android应用程序代码 88 3.2.5 复查PL/SQL和T-SQL代码 93 3.3 自动复查源代码 99 3.3.1 Graudit 100 3.3.2 YASCA 101 3.3.3 Pixy 101 3.3.4 AppCodeScan 102 3.3.5 OWASP LAPSE 项目102 3.3.6 Microsoft SQL注入源代码分析器 103 3.3.7 CAT.NET 103 3.3.8 RIPS——PHP脚本漏洞的静态源代码分析器 103 3.3.9 CodePro AnalytiX104 3.3.10 Teachable Static Analysis Workbench 104 3.3.11 商业源代码复查工具 104 3.3.12 Fortify源代码分析器105 3.3.13 Rational AppScan Source Edition 106 3.3.14 CodeSecure 106 3.3.15 Klocwork Solo 106 3.4 本章小结 107 3.5 快速解决方案 107 3.6 常见问题解答 108 第4章 利用SQL注入 111 4.1 概述 111 4.2 理解常见的漏洞利用技术 112 4.2.1 使用堆叠查询 113 4.2.2 在Web应用程序中利用Oracle漏洞 114 4.3 识别数据库 114 4.3.1 非盲跟踪 115 4.3.2 盲跟踪 119 4.4 使用UINON语句提取数据 120 4.4.1 匹配列 121 4.4.2 匹配数据类型 122 4.5 使用条件语句 126 4.5.1 方法1:基于时间 126 4.5.2 方法2:基于错误 130 4.5.3 方法3:基于内容 131 4.5.4 处理字符串 131 4.5.5 扩展攻击 133 4.5.6 利用SQL注入错误 134 4.5.7 Oracle中的错误消息 135 4.6 枚举数据库模式 139 4.6.1 SQL Server 139 4.6.2 MySQL 143 4.6.3 PostgreSQL 146 4.6.4 Oracle 147 4.7 在INSERT查询中实施注入攻击 150 4.7.1 第一种情形:插入用户规定的数据 150 4.7.2 第二种情形:生成INSERT错误 153 4.7.3 其他情形 155 4.8 提升权限 155 4.8.1 SQL Server 155 4.8.2 在未打补丁的服务器上提升权限 160 4.8.3 SYS.DBMS_CDC_PUBLISH162 4.9 窃取哈希口令 164 4.9.1 SQL Server 164 4.9.2 MySQL 165 4.9.3 PostgreSQL 166 4.9.4 Oracle 166 4.10 带外通信 169 4.10.1 e-mail 169 4.10.2 HTTP/DNS 172 4.10.3 文件系统 173 4.11 自动利用SQL注入 179 4.11.1 Sqlmap 180 4.11.2 Bobcat 181 4.11.3 BSQL 181 4.11.4 其他工具 183 4.12 本章小结 183 4.13 快速解决方案 184 4.14 常见问题解答 185 第5章 SQL盲注利用 187 5.1 概述 187 5.2 寻找并确认SQL盲注 188 5.2.1 强制产生通用错误 188 5.2.2 注入带副作用的查询 188 5.2.3 拆分与平衡 189 5.2.4 常见的SQL盲注场景 191 5.2.5 SQL盲注技术 191 5.3 使用基于时间的技术 200 5.3.1 延迟数据库查询 200 5.3.2 基于时间的推断应考虑的问题 207
5.4 使用基于响应的技术 207 |