图灵程序设计丛书《黑客攻防技术宝典: Web实战篇(第2版)》高清PDF下载
图灵程序设计丛书《黑客攻防技术宝典: Web实战篇(第2版)》高清PDF下载
views:51
date:2021-07-09 15:59:49
comments:0
以下是资源下载信息(为了避免爬虫搞跨服务器,网盘的提取码可能需要填了验证码之后才显示)
本书是探索和研究Web 应用程序安全漏洞的实践指南。作者利用大量的实际案例和示例代码,详细介绍了各类Web 应用程序的弱点,并深入阐述了如何针对Web 应用程序进行具体的渗透测试。本书从介绍当前Web 应用程序安全概况开始,重点讨论渗透测试时使用的详细步骤和技巧,最后总结书中涵盖的主题。每章后还附有习题,便于读者巩固所学内容。  第2 版新增了Web 应用程序安全领域近年来的发展变化新情况,并以尝试访问的链接形式提供了几百个互动式“漏洞实验室”,便于读者迅速掌握各种攻防知识与技能。  本书适合各层次计算机安全人士和Web 开发与管理领域的技术人员阅读。第1章 Web应用程序安全与风险 11.1 Web应用程序的发展历程 11.1.1 Web应用程序的常见功能 31.1.2 Web应用程序的优点 41.2 Web应用程序安全 41.2.1 “本站点是安全的” 51.2.2 核心安全问题:用户可提交任意输入 61.2.3 关键问题因素 71.2.4 新的安全边界 81.2.5 Web应用程序安全的未来 101.3 小结 10第2章 核心防御机制 122.1 处理用户访问 122.1.1 身份验证 132.1.2 会话管理 132.1.3 访问控制 142.2 处理用户输入 152.2.1 输入的多样性 152.2.2 输入处理方法 162.2.3 边界确认 182.2.4 多步确认与规范化 202.3 处理攻击者 212.3.1 处理错误 212.3.2 维护审计日志 222.3.3 向管理员发出警报 232.3.4 应对攻击 242.4 管理应用程序 252.5 小结 262.6 问题 26第3章 Web应用程序技术 273.1 HTTP 273.1.1 HTTP请求 273.1.2 HTTP响应 283.1.3 HTTP方法 293.1.4 URL 303.1.5 REST 313.1.6 HTTP消息头 313.1.7 cookie 333.1.8 状态码 333.1.9 HTTPS 343.1.10 HTTP代理 353.1.11 HTTP身份验证 353.2 Web功能 363.2.1 服务器端功能 363.2.2 客户端功能 403.2.3 状态与会话 463.3 编码方案 473.3.1 URL编码 473.3.2 Unicode编码 483.3.3 HTML编码 483.3.4 Base64编码 493.3.5 十六进制编码 493.3.6 远程和序列化框架 493.4 下一步 503.5 问题 50第4章 解析应用程序 514.1 枚举内容与功能 514.1.1 Web抓取 514.1.2 用户指定的抓取 544.1.3 发现隐藏的内容 564.1.4 应用程序页面与功能路径 674.1.5 发现隐藏的参数 694.2 分析应用程序 694.2.1 确定用户输入入口点 704.2.2 确定服务器端技术 724.2.3 确定服务器端功能 764.2.4 解析受攻击面 794.2.5 解析Extreme Internet Shopping应用程序 804.3 小结 814.4 问题 82第5章 避开客户端控件 835.1 通过客户端传送数据 835.1.1 隐藏表单字段 845.1.2 HTTP cookie 865.1.3 URL参数 865.1.4 Referer消息头 865.1.5 模糊数据 885.1.6 ASP.NET ViewState 895.2 收集用户数据:HTML表单 915.2.1 长度限制 915.2.2 基于脚本的确认 935.2.3 禁用的元素 945.3 收集用户数据:浏览器扩展 955.3.1 常见的浏览器扩展技术 965.3.2 攻击浏览器扩展的方法 975.3.3 拦截浏览器扩展的流量 975.3.4 反编译浏览器扩展 1005.3.5 附加调试器 1095.3.6 本地客户端组件 1115.4 安全处理客户端数据 1125.4.1 通过客户端传送数据 1125.4.2 确认客户端生成的数据 1125.4.3 日志与警报 1135.5 小结 1145.6 问题 114第6章 攻击验证机制 1156.1 验证技术 1156.2 验证机制设计缺陷 1166.2.1 密码保密性不强 1166.2.2 蛮力攻击登录 1176.2.3 详细的失败消息 1206.2.4 证书传输易受攻击 1226.2.5 密码修改功能 1246.2.6 忘记密码功能 1256.2.7 “记住我”功能 1276.2.8 用户伪装功能 1296.2.9 证书确认不完善 1316.2.10 非唯一性用户名 1316.2.11 可预测的用户名 1326.2.12 可预测的初始密码 1336.2.13 证书分配不安全 1336.3 验证机制执行缺陷 1346.3.1 故障开放登录机制 1346.3.2 多阶段登录机制中的缺陷 1356.3.3 不安全的证书存储 1386.4 保障验证机制的安全 1396.4.1 使用可靠的证书 1406.4.2 安全处理证书 1406.4.3 正确确认证书 1416.4.4 防止信息泄露 1426.4.5 防止蛮力攻击 1436.4.6 防止滥用密码修改功能 1446.4.7 防止滥用账户恢复功能 1456.4.8 日志、监控与通知 1466.5 小结 1466.6 问题 147第7章 攻击会话管理 1487.1 状态要求 1487.2 会话令牌生成过程中的薄弱环节 1517.2.1 令牌有一定含义 1527.2.2 令牌可预测 1537.2.3 加密令牌 1627.3 会话令牌处理中的薄弱环节 1707.3.1 在网络上泄露令牌 1707.3.2 在日志中泄露令牌 1737.3.3 令牌—会话映射易受攻击 1757.3.4 会话终止易受攻击 1767.3.5 客户端暴露在令牌劫持风险之中 1777.3.6 宽泛的cookie范围 1787.4 保障会话管理的安全 1807.4.1 生成强大的令牌 1817.4.2 在整个生命周期保障令牌的安全 1827.4.3 日志、监控与警报 1847.5 小结 1857.6 问题 185第8章 攻击访问控制 1878.1 常见漏洞 1878.1.1 完全不受保护的功能 1888.1.2 基于标识符的功能 1908.1.3 多阶段功能 1918.1.4 静态文件 1918.1.5 平台配置错误 1928.1.6 访问控制方法不安全 1928.2 攻击访问控制 1938.2.1 使用不同用户账户进行测试 1948.2.2 测试多阶段过程 1978.2.3 通过有限访问权限进行测试 1998.2.4 测试“直接访问方法” 2018.2.5 测试对静态资源的控制 2028.2.6 测试对HTTP方法实施的限制 2028.3 保障访问控制的安全 2038.4 小结 2068.5 问题 207第9章 攻击数据存储区 2089.1 注入解释型语言 2089.2 注入SQL 2109.2.1 利用一个基本的漏洞 2119.2.2 注入不同的语句类型 2139.2.3 查明SQL注入漏洞 2169.2.4 “指纹”识别数据库 2199.2.5 UNION操作符 2209.2.6 提取有用的数据 2249.2.7 使用UNION提取数据 2249.2.8 避开过滤 2269.2.9 二阶SQL注入 2279.2.10 高级利用 2299.2.11 SQL注入之外:扩大数据库攻击范围 2369.2.12 使用SQL注入工具 2389.2.13 SQL语法与错误参考 2419.2.14 防止SQL注入 2469.3 注入NoSQL 2499.4 注入XPath 2509.4.1 破坏应用程序逻辑 2519.4.2 谨慎XPath注入 2529.4.3 盲目XPath注入 2529.4.4 查找XPath注入漏洞 2539.4.5 防止XPath注入 2549.5 注入LDAP 2549.5.1 利用LDAP注入 2559.5.2 查找LDAP注入漏洞 2579.5.3 防止LDAP注入 2589.6 小结 2589.7 问题 258第10章 测试后端组件 26010.1 注入操作系统命令 26010.1.1 例1:通过Perl注入 26110.1.2 例2:通过ASP注入 26210.1.3 通过动态执行注入 26410.1.4 查找OS命令注入漏洞 26410.1.5 查找动态执行漏洞 26710.1.6 防止OS命令注入 26810.1.7 防止脚本注入漏洞 26810.2 操作文件路径 26810.2.1 路径遍历漏洞 26910.2.2 文件包含漏洞 27810.3 注入XML解释器 27910.3.1 注入XML外部实体 27910.3.2 注入SOAP 28110.3.3 查找并利用SOAP注入 28310.3.4 防止SOAP注入 28410.4 注入后端HTTP请求 28410.4.1 服务器端HTTP重定向 28510.4.2 HTTP参数注入 28710.5 注入电子邮件 29010.5.1 操纵电子邮件标头 29010.5.2 SMTP命令注入 29110.5.3 查找SMTP注入漏洞 29210.5.4 防止SMTP注入 29310.6 小结 29410.7 问题 294第11章 攻击应用程序逻辑 29611.1 逻辑缺陷的本质 29611.2 现实中的逻辑缺陷 29711.2.1 例1:征求提示 29711.2.2 例2:欺骗密码修改功能 29811.2.3 例3:直接结算 29911.2.4 例4:修改保险单 30011.2.5 例5:入侵银行 30211.2.6 例6:规避交易限制 30311.2.7 例7:获得大幅折扣 30511.2.8 例8:避免转义 30511.2.9 例9:避开输入确认 30611.2.10 例10:滥用搜索功能 30811.2.11 例11:利用调试消息 31011.2.12 例12:与登录机制竞赛 31111.3 避免逻辑缺陷 31211.4 小结 31311.5 问题 314......第12章 攻击其他用户 315第13章 攻击用户:其他技巧 366第14章 定制攻击自动化 419第15章 利用信息泄露 453第16章 攻击本地编译型应用程序 466第17章 攻击应用程序架构 477第18章 攻击Web服务器 493第19章 查找源代码中的漏洞 517第20章 Web应用程序黑客工具包 550第21章 Web应用程序渗透测试方法论 58221.1 解析应用程序内容 58421.1.1 搜索可见的内容 58421.1.2 浏览公共资源 58521.1.3 发现隐藏的内容 58621.1.4 查找默认的内容 58621.1.5 枚举标识符指定的功能 58621.1.6 调试参数 58721.2 分析应用程序 58721.2.1 确定功能 58721.2.2 确定数据进入点 58721.2.3 确定所使用的技术 58821.2.4 解析受攻击面 58821.3 测试客户端控件 58821.3.1 通过客户端传送数据 58921.3.2 客户端输入控件 58921.3.3 测试浏览器扩展组件 59021.4 测试验证机制 59221.4.1 了解验证机制 59221.4.2 测试密码强度 59321.4.3 测试用户名枚举 59321.4.4 测试密码猜测的适应性 59321.4.5 测试账户恢复功能 59421.4.6 测试“记住我”功能 59421.4.7 测试伪装功能 59421.4.8 测试用户名唯一性 59521.4.9 测试证书的可预测性 59521.4.10 检测不安全的证书传输 59521.4.11 检测不安全的证书分配 59621.4.12 测试不安全的存储 59621.4.13 测试逻辑缺陷 59621.4.14 利用漏洞获取未授权访问 59721.5 测试会话管理机制 59821.5.1 了解会话管理机制 59821.5.2 测试令牌的含义 59921.5.3 测试令牌的可预测性 59921.5.4 检查不安全的令牌传输 60021.5.5 检查在日志中泄露的令牌 60021.5.6 测试令牌?会话映射 60121.5.7 测试会话终止 60121.5.8 测试会话固定 60221.5.9 检查CSRF 60221.5.10 检查cookie范围 60221.6 测试访问控件 60321.6.1 了解访问控制要求 60321.6.2 使用多个账户测试 60421.6.3 使用有限的权限测试 60421.6.4 测试不安全的访问控制方法 60521.7 测试基于输入的漏洞 60521.7.1 模糊测试所有请求参数 60521.7.2 测试SQL注入 60721.7.3 测试XSS和其他响应注入 60921.7.4 测试OS命令注入 61121.7.5 测试路径遍历 61221.7.6 测试脚本注入 61321.7.7 测试文件包含 61321.8 测试特殊功能方面的输入漏洞 61321.8.1 测试SMTP注入 61421.8.2 测试本地代码漏洞 61421.8.3 测试SOAP注入 61621.8.4 测试LDAP注入 61621.8.5 测试XPath注入 61721.8.6 测试后端请求注入 61721.8.7 测试XXE注入 61721.9 测试逻辑缺陷 61821.9.1 确定关键的受攻击面 61821.9.2 测试多阶段过程 61821.9.3 测试不完整的输入 61921.9.4 测试信任边界 61921.9.5 测试交易逻辑 61921.10 测试共享主机漏洞 62021.10.1 测试共享基础架构之间的隔离 62021.10.2 测试使用ASP主机的应用
Clicky