简介:围绕常见网络攻击与防范展开的这份PPT,面向网络安全初学者、运维人员及信息安全课程学习者,帮助其系统梳理典型攻击链与基础防护思路。内容从网络攻击步骤切入,覆盖预攻击探测中的Ping扫描、端口扫描(开放、半开放与秘密扫描)、操作系统识别、资源与用户组查找,并延伸到漏洞综合扫描、木马攻击、拒绝服务攻击、欺骗攻击和蠕虫病毒攻击等常见类型,同时结合防火墙、入侵检测、防病毒、漏洞扫描与安全意识等防护措施展开说明。压缩包仅含1个PPT文件,约2.28MB,篇幅集中,便于课堂讲解、培训演示或自学查阅。目前已有2676人学习,可作为理解攻击原理、识别异常扫描行为与搭建基础防护框架的入门参考。
1. 攻击链视角:探测、渗透、驻留、传播、瘫痪怎么串起来
不少人复习网络攻击,是照着名词背的:预攻击探测、漏洞扫描、木马攻击、拒绝服务攻击、欺骗攻击、蠕虫病毒攻击,一条一条列出来,考试能写出来,实际分析时却串不起来。真正好用的记法是把它们放回一条链上——探测、渗透、驻留、传播、瘫痪,五个阶段,每个名词都能在链条上找到自己的位置。预攻击探测和漏洞扫描在链条最前端负责“找门”,木马负责“驻留”,蠕虫负责“传播”,拒绝服务负责“瘫痪”,欺骗攻击则像是在渗透和横向移动之间起润滑作用。这条链同时也是防御落点图:边界拦探测、补丁挡渗透、完整性校验查驻留、分段限传播、容量和限速抗瘫痪。带着这张图往下读,零散的知识点才有归属,病毒和安全这两个词也才不至于停在概念层面。
2. 预攻击探测:Ping 判活与端口扫描三类手法的复习重点
预攻击探测容易被认为是可有可无的一步,好像攻击者一上来就该直接渗透。实际情况正好相反,这一步决定后面所有动作的命中率:先确认哪些主机活着,再看哪些端口开着,再判断跑的是什么系统,最后收集资源和账号。四步做完,攻击者手里的信息已经够画出一张拓扑图了。
2.1 Ping 与主机存活判读:ICMP 回显的五个判读点
Ping 的本名是 Packet InterNet Groper,原理简单到几乎没有秘密:向目标发一个 ICMP Echo 请求,等一个 Echo 回复。默认每秒发一个包,最后输出统计结果——丢包率和往返时延。它是判断远程设备可访问性最常用的方法,同时也是预攻击探测的第一步:攻击者用一次批量 ping 把一个大网段里的存活主机筛出来,再对筛出来的那批做端口扫描。因此从防御角度看,Ping 扫描不是小动作,而是明确的踩点信号。
命令行参数会改变默认行为,复习时至少要知道常用的三个:
# -c 发送次数,-W 单包等待秒数,-s 载荷字节数 ping -c 4 -W 2 -s 56 192.0.2.10 # 批量判活:把网段内地址逐个喂给 ping,只输出有回应的 for i in $(seq 1 254); do ping -c 1 -W 1 192.0.2.$i > /dev/null 2>&1 && echo "192.0.2.$i alive" done第一段里-c 4决定发几个包,发得少判得快但容易漏判,-W 2是单包超时,跨运营商链路要给到 2 秒以上,-s 56是载荷长度,加上 8 字节 ICMP 头和 20 字节 IP 头正好 84 字节,属于常见默认值。第二段是批量判活的雏形,seq 1 254遍历一个 C 段,>/dev/null 2>&1把输出吞掉只看返回值,这也是扫描器最朴素的原型。
Ping 不通不等于主机不在线,这是最容易栽跟头的地方。排查顺序一般是:有没有路由、网关设置对不对;网卡配置是否正确;超时值是不是太小;ICMP 是不是被防火墙拦了;最后才是目标真的关机。顺序反了,就会把“防火墙拦了 ICMP”误判成“主机不存在”,后面所有分析都建立在错误前提上。
再补一个经典边界:Ping of death。发送特大的 ping 数据包(超过 65535 字节),靠分片重组时的长度处理缺陷把机器打崩,许多老操作系统都受影响。今天基本见不到实际案例,但它作为“利用协议实现缺陷触发拒绝服务”的原型,考点地位一直很稳。
对应的预防措施在教材里写得很直接:使用能检测并记录 ICMP 扫描的工具;部署入侵检测系统;在防火墙或路由器中限定允许进出自己网络的 ICMP 分组类型。把“哪些 ICMP 类型必须放行、哪些可以直接丢弃”列成一张表,比笼统地说“限制 ICMP”有用得多。
2.2 端口扫描的三种开放度:开放、半开放、秘密
端口扫描的分类逻辑只有一条主线:扫描方与目标之间建立了多完整的 TCP 连接。按这条线分成三档,所有具体手法都能挂上去。
开放扫描需要扫描方通过三次握手与目标建立完整的 TCP 连接。典型的是 TCP connect() 扫描,扫描器调用 socket 的 connect() 发起一次正常连接,端口开着就连接成功,关着就失败。优点是简单、不需要特殊权限,任何能写 socket 的程序都能做;缺点是服务器会完整记录这次连接行为,同一个客户轮流对每一个端口发起连接,特征明显得不能再明显,日志里一眼就能看出来。Reverse-ident 扫描也属于开放类,它利用 ident 协议(端口 113)在全连接之后查出连接进程的所有者用户名,即使该进程并没有发起这条连接。举例来说,先连上 80 端口,再通过 identd 判断服务是不是以 root 身份在跑。教材给出的建议是关闭 ident 服务,或者在防火墙上禁止,除非确实出于审计需要。
半开放扫描不打开完整的 TCP 连接。TCP SYN 扫描是代表:向目标特定端口发一个 SYN 包,回 RST 说明端口关闭,回 SYN|ACK 说明端口开放,此时再补一个 RST 把连接掐掉,三次握手没有走完,所以叫“半开连接扫描”。优点是很少有系统会记录这种行为;缺点是 UNIX 平台上需要 root 权限才能构造这样的 SYN 数据包。另一类是 IP ID header 扫描,也叫 dump 扫描:扫描主机伪造第三方主机 IP 向目标发起 SYN 扫描,通过观察第三方主机 IP 序列号的增长规律反推端口状态。它既不直接扫描目标,也不和目标建立连接,隐蔽性更好,缺点是对第三方主机的要求很高——那台“替身”必须开着可预测的 IP ID 分配。
秘密扫描不包含标准 TCP 三次握手协议的任何部分,FIN、XMAS、NULL 都属于这一族。隐蔽性确实好,但代价常被忽略:这些包在网络传输途中容易被中间设备丢弃,一旦丢了就会产生错误的探测信息,把开着说成关着。教材在这一点上写得很克制,只点了一句“容易产生错误探测信息”,实际排错时这就是最大麻烦。
用一张表把三类扫描的关键差异压在一起,复习时比背描述快:
| 类别 | 是否完成三次握手 | 典型手法 | 审计可见性 | 权限/条件要求 |
|---|---|---|---|---|
| 开放扫描 | 完整完成 | TCP connect()、Reverse-ident | 高,目标侧有完整连接记录 | 普通用户权限即可 |
| 半开放扫描 | 不完成 | TCP SYN、IP ID header | 低,多数系统不记录 | UNIX 下构造 SYN 需 root |
| 秘密扫描 | 完全不含握手 | FIN、XMAS、NULL | 低 | 包易被丢弃导致误判 |
除了这三档,还有几类边角手法值得单独记:UDP ICMP 端口不可达扫描和 UDP recvfrom 扫描,靠 ICMP 不可达消息或 recvfrom 的返回值判断 UDP 端口状态;FTP bounce 扫描,借 FTP 服务器的数据连接做代理;用 IP 分片承载 SYN/FIN 包,专门绕开包过滤防火墙。
用 Python 复现开放扫描的判定逻辑,比背定义更能看清代价:
import socket def probe(host, port, timeout=0.8): s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.settimeout(timeout) # 超时压短,避免逐个端口长时间阻塞 code = s.connect_ex((host, port)) # 0 表示握手成功,即端口开放 s.close() return code == 0 print([p for p in (22, 80, 443, 3389) if probe("192.0.2.10", p)])connect_ex不抛异常而是返回 errno,0 即连接成功,非 0 就是被拒或超时,这个返回值约定是写扫描逻辑的基础。timeout设成 0.8 秒是经验值:太短会把慢链路误判成关闭,太长则扫一个 C 段能等到天荒地老。这段代码对应的是“开放扫描”,目标侧每探一个端口就留下一条完整连接记录,端口轮一遍,行为特征藏不住。
2.3 操作系统识别与资源、用户信息收集
操作系统识别(OS fingerprint)靠的不是单个包,而是一组特征的组合:TTL 初始值、TCP 首部选项的顺序和取值、窗口大小、对异常标志位的响应方式、ICMP 错误消息里引用的数据长度。这些差异来自各系统协议栈实现的不同,不是改改配置就能完全抹平的。所以“改 banner”只能骗过最粗的识别手段,协议栈层面的特征该露还是露。
资源和用户信息扫描是探测阶段的后半段:网络资源、共享资源、用户名和用户组。教材点到“Mail 用户猜测”这个典型手法——邮件服务在会话中对存在的用户和不存在的用户给出不同回执,逐个试就能拉出一份有效账号列表,再配合口令猜测直接撞库。这类信息泄露的特点是“合法功能被当成侦察工具”,很难用封端口的方式解决,只能收紧回执差异、限制尝试频率。
口令猜测本身门槛极低,教材在时间轴上把它放在 1980 年那一格,意思是它最古老,也最顽固。字典、默认口令、弱口令三件套至今有效,原因是口令强度和系统复杂度从来不是同步提升的。
这一阶段对应的防御在教材里归为四类:防火墙、入侵监测、防病毒、漏洞扫描,再加上安全意识。四者不是并列关系——防火墙和入侵监测管边界与行为,漏洞扫描管自身短板,安全意识管人,缺哪一环,探测阶段都能找到缝。
3. 攻击手法与工具水位:口令猜测、木马驻留、蠕虫传播的考点分布
这一块最容易被背成一份名词清单。更好的看法是把它当成一条“技术水平下降、攻击能力上升”的曲线:同一件事,二十年前要高手手工做,现在点一下工具就能完成。理解了这个反向关系,后面每一种手法的定位就清楚了。
3.1 攻击手法的时间轴:工具化程度与入侵者水平成反比
教材给的时间轴大致是这样铺开的:1980 年前后是密码猜测;1985 年前后出现可自动复制的代码;1990 年前后是破解密码;1995 年前后集中出现利用已知漏洞、破坏审计系统、后门、会话劫持、消除痕迹、嗅探、IP 欺骗;2000 年前后是 GUI 远程控制、自动探测扫描、拒绝服务、Web 攻击。整理成表更直观:
| 时间阶段 | 主流手法 | 工具化程度 | 对入侵者技术水平的要求 |
|---|---|---|---|
| 1980 前后 | 密码猜测 | 手工为主 | 高,需要了解认证机制 |
| 1985 前后 | 可自动复制的代码 | 雏形 | 高,需要编写代码 |
| 1990 前后 | 破解密码 | 出现专用工具 | 中高 |
| 1995 前后 | 利用已知漏洞、后门、会话劫持、嗅探、IP 欺骗、消除痕迹 | 工具链成形 | 中,会用工具即可 |
| 2000 前后 | GUI 远程控制、自动探测扫描、拒绝服务、Web 攻击 | 高度集成 | 低,图形界面点选 |
这张表真正要读出来的是两件事。第一,能力在上升:早期一次入侵要手工敲几天,后来一条命令就能扫一个 B 段。第二,门槛在下降:图形化远程控制和自动探测扫描出现之后,不需要懂协议也能发起攻击。防御重心因此发生位移——过去主要防“有技术的高手定点打”,现在更多要防“低水平攻击者用工具广撒网”。教材里“消除痕迹”和“破坏审计系统”出现在同一阶段不是巧合,工具化让攻击者有余力处理善后,这也是日志集中和异地留存的价值所在。
还有一条隐含线索:自动探测扫描和半开隐蔽扫描几乎同期成熟,意味着“探测”从人工变成流水线,防探测的窗口被压得很短。控制台入侵检测、网络管理这类防御手段也是在同一时期被推上台面,攻防是配套演进的。
3.2 木马与后门:驻留阶段的六个落脚点
木马的核心诉求只有一个:活过重启。教材列出的驻留动作可以归成六项——后门(Backdoors)、创建新文件、修改现有文件、注册表设置、安装新服务、注册 Trap Doors。这六项本质上都在回答同一个问题:程序把自己放在哪里,才能在用户下次开机时自动跑起来。
配套的植入载体也列得很全:Mail 附件、ActiveX 控件、网络安装、压缩信息(文件)、FTP、IRC、Web 连接、感染文件共享。把这些载体按“需不需要用户动手”再分一次组,防御优先级就出来了:邮件附件和 Web 链接需要用户点击,靠安全意识;网络安装和文件共享属于内部横向,靠分段和权限;压缩包和文件共享的感染面最大,因为它们天然带着“可信来源”的外衣。
木马通常具备三个特征:远程控制能力、隐蔽性、持久性。三个特征对应三种检测思路——远控看外联行为,隐蔽看进程与文件伪装,持久看启动项。实际操作里最有效的检查顺序是反过来的,先查持久化,因为启动项是有限的、可枚举的:
# 找最近 7 天内被改动过的可执行文件,木马常落在这些目录 find /usr/local/bin /usr/bin -type f -newermt '-7 days' -ls # 与事先保存的哈希基线比对,输出被改动或新增的条目 sha256sum -c baseline.sha256 2>/dev/null | grep -v ': OK$'第一段的-newermt '-7 days'按修改时间过滤,-ls输出详细属性,适合在应急时快速圈定可疑范围;第二段依赖一份事前生成的baseline.sha256清单,-c是校验模式,grep -v ': OK$'把正常的行滤掉,只剩异常。这套做法的前提是基线要提前建、且存在攻击者够不到的地方,否则基线本身就被改了,校验等于自欺欺人。
Windows 侧的等价检查在注册表启动项、服务列表和计划任务三处,教材点到“注册表设置”和“安装新服务”两个位置,正好对应其中两处。第三处计划任务常被漏掉,而它恰恰是近年最常见的落脚点。
3.3 蠕虫与病毒:自动复制代码的传播动力学
病毒和蠕虫经常被混着说,区别其实很清楚:病毒寄生在宿主文件里,需要用户执行被感染的文件才会激活;蠕虫是独立运行的完整程序,自己完成扫描、感染、再扫描的循环。“可自动复制的代码”在 1985 年出现,就是从“等人点”变成“自己跑”的分水岭。
蠕虫的破坏行为在教材里列得很具体:删除文件、修改文件、产生安全后门、Crash Computer、DoS、机密信息窃取。注意最后两项——蠕虫不只是把机器搞坏,它经常被用来铺规模,铺完之后接的就是拒绝服务。所以蠕虫和拒绝服务在真实事件里往往是前后脚出现,复习时不要当成两个孤立考点。
传播动力学值得单独想一遍:每一台被感染的主机扫描一段地址空间,命中若干台可感染目标,感染数按指数往上走,直到地址空间饱和或者防御生效。这条曲线决定了一件事——蠕虫防御的黄金窗口在早期,一旦铺开,边界封堵的效果就只剩“控制增量”,清存量只能靠逐段隔离和重装。教材把“蠕虫病毒攻击”和“拒绝服务攻击”并列成两大类,但从传播模型看,前者是后者的常见前奏。
对应的防御落点也就明确了:补丁针对被利用的那个漏洞,这是唯一能切断传播链的手段;边界过滤和网段隔离压缩扫描可达范围;对异常扫描行为做限速和告警,把指数曲线压成线性。三条里补丁的优先级最高,因为另外两条只能减速,不能断根。
4. 拒绝服务与欺骗攻击:从 Ping of death 到 IP 伪造的判定逻辑
这两类攻击的共同点是“不靠拿权限”,所以用“有没有被入侵”来判断往往得不出结论。它们的判定要看流量形态和协议行为,这是复习时最容易走偏的地方。
4.1 拒绝服务的三种形态与一个经典边界
拒绝服务按消耗的资源分三种形态:带宽耗尽、连接资源耗尽、利用协议或实现缺陷触发崩溃。前两种是“撑死”,第三种是“打死”,机制完全不同,防御手段也不一样。
带宽耗尽型靠灌流量,特征是入方向流量突然拉满、源地址高度分散,清洗只能在上游做。连接资源耗尽型靠占满并发连接表,典型表现是大量半开连接堆积,SYN 队列被吃干净,正常用户连不进来——这也解释了为什么半开扫描的知识在这里会用上:半开连接本身就是一种资源占用。第三类靠缺陷触发,Ping of death 是教材给出的原型:特大 ping 数据包超过 65535 字节,分片重组时长度处理出错,机器直接崩溃。逻辑炸弹属于同一类的变体,只是触发条件从“包长”换成了“特定事件”。
DDoS 在时间轴上出现在 2000 年前后,本质是把上面三种形态乘以“多源”。判定要点有三条:目标单一而源地址高度分散;流量形态异常,比如大量畸形包或半开连接;时间上高度集中,起停都很突兀。
注意:Ping of death 这类“一个包打崩一台机”的案例今天基本绝迹,但它的分析思路没过时——找协议实现里的长度假设和边界假设,仍然是漏洞挖掘的主线。
4.2 欺骗攻击的家族:IP 伪造、会话劫持与嗅探的连带关系
欺骗攻击之所以难防,是因为它利用的是协议本身的设计前提,而不是某个实现 bug。IP 协议不校验源地址,这条“信任假设”撑起了大半个欺骗家族。
IP 欺骗的做法是伪造源地址发包。要真正完成一次 TCP 会话,光伪造地址不够,还得让返回的包能接上,于是要么预测目标 TCP 序列号(盲攻击),要么先在同网段嗅探拿到真实序列号。教材把“嗅探”和“IP 欺骗”放在同一阶段出现,原因就在这里:嗅探是欺骗的前置能力。
会话劫持是同一套能力的延伸:嗅探到一条已建立的会话,拿到双方的序列号,然后伪造包插进去,把会话接管过来。它最可怕的地方是不需要口令——认证早在会话建立时完成了,劫持者只是“接过话筒继续说话”。防御上,加密和序列号随机化是两条主线,前者让嗅探到的东西变成密文,后者让盲猜的成本高到不划算。
还有一类弱一些但更常见:伪造邮件发件人。教材在植入载体里写了“Mail 附件”和“攻击的 Mail 拷贝”,配合伪造发件人,一封看起来来自内部的邮件就能把木马送进内网。这类攻击不追求技术深度,靠的是信任链条。
4.3 防御落点:出口过滤、序列号随机化、加密
防御欺骗攻击的落点可以按“能不能伪造”和“伪造了有没有用”两问来组织。
让伪造变难:出口过滤是第一道,源地址不属于本网段的包不许出网。这一条能同时削弱 IP 欺骗和反射型拒绝服务,因为两者都依赖伪造源地址。入口侧配反向路径校验,源地址的回程路由对不上就丢弃,效果类似但位置不同,一个管出、一个管进。
让伪造没用:TCP 序列号随机化把盲攻击的猜测成本抬到不现实;加密和认证让嗅探拿到的内容不可读,同时通过完整性校验挡掉重放和篡改。教材在防御清单里写的“防火墙、入侵监测、防病毒、漏洞扫描、安全意识”,落到欺骗这一类上,主体就是过滤加加密。
让影响受限:网络分段。嗅探的前提是能听到流量,把大二层拆成小段,能听到的范围就被压下来了。分段还顺带限制了蠕虫的传播半径,是一条一箭双雕的措施。
5. 易漏点排查:五处最容易记混和漏防的细节
这一章是给自己排雷用的。下面五条都是“看的时候觉得懂、写的时候拿不准、用的时候会踩坑”的地方,每条按“易漏点 → 为什么漏 → 怎么补”拆开。
5.1 分类与原理上的三处混淆
易漏点一:把半开放扫描和秘密扫描当成一回事。为什么漏:两类都“不建立完整连接”,描述读起来很像,教材又把它们并排放在扫描分类里,容易合并记忆。差别其实在“有没有握手成分”:半开放扫描发了 SYN,参与了三步握手的开头,只是不走完;秘密扫描用的 FIN、XMAS、NULL 完全不含标准握手的任何部分。补的办法是记代价而不是记定义——半开放扫描的代价是 UNIX 下要 root 权限,秘密扫描的代价是包容易被丢弃、产生错误探测信息。记住代价,分类就不会混。
易漏点二:认为 ping 不通就是主机不在线。为什么漏:这句判断在日常排障里对得多、错得少,形成了惯性。但在探测与防御的语境里,防火墙拦 ICMP 是最常见的配置之一,ping 不通恰恰可能是“有防护”的证据。补的办法是把排查顺序固定成五步:路由与网关、网卡配置、超时值、ICMP 是否被拦、最后才判断关机。顺序固定下来,就不会跳过中间三步直接下结论。
易漏点三:只盯着端口,漏掉 ident 这类“二次信息泄露”。为什么漏:端口扫描的存在感太强,反向查询类的手法不产生“开放端口”这种直观结果,容易被跳过。Reverse-ident 恰恰是在全连接之后才有效,能从 identd 查出连接进程的所有者,甚至判断服务是否以 root 运行。补的办法是把“关闭不需要的服务”落到具体名单上:ident 服务、不必要的共享、默认示例页面,逐项确认,而不是笼统写一句“最小化服务”。
5.2 防御与取证上的两处疏漏
易漏点四:把木马等同于病毒,只查文件不查驻留点。为什么漏:两个词日常混用,教材也把它们放在相邻章节,复习时容易合并成一个“恶意代码”概念。但木马的核心是持久化,落脚点在注册表、服务、计划任务、启动目录这些“配置位置”,而病毒的落脚点在文件本身。只做文件扫描,会漏掉“文件是干净的原版、但被注册成了服务”的情况。补的办法是把驻留点列成固定核查表,每次按表走一遍,不凭印象挑几项看。
易漏点五:防御只做边界,忘了出口过滤。为什么漏:边界防御的思路是“挡住进来的”,出口方向的规则常被当成默认放行。可 IP 欺骗和反射型拒绝服务恰恰依赖伪造源地址的出向流量,出口不过滤,等于把伪造能力免费提供给攻击者,还可能让自家网段成为攻击源。补的办法是在边界设备上同时配置进出两个方向的源地址校验,把“源地址不属于本网段则丢弃”写成固定规则,并且定期用外网视角回测一次,确认规则真的生效而不是只写在配置里。
6. 复习清单:一张按攻击链自检的核对表
把前面几章压成一张可以逐项打勾的表,复习的最后一轮就靠它。用法很简单:合上笔记,从第一行往下自问自答,答不出来的那一行,回去翻对应章节,不要通读。
| 环节 | 自检问题 | 答不上来时回看 |
|---|---|---|
| 攻击链 | 探测、渗透、驻留、传播、瘫痪各自对应哪些手法 | 第 1 章 |
| Ping | ICMP Echo 的原理、常用参数、ping 不通的五步排查顺序 | 2.1 |
| 端口扫描 | 开放/半开放/秘密三类的判别标准与各自代价 | 2.2 |
| 系统识别 | 指纹依赖哪些协议栈特征,为什么改 banner 不够 | 2.3 |
| 手法演进 | 工具化程度与入侵者技术水平为什么成反比 | 3.1 |
| 木马驻留 | 六个落脚点分别在哪,文件完整性之外还要查什么 | 3.2 |
| 蠕虫传播 | 病毒与蠕虫的区别、指数曲线的防御窗口在哪 | 3.3 |
| 拒绝服务 | 三种形态的区分,Ping of death 属于哪一类 | 4.1 |
| 欺骗攻击 | IP 伪造、嗅探、会话劫持三者的先后依赖 | 4.2 |
| 防御落点 | 出口过滤、序列号随机化、加密各解决哪一问 | 4.3 |
表里最容易空着的是“代价”那一列。分类谁都能背,但半开放扫描要 root、秘密扫描会丢包、开放扫描留日志,这三条代价才是把知识用起来的分界线。第二容易空的是“防御落点”和“攻击手法”的对应关系——很多人能说出十种攻击,却说不出每种对应哪条防线,结果防御清单变成一堆并列的名词。
还有个小技巧:把这张表倒过来用。给定一条防御措施,比如“在边界限定 ICMP 类型”,反问它能挡住链条上的哪一环、挡不住哪一环。挡得住批量 ping 判活,挡不住针对已知开放端口的直接连接;能拖慢探测节奏,不能替代补丁。这样练几轮,攻防两侧的对应关系就长在脑子里了,而不是两张互不相干的清单。
我以前复习这块时吃过一次亏:把半开放扫描和秘密扫描合并成一栏记,觉得“反正都不建连接”,结果做扫描分类的题连续错,回头补的时候发现真正没搞懂的是“代价”而不是“定义”。从那以后我每次整理攻击手法,都强制在每种手法后面补一列“它付出什么代价、留下什么痕迹”,哪怕只有半行字。这一列补上,很多原本要靠死记的东西自己就串起来了。希望帮到你。
本文还有配套的精品资源,点击获取