攻击者为实现其目的,使用各种工具、采用多种攻击方法,或由软件自动完成目标攻击。攻击方法不同,其原理也不尽相同。
1.口令入侵
口令入侵是指使用某些合法用户的账号和口令登录到目标主机,然后再实施攻击活动。这种方法的前提是必须先得到该主机上某合法用户账号,再进行合法用户口令的破译。
(1)获取用户账号的方法
获取用户账号的方法很多,有如下几种。
●利用目标主机的Finger功能:当用Finger命令查询时,主机系统会将保存的用户资料(如用户名、登录时间等)显示在终端或计算机上。
●利用目标主机的X.500服务:有些主机没有关闭X.500的目录查询服务,也给攻击者提供了获得信息的一条简易途径。
●从电子邮件地址中收集:有些用户电子邮件地址常会透露其在目标主机上的账号。
●查看主机是否有习惯性账号:很多系统会使用一些习惯性账号,造成账号泄露。
(2)获取用户口令的方法
被用来窃取口令的网络服务包括FTP、TFTP、邮件系统和Telnet等。所以,系统管理者对口令的使用应十分小心和谨慎。下面是简要获取用户口令的4种方法:
通过网络监听非法得到用户口令。目前很多协议根本就没有采用任何加密或身份认证的技术,如在Telnet、HTTP、SMIP等传输协议中,用户账号和口令都以明文格式传输,攻击者利用数据包截取工具便很容易收集到用户账号和口令。
利用中途截击攻击方法。该方法可在用户同服务器端完成“三次握手”建立连接之后,在通信过程中扮演“第三者”,假冒服务器身份欺骗用户,再假冒用户向服务器发出恶意请求。
攻击者还会利用假登录程序骗取他人账号及口令,若在这个假的登录程序上输入了账号和口令,该程序则会记下所骗到的账号及口令,然后提示输入错误,要求再试,完成窃取后假登录程序便自动结束,将控制权还给系统。
利用口令探测程序。如专门探测NT口令的密码破解工具LophtCrack,利用各种可能口令,反复模拟NT的编码过程(利用单向杂凑(Hash)函数编码处理),并将所编出的口令与存放在SAM数据库内的口令比较,如两者相同,就表示得到了正确口令。在获取用户账号后(如电子邮件@前面的部分),利用专门软件强行破解用户口令,该方法不受网段限制。如采用字典攻击法破解用户的口令时,攻击者通过工具,自动从黑客字典中取出一单词,作为用户口令,然后用与原系统中一样的加密算法(算法公开)来加密此口令,将加密的结果与文件中的加密口令比较,若相同则猜对。因为很多的用户不是使用随机组合数字和字母做口令,许多口令都可在特殊的黑客字典中找到,入侵者并不穷举所有字母、数字的排列组合猜测口令,仅用黑客字典中的单词(约20万个)尝试,猜测口令就非常成功。对计算机来说,几小时就可将所有单词尝试一遍,如典型的LetMelnV2.0。
利用系统安全漏洞。在Windows/UNIX操作系统中,用户基本信息、口令分别存放在固定的文件中,攻击者获取口令文件后,使用专门破解程序破解口令。同时,由于不少操作系统都存在安全漏洞、Bug或其他设计缺陷,缺陷一旦被找出,攻击者可长驱直入。
常见的“密码/口令文件”有3种:
*.pwl:Windows系统使用者口令文件。一个pwl文件存放一个使用者口令,该口令可能是用户电邮密码、企业内部网络密码或注册登录密码。用系统配置编辑程序查看目标计算机C:\WINDOWS\SYSTEM.INI文件中的Password Lists字段,即可知目标计算机pwl口令文件。
TREE.DAT、SMDATA.DAT、SM.DAT:不同版本CuteFTP有不同的DAT口令文件。其中:TREE.DAT是3.x前CuteFTP所使用的口令文件;SMDATA.DAT是3.x CuteFTP所使用的口令文件,SM.DAT是4.x版CuteFTP所使用的口令文件。
破解TREE.DAT口令文件方法:用FireFTP破解软件即可破解出TREE.DAT口令,再将口令文件输出到文本文件(如passout.txt),就可用文本编辑器查看结果。
破解SMDATA.DAT、SM.DAT口令文件方法:须用手动方式。首先进入MS-DOS模式,再用LIST查看口令文件。可看出:1表示站名(明文);2表示IP地址(明文);3表示用户名(明文);4表示口令(密文)。其中口令编码原理简单,只要使用ASCII对照表,攻击者找出每个字符(a~z)和数字(0~9)所对应的ASCII字符,即可破解口令文件。
SYSTEM.DAT和USER.DAT:Windows登录文件,包含重要资料,如软件注册序号等。当攻击者下载了目标机SYSTEM.DAT和USER.DAT文件后,使用专门分析SYSTEM.DAT和USER.DAT等Windows登录文件的Registry Analyzer分析登录文件,便可获得所需口令密码。(www.xing528.com)
2.放置木马程序
特洛伊木马程序可直接侵入用户计算机实施破坏。它常被伪装成工具程序或游戏等,以此诱使用户打开带有特洛伊木马程序的邮件附件或从网上直接的下载。一旦用户打开这些附件或执行,“木马”即可驻留计算机中,并在系统中隐藏一个可在Windows启动时悄然执行的程序。当用户连接到互联网时,该程序就会通知攻击者,并报告用户IP地址及预先设定端口,攻击者收到信息后,再利用这个潜伏的程序,即可任意修改用户的计算机设定参数、复制文件、窥视硬盘内容等,从而达到控制用户计算机的目的。
3.WWW的欺骗技术
Web欺骗一般使用两种技术手段:URL地址重写技术和相关信息掩盖技术。
攻击者篡改网页URL地址。攻击者可将自己的Web地址加在所有URL地址的前面。当用户浏览目标网页时,实际上是向攻击者的服务器发出了请求,于是用户的所有信息便处于攻击者的监视之下,攻击者就达到了欺骗的目的。但浏览器一般均设有地址栏和状态栏,当浏览器与某站点链接时,用户可在地址栏和状态栏中获得连接中的Web站点地址及相关传输信息,由此可发现已出问题。因此,攻击者往往在URL地址重写的同时,利用相关信息掩盖技术(一般用JavaScript程序重写地址栏和状态栏),以掩盖其欺骗行为。
4.电子邮件攻击
相对于其他攻击手段,电邮攻击方法简单、见效快。电子邮件攻击主要表现为两种方式:邮件炸弹和电子邮件欺骗。前者指的是用伪造的IP地址和电子邮件地址向同一信箱发送数以千计、万计甚至无穷多次的内容相同的垃圾邮件,致使受害人邮箱被“炸”,严重时可能会给邮件服务器操作系统带来危险,甚至使系统发生瘫痪。后者指攻击者佯称自己为系统管理员,给用户发送邮件要求用户修改口令(口令可能为指定字符串)或在貌似正常的附件中加载病毒或其他木马程序。
5.通过节点攻击
攻击者在突破一台主机后,往往以此主机作“基地”,攻击其他主机,以隐蔽其入侵的路径,避免留下‘蛛丝马迹’。通常使用网络监听方法,尝试攻破同一网内其他主机或通过IP欺骗与主机信任关系,攻击其他主机。
这类攻击的防范技术较难掌握。如TCP/IP欺骗。攻击者通过外部计算机伪装成另一台合法计算机来实现阴谋,能破坏两台计算机间通信链路上的数据,其伪装的目的在于诱骗网络中的其他计算机误将其攻击者作为合法计算机加以接受,诱使其他计算机向其发送数据或允许修改数据。TCP/IP欺骗可发生在TCP/IP系统的所有层次,包括数据链路层、网络层、传输层及应用层均容易受到影响。如底层受到损害,则应用层的所有协议都将处于危险之中。另外,由于用户本身不直接与底层相互交流,因而对底层攻击更具有欺骗性。
6.网络监听
网络监听是主机的一种工作模式,在这种模式下,主机可以接收到本网段上同一条物理通道上传输的所有信息,而不管这些信息的发送方和接收方是谁。因为系统在进行密码校验时,用户输入的密码需要从用户端传送到服务器端,而攻击者就在两端之间进行数据监听。此时若两台主机进行通信的信息没有加密,只要使用网络监听工具,如NetXRay、Sniffer等就可轻而易举截取包括口令和账号在内的信息。
7.利用黑客软件攻击
利用黑客软件攻击是互联网上较多的一种攻击手法。如利用特洛伊木马程序非法取得用户计算机的超级用户级权限,除可进行完全的控制操作外,还可进行对方的桌面抓图、取得密码等操作。黑客软件分服务器端和用户端,当黑客进行攻击时,使用用户端程序登录已安装好服务器端程序的主机,因服务器端程序都较小,一般会附带于某些软件上。如用户下载了一个小游戏并运行时,黑客软件的服务器端有可能就已经安装完成了。大部分黑客软件的重生能力较强,特别是一种TXT文件欺骗手法,表面看是TXT文本文件,实际上却是附带黑客程序的可执行程序,另外有些程序也会伪装成图片和其他格式的文件。
8.对安全漏洞攻击
许多系统都存在安全漏洞,其中一些是操作系统或应用软件本身具有的,如缓冲区溢出攻击。由于很多系统在未检查程序与缓冲之间变化的情况下,就任意接受了任意长度的数据输入,把溢出的数据放在堆栈里,系统仍照常执行命令。这样攻击者只要发送超出缓冲区所能处理的长度的指令,系统便进入不稳定状态。若攻击者特别配置一串准备用做攻击的字符,甚至可访问根目录,从而拥有对整个网络的绝对控制权。
利用协议漏洞进行攻击。如攻击者利用POP3一定要在根目录下运行的这一漏洞发动攻击,破坏根目录,从而获得超级用户的权限。
拒绝服务攻击。ICMP协议也常被用于发动拒绝服务攻击,其具体手法就是向目标服务器发送大量的数据包,几乎占取该服务器所有网络宽带,从而使其无法对正常的服务请求进行处理,而导致网站无法进入、响应速度大大降低或服务器瘫痪。常见蠕虫病毒或同类病毒都可对服务器进行拒绝服务攻击。拒绝服务的目的是使系统瘫痪,并可能取得伪装系统身份。拒绝服务通常利用系统提供特定服务时的设计缺陷,消耗掉大量服务能力,若系统设计不良,可造成系统崩溃。分布式拒绝服务的含义是利用其他遭侵入的系统同时要求获得大量的服务,当拒绝服务攻击发生时,系统通常下并不会遭到完全破解,但此时该服务会丧失有效性。虽然主动过滤可在一定的程度上保护用户,但由于拒绝服务攻击不容易识别,防不胜防。
9.端口扫描攻击
所谓端口扫描,就是利用Socket编程与目标主机的某些端口建立TCP连接、进行传输协议的验证等,从而侦知目标主机的扫描端口是否处于激活状态、主机提供了哪些服务、提供的服务中是否含有某些缺陷等。常用的扫描方式有Connect()扫描、Fragmen-tation扫描。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。