依据不同的标准,网络攻击方法有多种分类方式。
根据攻击针对的TCP/IP参考模型的不同层次,可分为:
- 物理层和数据链路层攻击;
- 网络层攻击;
- 传输层攻击;
- 应用层攻击。
根据攻击时是否主动修改信息,可分为:
- 被动攻击(Passive Attack);
- 主动攻击(Active Attack)。
1)被动攻击
被动攻击是指攻击者只是监视着被攻击方的通信,但不进行任何篡改、拦截,通常被攻击方不易察觉,如下图所示。具体的实现方法包括:
- 窃听:采用嗅探软件Sniffer,或直接 wiretapping(搭线窃听);
- 流量分析( Traffic analysis ):通过对通信业务流的观察(出现、消失、总量、方向与频度)推断出有用的信息,比如主机的位置,业务的变化等等。
被动攻击往往不被重视,但其搜集到的信息经过筛选分析后往往可以形成很有价值的情报;有时,被动攻击也是在为主动攻击做准备。
2)主动攻击
主动攻击则是攻击者通过将一些恶意代码(Malicious Mobile Code),如病毒(Virus) 、蠕虫(Worm)、特洛伊木马(trojan)、恶意脚本( Java Script, Java Applet, Active X等)放入受害者的主机,从而达到自己目的的行为,如删除受害者资料、盗取受害者账号和密码、篡改或虚构信息欺诈、对自身行为抵赖(repudiation)等。
通常主动攻击的后果更为直接也更严重。