您好,欢迎来到聚文网。 登录 免费注册
Linux信息安全和渗透测试

Linux信息安全和渗透测试

  • 字数: 836000
  • 装帧: 平装
  • 出版社: 清华大学出版社
  • 作者: 蔡冰
  • 出版日期: 2023-09-01
  • 商品条码: 9787302641070
  • 版次: 1
  • 开本: 16开
  • 页数: 496
  • 出版年份: 2023
定价:¥129 销售价:登录后查看价格  ¥{{selectedSku?.salePrice}} 
库存: {{selectedSku?.stock}} 库存充足
{{item.title}}:
{{its.name}}
精选
编辑推荐
《Linux信息安全和渗透测试》是一本针对网络安全渗透测试人员、运维工程师、网络管理人员和安全课程培训人员的推荐指南。本书涵盖了网络安全渗透测试的理论和工具,包括Kali Linux 2的基础使用、被动扫描、主动扫描、漏洞扫描、远程控制、渗透攻击、Armitage、社会工程学工具、BeEF-XSS渗透框架、漏洞渗透模块编写、网络数据的嗅探与欺骗、身份认证攻击、无线安全渗透测试以及渗透测试报告的编写。通过深入浅出的讲解,读者将全面了解渗透测试的各个方面,并掌握实践技巧和解决问题的能力。无论您是正在学习渗透测试的学生,还是已经从事相关工作的专业人士,本书都将成为您的不可或缺的参考书籍。
内容简介
《Linux信息安全和渗透测试》详细阐述Linux下的信息安全和网络渗透技术,内容涵盖各大主流加解密算法的原理,用Linux C/C++语言自主实现这些技术的方法,以及Linux内核开发技术和IPSec VPN的系统实现,这些都是以后打造自己信息安全工具所需的基本知识。最后介绍网络渗透技术Kail Linux,通过该环境可以了解常用的现成工具。本书共11章,内容包括Linux基础和网络优化、搭建Linux C和C++安全开发环境、对称密码算法、杂凑函数和HMAC、非对称算法RSA的加解密、身份认证和PKI、实战PKI、IPSec VPN基础知识、VPN实战、SSL-TLS编程、内核和文件系统、Kali Linux的渗透测试研究、DPDK开发环境的搭建等。《Linux信息安全和渗透测试》适合Linux信息安全工程师或开发者阅读,也适合高等院校和培训机构相关专业的师生作为教学参 考书。
作者简介
蔡冰,15年的编程教学、职业规划经历。已辅导近千位同学通过实习校招,顺利入职各大互联网公司的研发岗位,平时积累了大量当前流行的开发知识和技能。参与编写了《Java网络编程实战》的图书。
目录
第1章 搭建Linux安全开发环境 1
1.1 准备虚拟机环境 1
1.1.1 在VMware下安装Linux 1
1.1.2 开启登录时的root账号 4
1.1.3 解决Ubuntu上的vi方向键问题 5
1.1.4 关闭防火墙 6
1.1.5 配置安装源 6
1.1.6 安装网络工具包 6
1.1.7 安装基本开发工具 7
1.1.8 启用SSH 7
1.1.9 创建一个快照 8
1.1.10 连接虚拟机Linux 9
1.1.11 通过终端工具连接Linux虚拟机 18
1.1.12 与虚拟机互传文件 20
1.1.13 支持图形软件的终端工具MobaXterm 21
1.2 搭建Samba网络文件共享服务 22
1.3 在VMware中添加一块硬盘 24
1.4 在Linux下搭建C/C++开发环境 27
1.5 在Windows下搭建Linux C/C++开发环境 28
1.5.1 Windows下非集成式的Linux C/C++开发环境 28
1.5.2 Windows下集成式的Linux C/C++开发环境 32
1.6 安全密码库OpenSSL 35
1.6.1 OpenSSL源代码模块结构 36
1.6.2 OpenSSL加密库调用方式 37
1.6.3 OpenSSL支持的对称加密算法 37
1.6.4 OpenSSL支持的非对称加密算法 38
1.6.5 OpenSSL支持的信息摘要算法 38
1.6.6 OpenSSL密钥和证书管理 38
1.6.7 面向对象与OpenSSL 38
1.6.8 BIO接口 40
1.6.9 EVP接口 41
1.6.10 在Linux下编译安装OpenSSL 1.0.2 42
1.6.11 使用OpenSSL命令并查看版本号 51
1.7 国产密码函数库GmSSL 51
1.7.1 GmSSL的特点 52
1.7.2 GmSSL的一些历史 52
1.7.3 什么是国密算法 52
1.7.4 GmSSL的下载 53
1.7.5 在Linux下编译安装GmSSL 53
1.7.6 默认编译安装GmSSL 57
1.7.7 在旧版本的Linux下编译和安装GmSSL 60
第2章 对称密码算法 64
2.1 基本概念 64
2.2 流加密算法 65
2.2.1 基本概念 65
2.2.2 流密码和分组密码的比较 66
2.2.3 RC4算法 66
2.3 分组加密算法 76
2.3.1 工作模式 76
2.3.2 短块加密 84
2.3.3 DES和3DES算法 84
2.3.4 SM4算法 102
2.4 利用OpenSSL进行对称加解密 119
2.4.1 基本概念 119
2.4.2 对称加解密相关函数 119
第3章 杂凑函数和HMAC 128
3.1 杂凑函数概述 128
3.1.1 什么是杂凑函数 128
3.1.2 密码学和杂凑函数 129
3.1.3 杂凑函数的发展 129
3.1.4 杂凑函数的设计 130
3.1.5 杂凑函数的分类 130
3.1.6 杂凑函数的碰撞 130
3.2 SM3杂凑算法 131
3.2.1 常量和函数 131
3.2.2 填充 131
3.2.3 迭代压缩 132
3.2.4 杂凑值 133
3.2.5 一段式SM3算法的实现 133
3.2.6 三段式SM3算法的实现 138
3.2.7 GmSSL实现SM3算法 145
3.3 HMAC 148
3.3.1 什么是HMAC 148
3.3.2 产生背景 148
3.3.3 设计目标 149
3.3.4 算法描述 149
3.3.5 独立自主实现HMAC-SM3 150
3.4 SHA系列杂凑算法 152
3.4.1 SHA算法概述 152
3.4.2 SHA的发展史 153
3.4.3 SHA系列算法的核心思想 153
3.4.4 单向性 153
3.4.5 主要用途 153
3.4.6 SHA256算法原理解析 153
3.4.7 SHA384和SHA512算法 168
3.5 更通用的基于OpenSSL的哈希运算 192
3.5.1 获取摘要算法的函数EVP_get_digestbyname 192
3.5.2 创建结构体并初始化的函数EVP_MD_CTX_create 192
3.5.3 销毁摘要上下文结构体的函数EVP_MD_CTX_destroy 193
3.5.4 摘要初始化的函数EVP_DigestInit_ex 193
3.5.5 摘要Update的函数EVP_DigestUpdate 194
3.5.6 摘要Final的函数EVP_Digest_Final_ex 194
3.5.7 单包摘要计算的函数EVP_Digest 194
第4章 非对称算法RSA的加解密 197
4.1 非对称密码体制概述 197
4.2 RSA概述 199
4.3 RSA的数学基础 199
4.3.1 素数 199
4.3.2 素性检测 199
4.3.3 倍数 200
4.3.4 约数 200
4.3.5 互质数 200
4.3.6 质因子 200
4.3.7 强素数 201
4.3.8 因子 201
4.3.9 模运算 201
4.3.10 模运算的操作与性质 202
4.3.11 单向函数 202
4.3.12 费马定理和欧拉定理 203
4.3.13 幂 203
4.3.14 模幂运算 204
4.3.15 同余符号≡ 204
4.3.16 欧拉函数 204
4.3.17 优选公约数 204
4.3.18 实现欧几里得算法 205
4.3.19 扩展欧几里得算法 207
4.4 RSA算法描述 214
4.5 RSA算法实例 215
4.5.1 查找法计算私钥d 216
4.5.2 简便法计算私钥d 218
4.5.3 扩展欧几里得算法计算私钥d 220
4.5.4 加密字母 221
4.5.5 分组加密字符串 221
4.6 实战前的几个重要问题 225
4.6.1 明文的值不能大于模值N 225
4.6.2 明文的长度 226
4.6.3 密钥长度 227
4.6.4 密文长度 227
4.7 熟悉PKCS#1 227
4.7.1 PKCS#1填充 228
4.7.2 OpenSSL中的RSA填充 230
4.7.3 PKCS#1中的RSA私钥语法 232
4.8 在OpenSSL命令中使用RSA 233
4.8.1 生成RSA公私钥 233
4.8.2 提取私钥的各个参数 234
4.8.3 使用RSA公钥加密一个文件 236
4.8.4 使用私钥解密一个文件 237
4.9 基于OpenSSL库的RSA编程 237
4.9.1 OpenSSL的RSA实现 238
4.9.2 主要数据结构 239
4.9.3 主要函数 240
4.10 随机大素数的生成 248
4.11 RSA算法的攻击及分析 248
4.11.1 因子分解攻击 248
4.11.2 选择密文攻击 249
4.11.3 公共模数攻击 249
4.11.4 小指数攻击 249
第5章 身份认证和PKI 250
5.1 身份认证概述 250
5.1.1 网络安全与身份认证 250
5.1.2 网络环境下身份认证所面临的威胁 251
5.1.3 网络身份认证体系的发展现状 252
5.2 身份认证技术基础 254
5.2.1 用户名/密码认证 254
5.2.2 智能卡认证 254
5.2.3 生物特征认证 255
5.2.4 动态口令 255
5.2.5 USB Key认证 255
5.2.6 基于冲击响应的认证模式 255
5.2.7 基于PKI体系的认证模式 256
5.3 PKI概述 256
5.3.1 PKI的国内外应用状态 257
5.3.2 PKI的应用前景 258
5.3.3 PKI存在的问题及发展趋势 258
5.4 基于X.509证书的PKI认证体系 260
5.4.1 数字证书 261
5.4.2 数字信封 264
5.4.3 PKI体系结构 264
5.4.4 基于X.509证书的身份认证 269
第6章 实战PKI 271
6.1 只有密码算法是不够的 271
6.2 利用OpenSSL实现CA的搭建 273
6.2.1 准备实验环境 273
6.2.2 熟悉CA环境 274
6.2.3 创建所需要的文件 276
6.2.4 CA自签名证书(构造根CA) 276
6.2.5 根CA为子CA颁发证书 278
6.2.6 普通用户向子CA申请证书 281
6.3 基于OpenSSL的证书编程 283
6.3.1 把DER编码转换为内部结构体的d2i_X509函数 284
6.3.2 获得证书版本的X509_get_version函数 285
6.3.3 获得证书序列号的X509_get_serialNumber函数 285
6.3.4 获得证书颁发者信息的X509_get_issuer_name函数 285
6.3.5 获得证书拥有者信息的X509_get_subject_name函数 286
6.3.6 获得证书有效期的起始日期的X509_get_notBefore函数 286
6.3.7 获得证书有效期的终止日期的X509_get_notAfter函数 286
6.3.8 获得证书公钥的X509_get_pubkey函数 286
6.3.9 创建证书存储区上下文环境的X509_STORE_CTX函数 286
6.3.10 释放证书存储区上下文环境的X509_STORE_CTX_free函数 287
6.3.11 初始化证书存储区上下文环境的X509_STORE_CTX_init函数 287
6.3.12 验证证书的X509_verify_cert函数 287
6.3.13 创建证书存储区的X509_STORE_new函数 287
6.3.14 释放证书存储区的X509_STORE_free函数 288
6.3.15 向证书存储区添加证书的X509_STORE_add_cert函数 288
6.3.16 向证书存储区添加证书吊销列表的X509_STORE_add_crl函数 288
6.3.17 释放X.509结构体的X509_free函数 288
6.4 证书编程实战 289
第7章 IPSec VPN基础知识 295
7.1 概述 295
7.1.1 IPSec VPN技术现状 296
7.1.2 国密VPN现状 296
7.2 IPSec协议研究 297
7.2.1 IPSec体系结构 297
7.2.2 传输模式和隧道模式 299
7.2.3 AH协议概述 299
7.2.4 AH数据包封装 300
7.2.5 ESP协议概述 301
7.2.6 ESP数据包封装 302
7.2.7 安全联盟 304
7.2.8 安全策略数据库和安全联盟数据库 305
7.3 IKE协议 306
7.3.1 IKE概述 306
7.3.2 IKE的安全机制 307
7.3.3 ISAKMP 308
7.4 IKEv1协议 309
7.4.1 第一阶段 310
7.4.2 第二阶段 312
7.4.3 主模式和快速模式的9个包分析 312
7.5 IKEv2协议 320
7.5.1 IKEv2概述 320
7.5.2 初始交换 321
7.5.3 创建子SA交换 326
7.5.4 通知交换 326
7.6 IKEv1与IKEv2的区别 326
7.7 IKEv2的优点 327
第8章 VPN实战 328
8.1 准备网络环境 328
8.2 strongSwan实战 333
8.2.1 编译安装strongSwan 333
8.2.2 常用程序概述 339
8.2.3 配置文件概述 342
8.2.4 使用ipsec.conf文件 343
8.2.5 使用swanctl.conf 353
8.2.6 strongSwan签发证书 357
8.3 OpenSwan实战 364
8.3.1 OpenSwan概述 364
8.3.2 OpenSwan的整体架构 364
8.3.3 OpenSwan的下载和编译 365
8.3.4 OpenSwan连接方式 367
8.3.5 OpenSwan的认证方式 367
8.3.6 配置文件ipsec.conf 367
第9章 SSL-TLS编程 378
9.1 SSL协议规范 378
9.1.1 SSL协议的优点 378
9.1.2 SSL协议的发展 378
9.1.3 SSLv3/TLS提供的服务 379
9.1.4 SSL协议层次结构模型 380
9.1.5 SSL记录协议层 380
9.1.6 SSL握手协议层 382
9.2 OpenSSL中的SSL编程 385
9.3 SSL函数 386
9.3.1 初始化SSL算法库的函数SSL_library_init 386
9.3.2 初始化SSL上下文环境变量的函数SSL_CTX_new 386
9.3.3 释放SSL上下文环境变量的函数SSL_CTX_free 387
9.3.4 以文件形式设置SSL证书的函数SSL_CTX_use_certificate_file 387
9.3.5 以结构体方式设置SSL证书的函数SSL_CTX_use_certificate 387
9.3.6 以文件形式设置SSL私钥的函数SSL_CTX_use_PrivateKey_file 387
9.3.7 以结构体方式设置SSL私钥的函数SSL_CTX_use_PrivateKey 387
9.3.8 检查SSL私钥和证书是否匹配的函数SSL_CTX_check_private_key 388
9.3.9 创建SSL结构的函数SSL_new 388
9.3.10 释放SSL套接字结构体的函数SSL_free 388
9.3.11 设置读写套接字的函数SSL_set_fd 388
9.3.12 设置只读套接字的函数SSL_set_rfd 388
9.3.13 设置只写套接字的函数SSL_set_wfd 389
9.3.14 启动TLS/SSL握手的函数SSL_connect 389
9.3.15 接受SSL连接的函数SSL_accept 389
9.3.16 获取对方的X.509证书的函数SSL_get_peer_certificate 389
9.3.17 向TLS/SSL连接写数据的函数SSL_write 390
9.3.18 从TLS/SSL连接上读取数据的函数SSL_Read 390
9.4 准备SSL通信所需的证书 390
9.4.1 准备实验环境 390
9.4.2 熟悉CA环境 391
9.4.3 创建根CA的证书 391
9.4.4 生成服务端的证书请求文件 393
9.4.5 签发服务端证书 393
9.4.6 生成客户端的证书请求文件 394
9.4.7 签发客户端证书 395
9.5 实战SSL网络编程 396

蜀ICP备2024047804号

Copyright 版权所有 © jvwen.com 聚文网