网络安全实战教程基于Kali Linux的红蓝对抗指南

978-7-115-70460-3
作者: 李华峰徐焱
译者:
编辑: 胡俊英
分类: 其他

图书目录:

详情

在数字化进程加速推进、攻防对抗日趋激烈的当下,培养更多的实战型网络安全人才已成为社会发展的迫切需求。本书以Kali Linux 2(后简称Kali Linux)为平台,以“红蓝对抗”为主线,构建系统、完整的网络安全攻防教学体系,旨在打破教学壁垒,实现学以致用。 全书共13章,内容由浅入深、循序渐进。第1~3章涵盖红蓝对抗环境的构建、Kali Linux的常用命令及一系列加解密操作;第4~7章系统地讲解攻击面管理、在线与本地密码破解、供应链投毒等外网渗透关键技术;第8~13章聚焦共享文件遍历漏洞、网页篡改、拒绝服务攻击、内网渗透、提权和持久化控制等进阶攻防场景。各章均设有明确的学时规划、实践环节与习题,通过“理论—实践—评估”闭环设计,切实提升读者解决实际网络安全问题的能力。 本书主要面向高校网络安全相关专业师生、一线网络安全从业者及技术爱好者,既可作为高校教材,也可作为相关行业人员提升技能的实用指南。

图书摘要

版权信息

书名:网络安全实战教程:基于Kali Linux的红蓝对抗指南

ISBN:978-7-115-70460-3

本书由人民邮电出版社发行数字版。版权所有,侵权必究。

您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。

我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。

如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。

版  权

著    李华峰  徐 焱

责任编辑 胡俊英

人民邮电出版社出版发行  北京市丰台区成寿寺路11号

邮编 100164  电子邮件 315@ptpress.com.cn

网址 http://www.ptpress.com.cn

读者服务热线:(010)81055410

反盗版热线:(010)81055315

内容提要

在数字化进程加速推进、攻防对抗日趋激烈的当下,培养更多的实战型网络安全人才已成为社会发展的迫切需求。本书以Kali Linux 2(后简称Kali Linux)为平台,以“红蓝对抗”为主线,构建系统、完整的网络安全攻防教学体系,旨在打破教学壁垒,实现学以致用。

全书共13章,内容由浅入深、循序渐进。第1~3章涵盖红蓝对抗环境的构建、Kali Linux的常用命令及一系列加解密操作;第4~7章系统地讲解攻击面管理、在线与本地密码破解、供应链投毒等外网渗透关键技术;第8~13章聚焦共享文件遍历漏洞、网页篡改、拒绝服务攻击、内网渗透、提权和持久化控制等进阶攻防场景。各章均设有明确的学时规划、实践环节与习题,通过“理论—实践—评估”闭环设计,切实提升读者解决实际网络安全问题的能力。

本书主要面向高校网络安全相关专业师生、一线网络安全从业者及技术爱好者,既可作为高校教材,也可作为相关行业人员提升技能的实用指南。

作者简介

李华峰,唐山师范学院教师,长期从事网络安全渗透测试方面的研究。著有《Wireshark网络分析从入门到实践》《Kali Linux 2网络渗透测试实践指南》等图书。

徐焱,北京交通大学安全研究员,Ms08067安全实验室创始人,长期从事网络安全教育培训工作,组织出版了《Web安全攻防:渗透测试实战指南》《内网安全攻防:渗透测试实战指南》等图书。

推荐语

高校网络安全教学长期面临理论与实战脱节的困境,学生虽习得概念,却鲜有机会直面真实攻击形态。本书以“红蓝对抗”为主线,按学时系统编排,每章均配备靶机实验,教学节奏清晰。于教师而言,这是一份可直接落地的教学大纲;于学生而言,这是一条从入门走向实战的清晰路径。打通网络安全教育的“最后一公里”,正需要这样的著作。

——陈志浩(7kbstorm)

亚信安全首席攻防专家,安全服务事业部副总经理

本书以Kali Linux为平台,构建了一条从原理到实践的教学闭环。全书围绕红蓝对抗设计学习路径,从环境搭建、基础命令到实验案例与习题巩固一应俱全。AI时代虽能快速获取答案,但体系化学习仍需清晰的知识框架与可反复锤炼的实践设计。本书既能支持教师系统备课、按章组织教学,也能帮助学习者循序渐进地构建攻防知识体系。对于希望系统化教学的教师、按章节推进学习的学生以及需要快速掌握关键技能的安全从业者而言,本书是一本兼具教学参考、实践指导和案头查阅多重价值的实用手册。

——段钢

看雪学苑创始人

在网络安全领域,实战能力至关重要。对初学者而言,一本贴近实战的案头工具书尤为可贵。本书以Kali Linux为平台,深入浅出地讲解了网络攻防的各项技术,内容覆盖全面;更别出心裁地以红蓝对抗为主线贯穿始终,每章附有习题,便于读者巩固所学。无论高校网络安全专业师生、一线安全从业者,还是技术爱好者,均可从中获益。

——胡珀(lake2)

腾讯前资深网络安全专家

从数学跨界到网络安全,我深知纯粹智识的力量,也亲历了传统网安教学中理论与实战脱节的困境。本书以红蓝对抗为主线,将攻防原理融入逼真的场景,精准契合高校教学需求。愿每位读者借助本书练就过硬本领,守护国家数字安全。

——刘磊

河海大学教授,数学及人工智能双学科博士生导师

初涉网络安全,入门难往往不是因为缺乏兴趣,而是不知从何入手。网络安全领域知识庞杂、工具繁多、概念交错,常有“看书觉着明白,实操却无从下手”之困。本书正是针对这一痛点,致力于为读者构建一条清晰、可操作的学习路径,帮助大家逐步认识红蓝对抗,熟悉Kali Linux,并通过实践理解网络攻防的基本方法。

本书并非单纯讲解工具的使用方法,亦非止步于理论推演。我们希望读者在动手实验中,逐步将“攻”与“防”置于同一框架下审视,这样才能真正建立起体系化的网络安全思维。

本书既可作为高校网络安全相关课程的教学参考,也适合学生及初学者作为入门实践教材;对于希望提升实战能力的从业者,书中亦提供了若干可供借鉴的案例与思路。

——oldjun

T00ls[1]社区联合创始人

[1]T00ls的名称源自英文单词“Tools”(工具),其中两个英文字母“o”被数字“0”替代,这是安全圈常见的命名风格。

本书采用“理论—实践—评估”闭环设计,案例步骤清晰,兼顾高校教学与自学场景。书中不堆砌概念,注重动手实操,对网络安全专业师生及一线技术人员均有较高的参考价值。

——TNT

Hacking Group创始人,安领荟科技有限公司创始人

本书基于Kali Linux讲解,在攻防实战入门的基础上,引入了攻击面管理、供应链安全、持久化控制等前沿内容,兼顾入门知识的循序渐进与技术视野的先进性,真正贴近当下实战场景,值得推荐!

——杨凡

河南听潮盛世信息技术创始人,F4CKTEAM、HACKCTO创始人

本书兼顾了教学与实战的双重需求。全书循序渐进地讲解了环境搭建、密码破解、内网渗透、持久化控制等关键技术,攻防视角并重,理论与实践结合。无论高校选用为网络安全专业教材,还是安全爱好者借此夯实攻防基础,都能从中获得实用知识与实践引导。

——张胜生

北京中安国发信息技术研究院院长

江苏省省级产业教授

中央财经大学信息学院研究生校外导师

CISAW应急管理与服务资深讲师

这本书以Kali Linux为技术平台,从红蓝对抗的实战视角,系统拆解从外网渗透到持久化控制的完整攻防链条。全书理论与实践紧密结合,每章都有清晰的学时规划并配有动手实践环节,既适合高校教学,也便于自学。无论是想建立系统攻防思维的学生,还是希望提升实战能力的从业者,都能从中获得指引。

——周培源

奇安信集团安全服务子公司副总经理

当前网络攻防日趋激烈,实战型安全人才已成为行业刚需。本书以Kali Linux为核心,紧扣红蓝对抗实战主线,构建了从环境搭建到持久化控制的完整攻防教学体系。全书兼具体系化、实战化、教学化三大特色,按学时科学规划内容,配套沉浸式实验环境,以红蓝双视角推进攻防讲解,辅以习题与案例,形成“理论—实践—评估”闭环,兼顾教学与从业者的实战能力提升。

四叶草网络安全人才培养与创新研究中心始终倡导以攻促防、实战育人。本书与我们的宗旨完美契合,是网安入门与技能进阶的优质读物,诚挚推荐给高校师生及安全从业者。

——朱利军

四叶草网络安全人才培养与创新研究中心总监

推荐序一

在数字化浪潮席卷全球的今天,网络空间已成为继陆、海、空、天之后的“第五疆域”。网络空间的安全已不再仅是技术问题,而是关乎国家安全、经济发展和社会稳定的战略要务。从关键基础设施的防护到个人隐私的保障,从金融系统的稳定到国家机密的捍卫,网络安全的重要性怎么强调都不为过。

网络空间安全的竞争,归根结底是人才的竞争。只有培养出大批既有技术深度又有实战经验的网络安全人才,才能真正筑牢国家网络安全的防线。

然而,当前我国网络安全人才缺口巨大,高校培养体系主要面临以下严峻挑战。

其一,网络空间安全的实验环境搭建成本高昂。真实的网络攻防演练需要专用设备、隔离环境,动辄数以几十万元的硬件投入让很多高校望而却步。

其二,网络空间安全教学内容滞后于实战。传统教材往往侧重理论,而社会需要的却是能快速上手的实战型人才。

其三,网络空间安全中伦理与法律的边界难以把握。如何让同学们在合法合规的前提下掌握攻防技术,始终是教学设计的难点。

在此背景下,李华峰和徐焱两位老师共同编撰的这本书,恰如及时雨,为高校网络空间安全教育提供了一套切实可行的解决方案。当我第一次翻阅这本书时,只觉得这是一本非常有趣的书,脑海中不禁浮现出“纸上代码跃如飞,屏前攻防战正酣”的画面。作为一位在计算机领域耕耘多年的工作者,我很少用“有趣”来形容一本技术教材,但这本书确实给我带来了久违的阅读乐趣。细读之下,以下匠心独运之处不禁让我感受到二位作者的深厚功力,以及他们对专业教育的热忱。

首先,就是这本书设计的“红蓝对抗”教学模式,该模式是对传统网络安全教育方式的重大突破。在这种模式下,同学们被分为攻击方(红队)和防御方(蓝队),打破了传统教材的“单向输出”模式。同学们不再是被动接受知识的旁观者,而是化身为网络空间的探险家——时而扮演“红队”黑客,在虚拟迷宫中寻找系统漏洞;时而转为“蓝队”卫士,构筑防火墙抵御入侵。这种角色扮演式的学习体验,让技术学习变得像游戏闯关一样充满乐趣。

其次,这本书提供了一个几乎免费的虚拟网络空间安全实验室的构建方案,同学们可以在安全的环境中模拟真实的网络攻防,既能避免法律风险,又能大幅降低实验成本。例如,利用虚拟机等工具搭建包含漏洞的靶机系统,同学们可以借此展开实战演练,以便掌握渗透测试、漏洞修复等技能。

这两大匠心设计汇聚在一起使得本书既是一本严谨的技术手册,又是一部生动的网络安全启示录。它给出了网络安全教材新的可能性—原来技术教材也可以如此引人入胜。两位作者都是深耕网络安全多年的研究者,书中字里行间处处流露着他们对技术的虔诚与对读者的尊重,这种敬畏之心最终构成了全书最动人的底色。

希望每一位读者都能从这本书中,既学到扎实的技术本领,更获得应对未来安全挑战的思维方法。

王伟

西安交通大学教授,博士生导师,国家级领军人才

西安交通大学电子与信息学部软件学院院长

推荐序二

凡是真正走过网络安全实战之路的人,心中都有一段关于LiveCD的记忆。彼时,没有集成化平台与标准化体系,一张光盘或一个U盘,便是探索网络世界的全部工具。无数爱好者在机房或宿舍,借助各类LiveCD环境,开始接触并学习基础的渗透测试命令。BackTrack作为其中的代表,是当时众多安全技术研究者的学习起点。

BackTrack的重要价值在于将专业的渗透测试工具集成为一个更易获取的系统,涵盖了无线网络、射频通信等新兴安全研究领域。借助这一平台,我在早期研究中,曾发现城市轨道交通无线控制系统及公交智能IC卡等领域的安全隐患,相关成果促进了行业对安全问题的关注与改进。这一经历深刻印证了“工欲善其事,必先利其器”的道理。

随着技术的发展,BackTrack的继承者Kali Linux在工具集成、系统稳定性和跨平台支持等方面持续演进,已成为现代网络安全技术研究与实战中广泛使用的基础平台之一。

如今的网络安全攻防演练,早已不是单打独斗进行漏洞挖掘,而是体系化、流程化、高强度的红蓝对抗。红队要模拟真实攻击,突破边界、横向移动、权限提升、持久占位;蓝队要监测告警、拦截阻断、溯源反制、加固闭环。双方比拼的不只是思路,更是对工具的熟练掌控、对环境的快速适应、对流程的精准执行。在这样的战场里,Kali Linux就是最可靠的战友,从外网打点到内网纵深,从近源渗透到应急响应,无处不在。

可问题也随之而来:

❑ 很多新人入门网安,懂理论不会动手,会工具不懂对抗;

❑ 很多高校开课,缺体系、缺实验、缺一套能直接落地的教材;

❑ 很多从业者进阶,知识点零散,不成体系,难以形成完整的攻防链路。

本书正是为解决这些痛点而来。

本书延续了Ms08067安全实验室团队著作一贯的通俗、实战、体系化风格,同时又深度贴合高校教学与企业实训的需求,把Kali Linux的使用与红蓝对抗全流程完美融合。它不只是一本“工具说明书”,更是一套可教学、可实验、可考核的完整课程体系。每章明确划分学时,理论与实践并重;每节配套可复现的实操环节,步骤清晰、截图翔实;每章末尾配有小结与习题,方便自测与教学评估。无论是老师用来备课、上课、布置实验,还是学生自学、练手、备战竞赛,抑或是安全工程师查漏补缺、体系化提升,都能直接拿来用。

在网络安全这条路上,真正的高手永远要靠扎实的基本功、可靠的工具、实战化的思维立足。

如果你是刚踏入安全圈的新人,这本书会帮你少走半年弯路。

如果你是高校师生,它是一套拿来就能开课的优质教材。

如果你是企业里的安全工程师,它能帮你把零散技能串成完整攻防能力。

愿你以Kali为器,以本书为师,守正创新、技术向善,在合法合规的前提下,锤炼攻防硬实力,成为数字时代可靠的网络安全守护者。

杨卿

北京冬奥会与冬残奥会网络安全卫士(白帽冠军代表)

著有《无线电安全攻防大揭秘》

全球移动通信系统协会(GSMA)安全名人堂首位入选者,编号“CVD#0001”;
获国家信息安全漏洞库(CNNVD)2021年度特殊贡献奖;

CNNVD首批漏洞奖励计划首位获奖者,编号“CNNVD-JL-001”

推荐序三

网络安全领域的知识迭代,本质上是一场没有终点的攻防“军备竞赛”。攻防双方在战术、技术与策略上的博弈,其演变速度与激烈程度,远非传统学科可比。正因如此,一本真正优秀的专业教材,其价值绝不能仅停留在知识的罗列与工具的使用指南层面。它应当是一张能够指引方向、厘清脉络,并系统培养学习者“安全思维模式”的战略地图。本书正是这样一份方向明确、结构精密且极具诚意的战略地图。

翻阅此书,我最先感受到的,是作者对当前网络安全人才培养痛点的精准诊断与系统回应。我在日常与团队年轻成员以及高校教师的交流中发现,他们普遍面临一个困境:学习者在学习路径上常陷入两种极端。一种沉溺于理论概念,从加密算法到网络协议背得滚瓜烂熟,却从未在一台真实的服务器上执行过一次渗透测试,知识体系悬浮于空中;另一种则过度沉迷于工具的炫技与漏洞的复现,机械地复制几个PoC便沾沾自喜,但对于攻击链路背后的原理、流量特征的意义及防御体系的构建逻辑全然不知。这两种割裂的学习方式,恰恰是导致当前“学历型”人才过剩而“实战型”人才严重短缺的深层原因。

本书最核心的突破在于,它用“红蓝对抗”这一动态、立体的教学框架,将理论与实战、攻击与防御有机地缝合为一体。它不是一本“命令大全”,也不是一本“漏洞字典”,而是一套完整的“思维训练体系”。它引导读者不断切换视角进行思考:作为红队,为何要从资产探索与攻击面管理入手?每一步操作的战术目的是什么?作为蓝队,当检测到异常流量时,应当如何溯源攻击路径、评估威胁等级并制定阻断策略?这种贯穿始终的辩证思维训练,对于培养具备全局视野与系统性思考能力的实战型人才,是不可或缺的。

本书的结构编排同样展现了作者在高校教学一线的深厚积淀。从第1章“红蓝对抗环境的构建”扎实铺垫,到第13章“持久化控制”的纵深探讨,全书呈现出一种“循序渐进、螺旋上升”的精心设计。尤为值得肯定的是,作者将教学大纲、学时规划与明确的教学日历直接融入章节结构之中,并配套提供了实验环境搭建指南与标准化习题体系。这种对一线教学痛点的深切体察与系统回应,使本书不仅适合作为学生自学的参考书,更适合作为高校教师手中“开箱即用”的标准化教学工具包。在当前许多高校网安课程普遍面临“实验环境搭建门槛高、教学内容碎片化、学习效果难以评估”的现实困境下,这种体系化的解决方案,其实际价值不言而喻。

如果说攻防视角的切换是本书的“哲学内核”,那么对技术细节的深度剖析则是其“硬核外壳”。以第13章“持久化控制”为例,这几乎是目前同类教材中少见的精彩篇章。它所探讨的不再是短期的“进入”与“破坏”,而是红队从“短期攻破”向“长期潜伏”的战略思维跃迁。理解“如何打开一把锁”并不难,难的是理解“如何在锁芯中留下后门”并深刻洞察“如何在不被察觉的前提下,将潜伏的节点作为下一次行动的战略支点”。这种思维层次的跃迁,正是从“脚本小子”走向“成熟安全专家”的关键一步。而这一切技术探讨都严格建立在作者反复强调的“合法合规”原则之下。在本书中,作者始终倡导“技术向善”的价值观,这种将伦理教育深度融入技术教学的责任感,在当前复杂的网络生态中显得尤为珍贵。

纵观当前国内安全出版领域,能够将“实战技术”“体系化教学设计”与“职业伦理责任”如此成熟、有机地融为一体的著作并不多见。对于正在高校中研习安全理论的学子,或是渴望系统化提升自身攻防素养的一线从业者而言,本书将是一座值得反复研读的知识宝库。它不仅在传授知识,更是在塑造思维。

侯亮

国泰海通证券信息安全专家

推荐序四

看到这本书时,我不由得感慨:这是一本真正为初学者“架桥铺路”的实用教材,更是高校网络安全教学的理想之选。

本书以Kali Linux为平台,以“红蓝对抗”为主线,构建了系统、完整的攻防教学体系。最令我欣赏的是其针对教学痛点的精心设计——以学时为单位编排内容,教师可直接照表执行,学生也能循序渐进地掌握知识与技能。前3章为读者打下坚实的工具与理论基础。第4~7章系统地讲解外网渗透关键技术,每一章都配有实践环节。第8~13章则聚焦进阶攻防场景,实现了从外网到内网、从突破到维持的完整攻击链教学。

尤为值得称道的是本书采用的“红蓝对抗”教学模式——红队学习漏洞利用与持久化控制,蓝队学习攻击检测与防御加固。这种攻防双视角的思维方式,正是当下网络安全人才培养所需要的。每章末尾的小结与习题,也为教师评估整体教学效果提供了有力的工具。

无论你是正在为网络安全教学寻找合适教材的高校教师,还是希望系统入门红蓝对抗技术的初学者,抑或是一线网络安全从业者,本书都值得成为你的案头实战指南。

愿每一位读者都能以本书为起点,在合法合规的前提下,将Kali Linux转化为捍卫网络安全的法宝,这是每一位网络安全从业者应该提前修炼的专业基本功。

陈小兵

阿里巴巴前高级安全专家,网络安全领域畅销书作家

导  言

初涉网安时,谁人不是满怀少年意气!

多少人怀揣着对未知世界的好奇与憧憬,踏入了这既迷人又充满挑战的网络安全领域。可其中的大多数人寒窗数载,反复琢磨,到头来面对复杂、晦涩的知识体系,仍不知从何处下手,长久在迷茫中徘徊。

本书正是为帮助对网络安全满怀兴趣并且渴望探索这一领域的读者摆脱这种困境,而搭建的一座坚实的入门桥梁。我们深知,对初学者来说,晦涩难懂的专业术语和复杂的技术架构犹如一座座难以翻越的高山。因此,我们在编写本书的过程中,秉持着通俗易懂、循序渐进的原则,力求将网络安全的基础知识以贴近生活、易于理解的方式呈现出来。

无论你是网络安全相关专业的学生,还是对网络安全技术感兴趣的其他读者,本书都将是你开启网络安全之旅的伙伴。

本书也深刻考虑了网络安全领域中的一个重要群体—正在高校中传道、授业、解惑的网络安全教师的需求,他们不仅仅是知识的传递者,更是学生探索网络安全领域的引路人。

教师需要将晦涩难懂的技术知识转化为易于理解的教学内容,引导学生逐步建立扎实的知识体系。同时,教师还需要激发学生的学习兴趣和探索精神,培养学生的创新思维和实践能力。正因如此,教师往往对网络安全教学中的以下痛点深有体会:

❑ 理论知识晦涩难懂,学生理解门槛高;

❑ 实践教学缺乏有效的工具和环境支持,实验设备成本高且部署复杂;

❑ 教学资源分散,优质内容难以有效整合;

❑ 教学进度与效果难以量化评估,学生学习效果不易客观衡量。

这些痛点一直阻碍着网络安全教学的开展,也让许多教师在教学过程中倍感压力。

我们在讲解网络安全技术、注重内容实践性的同时,也从教师的实际需求出发,精心设计本书的每一个环节,力求让网络安全教学变得轻松、高效。

首先,本书提供体系化的情景沉浸式实验项目。我们深知,网络安全是一门实践性极强的学科,将理论与实践相结合是教学的关键。因此,书中设计了一系列贴近真实攻防场景的实验项目,涵盖从基础的漏洞扫描与修复,到进阶的网络攻击与防御模拟。每个实验项目都配有详细的步骤指导、操作截图以及实验靶机的搭建说明,确保教师能够在课堂上轻松引导学生进行实战演练。

其次,本书配备完善且灵活的教学大纲和教学日历。教学大纲旨在帮助教师快速把握教学重点和进度安排。教学日历则为教师提供详细的课程规划建议,从课程引入到实验操作,从理论讲解到案例分析,每一步都有清晰的时间安排和内容指导。教师可以根据自己的实际情况灵活调整教学计划,确保教学过程的连贯性和有效性。

最后,本书还提供丰富的教学资源。为了方便教师备课和开展教学工作,本书提供配套的教学课件、实验环境搭建指南、习题答案及解析等资源。这些资源涵盖从基础理论到实战应用各个层面的内容,能满足不同层次学生的学习需求。教师可以根据教学计划灵活选择教学内容和实验项目,确保每个学生都能在课堂上有所收获。

时光荏苒,我们在网络安全教育的道路上潜心钻研、细心打磨,最终促成了本书的诞生。如果你认可我们的付出,请把本书推荐给你身边的朋友!

徐焱

2026年1月

致  谢

特别感谢Offensive Security团队持续优化Kali Linux平台。感谢人民邮电出版社策划编辑胡俊英为本书的出版所做的大量工作。感谢刘吉强、王伟、芦斌、张胜生、费金龙在百忙之中为本书提供的评审意见及专业支持。

前  言

本书为国内高校的师生量身打造,能够充分满足各类教学需求,提升学生的学习效果和实践能力。本书不仅是高校网络安全课程的理想教材,也是网络安全从业者提升网络安全技能的重要参考书。综合来看,本书具有以下显著特色。

一、本书特色

1.按学时划分的章节内容

本书各章节内容根据教学需求进行精心设计,每章的总学时明确划分为讲授学时和实践学时两部分,以确保教学内容的系统性和连贯性。为了更好地适应高校的教学安排,全书以2学时为基本单位进行各章节内容的划分,这种划分方式不仅能帮助教师合理安排教学进度,还能确保学生在有限的时间内高效掌握知识点,并且各章节内容可以根据教学进度灵活调整,确保理论与实践的平衡。

以第3章“Kali Linux的加解密操作”为例,全章设计使用8学时来完成讲授和实践,其中讲授学时为4学时(理论知识),实践学时为4学时(实验操作),共需完成4次课程。

❑ 第1次课程(2学时)。

讲授(1学时):经典加密算法(如凯撒加密算法、普莱费尔加密算法)的原理与应用。

实践(1学时):通过手动计算和使用简单工具实现经典加密算法的加密和解密。

❑ 第2次课程(2学时)。

讲授(1学时):ASCII码和Base64的原理与应用。

实践(1学时):在Kali Linux中使用工具进行编码和解码操作。

❑ 第3次课程(2学时)。

讲授(1学时):Hash算法的原理与应用。

实践(1学时):在Kali Linux中使用常见Hash算法保证文件的完整性。

❑ 第4次课程(2学时)。

讲授(1学时):现代加密算法(如AES、RSA)的原理与应用。

实践(1学时):使用OpenSSL进行对称加密和非对称加密操作。

2.按章设置实践环节

实践是网络安全学习的核心,本书在每章中都设置了详细的实践环节,帮助学生将理论知识转化为实践操作能力。举例如下。

实践环节28:通过密钥实现持久化控制。

实践环节29:创建系统用户,并通过配置.bashrc文件实现持久化控制。

这些实践环节提供了清晰的指导,确保学生能够在实验环境中顺利完成任务,培养学生解决实际问题的能力。

3.红蓝对抗的教学模式

本书采用红蓝对抗的教学模式,模拟真实的网络安全攻防场景,以激发学生的学习兴趣和提高学生的参与度。

红队:学习如何利用漏洞进行攻击,实现持久化控制。

蓝队:学习如何检测和防范攻击,提升系统的安全性。

这种教学模式不仅能够帮助学生理解攻防双方的思维方式,还能够培养学生的团队协作能力和创新思维,为学生未来的职业发展打下坚实基础。

4.各章小结和习题

每章末尾都配有详细的小结和习题,以帮助学生巩固所学知识,检验学习效果。习题有以下几种类型。

❑ 选择题:测试学生对关键概念和工具的掌握程度。

❑ 填空题:加深学生对技术细节的记忆。

❑ 简答题:培养学生的分析和表达能力。

❑ 思考题:引导学生思考技术的实际应用场景和未来发展方向。

这些习题不仅能够帮助学生复习知识点,还能够为教师提供评估学生学习效果的工具,以确保教学质量。

二、本书结构

本书以Kali Linux为工具,详细地介绍网络安全中的各种实战技术。全书按照从简单到复杂﹑从基础到进阶的顺序,从贴近初学者学习曲线的角度进行相关知识的讲解。本书配套的实验环境及源代码完全免费,旨在帮助读者掌握现代化网络安全的核心技能。

第1章是全书的基础,介绍红蓝对抗的概念及其在网络安全教学中的重要性,讲解如何使用Kali Linux、Metasploitable 2和Metasploitable 3构建红蓝对抗环境。通过模拟企业IT环境,红队(攻击者)和蓝队(防御者)能够在对抗中学习攻防技术,掌握构建红蓝对抗环境的方法,为后续章节的实战演练奠定基础。

第2章介绍Kali Linux的常用命令。内容涵盖文件系统管理命令(如pwd、cd、ls等)、文件权限管理命令(如chmod、chown等)、用户系统管理命令(如su、sudo等)、进程管理命令(如ps、top等)及Shell脚本编写等。读者能够通过丰富的实验案例,熟练掌握Kali Linux的常用命令,为后续章节的渗透测试和安全审计提供必要的技能支持。

第3章系统讲解网络安全的加解密技术,内容涵盖四大知识模块:经典加密算法(如凯撒加密、普莱费尔加密)的原理与破解方法,常见编码方式(如莫尔斯电码、ASCII码、Base64)的规则与应用场景,Hash算法(如MD5、SHA-256)在文件完整性校验与密码存储中的实践,现代加密算法(如对称加密AES、非对称加密RSA)的工作原理。读者可配合实践操作,学习使用Kali Linux中的工具实现相关操作。此外,本章还探讨了加密技术在密码存储、数据传输和身份验证等场景中的实际应用。

第4章结合Nmap等工具,介绍资产探索、端口扫描、服务和版本检测、漏洞扫描的核心流程。内容涉及如何生成详细的安全扫描报告、如何利用NSE进行漏洞扫描等。通过实践本章内容,读者能够学会如何全面评估目标设备的操作系统的安全状况。

第5章讲解字典攻击和暴力破解两种技术的原理与实践。读者可借助工具(如Hydra和Crunch)学习如何生成定制化字典、执行在线暴力破解,并借助Pipal对密码列表进行统计分析,以了解用户设置密码的倾向性。此外,本章还探讨了密码策略的重要性及其局限性,并演示了如何有效阻断暴力破解攻击。

第6章深入讲解Hash算法的原理与应用,重点介绍MD5等常见Hash算法在密码存储中的使用方式及其安全局限性。读者将学习如何通过入侵MySQL数据库提取用户密码的Hash值,并使用hash-identifier识别Hash算法类型,最终借助John the Ripper配合字典实现本地离线破解。此外,本章还通过撞库攻击的典型案例,揭示用户在多个平台重复使用相同密码所带来的连锁安全风险。

第7章通过“笑脸漏洞”的案例,深入剖析供应链投毒的原理与危害。读者将学习如何使用Nmap检测漏洞、利用Netcat手动触发后门获取服务器控制权,并掌握Metasploit框架的基本使用方法。此外,本章还演示了如何从已控制的目标系统中提取/etc/passwd和/etc/shadow文件,并结合unshadow与John the Ripper进行本地密码破解。

第8章探讨共享文件遍历漏洞的成因与漏洞攻击防范技巧。读者可通过Samba等服务的配置与管理,学习如何检测和利用共享文件遍历漏洞,并通过设置合理的防火墙规则防范此类漏洞攻击。

第9章通过VNC远程控制和网页篡改技术,展示服务器主页被篡改的攻击链条。读者将了解如何使用Metasploit的vnc_login模块破解VNC密码,获取服务器控制权,掌握Apache Web服务器的目录结构与文件权限配置,并利用setoolkit的社会工程学功能实现网页复制与凭据窃取攻击。本章以实战演练为核心,帮助读者从攻击者视角理解网页篡改的完整流程与隐蔽危害。

第10章详细讲解数据链路层、网络层、传输层和应用层的拒绝服务攻击原理与实现方法。读者可借助相关工具(如hping3和Metasploit)了解如何从不同协议层构造并发起拒绝服务攻击,并通过Wireshark捕获和分析攻击流量,深入理解各类攻击的数据包特征与工作机制。

第11章通过内网模拟环境的构建,展示如何从外网渗透到内网。内容包括如何利用Meterpreter进行跳板攻击,以及如何通过路由配置和端口扫描实现内网横向 移动。

第12章深入讲解Linux系统中的用户权限分级机制、SUID的概念与提权方法,以及Metasploit中的提权操作。读者将通过实践了解如何利用系统漏洞从普通用户权限提升至root权限,掌握SearchSploit的漏洞搜索方法、本地漏洞利用模块的编译与执行,以及Meterpreter会话中getsystem和local_exploit_suggester模块的使用。

第13章深入探讨网络安全中的持久化控制技术,旨在帮助红队建立对目标系统长期有效的访问权限(即使系统重启或相关内容被清理,红队也能保持对系统的控制)。内容涵盖多种技术手段,包括SSH密钥认证、系统用户创建、.bashrc文件利用、PHP利用及Cron定时任务设置等。

三、目标读者

本书主要面向以下读者群体。

❑ 高校教师。本书可作为网络安全、渗透测试、信息对抗等相关课程的教材。书中明确的学时规划、丰富的案例和习题可为教师的教学设计提供有力支撑。

❑ 高校学生。本书可作为计算机科学与技术、信息安全、网络工程等专业的学生系统化学习网络安全攻防技术的教材。建议学生具备基本的操作系统和网络知识。

❑ 一线网络安全从业者与技术爱好者。本书可作为提升技能的参考书,书中大量的实战场景和工具用法具有较高的参考价值。

四、特别声明

本书通过一系列虚构的攻防情景,引导读者从攻防双重视角深入理解网络安全的核心原理与技术本质,并通过系统化的实践环节提升网络安全防护与对抗能力。书中涉及的所有漏洞利用、病毒分析、攻击演示等操作,均在完全封闭的虚拟实验环境或授权靶机中进行,严格遵循网络安全法律法规与伦理准则,不会对任何真实系统构成安全威胁。本书旨在帮助读者掌握扎实的网络安全知识,提升实战分析与网络攻击防御能力,为培养符合新时代要求的高素质网络安全人才贡献力量。

我们倡导读者在学习过程中树立正确的网络安全观,秉持技术向善、守正创新的价值观,严格遵守国家相关法律法规,将所学知识用于维护网络安全、促进技术进步与社会和谐。任何技术都应服务于合法、合规、合德的用途,我们坚决反对并谴责一切利用网络安全技术造成非法侵害、破坏秩序的行为。希望读者在掌握技能的同时,不断增强法律意识、责任意识和职业伦理意识,共同营造风清气正、安全可信的网络环境。

本书仅限于讨论网络安全技术,请勿用于非法用途,严禁利用本书所提到的漏洞和技术进行非法攻击,否则后果自负!作者和出版社无须为此承担任何责任!

五、资源与服务

本书的配套学习平台为Ms08067网站,读者可关注微信公众号“Ms08067安全实验室”和“邪灵工作室”获取本书的配套资源及相关服务。

配套资源包括如下内容。

❑ 电子资料:本书配套的教学课件、教学大纲和书中实验项目的演示视频。

❑ 实验环境:用于实践操作的靶机镜像。

❑ 习题答案与解析:各章习题的参考答案与详细解析。

相关服务包括如下内容。

❑ 内容更新与勘误:本书技术内容、实验步骤的持续更新及已知错误的修正说明。

❑ 反馈渠道:读者可通过上述微信公众号向我们反馈意见,以便我们持续改进。

第1章 红蓝对抗环境的构建

魏晋大学坐落于一个东部沿海城市,是一所享有盛誉的高等学府,尤其在网络安全领域表现卓越。该校不仅培养了大批顶尖的网络安全人才,还在多项国际赛事中屡获佳绩。作为该校网络安全专业的核心课程之一,“网络攻击与防御技术”是该专业每位学生在进入大二后的必修课。这门课程以实践为导向,采用了一种创新的教学模式:教师将学生分为两队,一队扮演企业的信息技术(Information Technology,IT)团队(简称蓝队),负责构建和维护企业的各项业务系统;另一队则扮演攻击者(简称红队),负责对蓝队的系统进行攻击。这种教学模式旨在打破传统的以教师为中心的授课模式,激发学生的学习兴趣。学生能在短时间内迅速进入角色,沉浸在这场模拟对抗中。

课程采用“回合制”的行动机制,即一队行动结束后,另一队才能开始行动。这种设计旨在让学生能够清晰地观察和理解攻击与防御的完整过程,不过这种模拟场景与真实场景还是存在一定差异的。在课程开始时,红队首先需要选择攻击工具并制订行动计划,同时参考相关的知识库;而蓝队的首要任务则是搭建一个模拟企业IT环境的系统,为后续的攻防对抗做好准备。

本章预计需要2学时,其中讲授和实践各1学时。

❑ 1.1~1.4节需要2学时,其中讲授1学时,实践1学时。

1.1 红队使用的攻击环境

在这一学期的对抗中,红队需要一直扮演攻击者,负责模拟真实的网络攻击,以发现蓝队系统的漏洞和弱点。在执行模拟攻击时,红队需要使用大量的网络武器。

而需要使用哪些网络武器以及如何获得这些网络武器则成为摆在红队同学面前的第一个问题。对此,红队同学展开了讨论,并最终针对这些网络武器确定了以下需求。

❑ 能涵盖当前的各种常见漏洞。

❑ 操作要尽量简单。

❑ 学习资料要丰富。

因此,红队同学提出了3种解决方案:一是集中红队中精通编程的同学,自行开发所需的各种网络武器;二是以Windows为操作系统,在其中安装Nmap、SQLmap等网络武器来构建攻击环境;三是使用已经预先集成多种网络武器的攻击环境。

第一种方案需要花费大量的时间和精力,而且存在极大的技术难度,很快被红队同学否决。第二种方案同样存在上述问题,刚接触网络安全的同学无法在初期就确定到底需要哪些网络武器。

这时,红队同学一致同意使用Kali Linux作为本次红队任务的攻击环境,理由主要有4点。

❑ Kali Linux安装了当前几乎所有的优秀网络武器。这些网络武器覆盖从信息收集、漏洞扫描、漏洞利用到后渗透的各个阶段,能够满足红队在各种场景下的需求。

❑ Kali Linux提供了类似Windows的图形化操作界面。即使是没有Linux使用基础的红队同学,也可以通过图形化操作界面快速上手,进行基本的操作和工具使用。

❑ 由于Kali Linux得到了大量网络安全从业人士的喜爱,因此相关的图书和网上资料众多,有大量的优秀教程可以参考。

❑ Kali Linux可以在虚拟机环境下运行,虚拟机技术允许在一台计算机上同时运行多个操作系统,可实现Windows和Kali Linux甚至更多操作系统的共存。

最终,经过资料收集、信息汇总以及深入研讨,红队决定选用Kali Linux作为攻击 环境。

1.2 蓝队使用的工作环境

在红队展开讨论的同时,蓝队也展开了激烈的讨论。蓝队面临的问题更为复杂。第一,他们必须建立一个可以运行的完整企业IT环境;第二,他们需要为红队预留一些漏洞(这样才能展开网络攻防)。

在蓝队设计的企业IT环境中,较为重要的部分就是能提供各种服务的服务器。和红队面临的难题一样,如何构建这些服务器也成了蓝队开展工作的拦路虎。

对此蓝队进行了大量的思考和调研,他们最终选择了使用已有的靶机作为服务器,放弃了自行安装操作系统和各种软件的方案。靶机在网络安全学习中扮演着至关重要的角色,它们是经过专门设计的脆弱系统,用于模拟真实的攻击目标,以便参与者能够在一个安全和受控的环境中进行攻防演练。

通过这些靶机,红队和蓝队可以实践各种攻击和防御技术,测试网络安全防御措施的有效性,并学习如何识别和利用系统中的安全漏洞。靶机的存在不仅使网络安全学习场景更加接近真实世界的网络攻击场景,还可以帮助参与者提高对网络威胁的认识,锻炼应急响应能力。

最终,蓝队选择使用Metasploitable 2和Metasploitable 3两个靶机来构建工作环境。

Metasploitable 2是一个经过专门改造的Ubuntu操作系统。设计该系统的目的是提供一个用于测试安全工具和演示常见漏洞攻击的环境。Metasploitable 2中包含多种安全漏洞(如弱口令、服务漏洞等),适合网络安全初学者学习和实践;其中还搭载了DVWA、Mutillidae等漏洞演练平台,提供了真实的Web漏洞环境。这个系统兼容VMware Workstation、VirtualBox等虚拟平台。图1-1给出了Metasploitable 2的启动界面。

图1-1 Metasploitable 2的启动界面

Metasploitable 3则是Metasploitable 2的升级版本,它不仅具有Metasploitable 2的所有特性,还增加了更多未被修复的安全漏洞,同时支持Windows版本和Linux版本,目前主要有Windows Server 2008 R2和Ubuntu 14.04这两种不同的版本。考虑到真实的企业IT环境往往会采用Linux系统构建服务器,蓝队同学选用的是Ubuntu 14.04版本。图1-2给出了Ubuntu 14.04版本的Metasploitable 3的启动界面。

图1-2 Ubuntu 14.04版本的Metasploitable 3的启动界面

和平时使用的系统有所不同的是,Metasploitable 3和Metasploitable 2这两个系统并没有安装图形化操作界面,所有的操作都需要通过命令来实现。

1.3 蓝队的企业网络架构设计

蓝队同学在选定了用于构建工作环境的服务器之后,还兴致勃勃地成立了一个企业“魏晋”。蓝队同学开始为这个企业设计网络架构,该企业网络架构主要分为两个关键区域—服务器区和办公区。在这种设计中,办公区包含员工日常工作使用的计算机、打印机等设备,而服务器区则托管着企业的关键服务和数据,包括两台特别配置的虚拟机—Metasploitable 2和Metasploitable 3。

根据业务需求,蓝队同学为服务器区设计了二层网络A和三层网络B两种网络方案。

❑ 在二层网络A中,所有主机都位于同一个广播域内,通过交换机连接,使用介质访问控制(Medium Access Control,MAC)地址进行通信。二层网络A架构简单,易于部署和管理,主要设备是交换机,成本相对较低。但是所有主机都在同一个广播域内,安全性较低。

❑ 在三层网络B中,主机被划分到不同的子网,通过路由器连接,使用互联网协议(Internet Protocol,IP)地址进行通信。三层网络B可以支持大规模网络,通过划分子网来管理大量主机和增强网络安全性,但是网络架构相对复杂,需要配置IP地址、子网掩码和路由表。

这两种方案都是为了满足企业的弹性需求而设计的。例如,企业在建立之初只需要小型、简单的网络环境,这时就可以采用二层网络A这种方案。当企业规模变大,需要大型、复杂的网络环境时,则可以采用三层网络B这种方案。

接下来详细地介绍这两种方案。

1.3.1 二层网络A

在二层网络A中,蓝队同学在企业网络架构中的服务器区搭建了两台服务器,且两台服务器都同时对内外网开放。企业网络架构的内外连通情况描述如下,如图1-3所示。

❑ 办公区的所有设备和服务器区的两台Metasploitable服务器是相互连通的。

❑ 从企业外部只能访问到服务器区的两台Metasploitable服务器,而无法访问到办公区的所有设备。

图1-3 两台服务器都可以从外网访问

1.3.2 三层网络B

在三层网络B中,蓝队同学同样在企业网络架构中的服务器区搭建了两台服务器,但只有一台服务器同时对内外网开放,属于外网服务器,而另外一台服务器只对内网开放。企业网络架构的内外连通情况描述如下,如图1-4所示。

❑ 办公区的所有设备和服务器区的两台Metasploitable服务器是相互连通的。

❑ 从企业外部只能访问服务器区的Metasploitable 2服务器,而无法访问到Metasploitable 3服务器和办公区的所有设备。

图1-4 只有一台服务器可以从外网访问

1.4 构建红蓝对抗环境

根据业务需求,红队和蓝队需要一起构建实验所需的环境。在该环境中需要包含红队所使用的Kali Linux和蓝队所维护的Metasploitable 2、Metasploitable 3两台服务器。

实践说明:

本书实验环境基于VMware Workstation虚拟网络搭建,各虚拟机(包括Kali Linux、Metasploitable 2和Metasploitable 3)的IP地址均由VMware Workstation内置的DHCP服务动态分配。因此,不同章节截图中显示的IP地址可能各不相同,读者在自己的实操环境中启动虚拟机时获取的IP地址也会与书中不完全一致。

这是正常的实验现象,不影响实验操作。请读者在进行实验时,以自己的实操环境中通过ifconfig命令查看到的实际IP地址为准,书中的IP地址仅供参考。

1.4.1 二层网络A的实现

在二层网络A的设计中,Kali Linux、Metasploitable 2、Metasploitable 3都处于同一个子网中。

在本小节中,红队和蓝队将会完成VMware Workstation的下载与安装,并导入3台虚拟机的镜像。在1.4.2小节中,红队和蓝队将会测试这个网络的连通性。(本书如果在学校机房中作为实验教材使用,该环境可以由教师或机房管理人员提前完成构建。)

(1)首先下载并安装VMware Workstation,安装完成之后的VMware Workstation如图1-5所示。

图1-5 安装完成之后的VMware Workstation

(2)从官方网站或者作者的微信公众号下载Kali Linux、Metasploitable 2和Metasploitable 3(本书使用了Ubuntu 14.04版本)的镜像。

(3)导入这3个镜像,这里以导入Metasploitable 3的镜像为例,另外两个镜像的操作与之类似。首先在VMware Workstation的“文件”菜单中选择“打开”命令,在弹出的对话框中选中“Metasploitable3-ub1404.ova”,如图1-6所示,并单击“打开”按钮。

图1-6 选中“Metasploitable3-ub1404.ova”

(4)在弹出的“导入虚拟机”对话框中设置新虚拟机名称,并选择存储路径,如图1-7所示,单击“导入”按钮。

图1-7 设置新虚拟机名称并选择存储路径

(5)部分版本的VMware Workstation在导入过程中可能会出现图1-8所示的导入失败提示,此时单击“重试”按钮即可。

图1-8 导入失败提示

(6)全部镜像导入完成之后,在VMware Workstation中就多了3个虚拟机镜像,如图1-9所示。

图1-9 全部镜像导入完成

VMware Workstation中的虚拟网络编辑器是一个功能强大的工具,它允许用户模拟和配置不同的网络环境,以满足各种虚拟化场景的需求。默认情况下,VMware Workstation提供了3个虚拟网络,可以通过选择VMware Workstation菜单栏上的“编辑”→“虚拟网络编辑器”命令,在弹出的虚拟网络编辑器中查看当前的虚拟网络,如图1-10所示。

图1-10 虚拟网络

我们可以将虚拟网络编辑器中的VMnet1、VMnet2和VMnet8理解为3个相互隔离且不相通的网络。其中VMnet8对应“NAT模式”,VMnet1、VMnet2则对应“仅主机模式”。

VMware Workstation中的每一个镜像都可以连接到这3个虚拟网络。例如,对于Kali Linux,我们可以在开启它之前单击“编辑虚拟机设置”按钮,在弹出的对话框中设置该镜像的网络连接,如图1-11所示。

图1-11 设置网络连接

需要注意的是,Kali Linux只有一个网络适配器,如图1-12中左侧框所示。该网络适配器对应的网络连接使用“NAT模式”,如图1-12中右侧框所示。

图1-12 Kali Linux只有一个网络适配器

而Metasploitable 2和Metasploitable 3都有两个网络适配器,如图1-13所示。

图1-13 Metasploitable 2和Metasploitable 3都有两个网络适配器

3个镜像已经默认配置好了网络连接,它们的网络连接情况如表1-1所示。其中,Kali Linux、Metasploitable 2和Metasploitable 3的第一个网络适配器都连接到了“NAT模式”的VMnet8,所以它们之间可以连通。Metasploitable 2和Metasploitable 3的第二个网络适配器则分别连接到“仅主机模式”的VMnet1和VMnet2,所以它们之间不是相互连通的。同时,Kali Linux没有第二个网络适配器,它并不能连接到“仅主机模式”的网络。

表1-1 3个镜像的网络连接情况

网络适配器

Kali Linux

Metasploitable 2

Metasploitable 3

网络适配器1

NAT模式

NAT模式

NAT模式

网络适配器2

无

仅主机模式(VMnet1)

仅主机模式(VMnet2)

1.4.2 测试二层网络A的连通性

二层网络A实现以后,红队和蓝队需要测试该方案的连通性。这项工作主要由红队完成,这就要求红队必须掌握Kali Linux的基本网络命令。

掌握这些命令对网络安全从业人员来说至关重要,它不仅涉及日常的网络配置、监控和故障排查,还涉及网络安全维护、性能优化、远程访问管理以及自动化脚本编写等多个方面,是确保Kali Linux稳定、安全和高效运行的关键技能之一。

红队首先启动Kali Linux虚拟机,此时会看到图1-14所示的启动界面,默认的用户名为“kali”,密码也是“kali”。

图1-14 Kali Linux的启动界面

进入Kali Linux之后,首先打开一个图1-15所示的终端(Terminal)。Kali Linux中的终端是一个强大的用户界面,它允许用户通过命令与操作系统进行交互,执行各种系统管理和文件操作任务,如系统配置、网络管理、文件编辑和程序运行等。

图1-15 在Kali Linux中打开一个终端

ifconfig是一个在Kali Linux操作系统中广泛使用的命令,用于显示和配置网络接口的参数。用户通过它可以查看和修改网络适配器的IP地址、子网掩码、广播地址等网络配置信息。

在终端中使用ifconfig命令(在Kali Linux的早期版本中,需要使用sudo ifconfig)可以查看本机所有网络适配器的IP地址,如图1-16所示。

图1-16 在终端中使用ifconfig命令

Linux系统中的网络适配器通常以eth加上一个数字n来命名,这种命名方式遵循了Linux的传统命名规则,其中eth代表以太网(Ethernet),数字n表示这是系统中的第n+1(n≥0)个网络适配器,举例如下。

❑ eth0:第一个网络适配器。

❑ eth1:第二个网络适配器。

❑ eth2:第三个网络适配器。

图1-16只显示了eth0的详细内容,没有显示其他名称以eth开头的网络适配器的详细内容,这表示当前系统只有这一个网络适配器。

接下来,蓝队启动Metasploitable 2,此时会看到图1-17所示的启动界面,默认的用户名为“msfadmin”,密码也是“msfadmin”。

图1-17 Metasploitable 2的启动界面

在Metasploitable 2中也可以使用ifconfig命令查看本机所有网络适配器的IP地址,如图1-18所示。由于在当前实验配置中,第二个网络适配器暂未分配IP地址,因此图1-18中仅显示eth0的相关信息。

图1-18 使用ifconfig命令查看Metasploitable 2所有网络适配器的IP地址

接下来,蓝队启动Metasploitable 3,此时会看到图1-19所示的启动界面,默认的用户名为“vargrant”,密码也是“vargrant”。

图1-19 Metasploitable 3的启动界面

在Metasploitable 3中可以使用ifconfig命令查看本机所有网络适配器的IP地址,如图1-20所示。

图1-20 使用ifconfig命令查看Metasploitable 3所有网络适配器的IP地址

在3台设备都启动之后,红队在Kali Linux中使用ping命令来测试其与Metasploitable 2和Metasploitable 3的连通性。ping命令是一个网络诊断工具,用于测试主机之间的网络连通性。它通过发送互联网控制报文协议(Internet Control Message Protocol,ICMP)回显请求消息给目标主机,并监听ICMP回显响应消息来检查网络连接是否正常。测试的过程如图1-21所示,从该图中可以看到此时3台设备已经处于连通状态。

图1-21 使用ping命令来测试Kali Linux与Metasploitable 2和Metasploitable 3的连通性的过程

1.4.3 三层网络B的实现

当前红队和蓝队建立的3个镜像的IP地址如表1-2所示。

表1-2 3个镜像的IP地址

网络适配器

Kali Linux

Metasploitable 2

Metasploitable 3

网络适配器1

192.168.139.170

192.168.139.169

192.168.139.171

网络适配器2

无

无

192.168.140.130

接下来,蓝队要对当前网络进行改造,使其成为一个三层网络,这样做是为了增大红队入侵的难度。如图1-22所示,该图侧重展示三层网络架构下各设备之间的连接关系。

图1-22 使入侵难度增大的三层网络

按照图1-22,为3个镜像分配IP地址,分配情况如表1-3所示。

表1-3 3个镜像的IP地址分配情况

网络适配器

Kali Linux

Metasploitable 2

Metasploitable 3

网络适配器1

192.168.139.170

无

192.168.139.171

网络适配器2

无

192.168.140.100

192.168.140.130

为了实现表1-3所示的情况,蓝队需要修改Metasploitable 2的配置。为了简化相关操作,这里暂不采用表1-3中“对于Metasploitable 2,关闭网络适配器1,启用网络适配器2”的方案,而是直接将网络适配器1接入内网,使其替代网络适配器2。具体操作如下:在VMware Workstation中单击Metasploitable 2的“编辑虚拟机设置”按钮,将网络适配器1的网络连接由“NAT模式”修改为“仅主机模式”。

至此,Metasploitable 2的网络适配器1已接入内网,但尚未配置静态IP地址。接下来,需要为Metasploitable 2的eth0(即网络适配器1)配置静态IP地址。具体的配置方法将在1.4.4小节详细介绍,读者可参考该节内容完成操作。请注意,在配置时需要将静态IP地址设置为表1-3中指定的192.168.140.100,并将子网掩码设置为255.255.255.0。

配置完成之后,Kali Linux无法连通Metasploitable 2,如图1-23所示。

图1-23 Kali Linux无法连通Metasploitable 2

但是Metasploitable 3可以连通Metasploitable 2,如图1-24所示。

图1-24 Metasploitable 3可以连通Metasploitable 2

此时蓝队已经成功搭建了一个三层网络,如图1-25所示。

图1-25 蓝队设计并实现的三层网络

此时的攻击者如果想要攻击Metasploitable 2,必须先取得Metasploitable 3的控制权,将其作为跳板。上述三层网络架构是很多企业网络架构的一个简化版本。

1.4.4 设置静态IP地址

在1.4.1~1.4.2小节中,Kali Linux、Metasploitable 2和Metasploitable 3的IP地址都是由VMware Workstation自动分配的。各位读者可以使用下面提供的方法来将被分配的IP地址修改成和本书完全相同的IP地址。建议在修改之前先将当前状态保存为“当前快照”(在VMware Workstation中选择“虚拟机”→“快照”→“拍摄快照”命令即可),以便后续操作中根据快照恢复虚拟机状态。在本实验中,只需修改Metasploitable 2的IP地址。

当有特殊的需求时就需要主动设置IP地址,大部分Linux的网络适配器配置都保存在/etc/network/interfaces中。但是Metasploitable 2和Metasploitable 3中都没有图形化操作界面,所以需要专门的文本编辑器来实现对文件的修改。本书中所有实验都使用nano编辑器进行文件修改。在Linux系统中,启动nano编辑器的方法非常简单。只需要打开终端,然后输入nano命令以及想要修改的文件名,并按“Enter”键即可。

例如,在Metasploitable 2中就可以使用以下命令:

    sudo nano /etc/network/interfaces

使用sudo时,Metasploitable 2 会询问密码,此时输入密码“msfadmin”并按“Enter”键就可以打开网络适配器配置文件,打开之后的编辑界面如图1-26所示。

图1-26 在Metasploitable 2中打开网络适配器配置文件之后的编辑界面

这里有两行关于eth0的命令,具体如下:

    auto eth0
    iface eth0 inet dhcp

这两行命令的含义如下。

❑ auto eth0:这一行命令告诉系统在启动时自动激活eth0。auto是一个命令,用于指定哪些网络适配器应该在系统启动时被自动激活。

❑ iface eth0 inet dhcp:这一行命令定义了eth0的配置。iface是“interface”的缩写,用于指定接下来的配置是针对哪个网络适配器的。eth0是网络适配器名称,inet指定了地址族(IPv4),dhcp表示这个网络适配器将使用动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)来自动获取IP地址。

按照表1-3的设计,在Metasploitable 2中只需要一个网络适配器,用来连接到192.168.140.*这个网段,那么可以使用下面的命令来修改eth0的配置信息。

    auto eth0
    iface eth0 inet static
    address 192.168.140.100
    netmask 255.255.255.0

在上述命令中,iface…static表示配置静态IP地址,address用于指定静态IP地址,netmask用于指定子网掩码。修改之后的结果如图1-27所示。

图1-27 对eth0的配置信息进行修改之后的结果

完成修改之后,按快捷键“Ctrl+X”(同时按这两个键),就会弹出图1-28所示的保存界面。

图1-28 弹出的保存界面

在图1-28所示的保存界面中按“Enter”键,就会保存设置并退出nano编辑器。接下来使用如下命令关闭eth0,再重新启动eth0。

    sudo ifdown eth0
    sudo ifup eth0

此时再次查看eth0的配置信息,可以看到其IP地址已经变成了192.168.140.100,如图1-29所示。

图1-29 重启之后eth0的IP地址

… 实践环节1

学生应在1学时的时间内完成以下内容。

(1)在VMware Workstation中导入Kali Linux、Metasploitable 2和Metasploitable 3的镜像,搭建一个基于二层网络A的实验环境,具体要求如下。(如果在机房中已经搭建好环境,可以跳过本任务。)

• 确保所有虚拟机处于同一子网。

• 测试并确保网络连通性。

• 提供详细的步骤说明和测试结果截图,并将其放入实验报告中。

(2)将上述任务中的二层网络A改造为三层网络B,使Metasploitable 2仅能被Metasploitable 3访问,而Kali Linux无法直接访问Metasploitable 2,具体要求如下。

• 配置虚拟机的网络适配器,确保Kali Linux只能通过Metasploitable 3访问Metasploitable 2。

• 测试并确保网络连通性。

• 提供详细的步骤说明和测试结果截图,并将其放入实验报告中。

(3)为Metasploitable 2设置静态IP地址192.168.140.100,并验证配置结果,具体要求如下。

• 修改Metasploitable 2的网络适配器配置文件。

• 重启网络适配器并验证IP地址是否正确。

• 提供详细的步骤说明和验证结果截图,并将其放入实验报告中。

1.5 小结

1.5.1 本章关键内容

本章主要介绍了魏晋大学的学生构建红蓝对抗环境的过程,包括红队和蓝队的分工与任务,以及具体的实验环境搭建步骤。

❑ 红队使用的攻击环境,以及选择Kali Linux作为攻击环境的原因和优势。

❑ 蓝队使用的工作环境,以及Metasploitable 2和Metasploitable 3这两个靶机的特点。

❑ 蓝队的企业网络架构设计,包括二层网络A和三层网络B的设计及其优劣。

❑ 设置静态IP地址,以满足特定的网络配置需求。

❑ 实践环节中,通过VMware Workstation搭建实验环境,具体操作包括镜像导入、网络配置以及网络连通性测试。

1.5.2 学习这些内容的目的

❑ 了解网络安全实验环境的构建过程,掌握红蓝对抗的基本概念和方法。

❑ 熟悉Kali Linux、Metasploitable 2和Metasploitable 3等常用网络安全工具和靶机的使用方法。

❑ 掌握二层网络和三层网络的基本概念及其在网络搭建中的应用。

❑ 学会使用VMware Workstation搭建虚拟网络环境,并能够进行基本的网络配置和连通性测试。

❑ 学会设置静态IP地址,以满足网络安全实验中的特定需求。

1.6 习题

一、选择题

1.Kali Linux的主要优势不包括以下哪一项?(  )

A.涵盖丰富的渗透测试工具

B.提供类似Windows的图形化操作界面

C.需要具备坚实的Linux使用基础才能上手

D.有大量的使用案例和资料可供参考

2.Metasploitable 2和Metasploitable 3的主要区别是(  )。

A.Metasploitable 2比Metasploitable 3更安全

B.Metasploitable 3支持Windows版本和Linux版本

C.Metasploitable 2不包含Web漏洞演练平台

D.Metasploitable 3不支持动态构建VMware Workstation镜像

3.在二层网络A中,所有主机通过什么设备进行通信?(  )

A.路由器

B.交换机

C.防火墙

D.网关

4.三层网络B的主要优点是(  )。

A.网络架构简单

B.成本较低

C.能够增强网络安全性

D.配置简单

5.在VMware Workstation中,虚拟机的网络适配器默认连接到哪种模式的网络?(  )

A.桥接模式

B.NAT模式

C.仅主机模式

D.自定义模式

二、填空题

1.Kali Linux提供了类似    的图形化操作界面,方便没有Linux使用基础的用户快速上手。

2.Metasploitable 2是一个特别制作的    操作系统,提供一个用于演示常见漏洞攻击的环境。

3.在二层网络A中,所有主机都位于同一个    内,通过交换机连接。

4.三层网络B通过划分子网可以增强网络的    。

5.在Linux系统中,网络适配器名称通常以    开头,例如    表示第一个网络适配器。

三、简答题

1.简述Kali Linux在红队攻击环境中的作用。

2.为什么蓝队选择使用Metasploitable 2和Metasploitable 3这两个靶机?

3.二层网络A和三层网络B的主要区别是什么?

4.如何为Linux虚拟机设置静态IP地址?请简述操作步骤。

5.如何测试Kali Linux与Metasploitable 2和Metasploitable 3之间的网络连通性?

四、思考题

1.在网络安全实验中,为什么需要设置红蓝对抗的教学模式?这种模式对学生的学习有哪些帮助?

2.在实际的企业网络环境中,二层网络和三层网络分别适用于哪些场景?请结合实际案例进行分析。

3.除了Kali Linux和Metasploitable 2/3,还有哪些常用的网络安全工具和靶机?它们各自的优势是什么?

4.在网络安全实验中,如何确保实验环境的安全性,避免实验操作对真实网络环境造成影响?

相关图书

SDD实战:规范驱动开发之道
SDD实战:规范驱动开发之道
Harness工程实战:从零开始驾驭AI软件工程
Harness工程实战:从零开始驾驭AI软件工程
Agent Skills开发实战像搭积木一样构建智能体
Agent Skills开发实战像搭积木一样构建智能体
Codex快速入门:Harness工程落地
Codex快速入门:Harness工程落地
Agent设计模式 图解可复用智能体架构
Agent设计模式 图解可复用智能体架构
WorkBuddy从上手到变现
WorkBuddy从上手到变现

相关文章

相关课程