找回密码
 注册

QQ登录

只需一步,快速开始

搜索
[友情小站] 男士宝库 在线ASMR视频站
查看: 21449|回复: 91

SQL注入攻击与防御

  [复制链接]

SQL注入攻击与防御

  [复制链接]
  • TA的每日心情
    开心
    6 小时前
  • 签到天数: 2684 天

    连续签到: 53 天

    [LV.Master]伴坛终老

    注册时间
    2012-9-3
    最后登录
    2024-11-29

    2万

    主题

    6928

    回帖

    3万

    积分

    管理员

    2012年到2024年,感谢各位会员朋友的支持!

    推广达人宣传达人突出贡献优秀版主荣誉管理论坛元老vip会员

    QQ
    admin
    注册时间
    2012-9-3
    最后登录
    2024-11-29

    2万

    主题

    6928

    回帖

    3万

    积分

    管理员

    2012年到2024年,感谢各位会员朋友的支持!

    推广达人宣传达人突出贡献优秀版主荣誉管理论坛元老vip会员

    QQ
    2013-2-19 12:10:39 | 显示全部楼层 |阅读模式

    SQL注入攻击与防御

    SQL注入攻击与防御


    编辑推荐唯一一本关于SQL注入攻击与防御的专业书籍
    理解,发现、利用和防御SQL注入的最佳指导
    见解精辟,丰富、精彩的SQL注入示例及防御策略
    作者多年长期实践经验的总结

    内容简介SQL注入是Internet上最危险、最有名的安全漏洞之一,本书是目前唯一一本专门致力于讲解SQL威胁的图书。本书作者均是专门研究SQL注入的安全专家,他们集众家之长,对应用程序的基本编码和升级维护进行全面跟踪,详细讲解可能引发SQL注入的行为以及攻击者的利用要素,并结合长期实践经验提出了相应的解决方案。针对SQL注入隐蔽性极强的特点,本书重点讲解了SQL注入的排查方法和可以借助的工具,总结了常见的利用SQL漏洞的方法。另外,本书还专门从代码层和系统层的角度介绍了避免SQL注入的各种策略和需要考虑的问题。
      本书主要内容
      SQL注入一直长期存在,但最近有所增强。本书包含所有与SQL注入攻击相关的、当前已知的信息,凝聚了由本书作者组成的、无私奉献的SQL注入专家团队的所有深刻见解。
      什么是SQL注入?理解它是什么以及它的基本原理
      查找、确认和自动发现SQL注入
      查找代码中SQL注入时的提示和技巧
      使用SQL注入创建利用
      通过设计来避免由SQL攻击所带来的危险
    作者简介凭借这本《SQL注入攻击与防御》,测试人员现在有了一把弥补Internet上各种分散式教程不足的利器。阅读本书您可以学会识别并利用各种平台上不同种类的SQL注入缺陷。   ——Devon Kearna,安全分析师目录第1章 什么是SQL注入 1
    1.1 概述 2
    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 概述 22
    2.2 寻找SQL注入 22
    2.2.1 借助推理进行测试 22
    2.2.2 数据库错误 29
    2.2.3 应用响应 38
    2.2.4 SQL盲注 42
    2.3 确认SQL注入 45
    2.3.1 区分数字和字符串 46
    2.3.2 内联SQL注入 46
    2.3.3 终止式SQL注入 51
    2.3.4 时间延迟 59
    2.4 自动寻找SQL注入 60
    2.5 本章小结 68
    2.6 快速解决方案 68
    2.7 常见问题解答 69

    第3章 复查代码中的SQL注入 71
    3.1 概述 72
    3.2 复查源代码中的SQL注入 72
    3.2.1 危险的编码行为 74
    3.2.2 危险的函数 79
    3.2.3 跟踪数据 82
    3.2.4 复查PL/SQL和T-SQL代码 88
    3.3 自动复查源代码第1章 什么是SQL注入 94
    3.3.1 YASCA 96
    3.3.2 Pixy 96
    3.3.3 AppCodeScan 97
    3.3.4 LAPSE 97
    3.3.5 SWAAT 97
    3.3.6 Microsoft SQL注入源代码分析器 98
    3.3.7 CAT.NET 98
    3.3.8 商业源代码复查工具 98
    3.3.9 Ounce 99
    3.3.10 Fortify源代码分析器 100
    3.3.11 CodeSecure 100
    3.4 本章小结 100
    3.5 快速解决方案 101
    3.6 常见问题解答 102

    第4章 利用SQL注入 105
    4.1 概述 106
    4.2 理解常见的利用技术 107
    4.3 识别数据库 108
    4.3.1 非盲跟踪 109
    4.3.2 盲跟踪 112
    4.4 使用UINON语句提取数据 113
    4.4.1 匹配列 114
    4.4.2 匹配数据类型 115
    4.5 使用条件语句 119
    4.5.1 方法1:基于时间 120
    4.5.2 方法2:基于错误 122
    4.5.3 方法3:基于内容 123
    4.5.4 处理字符串 123
    4.5.5 扩展攻击 125
    4.5.6 利用SQL注入错误 126
    4.5.7 Oracle中的错误消息 128
    4.6 枚举数据库模式 131
    4.6.1 SQL Server 131
    4.6.2 MySQL 136
    4.6.3 Oracle 139
    4.7 提升权限 142
    4.7.1 SQL Server 142
    4.7.2 Oracle 147
    4.8 窃取哈希口令 148
    4.8.1 SQL Server 149
    4.8.2 MySQL 150
    4.8.3 Oracle 151
    4.9 带外通信 154
    4.9.1 E-mail 154
    4.9.2 HTTP/DNS 157
    4.9.3 文件系统 158
    4.10 自动利用SQL注入 161
    4.10.1 Sqlmap 161
    4.10.2 Bobcat 164
    4.10.3 BSQL 164
    4.10.4 其他工具 166
    4.11 本章小结 166
    4.12 快速解决方案 167
    4.13 常见问题解答 168

    第5章 SQL盲注利用 171
    5.1 概述 172
    5.2 寻找并确认SQL盲注 173
    5.2.1 强制产生通用错误 173
    5.2.2 注入带副作用的查询 173
    5.2.3 拆分与平衡 173
    5.2.4 常见的SQL盲注场景 175
    5.2.5 SQL盲注技术 176
    5.3 使用基于时间的技术 183
    5.3.1 延迟数据库查询 183
    5.3.2 基于时间推断的考虑 188
    5.4 使用基于响应的技术 189
    5.4.1 MySQL响应技术 189
    5.4.2 SQL Server响应技术 191
    5.4.3 Oracle响应技术 192
    5.4.4 返回多位信息 194
    5.5 使用非主流通道 195
    5.5.1 数据库连接 195
    5.5.2 DNS渗漏 196
    5.5.3 E-mail渗漏 200
    5.5.4 HTTP渗漏 200
    5.6 自动SQL盲注利用 202
    5.6.1 Absinthe 203
    5.6.2 BSQL Hacker 204
    5.6.3 SQLBrute 206
    5.6.4 Sqlninja 207
    5.6.5 Squeeza 208
    5.7 本章小结 209
    5.8 快速解决方案 209
    5.9 常见问题解答 210

    第6章 利用操作系统 213
    6.1 概述 214
    6.2 访问文件系统 215
    6.2.1 读文件 215
    6.2.2 写文件 229
    6.3 执行操作系统命令 237
    6.4 巩固访问 243
    6.5 本章小结 245
    6.6 快速解决方案 245
    6.7 常见问题解答 246
    6.8 尾注 247

    第7章 高级话题 249
    7.1 概述 250
    7.2 避开输入过滤器 250
    7.2.1 使用大小写变种 250
    7.2.2 使用SQL注释 250
    7.2.3 使用URL编码 251
    7.2.4 使用动态的查询执行 253
    7.2.5 使用空字节 254
    7.2.6 嵌套剥离后的表达式 255
    7.2.7 利用截断 255
    7.2.8 避开自定义过滤器 257
    7.2.9 使用非标准入口点 257
    7.3 利用二阶SQL注入 259
    7.4 使用混合攻击 263
    7.4.1 修改捕获的数据 263
    7.4.2 创建跨站脚本 263
    7.4.3 在Oracle上运行操作系统命令 264
    7.4.4 利用验证过的漏洞 265
    7.5 本章小结 265
    7.6 快速解决方案 266
    7.7 常见问题解答 267

    第8章 代码层防御 269
    8.1 概述 270
    8.2 使用参数化语句 270
    8.2.1 Java中的参数化语句 271
    8.2.2 .NET(C#)中的参数化语句 272
    8.2.3 PHP中的参数化语句 274
    8.2.4 PL/SQL中的参数化语句 275
    8.3 输入验证 275
    8.3.1 白名单 276
    8.3.2 黑名单 277
    8.3.3 Java中的输入验证 278
    8.3.4 .NET中的输入验证 279
    8.3.5 PHP中的输入验证 280
    8.4 编码输出 280
    8.5 规范化 286
    8.6 通过设计来避免SQL注入的危险 289
    8.6.1 使用存储过程 289
    8.6.2 使用抽象层 290
    8.6.3 处理敏感数据 290
    8.6.4 避免明显的对象名 291
    8.6.5 创建数据库Honeypot 292
    8.6.6 附加的安全开发资源 293
    8.7 本章小结 293
    8.8 快速解决方案 294
    8.9 常见问题解答 295

    第9章 平台层防御 297
    9.1 概述 298
    9.2 使用运行时保护 298
    9.2.1 Web应用防火墙 299
    9.2.2 截断过滤器 304
    9.2.3 不可编辑的输入保护与可编辑的输入保护 308
    9.2.4 URL策略/页面层策略 308
    9.2.5 面向方面编程 309
    9.2.6 应用入侵检测系统 310
    9.2.7 数据库防火墙 310
    9.3 确保数据库安全 310
    9.3.1 锁定应用数据 311
    9.3.2 锁定数据库服务器 314
    9.4 额外的部署考虑 316
    9.4.1 最小化不必要信息的泄露 317
    9.4.2 提高Web服务器日志的冗余 320
    9.4.3 在独立主机上部署Web服务器和数据库服务器 320
    9.4.4 配置网络访问控制 321
    9.5 本章小结 321
    9.6 快速解决方案 321
    9.7 常见问题解答 322

    第10章 参考资料 325
    10.1 概述 326
    10.2 SQL入门 326
    10.3 SQL注入快速参考 331
    10.3.1 识别数据库平台 331
    10.3.2 Microsoft SQL Server备忘单 333
    10.3.3 MySQL备忘单 338
    10.3.4 Oracle备忘单 341
    前言十几年前,基于数据库的Web应用刚流行时,几乎所有开发商都忽略了SQL注入漏洞,导致当时大多数网站的登录入口形同虚设。时至今日,Web应用已愈加成熟,安全性也不断得到加强。遗憾的是,针对SQL注入漏洞的各种攻击工具也在推陈出新,不断地向安全管理人员发出新的挑战。如何最大程度地降低SQL注入风险,从根本上实施SQL注入防御,成为网络管理人员和开发人员亟需解决的“烫手山芋”。
      现在网络上关于SQL注入方面的教程比较零散,大多针对某一类具体应用,难以作为预防SQL注入的完整解决方案。本书弥补了这一缺憾!本书作者均是专门研究SQL注入的安全专家,他们集众家之长,对应用程序的基本编码和升级维护进行全程跟踪,详细讲解可能引发SQL,注入的行为以及攻击者的利用要素,并结合长期实践经验提出了相应的解决方案。SOL注入利用的是正常的HTTP服务端口,表面上和正常的Web访问没有差别,隐蔽性极强。针对这种情况,书中重点讲解了SQL注入的排查方法和可以借助的工具,总结了常见的利用SQL注入漏洞的方法。开发人员和系统管理人员在SQL注入防御中扮演着重要角色,因此,书中专门从代码层和系统层角度介绍了避免SQL注入的各种策略和需要考虑的问题。
      全书共l0章,分别介绍了SOL注入的基本概念,如何发现、确认并利用SQL注入和SQL盲注,利用操作系统防御SQL注入,SQL注入的一些高级话题,代码层和平台层防御等知识,书中主要针对的是Microsoft SQL Server、My SQL和Oracle这三大主流数据库。本书注重于实践,涉及的内容也比较前沿,另外,还包含了大量翔实的案例,它们都具有很好的现实指导作用,读者可从中学到最新的攻击和防御技术。
      本书主要由黄晓磊和李化翻译完成,全书由李化统稿。由于本书内容较新、知识面广且译者水平有限,译文中难免存在错误之处,敬请读者批评指正。

    会员在线观看及下载地址:
    游客,如果您要查看本帖隐藏内容请回复



    回复

    使用道具 举报

  • TA的每日心情
    开心
    2017-5-28 07:39
  • 签到天数: 206 天

    连续签到: 1 天

    [LV.7]常住居民III

    30

    主题

    716

    回帖

    30

    积分

    藏宝阁VIP会员(X)

    积分
    30

    vip会员

    2013-2-19 21:19:13 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    227

    回帖

    670

    积分

    高级会员

    积分
    670

    vip会员

    晨曦骄阳

    0

    主题

    227

    回帖

    670

    积分

    高级会员

    积分
    670

    vip会员

    2013-2-20 00:31:57 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    3 天前
  • 签到天数: 374 天

    连续签到: 1 天

    [LV.9]以坛为家II

    7

    主题

    867

    回帖

    835

    积分

    藏宝阁VIP会员

    积分
    835

    vip会员

    小教授

    7

    主题

    867

    回帖

    835

    积分

    藏宝阁VIP会员

    积分
    835

    vip会员

    2013-2-20 15:43:39 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    122

    回帖

    433

    积分

    中级会员

    积分
    433

    vip会员

    l1113945934

    0

    主题

    122

    回帖

    433

    积分

    中级会员

    积分
    433

    vip会员

    2013-3-10 09:22:39 | 显示全部楼层
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    75

    回帖

    184

    积分

    已到期,续费有优惠哦

    积分
    184

    vip会员

    2013-3-15 10:50:46 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2023-11-18 00:03
  • 签到天数: 232 天

    连续签到: 1 天

    [LV.7]常住居民III

    5

    主题

    547

    回帖

    1224

    积分

    藏宝阁VIP会员

    积分
    1224

    vip会员

    lp510589219

    5

    主题

    547

    回帖

    1224

    积分

    藏宝阁VIP会员

    积分
    1224

    vip会员

    2013-4-24 10:30:54 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2023-11-18 00:03
  • 签到天数: 232 天

    连续签到: 1 天

    [LV.7]常住居民III

    5

    主题

    547

    回帖

    1224

    积分

    藏宝阁VIP会员

    积分
    1224

    vip会员

    lp510589219

    5

    主题

    547

    回帖

    1224

    积分

    藏宝阁VIP会员

    积分
    1224

    vip会员

    2013-4-24 10:42:14 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    2021-8-30 22:35
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    2

    主题

    157

    回帖

    176

    积分

    注册会员

    积分
    176

    vip会员

    hnk160

    2

    主题

    157

    回帖

    176

    积分

    注册会员

    积分
    176

    vip会员

    2013-5-23 12:33:26 | 显示全部楼层
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2024-3-3 08:48
  • 签到天数: 21 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    0

    主题

    260

    回帖

    105

    积分

    藏宝阁VIP会员

    积分
    105

    vip会员

    一剑西来

    0

    主题

    260

    回帖

    105

    积分

    藏宝阁VIP会员

    积分
    105

    vip会员

    2013-7-6 14:43:57 | 显示全部楼层
    回复

    使用道具 举报

    懒得打字嘛,点击右侧快捷回复
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    QQ|小黑屋|教程论坛 | |网站地图

    GMT+8, 2024-11-29 07:50 , Processed in 0.081466 second(s), 14 queries , Redis On.

    Powered by Discuz! X3.5 Licensed

    © 2001-2024 Discuz! Team.

    快速回复