本文目录一览:
- 1、黑客攻击手段
- 2、常见的网络攻击方法和防御技术
- 3、怎么防御黑客攻击?
黑客攻击手段
(一)黑客常用手段
1、网络扫描--在Internet上进行广泛搜索,以找出特定计算机或软件中的弱点。
2、网络嗅探程序--偷偷查看通过Internet的数据包,以捕获口令或全部内容。通过安装侦听器程序来监视网络数据流,从而获取连接网络系统时用户键入的用户名和口令。
3、拒绝服务 -通过反复向某个Web站点的设备发送过多的信息请求,黑客可以有效地堵塞该站点上的系统,导致无法完成应有的网络服务项目(例如电子邮件系统或联机功能),称为“拒绝服务”问题。
4、欺骗用户--伪造电子邮件地址或Web页地址,从用户处骗得口令、信用卡号码等。欺骗是用来骗取目标系统,使之认为信息是来自或发向其所相信的人的过程。欺骗可在IP层及之上发生(地址解析欺骗、IP源地址欺骗、电子邮件欺骗等)。当一台主机的IP地址假定为有效,并为Tcp和Udp服务所相信。利用IP地址的源路由,一个攻击者的主机可以被伪装成一个被信任的主机或客户。
5、特洛伊木马--一种用户察觉不到的程序,其中含有可利用一些软件中已知弱点的指令。
6、后门--为防原来的进入点被探测到,留几个隐藏的路径以方便再次进入。
7、恶意小程序--微型程序,修改硬盘上的文件,发送虚假电子邮件或窃取口令。
8、竞争拨号程序--能自动拨成千上万个电话号码以寻找进入调制解调器连接的路径。逻辑炸弹计算机程序中的一条指令,能触发恶意操作。
9、缓冲器溢出-- 向计算机内存缓冲器发送过多的数据,以摧毁计算机控制系统或获得计算机控制权。
10、口令破译--用软件猜出口令。通常的做法是通过监视通信信道上的口令数据包,破解口令的加密形式。
11、社交工程--与公司雇员谈话,套出有价值的信息。
12、垃圾桶潜水--仔细检查公司的垃圾,以发现能帮助进入公司计算机的信息。
(二)黑客攻击的方法:
1、隐藏黑客的位置
典型的黑客会使用如下技术隐藏他们真实的IP地址:
利用被侵入的主机作为跳板;
在安装Windows 的计算机内利用Wingate 软件作为跳板;利用配置不当的Proxy作为跳板。
更老练的黑客会使用电话转接技术隐蔽自己。他们常用的手法有:利用800 号电话的私人转接服务联接ISP, 然后再盗用他人的账号上网;通过电话联接一台主机,再经由主机进入Internet。
使用这种在电话网络上的"三级跳"方式进入Internet 特别难于跟踪。理论上,黑客可能来自世界任何一个角落。如果黑客使用800号拨号上网,他更不用担心上网费用。
2、网络探测和资料收集
黑客利用以下的手段得知位于内部网和外部网的主机名。
使用nslookup 程序的ls命令;
通过访问公司主页找到其他主机;
阅读FTP服务器上的文挡;
联接至mailserver 并发送 expn请求;
Finger 外部主机上的用户名。
在寻找漏洞之前,黑客会试图搜集足够的信息以勾勒出整个网络的布局。利用上述操作得到的信息,黑客很容易列出所有的主机,并猜测它们之间的关系。
3、找出被信任的主机
黑客总是寻找那些被信任的主机。这些主机可能是管理员使用的机器,或是一台被认为是很安全的服务器。
一步,他会检查所有运行nfsd或mountd的主机的NFS输出。往往这些主机的一些关键目录(如/usr/bin、/etc和/home)可以被那台被信任的主机mount。
Finger daemon 也可以被用来寻找被信任的主机和用户,因为用户经常从某台特定的主机上登录。
黑客还会检查其他方式的信任关系。比如,他可以利用CGI 的漏洞,读取/etc/hosts.allow 文件等等。
分析完上述的各种检查结果,就可以大致了解主机间的信任关系。下一步, 就是探测这些被信任的主机哪些存在漏洞,可以被远程侵入。
4、找出有漏洞的网络成员
当黑客得到公司内外部主机的清单后,他就可以用一些Linux 扫描器程序寻找这些主机的漏洞。黑客一般寻找网络速度很快的Linux 主机运行这些扫描程序。
所有这些扫描程序都会进行下列检查:
TCP 端口扫描;
RPC 服务列表;
NFS 输出列表;
共享(如samba、netbiox)列表;
缺省账号检查;
Sendmail、IMAP、POP3、RPC status 和RPC mountd 有缺陷版本检测。
进行完这些扫描,黑客对哪些主机有机可乘已胸有成竹了。
如果路由器兼容SNMP协议,有经验的黑客还会采用攻击性的SNMP 扫描程序进行尝试, 或者使用"蛮力式"程序去猜测这些设备的公共和私有community strings。
5、利用漏洞
现在,黑客找到了所有被信任的外部主机,也已经找到了外部主机所有可能存在的漏洞。下一步就该开始动手入侵主机了。
黑客会选择一台被信任的外部主机进行尝试。一旦成功侵入,黑客将从这里出发,设法进入公司内部的网络。但这种方法是否成功要看公司内部主机和外部主机间的过滤策略了。攻击外部主机时,黑客一般是运行某个程序,利用外部主机上运行的有漏洞的daemon窃取控制权。有漏洞的daemon包括Sendmail、IMAP、POP3各个漏洞的版本,以及RPC服务中诸如statd、mountd、pcnfsd等。有时,那些攻击程序必须在与被攻击主机相同的平台上进行编译。
6、获得控制权
黑客利用daemon的漏洞进入系统后会做两件事:清除记录和留下后门。
他会安装一些后门程序,以便以后可以不被察觉地再次进入系统。大多数后门程序是预先编译好的,只需要想办法修改时间和权限就可以使用,甚至于新文件的大小都和原有文件一样。黑客一般会使用rcp 传递这些文件,以便不留下FTP记录。
一旦确认自己是安全的,黑客就开始侵袭公司的整个内部网
7.窃取网络资源和特权
黑客找到攻击目标后,会继续下一步的攻击,步骤如下:
(1)下载敏感信息
如果黑客的目的是从某机构内部的FTP或WWW服务器上下载敏感信息,他可以利用已经被侵入的某台外部主机轻而易举地得到这些资料。
(2)攻击其他被信任的主机和网络
大多数的黑客仅仅为了探测内部网上的主机并取得控制权,只有那些"雄心勃勃"的黑客,为了控制整个网络才会安装特洛伊木马和后门程序,并清除记录。 那些希望从关键服务器上下载数据的黑客,常常不会满足于以一种方式进入关键服务器。他们会费尽心机找出被关键服务器信任的主机,安排好几条备用通道。
(3)安装sniffers
在内部网上,黑客要想迅速获得大量的账号(包括用户名和密码),最为有效的手段是使用"sniffer" 程序。
黑客会使用上面各节提到的方法,获得系统的控制权并留下再次侵入的后门,以保证sniffer能够执行。
(4)瘫痪网络
如果黑客已经侵入了运行数据库、网络操作系统等关键应用程序的服务器,使网络瘫痪一段时间是轻而易举的事。
如果黑客已经进入了公司的内部网,他可以利用许多路由器的弱点重新启动、甚至关闭路由器。如果他们能够找到最关键的几个路由器的漏洞,则可以使公司的网络彻底瘫痪一段时间
常见的网络攻击方法和防御技术
网络攻击类型
侦查攻击:
搜集网络存在的弱点,以进一步攻击网络。分为扫描攻击和网络监听。
扫描攻击:端口扫描,主机扫描,漏洞扫描。
网络监听:主要指只通过软件将使用者计算机网卡的模式置为混杂模式,从而查看通过此网络的重要明文信息。
端口扫描:
根据 TCP 协议规范,当一台计算机收到一个TCP 连接建立请求报文(TCP SYN) 的时候,做这样的处理:
1、如果请求的TCP端口是开放的,则回应一个TCP ACK 报文, 并建立TCP连接控制结构(TCB);
2、如果请求的TCP端口没有开放,则回应一个TCP RST(TCP头部中的RST标志设为1)报文,告诉发起计算机,该端口没有开放。
相应地,如果IP协议栈收到一个UDP报文,做如下处理:
1、如果该报文的目标端口开放,则把该UDP 报文送上层协议(UDP ) 处理, 不回应任何报文(上层协议根据处理结果而回应的报文例外);
2、如果该报文的目标端口没有开放,则向发起者回应一个ICMP 不可达报文,告诉发起者计算机该UDP报文的端口不可达。
利用这个原理,攻击者计算机便可以通过发送合适的报文,判断目标计算机哪些TC 或UDP端口是开放的。
过程如下:
1、发出端口号从0开始依次递增的TCP SYN或UDP报文(端口号是一个16比特的数字,这样最大为65535,数量很有限);
2、如果收到了针对这个TCP 报文的RST 报文,或针对这个UDP 报文 的 ICMP 不可达报文,则说明这个端口没有开放;
3、相反,如果收到了针对这个TCP SYN报文的ACK报文,或者没有接收到任何针对该UDP报文的ICMP报文,则说明该TCP端口是开放的,UDP端口可能开放(因为有的实现中可能不回应ICMP不可达报文,即使该UDP 端口没有开放) 。
这样继续下去,便可以很容易的判断出目标计算机开放了哪些TCP或UDP端口,然后针对端口的具体数字,进行下一步攻击,这就是所谓的端口扫描攻击。
主机扫描即利用ICMP原理搜索网络上存活的主机。
网络踩点(Footprinting)
攻击者事先汇集目标的信息,通常采用whois、Finger等工具和DNS、LDAP等协议获取目标的一些信息,如域名、IP地址、网络拓扑结构、相关的用户信息等,这往往是黑客入侵之前所做的第一步工作。
扫描攻击
扫描攻击包括地址扫描和端口扫描等,通常采用ping命令和各种端口扫描工具,可以获得目标计算机的一些有用信息,例如机器上打开了哪些端口,这样就知道开设了哪些服务,从而为进一步的入侵打下基础。
协议指纹
黑客对目标主机发出探测包,由于不同操作系统厂商的IP协议栈实现之间存在许多细微的差别(也就是说各个厂家在编写自己的TCP/IP 协议栈时,通常对特定的RFC指南做出不同的解释),因此各个操作系统都有其独特的响应方法,黑客经常能确定出目标主机所运行的操作系统。
常常被利用的一些协议栈指纹包括:TTL值、TCP窗口大小、DF 标志、TOS、IP碎片处理、 ICMP处理、TCP选项处理等。
信息流监视
这是一个在共享型局域网环境中最常采用的方法。
由于在共享介质的网络上数据包会经过每个网络节点, 网卡在一般情况下只会接受发往本机地址或本机所在广播(或多播)地址的数据包,但如果将网卡设置为混杂模式(Promiscuous),网卡就会接受所有经过的数据包。
基于这样的原理,黑客使用一个叫sniffer的嗅探器装置,可以是软件,也可以是硬件)就可以对网络的信息流进行监视,从而获得他们感兴趣的内容,例如口令以及其他秘密的信息。
访问攻击
密码攻击:密码暴力猜测,特洛伊木马程序,数据包嗅探等方式。中间人攻击:截获数据,窃听数据内容,引入新的信息到会话,会话劫持(session hijacking)利用TCP协议本身的不足,在合法的通信连接建立后攻击者可以通过阻塞或摧毁通信的一方来接管已经过认证建立起来的连接,从而假冒被接管方与对方通信。
拒绝服务攻击
伪装大量合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务响应。
要避免系统遭受DoS 攻击,从前两点来看,网络管理员要积极谨慎地维护整个系统,确保无安全隐患和漏洞;
而针对第四点第五点的恶意攻击方式则需要安装防火墙等安 全设备过滤DoS攻击,同时强烈建议网络管理员定期查看安全设备的日志,及时发现对系统存在安全威胁的行为。
常见拒绝服务攻击行为特征与防御方法
拒绝服务攻击是最常见的一类网络攻击类型。
在这一攻击原理下,它又派生了许多种不同的攻击方式。
正确了解这些不同的拒绝攻击方式,就可以为正确、系统地为自己所在企业部署完善的安全防护系统。
入侵检测的最基本手段是采用模式匹配的方法来发现入侵攻击行为。
要有效的进行反攻击,首先必须了解入侵的原理和工作机理,只有这样才能做到知己知彼,从而有效的防止入侵攻击行为的发生。

下面我们针对几种典型的拒绝服务攻击原理进行简要分析,并提出相应的对策。
死亡之Ping( Ping of death)攻击
由于在早期的阶段,路由器对包的最大大小是有限制的,许多操作系统TCP/IP栈规定ICMP包的大小限制在64KB 以内。
在对ICMP数据包的标题头进行读取之后,是根据该标题头里包含的信息来为有效载荷生成缓冲区。
当大小超过64KB的ICMP包,就会出现内存分配错误,导致TCP/IP堆栈崩溃,从而使接受方计算机宕机。
这就是这种“死亡之Ping”攻击的原理所在。
根据这一攻击原理,黑客们只需不断地通过Ping命令向攻击目标发送超过64KB的数据包,就可使目标计算机的TCP/IP堆栈崩溃,致使接受方宕机。
防御方法:
现在所有的标准TCP/IP协议都已具有对付超过64KB大小数据包的处理能力,并且大多数防火墙能够通过对数据包中的信息和时间间隔分析,自动过滤这些攻击。
Windows 98 、Windows NT 4.0(SP3之后)、Windows 2000/XP/Server 2003 、Linux 、Solaris和Mac OS等系统都已具有抵抗一般“Ping of death ”拒绝服务攻击的能力。
此外,对防火墙进行配置,阻断ICMP 以及任何未知协议数据包,都可以防止此类攻击发生。
泪滴( teardrop)攻击
对于一些大的IP数据包,往往需要对其进行拆分传送,这是为了迎合链路层的MTU(最大传输单元)的要求。
比如,一个6000 字节的IP包,在MTU为2000的链路上传输的时候,就需要分成三个IP包。
在IP 报头中有一个偏移字段和一个拆分标志(MF)。
如果MF标志设置为1,则表面这个IP包是一个大IP包的片断,其中偏移字段指出了这个片断在整个 IP包中的位置。
例如,对一个6000字节的IP包进行拆分(MTU为2000),则三个片断中偏移字段的值依次为:0,2000,4000。
这样接收端在全部接收完IP数据包后,就可以根据这些信息重新组装没正确的值,这样接收端在收后这些分拆的数据包后就不能按数据包中的偏移字段值正确重合这些拆分的数据包,但接收端会不断偿试,这样就可能致使目标计算朵操作系统因资源耗尽而崩溃。
泪滴攻击利用修改在TCP/IP 堆栈实现中信任IP碎片中的包的标题头所包含的信息来实现自己的攻击。
IP分段含有指示该分段所包含的是原包的哪一段的信息,某些操作系统(如SP4 以前的 Windows NT 4.0 )的TCP/IP 在收到含有重叠偏移的伪造分段时将崩溃,不过新的操作系统已基本上能自己抵御这种攻击了。
防御方法:
尽可能采用最新的操作系统,或者在防火墙上设置分段重组功能,由防火墙先接收到同一原包中的所有拆分数据包,然后完成重组工作,而不是直接转发。
因为防火墙上可以设置当出现重叠字段时所采取的规则。
TCP SYN 洪水(TCP SYN Flood)攻击
TCP/IP栈只能等待有限数量ACK(应答)消息,因为每台计算机用于创建TCP/IP连接的内存缓冲区都是非常有限的。
如果这一缓冲区充满了等待响应的初始信息,则该计算机就会对接下来的连接停止响应,直到缓冲区里的连接超时。
TCP SYN 洪水攻击正是利用了这一系统漏洞来实施攻击的。
攻击者利用伪造的IP地址向目标发出多个连接(SYN)请求。
目标系统在接收到请求后发送确认信息,并等待回答。
由于黑客们发送请示的IP地址是伪造的,所以确认信息也不会到达任何计算机,当然也就不会有任何计算机为此确认信息作出应答了。
而在没有接收到应答之前,目标计算机系统是不会主动放弃的,继续会在缓冲区中保持相应连接信息,一直等待。
当达到一定数量的等待连接后,缓区部内存资源耗尽,从而开始拒绝接收任何其他连接请求,当然也包括本来属于正常应用的请求,这就是黑客们的最终目的。
防御方法:
在防火墙上过滤来自同一主机的后续连接。
不过“SYN洪水攻击”还是非常令人担忧的,由于此类攻击并不寻求响应,所以无法从一个简单高容量的传输中鉴别出来。
防火墙的具体抵御TCP SYN 洪水攻击的方法在防火墙的使用手册中有详细介绍。
Land 攻击
这类攻击中的数据包源地址和目标地址是相同的,当操作系统接收到这类数据包时,不知道该如何处理,或者循环发送和接收该数据包,以此来消耗大量的系统资源,从而有可能造成系统崩溃或死机等现象。
防御方法:
这类攻击的检测方法相对来说比较容易,因为它可以直接从判断网络数据包的源地址和目标地址是否相同得出是否属于攻击行为。
反攻击的方法当然是适当地配置防火墙设备或包过滤路由器的包过滤规则。
并对这种攻击进行审计,记录事件发生的时间,源主机和目标主机的MAC地址和IP地址,从而可以有效地分析并跟踪攻击者的来源。
Smurf 攻击
这是一种由有趣的卡通人物而得名的拒绝服务攻击。
Smurf攻击利用多数路由器中具有同时向许多计算机广播请求的功能。
攻击者伪造一个合法的IP地址,然后由网络上所有的路由器广播要求向受攻击计算机地址做出回答的请求。
由于这些数据包表面上看是来自已知地址的合法请求,因此网络中的所有系统向这个地址做出回答,最终结果可导致该网络的所有主机都对此ICMP应答请求作出答复,导致网络阻塞,这也就达到了黑客们追求的目的了。
这种Smurf攻击比起前面介绍的“Ping of Death ”洪水的流量高出一至两个数量级,更容易攻击成功。
还有些新型的Smurf攻击,将源地址改为第三方的受害者(不再采用伪装的IP地址),最终导致第三方雪崩。
防御方法:
关闭外部路由器或防火墙的广播地址特性,并在防火墙上设置规则,丢弃掉ICMP协议类型数据包。
Fraggle 攻击
Fraggle 攻击只是对Smurf 攻击作了简单的修改,使用的是UDP协议应答消息,而不再是ICMP协议了(因为黑客们清楚 UDP 协议更加不易被用户全部禁止)。
同时Fraggle攻击使用了特定的端口(通常为7号端口,但也有许多使用其他端口实施 Fraggle 攻击的),攻击与Smurf 攻击基本类似,不再赘述。
防御方法:
关闭外部路由器或防火墙的广播地址特性。在防火墙上过滤掉UDP报文,或者屏蔽掉一些常被黑客们用来进Fraggle攻击的端口。
电子邮件炸弹
电子邮件炸弹是最古老的匿名攻击之一,通过设置一台计算机不断地向同一地址发送大量电子邮件来达到攻击目的,此类攻击能够耗尽邮件接受者网络的带宽资源。
防御方法:
对邮件地址进行过滤规则配置,自动删除来自同一主机的过量或重复的消息。
虚拟终端(VTY)耗尽攻击
这是一种针对网络设备的攻击,比如路由器,交换机等。
这些网络设备为了便于远程管理,一般设置了一些TELNET用户界面,即用户可以通过TELNET到该设备上,对这些设备进行管理。
一般情况下,这些设备的TELNET用户界面个数是有限制的。比如,5个或10个等。
这样,如果一个攻击者同时同一台网络设备建立了5个或10个TELNET连接。
这些设备的远程管理界面便被占尽,这样合法用户如果再对这些设备进行远程管理,则会因为TELNET连接资源被占用而失败。
ICMP洪水
正常情况下,为了对网络进行诊断,一些诊断程序,比如PING等,会发出ICMP响应请求报文(ICMP ECHO),接收计算机接收到ICMP ECHO 后,会回应一个ICMP ECHO Reply 报文。
而这个过程是需要CPU 处理的,有的情况下还可能消耗掉大量的资源。
比如处理分片的时候。这样如果攻击者向目标计算机发送大量的ICMP ECHO报文(产生ICMP洪水),则目标计算机会忙于处理这些ECHO 报文,而无法继续处理其它的网络数据报文,这也是一种拒绝服务攻击(DOS)。
WinNuke 攻击
NetBIOS 作为一种基本的网络资源访问接口,广泛的应用于文件共享,打印共享, 进程间通信( IPC),以及不同操作系统之间的数据交换。
一般情况下,NetBIOS 是运行在 LLC2 链路协议之上的,是一种基于组播的网络访问接口。
为了在TCP/IP协议栈上实现NetBIOS ,RFC规定了一系列交互标准,以及几个常用的 TCP/UDP 端口:
139:NetBIOS 会话服务的TCP 端口;
137:NetBIOS 名字服务的UDP 端口;
136:NetBIOS 数据报服务的UDP 端口。
WINDOWS操作系统的早期版本(WIN95/98/NT )的网络服务(文件共享等)都是建立在NetBIOS之上的。
因此,这些操作系统都开放了139端口(最新版本的WINDOWS 2000/XP/2003 等,为了兼容,也实现了NetBIOS over TCP/IP功能,开放了139端口)。
WinNuke 攻击就是利用了WINDOWS操作系统的一个漏洞,向这个139端口发送一些携带TCP带外(OOB)数据报文。
但这些攻击报文与正常携带OOB数据报文不同的是,其指针字段与数据的实际位置不符,即存在重合,这样WINDOWS操作系统在处理这些数据的时候,就会崩溃。
分片 IP 报文攻击
为了传送一个大的IP报文,IP协议栈需要根据链路接口的MTU对该IP报文进行分片,通过填充适当的IP头中的分片指示字段,接收计算机可以很容易的把这些IP 分片报文组装起来。
目标计算机在处理这些分片报文的时候,会把先到的分片报文缓存起来,然后一直等待后续的分片报文。
这个过程会消耗掉一部分内存,以及一些IP协议栈的数据结构。
如果攻击者给目标计算机只发送一片分片报文,而不发送所有的分片报文,这样攻击者计算机便会一直等待(直到一个内部计时器到时)。
如果攻击者发送了大量的分片报文,就会消耗掉目标计 算机的资源,而导致不能相应正常的IP报文,这也是一种DOS攻击。
T
分段攻击。利用了重装配错误,通过将各个分段重叠来使目标系统崩溃或挂起。
欢迎关注的我的头条号,私信交流,学习更多的网络技术!
怎么防御黑客攻击?
从技术上对付黑客攻击,主要采用下列方法:
(1)使用防火墙技术,建立网络安全屏障。使用防火墙系统来防止外部网络对内部网络的未授权访问,作为网络软件的补充,共同建立网络信息系统的对外安全屏障。目前全球联入Internet的电脑中约有1/3是处于防火墙保护之下,主要目的就是根据本单位的安全策略,对外部网络与内部网络交流的数据进行检查,符合的予以放行,不符合的拒之门外。
(2)使用安全扫描工具发现黑客。经常使用“网威”等安全检测、扫描工具作为加强内部网络与系统的安全防护性能和抗破坏能力的主要扫描工具,用于发现安全漏洞及薄弱环节。当网络或系统被黑客攻击时,可用该软件及时发现黑客入侵的迹象,进行处理。
(3)使用有效的监控手段抓住入侵者。经常使用“网威”等监控工具对网络和系统的运行情况进行实时监控,用于发现黑客或入侵者的不良企图及越权使用,及时进行相关处理(如跟踪分析、反攻击等),防范于未然。
(4)时常备份系统,若被攻击可及时修复。这一个安全环节与系统管理员的实际工作关系密切,所以系统管理员要定期地备份文件系统,以便在非常情况下(如系统瘫痪或受到黑客的攻击破坏时)能及时修复系统,将损失减少到最低。
(5)加强防范意识,防止攻击。加强管理员和系统用户的安全防范意识,可大大提高网络、系统的安全性能,更有效地防止黑客的攻击破坏。