网络入侵方式
2.1 黑客
黑客(hacker) :指技术上的行家或热衷于解决问题, 克服限制的人
骇客(cracker):是那些喜欢进入其他人系统的人
骇客和黑客之间最主要的不同是:黑客们创造新东西,骇客们破坏东西。
2.1.1 入侵方法
(1)物理侵入:侵入者绕过物理控制而获得对系统的访问。对主 有物理进入权限 (比如他们能使用键盘) 。方法包括控制台特权一直到物理参与系统并且移走磁盘(在另外的机器读/写)。
(2)系统侵入: 已经拥有在系统用户的较低权限。如果系统没有打最新的漏洞补丁,就会给侵入者提供一个利用漏洞获得系统管理员权限的机会
(3)远程侵入: 通过网络远程进入系统。侵入者从无特权开始这种侵入方式,包括多种形式。如果在他和受害主机之间有防火墙存在,侵入就复杂得多
2.1.2 系统的威胁
软件bug存在于服务器后台程序, 客户程序, 操作系统,网络协议栈。
(1)缺省配置:许多系统交付给客户的时候采用的缺省的易用的配置
(2)懒惰的系统管理员:惊人数量的主机被配置成没有系统管理员口令
(3)生成的漏洞:事实上所有的程序可能被配置成一个非安全的模式
(4)信任的关系:侵入者常用“跳板”的方法利用信任关系攻击网络。一个互相信任主机的网络和他们最脆弱的环节一样安全。
字典攻击:字典攻击可以利用重复的登陆或者收集加密的口令并且试图同加密后的字典中单词匹配
暴力破解(Brute Force Attacks): 同字典攻击类似, 侵入者可能尝试所有的字符组合方式
(1)共享媒体: 传统的以太网中, 你只要在线上启动 Sniffer就可以看到在一个网段的所有通信
(2)服务器监听: 在一个交换的网络里,如果入侵者可以在一个服务器(特别是做路由器的)安装sniffer程序,入侵者就可以使用得到的信息来攻击客户主机和信任主机。比如,你可能不知道某个用户的口令,通过在他登陆的时候监听Telnet会话,就可以得到他的口令
(3)远程监听: 大量的主机可以远端网络监控,且使用缺省的community
TCP/IP 协议缺点
系统设计缺点
2.2 IP欺骗与防范
IP欺骗就是伪造数据包源IP地址的攻击,
它基于两个前提:
2.2.1 TCP等IP欺骗基础知识
1. TCP数据报首部标志域
URG:紧急数据标志,指明数据流中已经放置紧急数据,紧急指针有效;
ACK:确认标志,用于对报文的确认;
PSH:推标志,通知接收端尽可能的将数据传递给应用层,在telnet登陆时,会使用到这个标志;
RST:复位标志,用于复位TCP连接;
SYN:同步标志,用于三次握手的建立,提示接收TCP连接的服务端检查序号;
FIN:结束标志,表示发送端已经没有数据再传输了,希望释放连接, 但接收端仍然可以继续发送数据。
2. TCP三次握手过程
A发送带有SYN标志的数据段通知B需要建立TCP连接。并将TCP报头中的sequence number 设置成自己本次连接的初始值ISN。
B回传给A一个带有SYS+ACK标志的数据段,并告诉A自己的ISN,并确认A发送来的第一个数据段,将acknowledge number设置成A的ISN+1。
A确认收到的B的数据段,将acknowledge number设置成B的ISN+1。
3. 信任与认证
1 基于口令的认证:如SMTP(TCP 25)和远程登录 Telnet(TCP 23),只通过帐号/口令认证用户;
2 基于IP地址的认证(即信任):登录主机的地址受到被登录服务器信任,则从该主机登录不要口令;如远程登录rlogin(TCP 513),首先是基于信任关系的认证,其次才进行口令认证。
2.2.2 IP欺骗可行的原因
在TCP/IP协议组中,IP协议是非面向连接,非可靠传输的协议,IP数据包是进行松散发送的,并不是连续发送的,所以可以在源地址和目的地址中间放入满足要求的IP地址,(也就是说可以进行虚假IP 地址的提供)
在TCP/IP协议簇中, TCP是面向连接,提供可靠传输。
面向连接是两个主机首先必须建立连接,然后才能进行数据交换。
可靠性是有数据包中的多位控制字来提供,其中有 两个是SYN和ACK
2.2.3 IP欺骗过程
IP欺骗步骤
1.选定目标主机
利用端口扫描,网络监听工具看有哪些机器和目标主机进行TCP/IP连接
2.寻找目标主机信任的主机
选择好进攻的目标主机后,必须寻找到目标主机信任的主机
可以尝试显示目标主机的文件系统在哪里被export, 或者使用rpcinfo来分析有用信息
或者尝试目标主机的相邻IP地址,获取有价值信息
3.控制被信任的主机
黑客向被信任的主机的TCPA发送大量SYN请求, 使得被信任主机的TCP/IP链接达到队列的最上限, 从而无法响应目标主机的SYN请求
4.采样目标主机的TCP序列号,猜测数据包序列号,尝试建立连接
在此期间,黑客就有机会伪装成被信任主机的IP地址,将SYN请求返回给目标主机,
黑客利用网络监听和抓包软件,采样目标主机的 TCP序列号,并猜测目标主机的数据包序列号, 尝试建立与目标主机的基于地址验证的应用连接。
5.建立连接,种植后门
一旦与目标主机建立TCP/IP连接,黑客就会使用命令,通过目标主机的安全性较弱的端口,种植后门程序
6.进行远程控制和非法操作
后门种植成功后,黑客一般会断开与目标主机的连 接,并且停止对被信任主机的攻击,全身而退。黑客推出后,找寻合理时机,对目标主机进行远程控制和非法操作。
2.2.4 IP欺骗原理
序列号猜测
序列号猜测的重要性
序列号猜测的过程
X首先连接A的SMTP端口(X是A的合法的邮件用户,但不是它所信任的rlogin用户,因为邮件应用的安全级别相对不高 ),试探其ISN变化规律,以估算下一次连接时A的ISN值。
X必须马上按照图中3—5步的方法假冒B来与A建立rlogin连接。
1 .X必须立刻进行欺骗攻击,否则其他主机有可能与A建立了新的连接,X所猜测的序列号就不准了。
2. 当然就这样也不一定能一次猜测成功。
不同网络环境下的序列号猜测
1)若X和A及B在同一局域网中,从理论上说很容易实现IP欺骗攻击。因为攻击者X甚至于不用猜测A发送给B的数据包中包含的序列号——用嗅探技术即可。
2)若X来自于外网,要想猜测到A和B所在的局域网中传送的数据包中的序列号非常困难——理论可行。
3)美国头号电脑黑客米特尼克是第一个在广域网成功实现IP欺骗攻击的人。但当时的序列号相对现在非常容易猜测。
关于被冒充对象B
1)X首先必须对B进行DoS攻击,否则在图中第4步中B 收到A发送来的它未请求过的请求应答包,将向A返 回RST报文而终止连接,黑客不能冒充连接成功。
2)X发送到A的rlogin端口的伪造数据包的源IP地址是 “假冒”了B的IP地址。
3)为何X不能直接将自己的IP地址修改为B的IP地址来 连接到A的rlogin端口?
1 IP地址产生冲突; 2 外网X不能这样修改。
2.2.5 IP欺骗防范
使用较强壮的随机序列号生成器,要准确猜测TCP连接的ISN几乎不可能。
在边界路由器上进行源地址过滤,也就是说,对进入本网络的IP包,要检查其源IP地址,禁止外来的 却使用本地IP的数据包进入,这也是大多数路由器的缺省配置。
禁止r-类型的服务,用SSH(专为远程登录会话和其 他网络服务提供安全性的协议,传输的数据均加密) 代替rlogin这样的不安全的网络服务。
在通信时要求加密传输和验证。
分割序列号空间。Bellovin提出一种弥补TCP序列号随机性不足的方法,就是分割序列号空间,每一个连接都将有自己独立的序列号空间。连接之间序列号没有明显的关联。
2.3 Sniffer 探测与防范
2.3.1 Sniffer原理
广播类网络上,可以将某一网络适配器(NIC)设为接收相应广播域上传输的所有帧
sniffer属第二层次(数据链路层)的攻击。通常是攻击者已经进入了 目标系统
如果sniffer运行在路由器,或有路由器功能的主机上,则可同时监视多个广播域,危害更大
通常,sniffer程序只需看到一个数据包的前200-300个字节的数据, 就能发现用户名和口令等信息
2.3.2 Sniffer防范
Sniffer往往是攻击者在侵入系统后使用
传输前加密,使收集的信息无法解读
采用交换技术,分割广播域。
管理员应使各计算机之间的信任关系最小,如lan要和internet相 连,仅有firewall是不行的,要考虑一旦入侵成功后他能得到什么, 保证一旦出现sniffer他只对最小范围有效
现代网络常常采用交换机作为网络连接设备枢纽
交换机不会让网络中每一台主机侦听到其他主机的通讯,因此Sniffer技术在这时必须结合网络端口镜像技术进行配合。
而衍生的安全技术则通过ARP欺骗来变相达到交换网络中的侦听。
回顾知识:交换机、路由器、集线器
路由器(Router): 是连接因特网中各局域网、广域网的设备。在路由器中记录着路由表,它会根据信道的情况自动选择和设定路由,以最佳路径 ,按前后顺序发送信号。发生在网络层。提供了防火墙的服务,只转发特定地址的数据包,不传送不支持路由协议的数据包传送和求知目标网络数据包的传送,从而可以防止广播风暴。
交换机(Switch): 是一种用于电(光)信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路,把传输的信息送到符合要求的相应路由上。发生在数据链路层。
集线器(Hub): 是指将多条以太网双绞线或光纤集合连接在同一段物理介质下的设备。发生在物理层。
2.4 端口扫描技术
2.4.1 原理
端口扫描是指某些别有用心的人发送一组端口扫描消息,试图以此侵入某台计算机,并了解其提供的计算机网络服务类型(这些网络服务均与端口号相关);
扫描器(工作原理):
自动检测远端或本机安全性弱点的程序,用户可不留痕迹的发现远端机器各端口的分配及运行的服务及软件版本
功能
发现一个主机或网络;
发现该主机运行何种服务;
测试这些服务发现漏洞
2.4.2 分类
常见的端口扫描类型
TCPconnect(): 入侵者无须任何权限,速度快,但是其易被发现,也易被过滤;
TCPSYN: 扫描器发送syn数据包,如果返回ack/syn同时需要再发送 RST关闭连接过程,表示端口处监听状态;如果返回RST,则不在侦听,不会留下入侵记录,但需要有root权限才能建立自己的syn数据包
TCPFIN: 一般防火墙或过滤器会过掉syn包,但FIN可以没有麻烦的通过,于是可能存在关闭的端口会用RST来响应FIN,而打开的端口 则不会响应,但有的系统不管打开与否都响应回复RST包
2.4.3 ping命令
Ping的原理
通过向目标主机传送一个小数据包,目标主机接收并将该包返送回来,如果返回的数据包和发送的数据包一致,则Ping命令成功。根据返回的信息,可以推断TCP/IP参数是否设置正确,以及运行是否正常、网络是否通畅等。
作用和特点
Ping命令可以进行以下操作 :
通过将ICMP(Internet控制消息协议)回显数据包发 送到计算机并侦听回显回复数据包来验证与一台或多 台远程计算机的连接。
每个发送的数据包最多等待一秒。
打印已传输和接收的数据包数。
2.5 特洛伊木马
2.5.1 木马与病毒的区别
◼ 一般情况下,病毒是依据其能够进行自我复制即传染性的特点而定义的
◼ 木马主要是根据它的有效载体,或者是其功能来定义的,更多情况下是根据其意图来定义的
◼ 木马一般不进行自我复制,但具有寄生性,如捆绑在合法程序中得到安装、启动木马的权限,DLL木马甚至采用动态嵌入技术寄生在合法程序的进程中
◼ 木马一般不具有普通病毒所具有的自我繁殖、主动感染传播等特性, 但我们习惯上将其纳入广义病毒,也就是说,木马也是广义病毒的一个子类
◼ 木马的最终意图是窃取信息、实施远程监控
◼ 木马与合法远程控制软件(如pcAnyWhere)的主要区别在于是 否具有隐蔽性、是否具有非授权性
2.5.2 木马的组成
木马系统软件一般由木马配置程序、控制程序和木马程序(服务器程序) 三部分组成。
2.5.3 木马攻击过程
木马通道与远程控制
◼ 木马连接建立后,控制端端口和服务端木马端口之间将会出现一条通道;
◼ 控制端上的控制端程序可借助这条通道与服务端上的木马程序取得联系,并通过木马程序对服务端进行远程控制,实现的 远程控制就如同本地操作
2.5.4 传播方式
◼ 把木马服务端和某个游戏/软件捆绑成一个文件
◼ 通过即时通讯工具、邮件、下载工具等渠道发送出去
◼ 构造一个链接或者一个网页
◼ 利用社会工程学欺骗方法
◼ 欺骗用户输入某些个人,隐私信息,然后窃取个人隐私
◼ 利用操作系统和应用软件的漏洞进行的攻击
◼ 网页挂马就是攻击者通过在正常的页面中(通常是网站的主页)插入一段代码。
◼ 浏览者在打开该页面的时候,这段代码被执行, 然后下载并运行某木马的服务器端程序,进而控制浏览者的主机