您好,欢迎光临有路网!
网络攻击与防御技术
QQ咨询:
有路璐璐:

网络攻击与防御技术

  • 作者:王群
  • 出版社:清华大学出版社
  • ISBN:9787302518327
  • 出版日期:2019年03月01日
  • 页数:256
  • 定价:¥49.50
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    • 出版社
    • ISBN
      9787302518327
    • 作者
    • 页数
      256
    • 出版时间
      2019年03月01日
    • 定价
      ¥49.50
    • 所属分类
    内容提要
    本书从攻击与防御两个层面,通过网络攻防技术概述、Windows操作系统的攻防、Linux操作系统的攻防、恶意代码的攻防、Web服务器的攻防、Web浏览器的攻防、移动互联网应用的攻防共7章内容,系统介绍网络攻防的基本原理和技术方法,力求通过有限的篇幅和内容安排来提高读者的攻防技能。 本书可作为高等院校信息**、网络空间**相关专业本科生和研究生的教材,也可作为从事网络与系统管理相关方向技术人员及理工科学生学习网络攻防技术的参考用书。
    文章节选
    第3章Linux操作系统的攻防
    作为类UNIX操作系统家族中的一员,Linux操作系统已经成为服务器应用领域的**。相较于Windows操作系统,Linux在很多方面都具有一定的优势,尤其在**方面。由于Linux的开源性,其**漏洞的发现与补丁的发布效率都要比Windows系统高。然而,Linux并非一个****的操作系统,也存在大量的**漏洞,并且攻击者凭借其开源性可以从源码中发现更多的系统内核和开源软件的漏洞。本章将从网络攻防的角度介绍Linux操作系统的**机制、攻击技术及对应的防范方法。
    3.1Linux操作系统的工作机制
    Linux是源自于UNIX的开放源代码的多用户、多任务、支持多线程和多CPU的操作系统,主要应用于**性要求较高的服务器、网络设备和移动终端。
    3.1.1Linux操作系统概述
    Linux操作系统诞生于1991年,*初是由芬兰大学生Linus Torvalds为在Intel x86架构计算机上运行自由免费的类UNIX操作系统,而用C语言编写的开放源代码的操作系统。目前,Linux存在着许多不同的版本,主要包括Ubuntu、Fedora、RedHat、CentOS、OpenSUSE等,但不同版本都使用了相同的Linux内核。
    Linux的基本思想是: 一切都是文件,即系统中包括命令、硬件和软件设备、进程等所有对象对于操作系统内核而言都被视为拥有各自特性或类型的文件。Linux是一款免费的操作��统,用户可以通过网络或其他途径免费获得,并可以根据需要对其源代码进行修改。目前,Linux可以运行在多种硬件平台上,如x86(32位和64位)、680x0、SPARC、Alpha等处理器的平台。此外,Linux还是一种嵌入式操作系统,可以运行在智能手机、机顶盒、路由器等设备上,如Google基于Linux内核开发了Android移动智能终端操作系统与开发环境。
    Linux通过自带的防火墙、入侵检测和**认证等工具,可以及时发现和修复系统的漏洞,以提高系统的**性。在桌面应用中,Linux的用户数要少于Windows操作系统的用户,较少的用户群使专门针对Linux的恶意代码和渗透攻击要比Windows操作系统少。同时,Linux内核源代码是以标准规范的32位或64位计算机进行优化设计的,良好的稳定性使得一些安装了Linux的主机像UNIX主机一样可以常年不关机或宕机。在网络功能方面,Linux内置了免费网络服务器软件、数据库和Web开发工具,如Apache、Sendmail、SSH、MySQL、PHP、JSP、VSFTP等。丰富而强大的网络功能为用户提供了**可靠的网络服务,使得Linux成为**性、稳定性和可靠性要求较高的服务器操作系统的**。
    3.1.2Linux操作系统的结构
    Linux操作系统采用宏内核(monolithic kernel)架构,整个操作系统是一个运行在核心态的单一的进程文件,这个二进制文件包含进程管理、内存管理、文件管理等。而Linux的前身Minix采用的是微内核(Micro Kernel)架构,基于该架构的操作系统大部分都运行在单独的进程中,而且多数在内核之外,进程之间通过消息传递来通信,内核的任务是处理消息传递、中断处理、底层的进程管理及可能的I/O。
    1. Linux操作系统的内核结构
    如图31所示,从体系结构来看,Linux操作系统的体系架构分为用户态和内核态,也称为用户空间和内核。内核从本质上看是一种软件,用于控制计算机的硬件资源,并提供上层应用程序运行的环境。用户态即上层应用程序的活动空间,应用程序的执行必须依托于内核提供的资源,包括CPU资源、存储资源、I/O资源等。为了使上层应用能够访问到这些资源,内核必须为上层应用提供访问的接口,即系统调用。系统调用是操作系统的*小功能单位,根据不同的应用场景可以进行扩展和裁剪,不同的Linux版本提供的系统调用数量各不相同。系统调用功能通过系统调用接口实现。


    图31Linux操作系统内核结构


    在Linux内核中,位于硬件抽象层中的各类设备驱动程序可以完全访问硬件设备,并以模块化形式进行设置,而且系统运行期间可以直接通过LKM(Loadable Kernel Module,可装载内核模块)机制装载或卸载。内核服务功能模块位于硬件抽象层之上,包括进程与线程管理、内存管理、文件系统管理、设备控制与网络5个子系统。这些内核服务功能模块通过系统调用接口向用户态的GNU运行库/工具、命令行Shell、X窗口及应用软件提供服务。
    Shell是一个被称为“命令行”的特殊的应用程序,其实质是一个命令解释器,它负责将上层的各种应用与系统调用连接起来,以便让不同程序能够以一个清晰的接口协同工作,从而增强各个程序的功能。同时,Shell是可编程的,它可以执行符合Shell语法的文本,即Shell脚本。为了方便用户和系统交互,一般一个Shell对应一个终端,终端是一个硬件设备,呈现给用户的是一个图形化窗口,用户可以通过这个窗口输入或者输出文本,这个文本直接传递给Shell进行分析解释,然后执行。
    2. Linux的工作机制
    Linux操作系统在进程与线程管理、内存管理、文件系统管理、设备控制、网络、系统调用等方面都形成了特有的工作机制,掌握这些工作机制为全面学习Linux操作系统的功能及应用特点是非常有帮助的。
    (1) 进程与线程管理。
    进程是一个动态的概念,进程运行过程实际上是进程的一个生存周期,通常分为实际占用CPU的运行状态、进程可运行(但暂时挂起)的就绪状态和资源不可用的阻塞(中断)状态3种状态。线程可以理解为同一进程中相互独立执行的上下文,线程是“多任务”的进程。线程的概念较为适用于紧密耦合的一组处理流程。在传统进程的概念中,一个进程有一条执行线索,进程之间空间、时间独立,互不干扰。而线程在逻辑上是一个事务的不同线索,线索之间有着种种联系,可能是共享一段缓存或协调执行一组任务。
    Linux内核采用抢占式多用户多进程(multiprocessing)模式。在该模式下,多个进程可并发活动,具体由内核进程管理模块负责调度并分配硬件资源。进程作为*基本的调度单元,维护着一个进程控制块(Processing Control Block,PCB)结构,由内核schedule()进程调度函数根据进程优先级和CPU、内存、外设等资源情况来选择进程的运行。
    (2) 内存管理。
    内存管理在操作系统中不仅非常重要,而且非常复杂。利用虚拟存储技术,Linux使得一个拥有有限内存资源的计算机可以为每个进程提供多达4GB的虚拟内存空间。其基本实现思路是通过进程映像和分页机制在内存和二级存储之间传送数据,以充分利用有限的内存资源。另外,Linux虚拟内存管理机制把用户空间和核心空间分开,这样不仅有效地保护了核心空间,各个进程之间也互不影响。
    (3) 文件系统管理。
    Linux使用了虚拟文件管理(Virtual File System,VFS)机制,从而使得它能够支持多种不同类型的逻辑文件系统(主要包括ext2/ext3/ext4、vfat、NTFS等),通过设备驱动程序访问特定硬件设备(如磁盘、打印机等)。而VFS为用户进程提供了一组通用的文件系统调用函数(如open、close、read、write等),可以对不同文件系统中的文件进行统一的操作。ext2/ext3/ext4是Linux中默认的文件系统格式,使用索引节点来记录文件信息,作用类似于Windows系统中的FAT32文件系统的目录项,包含了文件长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息。
    (4) 设备控制。
    设备驱动程序(device driver)是操作系统中一种可以使计算机和设备进行通信的特殊软件。Linux抽象了设备的处理,它对所有的硬件设备都视为常规的文件来处理。Linux支持3种类型的硬件设备: 字符设备、块设备和网络设备。其中,字符设备直接读/写,没有提供缓冲区,如系统的串行端口/dev/cua0和/dev/cua1; 块设备只能按照一个块(一般是512字节或1024字节)的倍数进行读/写,块设备通过bcache(buffer cache)访问,进行随机存取; 网络设备则通过BSD(Berkeley Software Distribution,伯克利软件套件)Socket网络接口进行访问。大多数的设备驱动程序都采用LKM(Loadable Kernel Modules,可装载内核模块)机制,在需要的时候作为核心模块加载,在不需要的时候进行卸载,以提高对系统资源的利用率。
    (5) 网络。
    Linux中的网络模块提供了对各种网络标准的访问,并支持各种网络硬件设备。网络接口可以分为网络协议栈和网络驱动程序。其中,网络协议栈负责实现每一种可能的网络传输协议,包括网络接口层的协议(如以太网、PPP、SLIP等)、TCP/IP协议层,以及为上层网络应用提供的Socket接口,如图32所示。网络设备驱动程序负责与硬件设备之间的通信。


    图32Linux操作系统的网络功能


    Linux通过以上5种工作机制实现了操作系统基本的硬件管理和系统功能,这些功能模块全部运行在CPU的核心态。而应用程序运行在用户态,不能直接访问内存空间,也不能直接调用内核函数。Linux提供了系统调用接口,通过该接口应用程序可以访问硬件设备和其他系统资源,以增加系统的**性、稳定性和可靠性。同时,Linux为用户空间提供了一种统一的抽象接口,有助于应用程序的跨平台移植。
    3.2Linux操作系统的**机制
    与Windows操作系统类似,Linux同样通过身份认证、授权访问与**审计等机制来实现对系统的**管理。
    目录
    目录 第1章网络攻防技术概述 1.1黑客、红客及红黑对抗 1.1.1黑客与红客 1.1.2红黑对抗 1.2网络攻击的类型 1.2.1主动攻击 1.2.2被动攻击 1.3网络攻击的属性 1.3.1权限 1.3.2转换方法 1.3.3动作 1.4主要攻击方法 1.4.1端口扫描 1.4.2口令攻击 1.4.3彩虹表 1.4.4漏洞攻击 1.4.5缓冲区溢出 1.4.6电子邮件攻击 1.4.7**持续威胁 1.4.8社会工程学 1.5网络攻击的实施过程 1.5.1攻击发起阶段 1.5.2攻击作用阶段 1.5.3攻击结果阶段 1.6网络攻防的发展趋势 1.6.1新应用产生新攻击 1.6.2网络攻击的演进 1.6.3网络攻击新特点 习题 第2章Windows操作系统的攻防 2.1Windows操作系统的**机制 2.1.1Windows操作系统的层次结构 2.1.2Windows服务器的**模型 2.2针对Windows数据的攻防 2.2.1数据本身的** 2.2.2数据存储** 2.2.3数据处理** 2.3针对账户的攻防 2.3.1账户和组 2.3.2用户的登录认证 2.3.3账户密码的** 2.3.4权限管理 2.4针对进程与服务的攻防 2.4.1进程、线程、程序和服务的概念 2.4.2重要系统进程 2.4.3常见的服务与端口 2.5针对日志的攻防 2.5.1Windows日志概述 2.5.2日志分析 2.5.3日志管理 2.6针对系统漏洞的攻防 2.6.1Windows系统漏洞 2.6.2典型的利用漏洞的攻击过程 2.6.3补丁管理 2.7针对注册表和组策略的攻防 2.7.1针对注册表的攻防 2.7.2针对组策略的攻防 习题 第3章Linux操作系统的攻防 3.1Linux操作系统的工作机制 3.1.1Linux操作系统概述 3.1.2Linux操作系统的结构 3.2Linux操作系统的**机制 3.2.1用户和组 3.2.2身份认证 3.2.3访问控制 3.2.4Linux的日志 3.3Linux系统的远程攻防技术 3.3.1Linux主机账户信息的获取 3.3.2Linux主机的远程渗透攻击 3.3.3DNS服务器的攻防 3.3.4Apache服务器的攻防 3.4Linux用户提权方法 3.4.1通过获取“/etc/shadow”文件的信息来提权 3.4.2利用软件漏洞来提权 3.4.3针对本地提权攻击的**防御方法 习题 第4章恶意代码的攻防 4.1计算机病毒 4.1.1计算机病毒的起源 4.1.2计算机病毒的概念 4.1.3计算机病毒的基本特征 4.1.4计算机病毒的分类 4.1.5计算机病毒的传播机制 4.1.6计算机病毒的防范方法 4.2蠕虫 4.2.1网络蠕虫的特征与工作机制 4.2.2网络蠕虫的扫描方式 4.2.3网络蠕虫的防范方法 4.3木马 4.3.1木马的概念及基本特征 4.3.2木马的隐藏技术 4.3.3网页木马 4.3.4硬件木马 4.3.5木马的防范方法 4.3.6挖矿木马 4.4后门 4.4.1后门的功能和特点 4.4.2后门的分类 4.4.3Windows系统后门程序的自动加载方法 4.4.4后门的防范方法 4.5僵尸网络 4.5.1僵尸网络的概念 4.5.2僵尸网络的功能结构 4.5.3僵尸网络的工作机制及特点 4.5.4僵尸网络的防范方法 4.6Rootkit 4.6.1Rootkit的概念 4.6.2用户模式Rootkit和内核模式Rootkit 4.6.3Bootkit攻击 4.6.4挂钩技术 4.6.5DKOM技术 4.6.6虚拟化技术 4.6.7Rootkit的检测方法 4.6.8Rootkit的防范方法 习题 第5章Web服务器的攻防 5.1Web应用的结构 5.1.1C/S结构 5.1.2B/S结构 5.1.3Web应用**结构概述 5.2针对Web服务器的信息收集 5.2.1需要收集的信息内容 5.2.2网络踩点 5.2.3网络扫描 5.2.4漏洞扫描 5.2.5网络查点 5.2.6针对Web服务器信息收集的防范方法 5.3Web数据的攻防 5.3.1针对敏感数据的攻防 5.3.2网站篡改 5.4Web应用程序的攻防 5.4.1Web应用程序**威胁 5.4.2SQL注入漏洞 5.4.3跨站脚本漏洞 5.5Web服务器软件的攻防 5.5.1Apache攻防 5.5.2IIS攻防 习题 第6章Web浏览器的攻防 6.1Web浏览器技术 6.1.1万维网 6.1.2Web浏览器 6.1.3Web浏览器的** 6.1.4Web浏览器的隐私保护 6.1.5Web开放数据挖掘形成的**威胁 6.2Web浏览器插件和脚本的攻防 6.2.1Web浏览器插件的攻防 6.2.2脚本的攻防 6.3针对Web浏览器Cookie的攻防 6.3.1Cookie介绍 6.3.2Cookie的组成及工作原理 6.3.3Cookie的**防范 6.4网页木马的攻防 6.4.1网页木马的攻击原理 6.4.2网页挂马的实现方法 6.4.3网页木马关键技术 6.4.4网页木马的防范方法 6.5网络钓鱼的攻防 6.5.1网络钓鱼的概念和特点 6.5.2典型钓鱼网站介绍 6.5.3网络钓鱼攻击的实现方法 6.5.4网络钓鱼攻击的防范方法 6.6黑链的攻防 6.6.1黑链的实现方法 6.6.2黑链的应用特点 6.6.3黑链篡改的检测和防范方法 习题 第7章移动互联网应用的攻防 7.1移动互联网概述 7.1.1移动互联网的概念 7.1.2移动终端 7.1.3接入网络 7.1.4应用服务 7.1.5**与隐私保护 7.2智能移动终端系统的攻防 7.2.1登录** 7.2.2软键盘输入** 7.2.3盗版程序带来的**问题 7.2.4认证** 7.2.5**事件分析 7.3移动应用的攻防 7.3.1恶意程序 7.3.2骚扰和诈骗电话 7.3.3垃圾短信 7.3.4二维码** 7.4云服务的攻防 7.4.1关于云计算 7.4.2云存储的**问题 7.4.3云服务的**防范 7.5网络购物的攻防 7.5.1网络游戏网站钓鱼欺诈 7.5.2网络退款骗局 7.5.3购买违禁品骗局 习题 参考文献

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外