Linux系统安全基础:二进制代码安全性分析基础与实践

Linux系统安全基础:二进制代码安全性分析基础与实践

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

一本介绍二进制分析相关工具及其应用的工具书。

内容简介

本书共分为五大部分,内容涵盖了ELF二进制代码的生成、Linux环境下分析二进制文件的相关工具、静态的二进制代码分析、动态的二进制代码分析、IntelPin的架构及工具的制作、污点分析技术及实现、约束求解原理与应用、符号执行技术及应用、模糊测试技术及实现、常见的系统攻击及系统对软件的常见保护措施等。

作者简介

作者彭双何,女,副教授。自2008年加入北京交通大学以来,一直从事本科教育与教学工作,多次获评本科生优秀学业导师和优秀班主任。教学上,课堂教学效果好,所在课堂"C语言程序设计”获评第一批校金课。2014年首次获评校优秀主讲教师,该荣誉一直保持到现在。2021年获评计算机学院师德师风先进个人"传道授业”奖。科研上,积极指导本科生参加各种科研活动,2018年以来发表科研论文三篇,其中SCI检索一篇;指导本科生参加大创项目获评国家级三项和北京市级五项,指导本科生参加国家级竞赛获一等奖一项、二等奖一项、三等奖一项;北京市级竞赛获三等奖四项。

章节目录

版权信息

内容简介

前言

第1章 概述

1.1 Linux系统安全

1.2 代码安全

1.3 什么是二进制代码安全性分析

1.4 二进制代码安全性分析的重要性

1.5 二进制代码安全性分析的主要步骤

1.6 软件错误、漏洞以及利用

第2章 二进制代码生成

2.1 二进制代码的生成过程

2.2 ELF文件格式

2.3 程序的装载与调度执行

第3章 二进制代码信息的收集

3.1 nm

3.2 ldd

3.3 strings

3.4 ELF文件分析工具LIEF

3.5 ps

3.6 strace

3.7 ltrace

3.8 ROPgadget

3.9 ob jdump

3.10 readelf

3.11 GDB

3.12 Pwntools

3.13 LibcSearcher

第4章 静态二进制代码分析

4.1 基于IDAPro的静态分析

4.2 基于Radare2的静态分析

第5章 二进制代码脆弱性评估

5.1 常见二进制代码脆弱性

5.2 基于系统工具对代码脆弱性的评估

5.3 基于Intel Pin的代码脆弱性评估

5.4 基于符号执行的代码脆弱性评估

5.5 基于污点分析的代码脆弱性评估

5.6 基于模糊测试的代码脆弱性评估

第6章 二进制代码漏洞利用

6.1 二进制代码加固技术及其gcc编译选项

6.2 缓冲区溢出漏洞的利用

6.3 基于Angr的缓冲区溢出漏洞自动利用

附录A 数据对齐问题

A.1 基本数据类型的对齐

A.2 非标准(复杂)类型数据的对齐

A.3 计算机的字节顺序

附录B 函数调用约定

B.1 函数参数的传递

B.2 函数的前导

B.3 函数的后续

附录C 栈帧原理

C.1 什么是栈帧

C.2 栈帧中的内容有哪些

C.3 栈帧内容的具体示例

C.4 栈帧对齐

附录D 32位系统与64位系统中程序的区别

D.1 数据类型大小的不同

D.2 函数调用参数的传递方式不同

D.3 程序装载的基地址不同

附录E 共享库链接的路径问题

E.1 共享库测试代码

E.2 共享库文件的生成

E.3 共享库的链接

E.4 共享库的使用

附录F 在多模块中使用ld手动链接生成可执行文件

附录G 在C++程序中调用C函数的问题

G.1 C与C++程序的内存分配

G.2 符号改编问题

G.3 符号改编问题的解决办法

G.4 C++名字空间的问题

附录H Linux死机的处理

附录I Python文件默认的开头注释格式

Linux系统安全基础:二进制代码安全性分析基础与实践是2023年由电子工业出版社出版,作者彭双何。

得书感谢您对《Linux系统安全基础:二进制代码安全性分析基础与实践》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
MySQL数据库基础与实践 电子书
本书从实用的角度出发,全面讲解MySQL数据库技术。
C#程序设计基础与实践 电子书
本书以C#语言为载体,系统地讲解了算法的概念、程序设计的基本思想,以及常用的程序设计方法。本书的主要内容包括:程序设计基础知识与C#程序设计的一般方法;算法的概念及应用;数据类型的概念及C#中的常用数据类型;类和对象的概念及应用;用户界面设计的一般方法和技能;I/O流与数据文件的概念及应用。
大学计算机基础——实践与提高 电子书
本书是《大学计算机基础与计算思维》一书的配套教材,除了计算理论基础与计算思维章节外,每章内容都包括“扩展知识”“设计与实践”“自我测试”3部分。全书立足于实践,通过实验教学,从不同的角度训练和提升学习者的计算思维能力,以达到对非计算机专业人员的计算思维能力的培养。扩展知识主要沿袭《大学计算机基础与计算思维》理论教材内的相关知识点,对在理论教材中讲解不够充分,或因时间、教材容量等因素无法呈现的知识点
游戏引擎原理与实践 卷1:基础框架 电子书
着重讲解游戏引擎的基础知识和工作原理,并结合配套的游戏引擎示例和详尽的代码,介绍游戏引擎开发的技术细节。
奔跑吧Linux内核(第2版)卷1:基础架构 电子书
本书基于Linux5.0内核的源代码讲述Linux内核中核心模块的实现。