当前位置: 首页 > news >正文

Web渗透测试实战:基于Metasploit 5.0

1d7fc224902fe30d587ce06684468e44.gif

在当今快速发展的技术世界中,信息安全行业正以惊人的速度变化,与此同时,针对组织的网络攻击数量也在迅速增加。为了保护自己免受这些来自真实世界的攻击,许多组织在其流程管理中引入了安全审计以及风险和漏洞评估机制,旨在评估与其业务资产有关的风险。为了保护IT资产,许多组织聘请信息安全专业人员,以识别组织的应用程序和网络中可能存在的风险、漏洞和威胁。对于信息安全专业人员来说,掌握并提高自己的专业技能以及熟悉最新的攻击方法至关重要。同样,为了提高效率,许多人在进行渗透测试和漏洞利用时都将Metasploit作为首选。

对于网络漏洞利用和后渗透,我们可以找到大量资源,但是就Web应用渗透测试而言,选择Metasploit的人并不多。

这里介绍一本新书《Web渗透测试实战:基于Metasploit 5.0》,本书将帮助安全顾问和专业人士了解Metasploit在Web应用渗透测试中的作用,使读者能够在Metasploit的帮助下更有效地进行Web应用渗透测试。

8641597831a4a0d784677dbae2c6e964.png5d7d22db6f8cc3a759383e19cbbda5a2.png

扫码了解 ↑

读者对象


本书专为渗透测试人员、白帽黑客、信息安全顾问以及对Web应用渗透测试有一定了解,并且想要了解更多相关知识或深入研究Metasploit框架的人而设计。

涵盖内容

  • 第1章 介绍Metasploit的安装和配置,以及渗透测试的生命周期、OWASP Top 10和SANS Top 25。

  • 第2章 介绍Metasploit从安装到漏洞利用的基础知识,还涵盖基本的Metasploit术语以及Metasploit中其他较不常用的选项。

  • 第3章 在深入探讨其他主题之前,对Metasploit社区版Web界面进行简单介绍。

  • 第4章 介绍渗透测试生命周期中的第一个过程:侦察(reconnaissance)。从标识(banner)抓取到WEBDAV侦察,我们将借助特定Metasploit模块来说明基本的侦察过程。

  • 第5章 着重介绍Web应用渗透测试中重要的过程之一—枚举。本章将首先介绍文件和目录枚举的基本知识,然后介绍网站爬虫和抓取,之后介绍和枚举相关的Metasploit模块。

  • 第6章 主要介绍Metasploit框架中用于扫描Web应用的WMAP模块。

  • 第7章 主要介绍通过Metasploit使用Nessus漏洞扫描程序对目标进行漏洞评估扫描。

  • 第8章 主要介绍针对WordPress的漏洞枚举以及如何进行漏洞利用。

  • 第9章 主要介绍针对Joomla的漏洞枚举以及如何进行漏洞利用。

  • 第10章 主要介绍针对Drupal的漏洞枚举以及如何进行漏洞利用。

  • 第11章 介绍针对JBoss服务器进行漏洞枚举、利用和获得访问权限的方法。

  • 第12章 介绍针对Tomcat服务器进行漏洞枚举、利用和获得访问权限的方法。

  • 第13章 介绍针对运行Jenkins的服务器进行漏洞枚举、利用和获得访问权限的方法。

  • 第14章 主要介绍针对Web应用业务逻辑缺陷的利用,并详细介绍通过对Web应用进行模糊测试来挖掘漏洞的一些实例。

  • 第15章 涵盖报告编写的基础知识以及如何使用不同的工具来自动执行报告编写过程。

目录

上拉下滑查看目录 ↓

译者序

前言

关于作者

关于审校者

第一篇 导论

第1章 Web应用渗透测试简介2

1.1 什么是渗透测试2

1.2 渗透测试的类型3

1.2.1 白盒渗透测试3

1.2.2 黑盒渗透测试3

1.2.3 灰盒渗透测试3

1.3 渗透测试的阶段3

1.3.1 侦察和信息收集4

1.3.2 枚举4

1.3.3 漏洞评估与分析5

1.3.4 漏洞利用5

1.3.5 报告6

1.4 重要术语6

1.5 渗透测试方法学7

1.5.1 OSSTMM7

1.5.2 OSSTMM测试类型9

1.5.3 ISSAF10

1.5.4 PTES11

1.6 通用缺陷列表14

1.6.1 OWASP Top 1014

1.6.2 SANS Top 2514

1.7 小结15

1.8 问题15

1.9 拓展阅读15

第2章 Metasploit基础知识16

2.1 技术条件要求16

2.2 MSF简介16

2.3 MSF术语17

2.4 安装与设置Metasploit18

2.4.1 在*nix系统上安装MSF19

2.4.2 在Windows上安装MSF21

2.5 MSF入门23

2.5.1 使用msfconsole与MSF交互23

2.5.2 MSF控制台命令24

2.6 小结43

2.7 问题43

2.8 拓展阅读44

第3章 Metasploit Web界面45

3.1 技术条件要求45

3.2 Metasploit Web界面简介45

3.3 安装和设置Web界面46

3.3.1 在Windows上安装Metasploit社区版46

3.3.2 在Linux/Debian上安装Metasploit社区版50

3.4 Metasploit Web界面入门53

3.4.1 界面53

3.4.2 项目创建56

3.4.3 目标枚举58

3.4.4 模块选择64

3.5 小结76

3.6 问题76

3.7 拓展阅读76

第二篇 Metasploit的渗透测试生命周期

第4章 使用Metasploit进行侦察78

4.1 技术条件要求78

4.2 侦察简介78

4.2.1 主动侦察79

4.2.2 被动侦察90

4.3 小结96

4.4 问题96

4.5 拓展阅读97

第5章 使用Metasploit进行Web应用枚举98

5.1 技术条件要求98

5.2 枚举简介98

5.2.1 DNS枚举99

5.2.2 更进一步—编辑源代码100

5.3 枚举文件105

5.3.1 使用Metasploit进行爬行和抓取操作108

5.3.2 扫描虚拟主机111

5.4 小结112

5.5 问题112

5.6 拓展阅读112

第6章 使用WMAP进行漏洞扫描113

6.1 技术条件要求113

6.2 理解WMAP113

6.3 WMAP扫描过程114

6.3.1 数据侦察114

6.3.2 加载扫描器120

6.3.3 WMAP配置121

6.3.4 启动WMAP124

6.4 WMAP模块执行顺序125

6.5 为WMAP添加一个模块128

6.6 使用WMAP进行集群扫描133

6.7 小结139

6.8 问题139

6.9 拓展阅读140

第7章 使用Metasploit(Nessus)进行漏洞评估141

7.1 技术条件要求141

7.2 Nessus简介141

7.2.1 将Nessus与Metasploit结合使用142

7.2.2 通过Metasploit进行Nessus身份验证143

7.3 基本命令145

7.4 通过Metasploit执行Nessus扫描149

7.4.1 使用Metasploit DB执行Nessus扫描153

7.4.2 在Metasploit DB中导入Nessus扫描156

7.5 小结157

7.6 问题157

7.7 拓展阅读157

第三篇 渗透测试内容管理系统

第8章 渗透测试CMS——WordPress160

8.1 技术条件要求160

8.2 WordPress简介160

8.2.1 WordPress架构161

8.2.2 文件/目录结构161

8.3 对WordPress进行侦察和枚举162

8.3.1 版本检测163

8.3.2 使用Metasploit进行WordPress侦察166

8.3.3 使用Metasploit进行WordPress枚举167

8.4 对WordPress进行漏洞评估169

8.5 WordPress漏洞利用第1部分—WordPress任意文件删除177

8.5.1 漏洞流和分析178

8.5.2 使用Metasploit利用漏洞180

8.6 WordPress漏洞利用第2部分—未经身份验证的SQL注入187

8.6.1 漏洞流和分析187

8.6.2 使用Metasploit利用漏洞188

8.7 WordPress漏洞利用第3部分—WordPress 5.0.0远程代码执行188

8.7.1 漏洞流和分析189

8.7.2 使用Metasploit利用漏洞190

8.8 更进一步—自定义Metasploit漏洞利用模块198

8.9 小结201

8.10 问题201

8.11 拓展阅读201

第9章 渗透测试CMS——Joomla202

9.1 技术条件要求202

9.2 Joomla简介202

9.3 Joomla架构203

9.4 侦察和枚举204

9.4.1 版本检测204

9.4.2 使用Metasploit对Joomla进行侦察208

9.5 使用Metasploit枚举Joomla插件和模块209

9.5.1 页面枚举209

9.5.2 插件枚举210

9.6 对Joomla进行漏洞扫描211

9.7 使用Metasploit对Joomla进行漏洞利用212

9.8 上传Joomla Shell219

9.9 小结222

9.10 问题222

9.11 拓展阅读222

第10章 渗透测试CMS——Drupal223

10.1 技术条件要求223

10.2 Drupal及其架构简介223

10.2.1 Drupal架构223

10.2.2 目录结构224

10.3 Drupal侦察和枚举225

10.3.1 通过README.txt检测225

10.3.2 通过元标记检测226

10.3.3 通过服务器标头检测226

10.3.4 通过CHANGELOG.txt检测227

10.3.5 通过install.php检测228

10.3.6 插件、主题和模块枚举228

10.4 使用droopescan对Drupal进行漏洞扫描229

10.5 对Drupal进行漏洞利用231

10.5.1 使用Drupalgeddon2对Drupal进行漏洞利用231

10.5.2 RESTful Web Services漏洞利用—unserialize()237

10.6 小结249

10.7 问题250

10.8 拓展阅读250

第四篇 技术平台渗透测试

第11章 技术平台渗透测试——JBoss252

11.1 技术条件要求252

11.2 JBoss简介252

11.2.1 JBoss架构(JBoss 5)253

11.2.2 JBoss 文件及目录结构254

11.3 侦察和枚举256

11.3.1 通过主页检测256

11.3.2 通过错误页面检测257

11.3.3 通过HTML<title>标签检测257

11.3.4 通过X-Powered-By检测258

11.3.5 通过散列favicon.ico检测258

11.3.6 通过样式表进行检测259

11.3.7 使用Metasploit执行JBoss状态扫描259

11.3.8 JBoss服务枚举261

11.4 在JBoss AS上执行漏洞评估262

11.4.1 使用JexBoss执行漏洞扫描263

11.4.2 可被攻击的JBoss入口点264

11.5 JBoss漏洞利用265

11.5.1 通过管理控制台对JBoss进行漏洞利用265

11.5.2 通过JMX控制台进行漏洞利用(MainDeployer方法)267

11.5.3 使用Metasploit(MainDeployer)通过JMX控制台进行漏洞利用271

11.5.4 通过JMX控制台(BSHDeployer)进行漏洞利用272

11.5.5 使用Metasploit(BSHDeployer)通过JMX控制台进行漏洞利用274

11.5.6 通过Web控制台(Java Applet)进行漏洞利用275

11.5.7 通过Web控制台(Invoker方法)进行漏洞利用277

11.5.8 使用Metasploit通过JMXInvoker-Servlet 进行漏洞利用285

11.6 小结286

11.7 问题286

11.8 拓展阅读286

第12章 技术平台渗透测试——Apache Tomcat287

12.1 技术条件要求287

12.2 Tomcat 简介288

12.3 Apache Tomcat 架构288

12.4 文件和目录结构289

12.5 检测Tomcat的安装290

12.5.1 通过 HTTP 响应标头检测—X-Powered-By 291

12.5.2 通过HTTP响应标头检测 — WWW-Authenticate 291

12.5.3 通过 HTML 标签检测—页面标题标签 291

12.5.4 通过 HTTP 401未授权错误检测292

12.5.5 通过唯一指纹(哈希值)检测292

12.5.6 通过目录和文件检测293

12.6 版本检测294

12.6.1 通过 HTTP 404错误页面检测294

12.6.2 通过Release-Notes.txt 泄露版本号294

12.6.3 通过 Changelog.html 泄露版本信息294

12.7 对Tomcat进行漏洞利用295

12.7.1 Apache Tomcat JSP 上传绕过漏洞297

12.7.2 Tomcat WAR shell 上传(经过认证)300

12.8 Apache Struts简介 304

12.8.1 理解OGNL 304

12.8.2 OGNL表达式注入304

12.8.3 通过OGNL注入测试远程代码执行306

12.8.4 通过 OGNL 注入进行不可视的远程代码执行310

12.8.5 OGNL带外注入测试310

12.8.6 使用Metasploit 对Struts 2 进行漏洞利用311

12.9 小结313

12.10 问题313

12.11 拓展阅读313

第13章 技术平台渗透测试——Jenkins314

13.1 技术条件要求314

13.2 Jenkins简介314

13.3 Jenkins术语315

13.3.1 Stapler 库 315

13.3.2 URL路由316

13.3.3 Apache Groovy 316

13.3.4 元编程 316

13.3.5 抽象语法树 316

13.3.6 Pipeline 317

13.4 Jenkins 侦察和枚举317

13.4.1 使用收藏夹图标哈希值检测Jenkins 317

13.4.2 使用 HTTP 响应标头检测Jenkins 318

13.4.3 使用 Metasploit 进行 Jenkins 枚举319

13.5 对Jenkins进行漏洞利用321

13.5.1 访问控制列表绕过322

13.5.2 理解 Jenkins 的未认证远程代码执行324

13.6 小结330

13.7 问题331

13.8 拓展阅读331

第五篇 逻辑错误狩猎

第14章 Web应用模糊测试——逻辑错误狩猎334

14.1 技术条件要求334

14.2 什么是模糊测试335

14.3 模糊测试术语335

14.4 模糊测试的攻击类型336

14.4.1 应用模糊测试336

14.4.2 协议模糊测试336

14.4.3 文件格式模糊测试336

14.5 Web应用模糊测试简介337

14.5.1 安装Wfuzz337

14.5.2 安装ffuf337

14.6 识别Web应用攻击向量340

14.6.1 HTTP请求动词340

14.6.2 HTTP请求URI344

14.6.3 HTTP请求标头352

14.7 小结361

14.8 问题361

14.9 拓展阅读361

第15章 编写渗透测试报告363

15.1 技术条件要求363

15.2 报告编写简介363

15.2.1 编写执行报告364

15.2.2 编写详细的技术报告365

15.3 Dradis框架简介367

15.3.1 安装前配置367

15.3.2 安装和设置367

15.3.3 开始使用Dradis369

15.3.4 将第三方报告导入Dradis370

15.3.5 在Dradis中定义安全测试方法372

15.3.6 使用Dradis组织报告374

15.3.7 在Dradis中导出报告375

15.4 Serpico简介376

15.4.1 安装和设置376

15.4.2 开始使用Serpico376

15.4.3 将数据从Metasploit导入Serpico380

15.4.4 将第三方报告导入Serpico381

15.4.5 Serpico中的用户管理381

15.4.6 Serpico中的模板管理383

15.4.7 生成多种格式的报告385

15.5 小结385

15.6 问题385

15.7 拓展阅读386

问题答案387

7a36ad6ff53aaa891486a072e5b26811.gif

4b5942f0c43709d09d840b54034f6d34.png

扫码关注【华章计算机】视频号

每天来听华章哥讲书

c8b3911d27e703a4e8798725baff9aa8.gif

更多精彩回顾

干货 |C++都有哪些就业方向?是否应该学习C++?

书单 | 成为优秀Java开发者,我看了这几本书

上新 |《Core Java》作者亲授视频免费看,学习Java更轻松

资讯 |提升研发效能:抵制无效加班文化

资讯 | 又又叒更新,Win 12要来了?

干货 |一文带你掌握计算机体系结构核心内容

干货 | 一文带你理解算法策略

书讯 | 2月书讯(下)| 新年到,新书到!

书讯 | 2月书讯 (上)| 新年到,新书到!

【干货】什么是bug?bug的源头在哪里?

【赠书】【第97期】2022 软件工程师状况报告:Go 最抢手

aa807ef957568846985f7e75e4c188fb.gif

fbaf334e34002b6b76e748cdf3f4cb4a.gif

点击阅读全文购买

相关文章:

  • 详解六种常见的上下文切换场景
  • 终于有人把Knative讲明白了
  • 赵宏田:用户画像场景与技术实现
  • 商品中台的可视化微前端实践
  • 4月书讯(下)| 上新了,华章
  • 场景拆解六步设计法,手把手教你细化场景
  • 2021年图灵奖出炉!高性能计算鼻祖Jack Dongarra获奖
  • ​香农与信息论三大定律
  • 【第98期】终于有人把Flink设计理念与基本架构讲明白了
  • Koa在实际的业务场景中,路由如何做分割?
  • 一图梳理企业数据治理的8项举措
  • 一图看懂边缘计算整体架构
  • 数据安全实践指南
  • 这5种思维模式,大牛产品经理都在用
  • 工业物联网:平台架构、关键技术与应用实践
  • 自己简单写的 事件订阅机制
  • 10个最佳ES6特性 ES7与ES8的特性
  • 2018以太坊智能合约编程语言solidity的最佳IDEs
  • Apache Spark Streaming 使用实例
  • Docker入门(二) - Dockerfile
  • golang中接口赋值与方法集
  • If…else
  • java中具有继承关系的类及其对象初始化顺序
  • Lsb图片隐写
  • October CMS - 快速入门 9 Images And Galleries
  • puppeteer stop redirect 的正确姿势及 net::ERR_FAILED 的解决
  • Redis提升并发能力 | 从0开始构建SpringCloud微服务(2)
  • Service Worker
  • springMvc学习笔记(2)
  • webpack+react项目初体验——记录我的webpack环境配置
  • Web标准制定过程
  • 配置 PM2 实现代码自动发布
  • 前端设计模式
  • 如何用vue打造一个移动端音乐播放器
  • Oracle Portal 11g Diagnostics using Remote Diagnostic Agent (RDA) [ID 1059805.
  • #单片机(TB6600驱动42步进电机)
  • $(function(){})与(function($){....})(jQuery)的区别
  • ()、[]、{}、(())、[[]]命令替换
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (2)nginx 安装、启停
  • (4)logging(日志模块)
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (LeetCode C++)盛最多水的容器
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (windows2012共享文件夹和防火墙设置
  • (附源码)ssm教材管理系统 毕业设计 011229
  • (剑指Offer)面试题41:和为s的连续正数序列
  • (九)信息融合方式简介
  • (三十五)大数据实战——Superset可视化平台搭建
  • (四)汇编语言——简单程序
  • (一)Thymeleaf用法——Thymeleaf简介
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (转)负载均衡,回话保持,cookie
  • (转)关于多人操作数据的处理策略