常用黑客攻击手段介绍目录•口令攻击•拒绝服务攻击•IP欺骗•利用简单邮件传输协议(SMTP)入侵•利用文件传输协议(FTP)进行的入侵•上的入侵•网络文件系统(NFS)/远程过程调用(RPC)•病毒、木马•缓冲区溢出•信息收集型攻击一攻击口令的手段方法一网络猜测法黑客攻击目标是常常把破译普通用户的口令作为攻击的开始。先用“finger远端主机名”或其他方法找出主机上的用户帐号,然后就采用字典穷举法进行攻击。原理:根据网络上的用户常采用的一些英语单词或自己的姓氏作为口令的实际情况。通过一些程序,自动地从计算机字典中取出一个单词,作为用户口令输入给远端的主机,尝试进入系统。若口令错误,就按序取出下一个单词,进行下一个尝试,并且一直循环下去,直到找到正确的口令或直到找到正确的口令或字典的单词试完为止。利用一些端口,如·Ftp·Telnet·POP3·Rsh·Rlogin·Rexec等,对已知远端主机的用户进行口令尝试登录,获取口令或敏感文件。方法二穷举法•首先夺取目标中存放口令的文件shadow或passwd•现代的Unix操作系统中,用户的基本信息存放在passwd文件中,而所有的口令则经过DES加密方法加密后专门存放在一个叫shadow(影子)的文件中•老版本的Unix没有shadow文件,它所有的口令都存放在passwd文件中•用专解DES加密法的程序来解口令UNIX口令的计算量•Unix一共是[0x00~0xff]共128个字符,小于0x20的都算是控制符,不能输入为口令,0x7f为转义符,不能输入.那么总共有128-32-1=95个字符可作为口令的字符.•也就是10(数字)+33(标点符号)+26*2(大小写字母)=95•如果passwd取任意5个字母+1位数字或符号(按顺序)可能性是:52*52*52*52*52*43=16,348,773,000(163亿种UNIX口令的计算量•但如果5个字母是一个常用词,设常用词5000条,从5000个常用词中取一个词与任意一个字符组合成口令,即5000*(2*2*2*2*2)(大小写)*43=6,880,000(688万种可能性)注:1.实际情况下绝大多数人都只用小写字符,可能性还要小.2.这已经可以用微机进行穷举UNIX口令的计算量•在Pentium200上每秒可算3,4万次,象这样简单的口令要不了3分钟•如果有人用P200算上一周,将可进行200亿次攻击,所以6位口令是很不可靠的,至少要用7位.•hacker并不需要所有人的口令,他们得到几个用户口令就能获取系统的控制权,所以取口令过于简单是对系统安全的不负责.二导致服务拒绝原理:攻击者利用大量的数据包“淹没”目标主机,耗尽可用资源乃至系统崩溃,而无法对合法用户作出响应。往某远程主机发大量数据或占用远程主机资源,从而导致主机瘫痪、重启、死机或蓝屏。UDP炸弹•UDP攻击的原理是使两个或两个以上的系统之间产生巨大的UDP数据包。首先使这两种UDP服务都产生输出,然后让这两种UDP服务(例如chargen服务(UDP)和echo服务(UDP))之间互相通信,使一方的输出成为另一方的输入。这样会形成很大的数据流量。当多个系统之间互相产生UDP数据包时,最终将导致整个网络瘫痪。如果涉及的主机数目少,那么只有这几台主机会瘫痪。用户数据报(UDP)炸弹:发送一个头信息错误的UDP包,可使某些计算机重起,危害很大。防御:关掉不必要的TCP/IP服务,或者对防火墙进行配置,阻断来自Internet的针对这些服务的UDP请求。*Finger炸弹:Finger允许把Finger重定向到远程节点,可用命令Fingerusername@hostA@hostBFinger先通过主机A,再到主机B,可使入侵者覆盖他们的痕迹,因为主机A将注意到Finger来自主机B而不是原来的设备。当入侵者输入如下命令时,会使主机拒绝服务:Fingerusername@@@@…..@@hostA重复的@将导致Finger命令不断Finger到同一台主机,直到内存和交换空间满,从而导致系统瘫痪或速度降至极低。*Ping/ICMP炸弹连续的以延迟会话方式Ping一个主机,发过量的ICMP包,可使主机重起或挂起。1.如:UNIX下,键入如下命令:Ping-t66510IP后果:未打补丁的Win95/98的机器就会瘫痪2.TFN2K更会产生大量的进程,每个进程都不停地发送PING包,从而导致被攻击目标的无法正常工作。*数据洪流(Dataflood)大量数据轰击一个指定端口,使端口提供的服务无效。*日志洪流(Logflood)日志容量有限,向端口syslog发大量的数据包可使主机瘫痪。*E_mail炸弹发送大量邮件,使邮箱占满,冲掉正常邮件,同时占用了大量的网络资源,导致网络阻塞。•*带外炸弹(outofbandcrash)向WindowsNT,Windows95的139端口送0字节数据导致系统死机。ICMP/SMURF攻击•ICMP/SMURF攻击利用的是网络广播的原理来发送大量的地址,而包的源地址就是要攻击的机器本身的地址。因而所有接收到此包的主机都将给发包的地址发送一个ICMP回复包。•现在A主机要发动对B主机的SMURF攻击。•A通过向某个网络的广播地址发送ICMPECHO包,这些ICMP包的源地址即被伪造为B主机的IP地址。当这个广播地址的网段上的所有活动主机接收到该ICMP包时,将回送ICMPECHOREPLAY包。•由于ICMPECHO包的源地址为B主机,所以如果能收到该广播包的机器有500台,则B主机会接收到500个ICMPECHOREPLY包!IP堆栈攻击•基本原理是发送TCP/UDP/ICMP的碎片包,其大小、标记、包数据等都是随机的。一些有漏洞的系统内核由于不能正确处理这些极端不规范数据包,便会使其TCP/IP堆栈出现崩溃,从而导致无法继续响应网络请求(即拒绝服务)。DDoS攻击原理剖析•分布式拒绝服务攻击,–攻击者利用因特网上成百上千的“Zombie”(僵尸)-即被利用主机,对攻击目标发动威力巨大的拒绝服务攻击。–攻击者的身份很难确认。正常访问•通过普通的网络连线,使用者传送信息要求服务器予以确定。服务器于是回复用户。用户被确定后,就可登入服务器。“拒绝服务”(DoS)的攻击方式•“拒绝服务”的攻击方式为:用户传送众多要求确认的信息到服务器,使服务器里充斥着这种无用的信息。所有的信息都有需回复的虚假地址,以至于当服务器试图回传时,却无法找到用户。服务器于是暂时等候,有时超过一分钟,然后再切断连接。服务器切断连接时,黑客再度传送新一批需要确认的信息,这个过程周而复始,最终导致服务器处于瘫痪状态Trin00/TFN具体攻击过程MasterMasterMasterBroadcastBroadcastBroadcastBroadcastBroadcastBroadcast攻击目标攻击者MasterMasterMasterZombieZombieZombieZombieZombieZombieMasterMasterMasterDDoS攻击过程扫描程序非安全主机黑客黑客利用工具扫描Internet,发现存在漏洞的主机1Internet黑客Zombies黑客在非安全主机上安装类似“后门”的代理程序2InternetDDoS攻击过程黑客黑客选择主控主机,用来向“僵尸”发送命令3Zombies主控主机InternetDDoS攻击过程Hacker通过客户端程序,黑客发送命令给主控端,并通过主控主机启动“僵尸”程序对目标系统发动攻击4ZombiesTargeted目标SystemMasterServerInternetDDoS攻击过程目标系统SystemHacker主控端向“僵尸”发送攻击信号,对目标发动攻击5MasterServerInternetZombiesDDoS攻击过程目标黑客目标主机被“淹没”,无法提供正常服务,甚至系统崩溃6主控主机合法用户服务请求被拒绝Internet僵尸DDoS攻击过程为什么DDos会有效?•雅虎网站曾被每秒1000兆的垃圾信息攻击。在如此大流量的攻击下,攻击的力度被提升了几千倍,远远超过了现有网络安全设计的负荷。也就是说在网络安全设计的过程中一定要考虑未来可能承受的攻击力度。•不过这种攻击并不是一般黑客所能做到的。据MSNBC报道,在对雅虎的攻击过程中,黑客在同一时间动用了3500台Unix机器和巨大的带宽资源。预防分布式拒绝服务攻击的安全策略•消除FUD心态•可能会成为拒绝服务攻击目标的公司或主机只是极少数,而且多数是一些著名站点,如搜索引擎、门户站点、大型电子商务和证券公司、IRC服务器和新闻杂志等要求与ISP协助和合作•分布式拒绝服务(DDoS)攻击主要是耗用带宽,单凭自己管理网络是无法对付这些攻击的。•与ISP协商,确保他们同意帮助实施正确的路由访问控制策略以保护带宽和内部网络。•最理想的情况是当发生攻击时,ISP愿意监视或允许你访问他们的路由器。优化路由和网络结构•如果管理的不仅仅是一台主机,而是网络,就需要调整路由表以将拒绝服务攻击的影响减到最小。•为了防止SYNflood攻击,应设置TCP侦听功能。详细资料可以参阅相关路由器技术文档。•禁止网络不需要的UDP和ICMP包通过,尤其是不应该允许出站ICMP“不可到达”消息。优化对外开放访问的主机•对所有可能成为目标的主机都进行优化。•禁止所有不必要的服务。•多IP主机也会增加攻击者的难度。正在受到攻击时,必须立刻应用对应策略•尽可能迅速地阻止攻击数据包是非常重要的,同时如果发现这些数据包来自某些ISP时应尽快和他们取得联系。千万不要依赖数据包中的源地址,因为它们在DoS攻击中往往都是随机选择的。•是否能迅速准确地确定伪造来源将取决于你的响应动作是否迅速,因为路由器中的记录可能会在攻击中止后很快就被清除。•对于已被或可能被入侵和安装DDoS代理端程序的主机,应该采取措施•现在的拒绝服务攻击服务器都只被安装到Linux和Solaris系统中。•虽然可能会被移植到*BSD*或其它系统中,但只要这些系统的安全得到足够重视,系统被入侵的可能性不大。确保主机不被入侵和是安全的•互联网上有许多旧的和新的漏洞攻击程序。系统管理员应检查漏洞数据库,如securityfocus.com或packetstorm.securify.com或,以确保服务器版本不受这些漏洞影响。•入侵者总是利用已存在的漏洞进入系统和安装攻击程序。•系统管理员应该经常检查服务器配置和安全问题,运行最新升级的软件版本,最重要的一点就是只运行必要的服务。周期性审核系统•要对自己管理的系统负责。•应该充分了解系统和服务器软件是如何工作的,经常检查系统配置和安全策略。•要时刻留意安全站点公布的与自己管理的操作系统及软件有关的最新安全漏洞和问题。检查文件完整性•当确定系统未曾被入侵时,应该尽快将所有二进制程序和其它重要的系统文件产生文件签名,并且周期性地与这些文件比较以确保不被非法修改。•另外,推荐将文件检验和保存到另一台主机或可移动介质中。•文件/目录完整性检查的免费工具(如tripwire等)可以在许多FTP站点上下载。也可以选择购买商业软件包。发现正在实施攻击时,必须立刻关闭系统并进行调查•如果监测到(或被通知)网络或主机正实施攻击,应该立刻关闭系统,或者至少切断与网络的连接。•因为这些攻击同时也意味着入侵者已几乎完全控制了该主机,所以应该进行研究分析和重新安装系统。三IP欺骗原理:伪造TCP序列号或源主机IP地址,使数据包看起来来自于被信任的计算机而非正确的源计算机,从而达到隐藏源主机地址的目的。IP欺骗会危及象Rsh、Rlogin此类的服务。(因为Rsh和Rlogin服务的认证是建立在IP地址之上的)IP欺骗还可以被用于穿透防火墙。同步风暴攻击方法也用到IP欺骗流程图:(1)攻击主机SYN(伪造的自己的地址)被攻击主机(2)伪造的地址SYN-ACK被攻击主机(3)被攻击