发布新日志

  • 网络安全学习笔记(更新中)

    2010-07-14 00:22:51

     
    //////////////////////////////////////////////////企业网络安全结构
    网络设备(路由器、交换机)
    操作系统
    应用程序
    //////////////////////////////////////////////////网络设备面临的威胁
    路由器:内部网络与外界通信出口。一旦黑客攻陷路由器,就掌握了控制内部网络访问外部网络的权力。
    -弱口令  密码简单
    -IOS自身漏洞  (路由器的操作系统)版本低,需要经常更新
    -非授权用户可以管理设备  权限低
    -CDP协议造成信息的泄露  思科设备之间相互了解。(尽量关闭)
    //////////////////////////////////////////////////操作系统面临的威胁
    1、Windows系统
    -未及时安装补丁
    -开启不必要的服务
    -管理员口令设置不正确  暴力破解
    -默认共享漏洞
    2、Linux系统
    -账号与口令安全
    -NFS文件系统漏洞  把移动硬盘的某个目录挂载下来
    -作为root运行的程序安全  应用程序被黑客控制得到权限
    //////////////////////////////////////////////////操作系统面临的威胁
    1、Web服务
    -II5.0超长文件名请求存在漏洞
    -其他漏洞
    2、邮件服务
    -垃圾邮件的骚扰
    -邮件附件中的病毒
    3、数据库
    -Sa账号为空  1、不开启Sa账号。2、为Sa设置强壮的密码。
    //////////////////////////////////////////////////企业网络面临的其他威胁
    1、病毒
    -蠕虫
    2、木马
    -冰河
    -灰鸽子
    3、来自内部的攻击  80%来自企业内部员工 20%来自网络
    -对企业不满的员工
    -对安全不了解的员工
    //////////////////////////////////////////////////网络安全解决方案
    1、网络设备
    2、操作系统
    3、应用程序
    4、防火墙+IDS+网络发病毒体系——IDS网络监测系统

    操作系统安全加固:
    1、主机物理安全——计算机不要让外人碰,有专门的机房及管理人员。
    2、账户安全——密码口令复杂度高。
    3、文件系统的安全——NTFS比FTP32安全,权限涉及到了文件夹和文件级别。
    4、停止多余的服务——减少黑客入侵可能,用最先进的漏洞监测工具。
    5、Windows日志维护——了解服务器最近是否有遭受到攻击。
    计算机病毒防治:
    1、全面部署防病毒系统——部署企业版杀毒软件
    2、及时更新病毒库和产品
    3、预防为主
    4、加强培训、提高防毒意识——给企业员工进行安全培训
    IDS入侵检测系统
    1、对系统的运行状态进行监视
    2、发现各种攻击企图、攻击行为或者攻击结果
    3、保证系统资源的机密性、完整性和可用性
    4、是防火墙的合理补充
    5、第二道安全闸门
     
    IPS (Intrusion Prevention System , 入侵防御系统)
    IPS的出现,应该说是IDS技术的一种新发展趋势,IPS技术在IDS监测的功能上又增加了主动响应的功能,一旦发现有攻击行为,立即响应,主动切断连接。它的部署方式不像IDS并联在网络中,而是以串联的方式接入网络中。

    //////////////////////////////////////////////////网络攻击常见手法
    1、扫描攻击——扫描计算机开放哪些服务和端口
    2、安全漏洞攻击——根据服务缺陷进行攻击
    3、口令入侵——反复尝试密码登录,暴力破解软件
    4、木马程序
    5、电子邮件攻击——附件里放木马
    6、DoS攻击——拒绝服务攻击,DDoS分布式拒绝服务攻击
    扫描攻击:
    1、黑客利用专门工具进行系统端口扫描,找到开放端口后进行入侵
    2、主机扫描
    -ping
    -Tracert
    -Nmap
    3、端口扫描
    -一个端口就是一个潜在的通信通道
    -扫描方法
      手动扫描
      工具扫描
    扫描软件:
    SuperScan  扫描计算机开放的端口和服务
    PortScanner
    Xscan
    MBSA 微软官方提供的系统安全检测软件
    安全漏洞攻击:
    1、操作系统或应用软件自身具有的Bugs
    2、安全漏洞举例:
    -缓冲区溢出
      当目标操作系统收到了超过它所能接收到的信息量时产生缓冲区溢出。
      例:用户名10个字符,黑客输入100个字符,有90个字符注入到内存中。(解决:当超过10个字符时,重新输入)
    -Http协议漏洞导致黑客攻击
    口令入侵:
    1、黑客攻击目标时必须破译用户的口令,只要攻击者能猜测用户口令,就能获得机器访问权
    -通过网络监听
        使用Sniffer工具捕获主机间通讯来获取口令,嗅探器
    -暴力破解
      John the Ripper
      L0pht Crack 5 :LC5   根据密码字典对计算机反复尝试登陆
    -利用管理员失误
      网络安全中人是薄弱的一环
      提高用户、特别是网络管理员的安全意识
    木马程序:
    1、特洛伊木马
     在对方机器上运行打开个端口为黑客提供服务
    2、常见的木马
    -BO(BackOriffice)
    -冰河、灰鸽子——国人的骄傲
    电子邮件:
    1、内容不健康邮件
    2、广告邮件——可能打开一个病毒网页
    3、被感染的邮件
    4、病毒邮件
    5、木马邮件
    DoS(Denial of Service,拒绝服务攻击)
    1、消耗系统资源(带宽、内存、队列、CPU)
    2、导致目标主机宕机
    3、阻止授权用户正常访问服务(慢、不能连接、没有响应)
    DoS攻击种类
    SYN Flood  需要为TCP连接分配内存,从而使其他功能不能分配足够内存。三次握手,进行了两次(SYN)(SYN/ACK),不进行第三次握手(ACK),连接队列处于等待状态,大量的这样等待,占满全部队列空间,系统挂起。60S系统自动RST,但系统已经崩溃。
    Ping of Death  IP应用的分段使打包不得不重装配,从而导致系统崩溃。
                   偏移量+段长度>65535,系统崩溃,重新启动,内核转储等。
    Teardrop  分段攻击,利用重装配错误,通过将各个分段重叠来使目标系统崩溃或挂起。
    Smurf(程序名)  网络上广播通信量泛滥,导致网络堵塞。攻击者向广播地址发送大量欺骗性的ICMP ECHO请求,这些包被放大,并发送到被攻击的地址,大量计算机向一台计算机回应ECHO包,目标系统将崩溃。

    //////////////////////////////////////////////////网络安全基础防护
    1、设备安全防护
    -路由器安全管理
    -交换机安全管理
    2、操作系统安全防护
    -Windows安全防护
    -Linux安全防护
    3、应用程序安全防护
    -Web安全防护
    -数据库安全防护

    //////////////////////////////////////////////////路由器安全管理
    针对路由器攻击类型:
    -直接侵入到系统内部——远程控制路由器
    -远程攻击使路由器崩溃或运行效率显著下降
    -网络管理协议

    路由器支持的配置方式:
    TELNET——远程控制协议
    TFTP——文件传输,基于UDP,向路由器传输设置文件
    FTP——文件传输,基于TCP
    HTTP——不需要远程登录,通过IE浏览器直接登录路由器
    SNMP——远程监控路由器,效率高
    Console——对路由器直接配置
    Aux——通过电话线、ISDN进行远程拨号

    面临的威胁:
    Telnet信息为明文——没有进行加密
    HTTP存在漏洞
    Console口——用笔记本直接连接配置
    SNMP协议缺省设置——如果不对SNMP设置,黑客会利用默认设置修改路由器配置

    防护措施:
    及时更新IOS——更新路由器操作系统
    登录路由器,要设置加密口令
    设置远程登录控制
    -Router(config)#line vty 0 4  设置远程控制端口0-4,共5个端口
    -Router(config-line)#login  启用端口
    -Router(config-line)#password AAA  设置密码
    -Router(config-line)#exec-timeout 10  超时10秒自动退出登录
    设置控制台与AUX登录控制
    -Router(config)#line console 0
    -Router(config-line)#transport input none  支持的协议,none表示不支持任何协议
    -Router(config-line)#password AAA
    -Router(config)#line sux 0
    -Router(config-line)#transport input none
    -Router(config-line)#no exec
    应用强密码策略
    -Router(config)#service password-encryption  red5加密
    -Router(config)#enable secret AAA  secret比password优先级高,password不生效
    关闭基于Web的配置
    -Router(config)#no ip http server 关闭不必要的服务
    利用ACL禁止Ping相关接口
    -Router(config)#access-list 101 deny icmp any host 192.168.2.1 echo  拒绝icmp协议ping主机,ping主机时,主机不应答
    -Router(config)#access-list 101 permit ip any any  允许其他协议访问
    -Router(config-if)#ip access-group 101 in
    关闭CDP
    -Router(config)#no cdp run 关闭整个路由器CDP协议
    -Router(config-if)#no cdp enable 进入端口,关闭该端口的CDP协议
    禁止不需要的服务
    -Router(config)#no ip domain-lookup 域名解析
    -Router(config)#no ip bootp server  协议DHCP
    -Router(config)#no snmp-server  简单网络管理协议
    -Router(config)#no snmp-server community public RO
    -Router(config)#no snmp-server community admin RW

    //////////////////////////////////////////////////交换机安全管理
    及时下载新的IOS
    使用管理访问控制系统
    禁用未使用的端口
    关闭危险服务
    利用VLAN加强内部网络安全——VLAN虚拟局域网,局域网的物理链路上隔离了广播域。计算机端口绑定在VLAN上,
                                用Sniffer抓包,只能抓到同一个VLAN里的包。

    //////////////////////////////////////////////////Windows安全
    1、关闭不必要的服务
    -Remote Registry Service  远程注册服务,允许远程修改注册表。services.msc
    -Messenger  网络信使服务
    2、关闭不需要的端口
    -telnet
    -Netbios
    -FTP
    -Web
    3、打开审计策略——本地安全设置->本地策略->审核登录事件。
                       对文件夹及文件添加审核->属性->安全->高级->审核
    4、重要文件安全存放——尽量不要放在系统盘,文件系统选择NTFS。
    5、登录时不显示上次登录名——本地安全设置->本地策略->安全选项->交互式登录:不显示上次用户名。
                                 本地安全设置->本地策略->安全选项->账户:重命名系统管理员账户。让黑客猜不到管理员账号
                                 gpupdate /force 强制更新组策略
    6、禁止建立空连接——打了XPsp3和2003sp2补丁后安全
    7、关闭默认共享——net share 查看共享
                       net share c$ /delete 删除共享
    8、设定账户锁定阀值——本地安全设置->帐户策略。可防止暴力破解。
                    
    //////////////////////////////////////////////////Linux安全

     

    //////////////////////////////////////////////////防火墙介绍及ACL
    防火墙主要功能:
    1、强化安全策略——防火墙通过仅允许“认可的”和符合规则的请求通过的方式来强化安全策略
    2、有效的记录网上活动——所有经过防火墙的流量都可以被记录下来,包括企业用户上网情况
    3、隐藏用户站点或网络拓扑——防火墙在隔离内网和外网的同时利用NAT来隐藏内网的各种细节
    4、安全策略的检查——所有信息都必须经过防火墙,防火墙就成为一个安全检查点

    NAT:“Network Address Translation”,中文意思是“网络地址转换”,NAT就是在局域网内部网络中使用内部地址,
    而当内部节点要与外部网络进行通讯时,就在网关(可以理解为出口,打个比方就像院子的门一样)处,将内部地址替换成公用地址,
    从而在外部公网(internet)上正常使用,NAT可以使多台计算机共享Internet连接,这一功能很好地解决了公共IP地址紧缺的问题。

    防火墙分类:
    1、包过滤型防火墙——网络层,对数据报进行检测
    2、代理型防火墙——应用程,用代理服务器上网
    3、状态检测型防火墙——网络层,根据数据包状态

    包过滤型防火墙:
    -根据定义好的过滤规则审查每个数据包,以便确定其是否与某一条包过滤规则匹配
    -过滤规则是根据数据包的报头信息进行定义的
    -没有明确允许的都被禁止

    代理型防火墙:
    -也被称为代理服务器
    -位于客户机与服务器之间,完全阻挡二者间的数据流
    -可以针对应用层进行侦测和扫描,对付基于应用层的浸入和病毒十分有效

    状态检测型防火墙:
    -检测每一个有效连接的状态,并根据这些信息决定网络数据包是否能够通过防火墙

     
  • IP包头结构详解

    2010-07-07 09:27:06

    版本号(Version):长度4比特。标识目前采用的IP协议的版本号。一般的值为0100(IPv4),0110(IPv6)

    IP包头长度(Header Length):长度4比特。这个字段的作用是为了描述IP包头的长度,因为在IP包头中有变长的可选部分。该部分占4个bit位,单位为32bit(4个字节),即本区域值= IP头部长度(单位为bit)/(8*4),因此,一个IP包头的长度最长为“1111”,即15*4=60个字节。IP包头最小长度为20字节。

    服务类型(Type of Service):长度8比特。8位 按位被如下定义 PPP DTRC0
    PPP:定义包的优先级,取值越大数据越重要
       000 普通 (Routine)
       001 优先的 (Priority)
       010 立即的发送 (Immediate)
       011 闪电式的 (Flash)
       100 比闪电还闪电式的 (Flash Override)
       101 CRI/TIC/ECP(找不到这个词的翻译)
       110 网间控制 (Internetwork Control)
       111 网络控制 (Network Control)

    D 时延: 0:普通 1:延迟尽量小
    T 吞吐量: 0:普通 1:流量尽量大
    R 可靠性: 0:普通 1:可靠性尽量大
    M 传输成本: 0:普通 1:成本尽量小
    0 最后一位被保留,恒定为0

    IP包总长(Total Length):长度16比特。 以字节为单位计算的IP包的长度 (包括头部和数据),所以IP包最大长度65535字节。

    标识符(Identifier):长度16比特。该字段和Flags和Fragment Offest字段联合使用,对较大的上层数据包进行分段(fragment)操作。路由器将一个包拆分后,所有拆分开的小包被标记相同的值,以便目的端设备能够区分哪个包属于被拆分开的包的一部分。

    标记(Flags):长度3比特。该字段第一位不使用。第二位是DF(Don't Fragment)位,DF位设为1时表明路由器不能对该上层数据包分段。如果一个上层数据包无法在不分段的情况下进行转发,则路由器会丢弃该上层数据包并返回一个错误信息。第三位是MF(More Fragments)位,当路由器对一个上层数据包分段,则路由器会在除了最后一个分段的IP包的包头中将MF位设为1。

    片偏移(Fragment Offset):长度13比特。表示该IP包在该组分片包中位置,接收端靠此来组装还原IP包。

    生存时间(TTL):长度8比特。当IP包进行传送时,先会对该字段赋予某个特定的值。当IP包经过每一个沿途的路由器的时候,每个沿途的路由器会将IP包的TTL值减少1。如果TTL减少为0,则该IP包会被丢弃。这个字段可以防止由于路由环路而导致IP包在网络中不停被转发。

    协议(Protocol):长度8比特。标识了上层所使用的协议。
    以下是比较常用的协议号:
        1    ICMP
        2    IGMP
        6    TCP
       17    UDP
       88    IGRP
       89    OSPF

    头部校验(Header Checksum):长度16位。用来做IP头部的正确性检测,但不包含数据部分。 因为每个路由器要改变TTL的值,所以路由器会为每个通过的数据包重新计算这个值。

    起源和目标地址(Source and Destination Addresses):这两个地段都是32比特。标识了这个IP包的起源和目标地址。要注意除非使用NAT,否则整个传输的过程中,这两个地址不会改变。

    至此,IP包头基本的20字节已介绍完毕,此后部分属于可选项,不是必须的部分。

    可选项(Options):这是一个可变长的字段。该字段属于可选项,主要用于测试,由起源设备根据需要改写。可选项目包含以下内容:

        松散源路由(Loose source routing):给出一连串路由器接口的IP地址。IP包必须沿着这些IP地址传送,但是允许在相继的两个IP地址之间跳过多个路由器。

        严格源路由(Strict source routing):给出一连串路由器接口的IP地址。IP包必须沿着这些IP地址传送,如果下一跳不在IP地址表中则表示发生错误。

        路由记录(Record route):当IP包离开每个路由器的时候记录路由器的出站接口的IP地址。

        时间戳(Timestamps):当IP包离开每个路由器的时候记录时间。

    填充(Padding):因为IP包头长度(Header Length)部分的单位为32bit,所以IP包头的长度必须为32bit的整数倍。因此,在可选项后面,IP协议会填充若干个0,以达到32bit的整数倍。

  • 网络基础学习笔记

    2010-07-07 09:03:55

    /////////////////////////////////////////////////////广域网与互联网
    广域网:公司之间连接、企业私网(银行之间搭建光纤)
    Internet:遵守TCP/IP,有病毒、容易受黑客攻击
    /////////////////////////////////////////////////////网络标准化
    国际标准化组织(ISO)
    电子电器工程师协会(IEEE) 802.3
    美国国家标准局(ANSI)
    电子工业协会(EIA/TIA)
    国际电信联盟(ITU)
    INTERNET行动委员会(IAB)
    /////////////////////////////////////////////////////七层OSI
    Application       All           应用层   发送邮件SMTP、HTTP
    Presentation      People        表示层   统一编码 如ASCII编码  不同系统间互联
    Session           Seem          对话层   客户端向服务器请求
    Tranport          To            传输层   传输保障 TCP
    Network           Need          网络层   地址、包交换、路由  三层交换机(带网络功能)
    DataLink          Data          数据链路层 帧、二层交换机
    Physical          Processing    物理层    1010
    /////////////////////////////////////////////////////物理层
    目的:保证原始数据比特流的无误传输
    任务:确定于物理媒体相关的电气特性、机械特性、功能特性急规程特性

    带宽  bps   bits/sec
    UTP/STP 非屏蔽/屏蔽 双绞线
    5类/超5类/6类双绞线   100M/1000M/10000M
    RJ45接口  水晶头    千兆8根都用
    直通线,两边一样,一般两边接T568B、网卡与交换机
    交叉线,T568B T568A   交换机与交换机、网卡与网卡

    多模光纤:多种波传输,带宽大,传输距离4-5km,50 or 62.5/125
    单模光纤:一种波传输,带宽小,传输距离40km,8.3-10/125

    无线网络:
    802.11

    模拟调制解调器:Modem  转声音
    数字传输的调制方法:脉码调制(PCM)
    PCM的二种体制:北美24路PCM-简称T1(1.544Mb/s)
                   欧洲30路PCM-简称E1(2.048Mb/s)
    我国采用E1标准(华为 ),cisco(T1)
    /////////////////////////////////////////////////////数据链路层
    两个子层组成:逻辑链路层 LLC,媒体访问层MAC

    媒体访问层MAC:解决发送方占用信道问题(我要传送数据,网络是否可用)
    目的:完成发送方占用信道问题
    任务:将上层传下来的数据封装成帧进行发送
          实现和维护MAC协议
          比特差错检测

    占用信道方法:
    争用-Contention  以太网采用的
    令牌-Token Passing 令牌环网
    轮询-Polling 有一台计算机控制信道
    SNMP 简单网络管理协议,网管工作站检查主机工作情况时,使用轮询

    MAC寻址:广播寻址
    互联网:域名解析

    逻辑链路层 LLC:把高层的数据怎么变成货物
    目的:保证帧传送的完整性与无误性
    任务:建立和释放LLC层的逻辑连接
          提供与高层(网络层)的接口
          差错控制
          流量控制:保证快速与慢速设备之间帧无误传输(防止流量益处)

    IEEE802.3标准:以太网
    媒体存取方式:争用
    争用方式:CSMA/CD
    坚持方式:1
    编码:曼彻斯特编码   高电压1,低电压0

    以太网原理CSMA/CD  载波侦听多路访问/冲突检测

    交换机最多级联7级,停留查看帧的去向,级联越多延迟越大。
    /////////////////////////////////////////////////////网络层
    目的:完成网络间数据传输
    任务:寻找网络地址-网络寻址
          完成网络间数据传输-交换传输
          路由选择算法-路径选择
    MAC地址,不分层,广播 所以不能路由,能路由的是单播、分层。086-029-8824-3027电话可以路由

    单播
    广播 网段中的最大地址是广播地址
    组播

    tracert IP/域名   追踪路由
    linux下查看IP    ifconfig
    netsend "不要玩CS" 192.168.255.255  对192.168网段广播

    255.255.255.255 局域网广播
    网络号……255   对一个子网广播
    ping 127任意值(除去全零全1) 环回地址

           可用范围   网段   主机
    0       1-126  A   W      X.Y.Z
    10     128-191 B   W.X      Y.Z
    110    192-223 C   W.X.Y      Z
    1110   224-239 D   组播
    11110  240-247 E   保留

    路由+NAT:直接修改局域网的包,以外网地址发出
    代理:对用户不透明,

    特殊地址:0、255、127
    保留地址:
              保留值                        实际可用值
    A    10.0.0.0-10.255.255.255      10.0.0.1-10.255.255.254
    B  172.16.0.0-172.31.255.255    172.16.0.1-172.31.255.254
    C 192.168.0.0-192.168.255.255  192.168.0.1-192.168.255.254

    子网划分
    192.168.0.0   利用子网掩码,把三类地址变为二类地址,把0,1网段划分到一个网段。
    192.168.1.0
    255.255.0.0

    192.168.0.1
    255.255.255.224
               11100000
    000 00000 - 000 11111   0-31  192.168.0.0-31  可用地址192.168.0.1-30   最小:网络号
    001 00000 - 001 11111   32-63                                          最大:广播地址
    010 00000 - 010 11111
    ……
    route add 192.168.0.32 255.255.255.224

    路由环境
    路由表:
    最终目的          方向     尺度
    192.168.0.1/24  10.0.0.2    1
    172.16.0.1/10   10.0.0.1    1
    尺度:多少跳,跨一个路由器为1跳,直连路由0跳(与交换机相连的路由器)

    交换传输:
    电路交换cuicurt switch 一旦通路建立,保持至数据传输完毕
    消息交换message switch 数据被分成多个消息,每个消息独立选择路径
    分组交换package switch 数据被分成多个组,每个分组独立选择路径 
    IP协议就是分组交换协议

    网络路径选择routing
    路由发现:
    距离矢量法distance vector
    状态连接法link state
    路由选择:
    静态选择-人为建立路由表
    动态选择-hop,tick  路由器之间互相学习路由表

    /////////////////////////////////////////////////////会话层
    目的:逻辑地址(低层提供)服务地址
    任务:对话控制
          会话管理
    对话控制
    单工通信    发出去就不回来,例如:广播
    半双工通信  在同一时间只能发或者收
    全双工通信 

    会话管理:
    建立连接
    数据传输
    释放连接

    /////////////////////////////////////////////////////表示层
    目的:将数据转换成计算机应用程序互相理解的格式
    任务:翻译
          加密
    翻译:
    -ASCII

    /////////////////////////////////////////////////////应用层
    目的:完成网络服务应用
    任务:网络服务的协议
          网络应用程序
          网络服务通告
    域名解析

    /////////////////////////////////////////////////////常用协议
    TCP/IP
    IPX/SPX Internet分组交换/顺序分组交换,Novell公司的通信协议集
    Apple Talk 苹果机对等网协议
    NetBIOS NetBIOS名(计算机名46字符)
    NetBEUI 局域网通信很快,但不能路由
    SNA  sna网用在IBM小型机
    DECent

    /////////////////////////////////////////////////////TCP/IP协议
    TCP/IP协议栈
    IP数据报:IP协议向上层(主要是TCP层)提供统一的IP数据报

    ICMP
    ping www.baidu.com
    tracert www.baidu.com  跟踪路由

    TCP  传输控制协议
    -传输层协议,由上层协议接收任意长度的报文,并提供面向连接的传输服务。
    -TCP接收数据流,并分成段,然后将这些段送给IP,因IP为无连接的,所以TCP必须为每个段提供顺序同步。

    流量控制:由于计算机的处理速度不同,在传输过程中传输层调整传输速度。

    IP套接字:类似192.168.0.1:80  IP地址+端口号
    端口号范围:
    0-255      公共应用  1-1023 众所周知
    255-1023   商业公司  >=1024 随即端口
    1024-65535 没有限制
    常见端口号:
    应用协议  端口号 传输协议
    HTTP     80      TCP
    FTP      21      TCP
    TELNET   23      TCP
    SMTP     25      TCP
    DNS      53      TCP/UDP
    TFTP     69      UDP
    SNMP    161      UDP
    RIP     520      UDP
    NTP 微软时间同步协议

    QQ 4000
    远程桌面 3389

    UDP137、138 在网络邻居中显示计算机
    TCP139、445  \\IP

    netstat 查看TCP协议端口 netstat -n显示活动连接 netstat -an显示所有端口连接

    三次握手
             连接请求  send SYN   ---->   SYN received 接受请求   当不接受请求时,fin-wait->time wait->close
               (seq=100 ctl=SYN)
                  SYN received   <----    Send SYN ACK 请求连接 回送确认    
                                          (seq=300 ack=101 ctl=syn,ack)
    发送数据回送确认 Established  ---->   连接成功
       (seq=101 ack=301 ctl=ack)

    DoS攻击:拒绝服务攻击,重复二次握手(只进行 SYN ,SYN ACK )

    UDP:与TCP相比没有三次握手,没有校验,失去质量换取速度
    nslookup 解析域名命令


    /////////////////////////////////////////////////////ARP地址解析协议
    arp -a  arp表
    arp协议:发送Arp广播,目标地址10.1.1.254。把一个IP地址MAC地址做具体解析。广播式寻址(自动)
    二层交换设备:交换机、网卡,只认MAC地址(互联网用IP),局域网通信必须知道主机MAC地址。
    全网发ARP请求(replay请求),回应请求把自己MAC地址告诉主机。
    IPV6取消ARP协议,转用“邻居协议”。
    ARP病毒:病毒主机本身MAC为22-22-22-22-22-22,得到网关IP 192.168.1.1和MAC地址 11-11-11-11-11-11,他向全网广播说自己是网关后,其他主机学到的网关地址为192.168.1.1但MAC地址为22-22-22-22-22-22。
    更恶意的病毒:在病毒机上安装个小代理,让其他主机可以上网,但数据走的是病毒机。
    把ARP表做成静态项:arp -s 192.168.1.1 11-11-11-11-11-11
    Win7 ARP绑定: netsh ii show in
    netsh -c "ii" add neighbors 11 "IP地址" "mac地址"

    双向欺骗,欺骗路由器,在路由器上绑定IP的MAC地址。
    /////////////////////////////////////////////////////DNS域名解析协议
    域名和IP进行解析
    DNS Server
    nslookup 域名解析命令


     

  • Adsl猫+Dlink无线路由设置

    2009-06-18 23:46:25

    猫开路由后(猫内的DHCP关掉,直接设置后级路由为静态IP),再设置后级路由dlink为静态ip

    具体配置:

    ip192.168.1.1
    路由器外网设置:

    IP地址:192.168.1.2

    子网掩码:255.255.255.0

    缺省网关:192.168.1.1(路由器为猫的下级设备,网关设为猫的IP

    路由器网关设为猫IP192.168.1.1
    路由器内网设置保持不变(路由器IPDHCP等设置)

    上网计算机IP:全部自动获取就可以

  • 如何快速查出网内空闲IP地址

    2009-05-18 15:22:29

    IPTracker.rar(284 B )

    一个简单的批处理文件,可以快速查出网内空闲的IP地址,并将地址保存到当前目录下的IPlist.txt文件中。下面的批处理文件可以查出192.168.100.101—192.168.100.200之间的空闲IP。其中(101,1,200)的“1”代表查询IP时的IP间隔数,1代表无间隔,2代表中间间隔一位即只搜索192.168.100.101,192.168.100.103,……。Ping -n,n代表发送检测包的次数;-w为超时时间,单位毫秒。

    @Echo off
    date /t > IPList.txt
    time /t >> IPList.txt

    echo =========== >> IPList.txt
    For /L %%f in (101,1,200) Do Ping -n 1 -w 50 192.168.100.%%f | Find "Request timed out." &&echo 192.168.100.%%f Timed Out >> IPList.txt &&echo Off
    cls
    Echo Finished!
    @Echo on
    Notepad.exe IPList.txt

     

  • 网络风暴

    2009-05-15 17:28:59

    最近公司网络状况不好,从图中可以看到网络应用情况,每台机器都是这样。于是在网上查了些资料与大家分享。

    网络广播风暴

    网吧行业竞争的加剧,出现了一些规模比较大的网吧。目前在网吧行业内,百台以上的网吧已经随处可见了。由于网吧在进行网络建设时,缺乏专业的网络技术支持,使得网吧的网络故障频繁出现。在网吧的网络故障中,由于网络广播风暴引起的网络故障,占网吧网络故障的九成以上。网络广播风暴到底是如何形成的呢?
    要想正确理解广播风暴的具体含义,我们必须了解一下工作在网络中的网络设备的工作原理。目前,工作在网吧网络中的网络设备,基本上都是交换机了。对于交换机,大家并没有真正的了解其工作原理。
    一、交换机基础知识
    1、交换机的定义:交换机是一种基于MAC(网卡的硬件地址)识别,能完成封装转发数据包功能的网络设备。交换机可以“学习”MAC地址,并把其存放在内部地址表中,通过在数据帧的始发者和目标接收者之间建立临时的交换路径,使数据帧直接由源地址到达目的地址。
    现在,交换机已经替代了我们原来比较熟悉的网络设备集线器,又称Hub。但是这并不意味着,我们不需要了解Hub的基本知识。
    2、集线器的定义:集线器(HUB)属于数据通信系统中的基础设备,它和双绞线等传输介质一样,是一种不需任何软件支持或只需很少管理软件管理的硬件设备。它被广泛应用到各种场合。集线器工作在局域网(LAN)环境,像网卡一样,应用于OSI参考模型第一层,因此又被称为物理层设备。集线器内部采用了电器互联,当维护LAN的环境是逻辑总线或环型结构时,完全可以用集线器建立一个物理上的星型或树型网络结构。在这方面,集线器所起的作用相当于多端口的中继器。其实,集线器实际上就是中继器的一种,其区别仅在于集线器能够提供更多的端口服务,所以集线器又叫多口中继器。
    二、交换机与集线器的区别
    现在,我们经常会存在这样一个技术误区,我们用的是交换机,数据全部是点对点转发的,为什么还会产生广播风暴呢?我们在充分了解了交换机与集线器的功能区别后,就会明白,使用交换机作为网络设备的网络,为什么会出现广播风暴。
    1、交换机与集线器的本质区别:用集线器组成的网络称为共享式网络,而用交换机组成的网络称为交换式网络。
    共享式以太网存在的主要问题是所有用户共享带宽,每个用户的实际可用带宽随网络用户数的增加而递减。这是因为当信息繁忙时,多个用户可能同时“争用”一个信道,而一个信道在某一时刻只允许一个用户占用,所以大量的用户经常处于监测等待状态,致使信号传输时产生抖动、停滞或失真,严重影响了网络的性能。
    2、在交换式以太网中,交换机提供给每个用户专用的信息通道,除非两个源端口企图同时将信息发往同一个目的端口,否则多个源端口与目的端口之间可同时进行通信而不会发生冲突。通过实验测得,在多服务器组成的LAN 中,处于半双工模式下的交换式以太网的实际最大传输速度是共享式网络的1.7倍,而工作在全双工状态下的交换式以太网的实际最大传输速度可达到共享式网络的3.8倍。
    交换机只是在工作方式上与集线器不同,其他的如连接方式、速度选择等与集线器基本相同,目前的交换机同样从速度上分为10M、100M和1000M几种,所提供的端口数多为8口、16口和24口几种。交换机在局域网中主要用于连接工作站、Hub、服务器或用于分散式主干网。
    三、产生广播风暴的原因
    通过对以上网络设备的了解,我们就可以简单分析出来,网络产生广播风暴的原因了。一般情况下,产生网络广播风暴的原因,主要有以下几种:
    1、网络设备原因:我们经常会有这样一个误区,交换机是点对点转发,不会产生广播风暴。在我们购买网络设置时,购买的交换机,通常是智能型的Hub,却被奸商当做交换机来卖。这样,在网络稍微繁忙的时候,肯定会产生广播风暴了。
    2、网卡损坏:如果网络机器的网卡损坏,也同样会产生广播风暴。损坏的网卡,不停向交换机发送大量的数据包,产生了大量无用的数据包,产生了广播风暴。由于网卡物理损坏引起的广播风暴,故障比较难排除,由于损坏的网卡一般还能上网,我们一般借用Sniffer局域网管理软件,查看网络数据流量,来判断故障点的位置。
    3、网络环路:曾经在一次的网络故障排除中,发现一个很可笑的错误,一条双绞线,两端插在同一个交换机的不同商品上,导致了网络性能急骤下降,打开网页都非常困难。这种故障,就是典型的网络环路。网络环路的产生,一般是由于一条物理网络线路的两端,同时接在了一台网络设备中。
    4、网络病毒:目前,一些比较流行的网络病毒,Funlove、震荡波、RPC等病毒,一旦有机器中毒后,会立即通过网络进行传播。网络病毒的传播,就会损耗大量的网络带宽,引起网络堵塞,引起广播风暴。
    5、黑客软件的使用:目前,一些上网者,经常利用网络执法官、网络剪刀手等黑客软件,对网吧的内部网络进行攻击,由于这些软件的使用,网络也可能会引起广播风暴。
    要想做到对故障的快速判断,良好扎实的基础知识,是不可缺少的。因此大家在日后的学习中,不要忽略了对基础知识的学习!

     

  • 四层交换机与二层、三层交换机的区别

    2009-05-13 12:01:21

    二层、三层、四层交换机的区别


    二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。具体的工作流程如下:

    (1) 当交换机从某个端口收到一个数据包,它先读取包头中的源MAC地址,这样它就知道源MAC地址的机器是连在哪个端口上的;

    (2) 再去读取包头中的目的MAC地址,并在地址表中查找相应的端口;

    (3) 如表中有与这目的MAC地址对应的端口,把数据包直接复制到这端口上;

    (4) 如表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,交换机又可以学习一目的MAC地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。

    不断的循环这个过程,对于全网的MAC地址信息都可以学习到,二层交换机就是这样建立和维护它自己的地址表。

    从二层交换机的工作原理可以推知以下三点:

    (1) 由于交换机对多数端口的数据进行同时交换,这就要求具有很宽的交换总线带宽,如果二层交换机有N个端口,每个端口的带宽是M,交换机总线带宽超过N×M,那么这交换机就可以实现线速交换;

    (2) 学习端口连接的机器的MAC地址,写入地址表,地址表的大小(一般两种表示方式:一为BUFFER RAM,一为MAC表项数值),地址表大小影响交换机的接入容量;

    (3) 还有一个就是二层交换机一般都含有专门用于处理数据包转发的ASIC (Application specific Integrated Circuit)芯片,因此转发速度可以做到非常快。由于各个厂家采用ASIC不同,直接影响产品性能。

    以上三点也是评判二三层交换机性能优劣的主要技术参数,这一点请大家在考虑设备选型时注意比较。


    (二)路由技术

    路由器工作在OSI模型的第三层---网络层操作,其工作模式与二层交换相似,但路由器工作在第三层,这个区别决定了路由和交换在传递包时使用不同的控制信息,实现功能的方式就不同。工作原理是在路由器的内部也有一个表,这个表所标示的是如果要去某一个地方,下一步应该向那里走,如果能从路由表中找到数据包下一步往那里走,把链路层信息加上转发出去;如果不能知道下一步走向那里,则将此包丢弃,然后返回一个信息交给源地址。

    路由技术实质上来说不过两种功能:决定最优路由和转发数据包。路由表中写入各种信息,由路由算法计算出到达目的地址的最佳路径,然后由相对简单直接的转发机制发送数据包。接受数据的下一台路由器依照相同的工作方式继续转发,依次类推,直到数据包到达目的路由器。

    而路由表的维护,也有两种不同的方式。一种是路由信息的更新,将部分或者全部的路由信息公布出去,路由器通过互相学习路由信息,就掌握了全网的拓扑结构,这一类的路由协议称为距离矢量路由协议;另一种是路由器将自己的链路状态信息进行广播,通过互相学习掌握全网的路由信息,进而计算出最佳的转发路径,这类路由协议称为链路状态路由协议。

    由于路由器需要做大量的路径计算工作,一般处理器的工作能力直接决定其性能的优劣。当然这一判断还是对中低端路由器而言,因为高端路由器往往采用分布式处理系统体系设计。

    (三)三层交换技术

    近年来的对三层技术的宣传,耳朵都能起茧子,到处都在喊三层技术,有人说这是个非常新的技术,也有人说,三层交换嘛,不就是路由器和二层交换机的堆叠,也没有什么新的玩意,事实果真如此吗?下面先来通过一个简单的网络来看看三层交换机的工作过程。


    组网比较简单

    使用IP的设备A------------------------三层交换机------------------------使用IP的设备B

    比如A要给B发送数据,已知目的IP,那么A就用子网掩码取得网络地址,判断目的IP是否与自己在同一网段。

    如果在同一网段,但不知道转发数据所需的MAC地址,A就发送一个ARP请求,B返回其MAC地址,A用此MAC封装数据包并发送给交换机,交换机起用二层交换模块,查找MAC地址表,将数据包转发到相应的端口。

    如果目的IP地址显示不是同一网段的,那么A要实现和B的通讯,在流缓存条目中没有对应MAC地址条目,就将第一个正常数据包发送向一个缺省网关,这个缺省网关一般在操作系统中已经设好,对应第三层路由模块,所以可见对于不是同一子网的数据,最先在MAC表中放的是缺省网关的MAC地址;然后就由三层模块接收到此数据包,查询路由表以确定到达B的路由,将构造一个新的帧头,其中以缺省网关的MAC地址为源MAC地址,以主机B的MAC地址为目的MAC地址。通过一定的识别触发机制,确立主机A与B的MAC地址及转发端口的对应关
    系,并记录进流缓存条目表,以后的A到B的数据,就直接交由二层交换模块完成。这就通常所说的一次路由多次转发。

    以上就是三层交换机工作过程的简单概括,可以看出三层交换的特点:

    由硬件结合实现数据的高速转发。

    这就不是简单的二层交换机和路由器的叠加,三层路由模块直接叠加在二层交换的高速背板总线上,突破了传统路由器的接口速率限制,速率可达几十Gbit/s。算上背板带宽,这些是三层交换机性能的两个重要参数。

    简洁的路由软件使路由过程简化。

    大部分的数据转发,除了必要的路由选择交由路由软件处理,都是又二层模块高速转发,路由软件大多都是经过处理的高效优化软件,并不是简单照搬路由器中的软件。

    结论

    二层交换机用于小型的局域网络。这个就不用多言了,在小型局域网中,广播包影响不大,二层交换机的快速交换功能、多个接入端口和低谦价格为小型网络用户提供了很完善的解决方案。

    路由器的优点在于接口类型丰富,支持的三层功能强大,路由能力强大,适合用于大型的网络间的路由,它的优势在于选择最佳路由,负荷分担,链路备份及和其他网络进行路由信息的交换等等路由器所具有功能。

    三层交换机的最重要的功能是加快大型局域网络内部的数据的快速转发,加入路由功能也是为这个目的服务的。如果把大型网络按照部门,地域等等因素划分成一个个小局域网,这将导致大量的网际互访,单纯的使用二层交换机不能实现网际互访;如单纯的使用路由器,由于接口数量有限和路由转发速度慢,将限制网络的速度和网络规模,采用具有路由功能的快速转发的三层交换机就成为首选。

    一般来说,在内网数据流量大,要求快速转发响应的网络中,如全部由三层交换机来做这个工作,会造成三层交换机负担过重,响应速度受影响,将网间的路由交由路由器去完成,充分发挥不同设备的优点,不失为一种好的组网策略,当然,前提是客户的腰包很鼓,不然就退而求其次,让三层交换机也兼为网际互连。

    第四层交换的一个简单定义是:它是一种功能,它决定传输不仅仅依据MAC地址(第二层网桥)或源/目标IP地址(第三层路由),而且依据TCP/UDP(第四层) 应用端口号。第四层交换功能就象是虚IP,指向物理服务器。它传输的业务服从的协议多种多样,有HTTP、FTP、NFS、Telnet或其他协议。这些业务在物理服务器基础上,需要复杂的载量平衡算法。在IP世界,业务类型由终端TCP或UDP端口地址来决定,在第四层交换中的应用区间则由源端和终端IP地址、TCP和UDP端口共同决定。

    在第四层交换中为每个供搜寻使用的服务器组设立虚IP地址(VIP),每组服务器支持某种应用。在域名服务器(DNS)中存储的每个应用服务器地址是VIP,而不是真实的服务器地址。

    当某用户申请应用时,一个带有目标服务器组的VIP连接请求(例如一个TCP SYN包)发给服务器交换机。服务器交换机在组中选取最好的服务器,将终端地址中的VIP用实际服务器的IP取代,并将连接请求传给服务器。这样,同一区间所有的包由服务器交换机进行映射,在用户和同一服务器间进行传输。

    第四层交换的原理

    OSI模型的第四层是传输层。传输层负责端对端通信,即在网络源和目标系统之间协调通信。在IP协议栈中这是TCP(一种传输协议)和UDP(用户数据包协议)所在的协议层。

    在第四层中,TCP和UDP标题包含端口号(portnumber),它们可以唯一区分每个数据包包含哪些应用协议(例如HTTP、FTP等)。端点系统利用这种信息来区分包中的数据,尤其是端口号使一个接收端计算机系统能够确定它所收到的IP包类型,并把它交给合适的高层软件。端口号和设备IP地址的组合通常称作“插口(socket)”。 1和255之间的端口号被保留,他们称为“熟知”端口,也就是说,在所有主机TCP/IP协议栈实现中,这些端口号是相同的。除了“熟知”端口外,标准UNIX服务分配在256到1024端口范围,定制的应用一般在1024以上分配端口号. 分配端口号的最近清单可以在RFc1700”Assigned Numbers”上找到。TCP/UDP端口号提供的附加信息可以为网络交换机所利用,这是第4层交换的基础。

    "熟知"端口号举例:

    应用协议 端口号
    FTP 20(数据)
    21(控制)
    TELNET 23
    SMTP 25
    HTTP 80
    NNTP 119
    NNMP 16
    162(SNMP traps)
    TCP/UDP端口号提供的附加信息可以为网络交换机所利用,这是第四层交换的基础。

    具有第四层功能的交换机能够起到与服务器相连接的“虚拟IP”(VIP)前端的作用。

    每台服务器和支持单一或通用应用的服务器组都配置一个VIP地址。这个VIP地址被发送出去并在域名系统上注册。

    在发出一个服务请求时,第四层交换机通过判定TCP开始,来识别一次会话的开始。然后它利用复杂的算法来确定处理这个请求的最佳服务器。一旦做出这种决定,交换机就将会话与一个具体的IP地址联系在一起,并用该服务器真正的IP地址来代替服务器上的VIP地址。

    每台第四层交换机都保存一个与被选择的服务器相配的源IP地址以及源TCP 端口相关联的连接表。然后第四层交换机向这台服务器转发连接请求。所有后续包在客户机与服务器之间重新影射和转发,直到交换机发现
    会话为止。

    在使用第四层交换的情况下,接入可以与真正的服务器连接在一起来满足用户制定的规则,诸如使每台服务器上有相等数量的接入或根据不同服务器的容量来分配传输流。

    如何选用合适的第四层交换

    a,速度

    为了在企业网中行之有效,第四层交换必须提供与第三层线速路由器可比拟的性能。也就是说,第四层交换必须在所有端口以全介质速度操作,即使在多个千兆以太网连接上亦如此。千兆以太网速度等于以每秒488000 个数据包的最大速度路由(假定最坏的情形,即所有包为以及网定义的最小尺寸,长64字节)。

    b,服务器容量平衡算法


    依据所希望的容量平衡间隔尺寸,第四层交换机将应用分配给服务器的算法有很多种,有简单的检测环路最近的连接、检测环路时延或检测服务器本身的闭环反馈。在所有的预测中,闭环反馈提供反映服务器现有业务量的最精确的检测。

    c,表容量

    应注意的是,进行第四层交换的交换机需要有区分和存贮大量发送表项的能力。交换机在一个企业网的核心时尤其如此。许多第二/ 三层交换机倾向发送表的大小与网络设备的数量成正比。对第四层交换机,这个数量必须乘以网络中使用的不同应用协议和会话的数量。因而发送表的大小随端点设备和应用类型数量的增长而迅速增长。第四层交换机设计者在设计其产品时需要考虑表的这种增长。大的表容量对制造支持线速发送第四层流量的高性能交换机至关重要.

    d,冗余

    第四层交换机内部有支持冗余拓扑结构的功能。在具有双链路的网卡容错连接时,就可能建立从一个服务器到网卡,链路和服务器交换器的完全冗余系统。
  • 什么是SYN包及SYN攻击原理

    2008-01-11 14:15:24

    转载地址http://hi.baidu.com/reddrag911/blog/item/08bbc8356046041091ef3913.html

    什么是SYN包?SYN包是什么意思?

    TCP连接的第一个包,非常小的一种数据包。SYN攻击包括大量此类的包,由于这些包看上去来自实际不存在的站点,因此无法有效进行处理。

    当两台计算机在TCP连接上进行会话时,连接一定会首先被初始化。完成这项任务的包叫作SYN。一个SYN包简单的表明另一台计算机已经做好了会话的准备。只有发出服务请求的计算机才发送SYN包。所以如果你仅拒绝进来的SYN包,它将终止其它计算机打开你计算机上的服务,但是不会终止你使用其它计算机上的服务,如果它没有拒绝你发送的SYN包的话。

    SYN攻击

    最近对SYN Flood特别感兴趣,看到一个关于SYN cookie firewall的文章,在google搜了一下,没中文的,翻译他一下  
    本文介绍了4个概念
    一:介绍SYN
    二:什么是SYN洪水攻击
    三:什么是SYN cookie
    四:什么是SYN cookie防火墙
    C=client(
    客户器)
    S=Server(
    服务器)
    FW=Firewall(
    防火墙)

    一:介绍SYN
    SYN cookie
    是一个防止SYN洪水攻击技术。他由D. J. BernsteinEric Schenk发明。现在SYN COOKIE已经是linux内核的一部分了(我插一句 ,默认的statno,但是在linux系统的执行过程中它只保护linux系统。我们这里只是说创建一个linux防火墙,他可以为整个网络和所有的网 络操作系统提供SYN COOKIE保护你可以用这个防火墙来阻断半开放式tcp连接,所以这个受保护的系统不会进入半开放状态(TCP_SYN_RECV)。当连接完全建立的时候,客户机到服务器的连接要通过防火墙来中转完成。

    二:什么是SYN洪水攻击?(来自CERT的警告)
    当一个系统(我们叫他客户端)尝试和一个提供了服务的系统(服务器)建立TCP连接,C和服务端会交换一系列报文。
    这种连接技术广泛的应用在各种TCP连接中,例如telnet,Web,email,等等。
    首先是C发送一个SYN报文给服务端,然后这个服务端发送一个SYN-ACK包以回应C,接着,C就返回一个ACK包来实现一次完整的TCP连接。就这样,C到服务端的连接就建立了,这时C和服务端就可以互相交换数据了。下面是上文的图片说明:)
    Client                       Server
    ------                          ------
    SYN-------------------->

    <--------------------SYN-ACK

    ACK-------------------->

    Client and server can now
    send service-specific data

    S返回一个确认的SYN-ACK包的时候有个潜在的弊端,他可能不会接到C回应的ACK包。这个也就是所谓的半开放连接,S需要 耗费一定的数量的系统内存来等待这个未决的连接,虽然这个数量是受限的,但是恶意者可以通过创建很多的半开放式连接来发动SYN洪水攻击
    通过ip欺骗可以很容易的实现半开放连接。攻击者发送SYN包给受害者系统,这个看起来是合法的,但事实上所谓的C根本不会回应这个
    SYN-ACK
    报文,这意味着受害者将永远不会接到ACK报文。
    而此时,半开放连接将最终耗用受害者所有的系统资源,受害者将不能再接收任何其他的请求。通常等待ACK返回包有超时限制,所以半开放
    连接将最终超时,而受害者系统也会自动修复。虽然这样,但是在受害者系统修复之前,攻击者可以很容易的一直发送虚假的SYN请求包来持续攻击。
    在大多数情况下,受害者几乎不能接受任何其他的请求,但是这种攻击不会影响到已经存在的进站或者是出站连接。虽然这样,受害者系统还是可能耗尽系统资源,以导致其他种种问题。
    攻击系统的位置几乎是不可确认的,因为SYN包中的源地址多数都是虚假的。当SYN包到达受害者系统的时候,没有办法找到他的真实地址,因为在基于源地址的数据包传输中,源ip过滤是唯一可以验证数据包源的方法。

    三:什么是SYN cookie
    SYN cookie
    就是用一个cookie来响应TCP SYN请求的TCP实现,根据上面的描述,在正常的TCP实现中,当S接收到一个SYN数据包,他返回 一个SYN-ACK包来应答,然后进入TCP-SYN-RECV(半开放连接)状态来等待最后返回的ACK包。S用一个数据空间来描述所有未决的连接,然而这个数据空间的大小是有限的,所以攻击者将塞满这个空间。
    TCP SYN COOKIE的执行过程中,当S接收到一个SYN包的时候,他返回一个SYN-ACK包,这个数据包的ACK序列号是经过加密的,也就是说,它由源地址,端口源次序,目标地址,目标端口和一个加密种子计算得出。然后S释放所有的状态。如果一个ACK包从C返回,S将重新计算它来判断它是不是上个SYN-ACK的返回包。如果这样,S就可以直接进入TCP连接状态并打开连接。这样,S就可以避免守侯半开放连接了。
    以上只是SYN COOKIE的基本思路,它在应用过程中仍然有许多技巧。请在前几年的kernel邮件列表查看archive of discussions的相关详细内容。


    四:
    什么是SYN COOKIE 防火墙
    SYN COOKIE
    防火墙是SYN cookie的一个扩展,SYN cookie是建立在TCP堆栈上的,他为linux操作系统提供保护。SYN cookie防火墙是linux一大特色,你可以使用一个防火墙来保护你的网络以避免遭受SYN洪水攻击。
    下面是SYN cookie防火墙的原理 

    client          firewall            server
    ------          ----------            ------
    1. SYN----------- - - - - - - - - - ->
    2. <----------SYN-ACK(cookie)
    3. ACK----------- - - - - - - - - - ->
    4. - - - - - - -SYN--------------->
    5. <- - - - - - - - - ------------SYN-ACK
    6. - - - - - - -ACK--------------->
    7. -----------> relay the ------->
    <------------ connection <----------
    1:
    一个SYN包从C发送到S
    2
    :防火墙在这里扮演了S的角色来回应一个带SYN cookieSYN-ACK包给C
    3
    C发送ACK包,接着防火墙和C的连接就建立了。
    4
    :防火墙这个时候扮演C的角色发送一个SYNS
    5
    S返回一个SYNC
    6
    :防火墙扮演C发送一个ACK确认包给S,这个时候防火墙和S的连接也就建立了
    7
    :防火墙转发CS间的数据
    如果系统遭受SYN Flood,那么第三步就不会有,而且无论在防火墙还是S都不会收到相应在第一步的SYN包,所以我们就击退了这次SYN洪水攻 击。


Open Toolbar