C#灰帽子:设计安全测试工具

C#灰帽子:设计安全测试工具 PDF 扫描版

  • 大小:87 MB
  • 类型:C#
  • 格式:PDF
  • 出版:机械工业出版社
  • 作者:布兰德·佩里,王自亮,侯敬
  • 更新:2020-10-31 16:30:43
版权投诉 / 资源反馈(本资源由用户 沈天材 投稿)

给寻找技术文档的朋友们精选了C#相关的资料,由机械工业出版社出版,作者是布兰德·佩里,王自亮,侯敬,介绍了关于C#、灰帽子、设计安全、测试工具方面,格式为PDF,资源大小87 MB,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:9.3分。

书籍介绍

C#灰帽子:设计安全测试工具》介绍如何用C#核心库进行漏洞扫描、恶意软件自动分析和安全事件响应等,以及如何编写安全实用工具可应用于Mac、Linux、移动平台等。例如,编写模糊分析器以便用HTTP和XML库扫描SQL和XSS注入,在Metasploit中生成代码来创建跨平台和跨架构的工具,用Nessus、OpenVAS和sqlmap自动化扫描漏洞并利用SQL漏洞,等等。使用C#工具库和本书提供的工具可简化日常安全工作。

目录

  • 第1章 C#基础知识速成 1
  • 1.1 选择IDE 1
  • 1.2 一个简单的例子 2
  • 1.3 类和接口 3
  • 1.3.1 创建一个类 4
  • 1.3.2 创建接口 4
  • 1.3.3 从抽象类中子类化并实现接口 5
  • 1.3.4 将所有内容与Main()方法结合到一起 7
  • 1.3.5 运行Main()方法 8
  • 1.4 匿名方法 9
  • 1.4.1 在方法中使用委托 9
  • 1.4.2 更新Firefighter类 10
  • 1.4.3 创建可选参数 10
  • 1.4.4 更新Main()方法 11
  • 1.4.5 运行更新的Main()方法 12
  • 1.5 与本地库整合 12
  • 1.6 本章小结 14
  • 第2章 模糊测试和漏洞利用技术 15
  • 2.1 设置虚拟机 16
  • 2.1.1 添加仅主机虚拟网络 16
  • 2.1.2 创建虚拟机 16
  • 2.1.3 从BadStore ISO启动虚拟机 17
  • 2.2 SQL注入 19
  • 2.3 跨站脚本攻击 20
  • 2.4 使用基于突变的模糊测试工具对GET参数进行模糊测试 22
  • 2.4.1 污染参数和测试漏洞 23
  • 2.4.2 构造HTTP请求 23
  • 2.4.3 测试模糊测试的代码 25
  • 2.5 对POST请求进行模糊测试 25
  • 2.5.1 编写一个对POST请求进行模糊测试的工具 28
  • 2.5.2 开始模糊测试 29
  • 2.5.3 对参数进行模糊测试 30
  • 2.6 对JSON进行模糊测试 32
  • 2.6.1 设置存在漏洞的程序 32
  • 2.6.2 捕获易受攻击的JSON请求 33
  • 2.6.3 编写对JSON进行模糊测试的工具 34
  • 2.6.4 测试对JSON进行模糊测试的工具 39
  • 2.7 利用SQL注入 40
  • 2.7.1 手工进行基于UNION的注入 40
  • 2.7.2 编程进行基于UNION的注入 42
  • 2.7.3 利用基于布尔的SQL注入 45
  • 2.8 本章小结 53
  • 第3章 对SOAP终端进行模糊测试 55
  • 3.1 设置易受攻击的终端 55
  • 3.2 解析WSDL 56
  • 3.2.1 为WSDL文档编写一个类 57
  • 3.2.2 编写初始解析方法 58
  • 3.2.3 为SOAP类型和参数编写一个类 60
  • 3.2.4 编写一个SoapMessage类来定义发送的数据 62
  • 3.2.5 为消息部分实现一个类 63
  • 3.2.6 使用SoapPortType类定义端口操作 64
  • 3.2.7 为端口操作实现一个类 65
  • 3.2.8 使用SOAP绑定定义协议 66
  • 3.2.9 编辑操作子节点的列表 68
  • 3.2.10 在端口上寻找SOAP服务 68
  • 3.3 自动化执行模糊测试 70
  • 3.3.1 对不同的SOAP服务进行模糊测试 71
  • 3.3.2 对SOAP HTTP POST端口进行模糊测试 75
  • 3.3.3 对SOAP XML端口进行模糊测试 78
  • 3.3.4 运行模糊测试工具 82
  • 3.4 本章小结 83
  • 第4章 编写有效载荷 84
  • 4.1 编写回连的有效载荷 84
  • 4.1.1 网络流 85
  • 4.1.2 运行命令 86
  • 4.1.3 运行有效载荷 88
  • 4.2 绑定有效载荷 88
  • 4.2.1 接收数据,运行命令,返回输出 89
  • 4.2.2 从流中执行命令 90
  • 4.3 使用UDP攻击网络 91
  • 4.3.1 运行在目标机器上的代码 92
  • 4.3.2 运行在攻击者机器上的代码 95
  • 4.4 从C#中运行x86和x86-64 Metasploit有效载荷 97
  • 4.4.1 安装Metasploit 97
  • 4.4.2 生成有效载荷 99
  • 4.4.3 执行本机Windows有效载荷作为非托管代码 100
  • 4.4.4 执行本机Linux有效载荷 102
  • 4.5 本章小结 106
  • 第5章 自动化运行Nessus 107
  • 5.1 REST和Nessus API 107
  • 5.2 NessusSession类 108
  • 5.2.1 发送HTTP请求 109
  • 5.2.2 注销和清理 111
  • 5.2.3 测试NessusSession类 112
  • 5.3 NessusManager类 112
  • 5.4 启动Nessus扫描 114
  • 5.5 本章小结 117
  • 第6章 自动化运行Nexpose 118
  • 6.1 安装Nexpose 118
  • 6.1.1 激活与测试 120
  • 6.1.2 一些Nexpose语法 121
  • 6.2 NexposeSession类 121
  • 6.2.1 ExecuteCommand()方法 123
  • 6.2.2 注销及释放会话 126
  • 6.2.3 获取API版本 127
  • 6.2.4 调用Nexpose API 127
  • 6.3 NexposeManager类 128
  • 6.4 自动发起漏洞扫描 130
  • 6.4.1 创建一个拥有资产的站点 130
  • 6.4.2 启动扫描 131
  • 6.5 创建PDF格式站点扫描报告及删除站点 132
  • 6.6 汇总 133
  • 6.6.1 开始扫描 133
  • 6.6.2 生成扫描报告并删除站点 134
  • 6.6.3 执行自动化扫描程序 134
  • 6.7 本章小结 135
  • 第7章 自动化运行OpenVAS 136
  • 7.1 安装OpenVAS 136
  • 7.2 构建类 137
  • 7.3 OpenVASSession类 137
  • 7.3.1 OpenVAS服务器认证 138
  • 7.3.2 创建执行OpenVAS命令的方法 139
  • 7.3.3 读取服务器消息 140
  • 7.3.4 建立发送/接收命令的TCP流 141
  • 7.3.5 证书有效性及碎片回收 141
  • 7.3.6 获取OpenVAS版本 142
  • 7.4 OpenVASManager类 143
  • 7.4.1 获取扫描配置并创建目标 144
  • 7.4.2 封装自动化技术 148
  • 7.4.3 运行自动化操作 149
  • 7.5 本章小结 149
  • 第8章 自动化运行Cuckoo Sandbox 150
  • 8.1 安装Cuckoo Sandbox 150
  • 8.2 手动运行Cuckoo Sandbox API 151
  • 8.2.1 启动API 151
  • 8.2.2 检查Cuckoo的状态 152
  • 8.3 创建CuckooSession类 153
  • 8.3.1 编写ExecuteCommand()方法来处理HTTP请求 154
  • 8.3.2 用GetMultipartFormData()方法创建分段HTTP数据 156
  • 8.3.3 用FileParameter类处理文件数据 158
  • 8.3.4 测试CuckooSession及支持类 159
  • 8.4 编写CuckooManger类 160
  • 8.4.1 编写CreateTask()方法 161
  • 8.4.2 任务细节及报告方法 162
  • 8.4.3 创建任务抽象类 163
  • 8.4.4 排序并创建不同的类类型 165
  • 8.5 组合在一起 167
  • 8.6 测试应用程序 168
  • 8.7 本章小结 170
  • 第9章 自动化运行sqlmap 171
  • 9.1 运行sqlmap 172
  • 9.1.1 sqlmap REST API 173
  • 9.1.2 用curl测试sqlmap API 174
  • 9.2 创建一个用于sqlmap的会话 177
  • 9.2.1 创建执行GET请求的方法 179
  • 9.2.2 执行POST请求 179
  • 9.2.3 测试Session类 180
  • 9.3 SqlmapManager类 182
  • 9.3.1 列出sqlmap选项 184
  • 9.3.2 编写执行扫描的方法 185
  • 9.3.3 新的Main()方法 187
  • 9.4 扫描报告 188
  • 9.5 自动化执行一个完整的sqlmap扫描 189
  • 9.6 将sqlmap和SOAP漏洞测试程序集成在一起 191
  • 9.6.1 在SOAP漏洞测试程序中增加sqlmap GET请求支持 191
  • 9.6.2 增加sqlmap POST请求支持 192
  • 9.6.3 调用新编写的方法 194
  • 9.7 本章小结 196
  • 第10章 自动化运行ClamAV 197
  • 10.1 安装ClamAV软件 197
  • 10.2 ClamAV软件本地库与clamd网络守护进程 199
  • 10.3 通过ClamAV软件本地库自动执行 199
  • 10.3.1 创建支持的枚举类型和类 199
  • 10.3.2 调用ClamAV软件的本地库函数 202
  • 10.3.3 编译ClamAV软件引擎 203
  • 10.3.4 扫描文件 205
  • 10.3.5 清理收尾 206
  • 10.3.6 通过扫描EICAR测试文件来测试程序 207
  • 10.4 通过clamd守护进程自动化执行 208
  • 10.4.1 安装clamd守护进程 209
  • 10.4.2 启动clamd守护进程 209
  • 10.4.3 创建clamd进程会话类 210
  • 10.4.4 创建clamd进程管理器类 211
  • 10.4.5 测试clamd进程 212
  • 10.5 本章小结 214
  • 第11章 自动化运行Metasploit 215
  • 11.1 运行RPC服务器 215
  • 11.2 安装Metasploitable系统 217
  • 11.3 获取MSGPACK库 218
  • 11.3.1 为MonoDevelop环境安装NuGet软件包管理器 218
  • 11.3.2 安装MSGPACK库 219
  • 11.3.3 引用MSGPACK库 220
  • 11.4 编写MetasploitSession类 221
  • 11.4.1 为HTTP请求以及与MSGPACK库进行交互创建Execute()方法 222
  • 11.4.2 转换MSGPACK库的响应数据 223
  • 11.5 测试会话类 225
  • 11.6 编写MetasploitManager类 226
  • 11.7 整合代码模块 228
  • 11.7.1 运行漏洞利用示例 229
  • 11.7.2 与命令行进行交互 230
  • 11.7.3 连接得到命令行 231
  • 11.8 本章小结 231
  • 第12章 自动化运行Arachni 233
  • 12.1 安装Arachni软件 233
  • 12.2 Arachni软件的REST API函数 234
  • 12.2.1 创建ArachniHTTP-Session类 235
  • 12.2.2 创建ArachniHTTP-Manager类 237
  • 12.3 整合会话和管理器类 238
  • 12.4 Arachni软件的RPC服务 239
  • 12.4.1 手动运行RPC服务 239
  • 12.4.2 ArachniRPCSession类 241
  • 12.4.3 ExecuteCommand()的支持方法 243
  • 12.4.4 ExecuteCommand()方法 245
  • 12.4.5 ArachniRPCManager类 247
  • 12.5 整合代码 248
  • 12.6 本章小结 250
  • 第13章 反编译和逆向分析托管程序集 252
  • 13.1 反编译托管程序集 252
  • 13.2 测试反编译器 255
  • 13.3 使用monodis工具分析程序集 256
  • 13.4 本章小结 259
  • 第14章 读取离线注册表项 260
  • 14.1 注册表项结构 260
  • 14.2 获取注册表项 261
  • 14.3 读取注册表项 263
  • 14.3.1 创建注册表项文件的解析类 263
  • 14.3.2 创建节点键类 264
  • 14.3.3 创建值键的存储类 269
  • 14.4 对库进行测试 270
  • 14.5 导出启动密钥 271
  • 14.5.1 GetBootKey()方法 271
  • 14.5.2 GetValueKey()方法 273
  • 14.5.3 GetNodeKey()方法 273
  • 14.5.4 StringToByteArray()方法 274
  • 14.5.5 获取启动密钥 275
  • 14.5.6 验证启动密钥 275
  • 14.6 本章小结 276

以上就是本次关于书籍资源的介绍和部分内容,我们还整理了以往更新的其它相关电子书资源内容,可以在下方直接下载,关于相关的资源我们在下方做了关联展示,需要的朋友们也可以参考下。

C#相关资源

  • C#区块链编程

    C#区块链编程

    C#区块链编程 详细的讲解了区块链与比特币的关系,并且阐述了关键的存储和数字生成机制,让读者了解区块链的实在,并且知道如何运用区块链编程。 本书将带你从区块链的基本应用走向高

    大小:2.8 MBC#区块链

  • 三维模型变形算法:理论和实践:C#版本

    三维模型变形算法:理论和实践:C#版本

    本书讲述了三维图形领域*重要的一个模块:三维模型变形的算法,包括理论和实现。首先讲述了工业软件里三维模型变形的使用,其次讲述了FFD、MeanValue、拉普拉斯、骨骼动画、蒙皮等变形算

    大小:220 MB三维模型

  • C#从入门到精通

    C#从入门到精通

    c#从入门到精通(第4版) 从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用c#进行WinForm应用程序开发应该掌握的各方面技术。 《c#从入门到精通(第4版)》共分26章

    大小:1.6GB MBC#

  • C# 2012数据库编程入门经典

    C# 2012数据库编程入门经典

    C# 2012数据库编程入门经典(第5版) 就是一本帮助具有C语言基础的程序员快速掌握数据库编程知识的书。书中包括了关系数据库的原理和用法,AD0.NET等常见的数据访问技术,以及丰富的T-SQL和

    大小:88.2 MBC#

  • C#并发编程经典实例

    C#并发编程经典实例

    C#并发编程经典实例 全面讲解C#并发编程技术,侧重于.NET平台上较新、较实用的方法。全书分为几大部分:首先介绍几种并发编程技术,包括异步编程、并行编程、TPL数据流、响应式编程;然

    大小:10.8 MBC#编程

  • C#敏捷开发实践

    C#敏捷开发实践

    用户的需求经常变化,每个开发者都深受其害。不过,如果能够提高代码的自适应性,就能更加轻松地响应变化,避免重复劳动。《 C#敏捷开发实践 》介绍了敏捷编程的best practice、原则和模式

    大小:16.6 MBC#开发

  • 电子政务顶层设计:信息化条件下的政府业务规划

    电子政务顶层设计:信息化条件下的政府业务规划

    本书结合我国信息化发展和政府改革的时代背景,系统地论述了电子政务顶层设计的基本框架与方法体系。全书分为八章,在分析国内外理论体系与实践现状的基础上,阐明了我国电子政务顶层设计的目标与推进策略,构建了顶层设计的基本框架,并对框架内各架构的具体设计方法进行了详细阐述,探讨了电子政务顶层设计成果的应用方式,最后系统介绍福建省和上海市电子政务顶层设计实践的相关思路与方法。

    大小:7123 MB MB电子政务

  • 计算机图形学简明教程

    计算机图形学简明教程 课后答案

    《计算机图形学简明教程》是2006年高等教育出版社出版的图书,作者是张彩明。 《计算机图形学简明教程》介绍了计算机图形学的基本原理和算法。主要内容有:计算机图形系统及硬件基础、基本光栅图形算法、变换和裁剪、三维空间的观察、人机交互绘图技术、现面的判定、颜色和简单光照明模型、曲线曲面的表示和三维几何造型。《计算机图形学简明教程》在系统地介绍计算机图形学基本原理和算法的过程中,尽量避免涉及难以理解的语言和系统

    大小:2.14 MB图形学课后答案

  • 软件工程课程设计:人事管理系统

    一、 系统概述 随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现企业人事管理势在必行。对于大中型企业来说,利用计算机支持企业高效率完成劳动人事管理的日常事务,是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规范化的必要条件;计算机管理所无法比拟的优点检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事管理的效率,也是企业的科学化、正

    大小:4 KB软件工程

  • Python与Excel交互

    Python与Excel交互

    实例截图 核心代码 .├── DmsDemo│ ├── DmsDemo│ │ ├── Lib│ │ │ └── site-packages│ │ │ ├── _distutils_hack│ │ │ │ ├── __init__.py│ │ │ │ └── override.py│ │ │ ├── _virtualenv.pth│ │ │ ├── _virtualenv.py│ │ │ ├── distutils-precedence.pth│ │ │ ├── pip│ │ │ │ ├── __init_

    大小:9.23 MBPython

  • C++20标准手册

    C++20标准手册

    C++20(C++ 编程语言标准2020版) 将是C++ 语言一次非常重大的更新,将为这门语言引入大量新特性。 c++20标准文档是官方目前最新文件 ,更新2020年。需要的朋友可下载试试! 此次更新看 C++20 的 Big Four(四大新特性:概念、范围、协程和模块)以及核心语言(包括一些新的运算符和指示符)。 全新的 GCC、Clang 和 EDG 编译器能提供对核心语言的最佳支持。此外,MSVC 和 Apple Clang 编译器也支持许多 C++20 特性。 C++20 核心语言特征。 库方面

    大小:6.39 MBC++

参与送书

学习笔记

19小时54分钟前回答

C#如何在海量数据下的高效读取写入MySQL

前提 由于工作的原因,经常需要对海量数据进行处理,做的数据爬虫相关,动辄千万级别的数据,单表几十个G都是都是家常便饭。 主要开发语言是C#,数据库使用的是MySQL。 最常见的操作便是 select 读取数据,然后在C#中对数据进行处理, 完毕后再插入数据库中。 简而言之就 select - process - insert三个步骤。 对于数据量小的情况下(百万级别 or 几百兆)可能最多1个小时就处理完了……

21小时9分钟前回答

c#如何调用python

如果让C#支持调用Python模块,我们首先需要安装一些扩展,这里推荐使用IronPython库。 第一步,我们需要下载IronPython库的安装包,这里请大家移步官网http://ironpython.codeplex.com/,下载并安装相关库文件。 相关推荐:《Python视频教程》 第二步,我们新建一个C#控制台测试项目,并将IronPython安装目录中的如下DLL文件添加进项目引用。 第三步,我们分别编写C#代码,并添加Python代码文件……