攻击者在一次攻击过程中的通常做法是:首先隐藏位置,接着进行网络探测和资料收集、对系统弱点进行挖掘、获得系统控制权、隐藏行踪,最后实施攻击、开辟后门等。
1.隐藏位置
互联网上的主机均有自己的网络地址,若没有采取保护措施,很容易反查到某台网络主机的位置,如IP地址和域名。黑客在实施攻击活动时的首要步骤是设法隐藏自己所在的网络位置,包括自己的网络域及IP地址,使调查者难以发现真正的攻击者来源。
互联网以松散方式构成,容易隐藏攻击者的踪迹。攻击者经常使用如下技术隐藏其真实的IP地址或域名:利用被侵入的主机作为跳板,如在安装Windows的计算机内利用Wingate作为跳板,利用配置不当的Proxy作为跳板;使用电话转接技术隐蔽自己,如利用800电话的无人转接服务连接ISP;盗用他人账号上网,通过电话连接一台主机,再经主机进入互联网;免费代理网关;伪造IP地址;假冒用户账号。
2.网络探测和信息资料收集
网络探测和资料收集主要是为了寻找目标主机和收集目标信息。攻击者首先寻找目标主机并进行分析。互联网上真正标识主机的是IP地址,域名是为便于记忆主机IP地址而另起的,只要利用域名和IP地址就可顺利找到目标主机。仅知道要攻击目标的位置还不够,还必须对主机操作系统类型及其所提供的服务等资料做全面了解,为攻击做好充分准备。攻击者搜集信息主要包括:操作系统信息、开放的服务端口号、系统默认账号和口令、邮件账号、IP地址分配情况、域名信息、网络设备类型、网络通信协议、应用服务器软件类型等。
(1)锁定目标
攻击者首先要寻找目标主机。DNS协议不对转换或信息性的更新进行身份认证,只需实施一次域转换操作就能得到所有主机名称及内部IP地址。攻击者常利用公开协议或工具,收集留在网络系统中的各个主机系统的相关信息。如以下几种。
SNMP协议:用来查阅网络系统路由器的路由表,从而了解目标主机所在网络的拓扑结构及内部细节。
Trace Route程序:能够用该程序获得到达目标主机所要经过的网络数和路由器数。
Who is协议:该协议的服务信息能提供所有有关的DNS域和相关的管理参数。
DNS服务器:该服务器提供系统中可访问的主机IP地址表和它们所对应的主机名。
Finger协议:可以用Finger来获取一个指定主机上所有用户的详细信息,如用户注册名、电话号码、最后注册时间以及他们有没有读邮件等。
Ping实用程序:可以用来确定一个指定的主机的位置。
自动Wardialing软件:可以向目标站点一次连续拨出大批电话号码,直到遇到某一正确的号码使其Modem响应。
向主机发送虚假消息,根据返回“host unreachable”这一消息特征判断出哪些主机存在。
(2)服务分析
使用不同应用程序测试。如使用Telnet、FTP等用户软件向目标主机申请服务,如主机有应答就说明主机提供这个服务,开放这个端口服务,这种方法比较麻烦,而且获取的资料不全。
使用端口扫描工具软件,对目标主机一定范围的端口扫描,可全部掌握目标主机端口的情况。
(3)系统分析
使用具有已知响应类型的数据库的自动工具,对来自目标主机作出的响应进行检查,确定目标主机的操作系统。如打开Windows运行窗口,然后输入命令:Telnet xx.xx.xx(目标主机),按“确定”,可发现响应:Digital Unix(xx.xx.xx)(ttypl)login:
(4)获取账号信息
攻击者要想登录目标主机至少要知道一个系统的普通用户,并进行以下尝试:利用目标主机的finger功能。finger很可能暴露入侵者的行为,为避免finger查询产生标记,可使用finger网关;利用电子邮件地址。有些用户电子邮件地址(指@前面部分)与其获取邮件的账号一致。
有些主机提供X.500的目录查询服务。如何知道是否提供X.500的功能,可扫描目标主机端口,如端口105的状态已被“激活”,则在自己的计算机上安装一个X.500的客户查询工具,选择目标主机,可获得意想不到的信息。
尝试习惯性常用账号。一些系统总有一些习惯性常用账号,这些账号都为系统中因某种应用而设置。如:制作WWW网站的账号可能是html、www、web等,安装Oracle数据库的可能有Oracle的账号,一些常用英文名字也常会使用,如tom、john等,因此可根据系统所提供的服务和在其主页得到的工作人员的名字信息进行猜测。(www.xing528.com)
(5)获得管理员信息
使用查询命令host,入侵者可获得保存在目标域服务器中的所有信息。使用搜索引擎查询Usenet和Web。系统管理员的职责是维护站点的安全,当他们遇到各种问题时,许多管理员会迫不及待地将这些问题发到Usenet或邮件列表上以寻求答案,他们常常指明组织结构、网络的拓扑结构和面临的问题。
可使用各种方法来识别在目标网络上使用的操作系统的类型及版本。首先判断出目标网络上的操作系统和结构,进一步列出操作系统及计算机类型,对每个平台进行研究并找出漏洞。
3.漏洞挖掘
系统中漏洞的存在是系统受到各种安全威胁的根源。外部攻击主要利用系统提供的网络服务中的漏洞,而内部人员作案则利用系统内部服务及其配置上的漏洞。
拒绝服务攻击主要是利用资源分配上的漏洞,长期占用有限资源不释放,使其他用户得不到应得服务,或利用服务处理中的漏洞,使该服务崩溃。攻击者攻击的重要步骤就是尽量挖掘出系统的弱点或漏洞,并针对具体的漏洞研究相应的攻击方法。常见漏洞有:
1)系统或应用服务软件漏洞。攻击者根据系统提供的不同的服务用不同的方法以获取网络安全技术获取系统的访问权限。如果攻击者发现系统提供了UUCP服务,就可利用UUCP的安全漏洞来获取系统的访问权;如果系统还提供其他的一些远程网络服务,如邮件服务、WWW服务、匿名FTP服务、TFTP服务,攻击者就可利用远程服务中的弱点获取系统访问权。
2)主机信任关系漏洞。攻击者寻找那些被信任的主机,这些主机可能是管理员使用的计算机,或是一台被认为是安全的服务器。如可利用CGI的漏洞,读取/etc/hosts.allow文件等。通过该文件,就可大致了解主机间的信任关系,接下来探测被信任的主机哪些存在漏洞。
3)寻找有漏洞的网络成员。尽量去发现有漏洞的网络成员对攻击者往往起到事半功倍的效果,堡垒最容易从内部攻破就是这个缘故。用户安全防范意识弱,选取弱口令,使攻击者很容易从远程直接控制主机。
4)安全策略配置漏洞。主机的网络服务配置不当,开放有漏洞的网络服务。
5)通信协议漏洞。分析目标网络所采用的协议信息,寻找漏洞,如TCP/IP协议存在漏洞。
6)网络业务系统漏洞。通过掌握目标网络的业务流程信息,发现漏洞,如在WWW服务中,允许普通用户远程上传文件。
扫描工具能找出目标主机上各种漏洞,网络入侵首先是用扫描程序开始。常用的有撒旦(SATAN)、ISS等。典型端口扫描程序的工作原理:互联网上任何软件通信都基于TCP/IP协议。TCP/IP协议规定,网上计算机主机可有256×256个端口,通过这些端口进行数据传输,如发送电邮时,信件被送到邮件服务器的25端口;当接收邮件时,从邮件服务器的110端口取出;通过80端口,可访问服务器;终端计算机默认端口为139,上网时就是通过该端口与外界联系的。端口扫描程序自动扫描这些端口,并记录哪些端口开放。一般除了139端口外,其他端口最好不开放,这样攻击者入侵就不那么容易。
4.获得控制权
攻击者要想入侵一台主机,首先要有该主机的一个账号和口令,再设法获取更高权限,如系统管理账户的权限。获取系统管理权限通常有以下途径:系统管理员口令,如专门针对root用户的口令攻击;利用系统管理的漏洞,如错误的文件许可权,错误的系统配置,某些SUID程序中存在的缓冲区溢出问题等;让系统管理员运行特洛伊木马程序,使计算机内某一端口开放,再通过这一端口进入用户计算机。如运行了特洛伊木马程序netspy的server端软件,那么就会强制Windows在以后每次打开计算机时都运行它,并开放7306端口。
攻击者进入目标主机系统并获控制权后,主要做两件事:清除记录和留下后门。如更改某些系统设置,在系统中置入特洛伊木马或其他一些远程操纵程序,以便日后不被觉察再次进入系统。大多数后门程序预先编译好,只需设法修改时间和权限即可使用,甚至新文件大小都和原文件完全一样。用清除日志、删除拷贝文件等手段来隐藏踪迹后,开始下一步行动。
5.隐藏行踪
作为入侵者,攻击者总担心自己行踪被发现,所以在进入系统之后,攻击者要做的第一件事就是隐藏自己的行踪,攻击者隐藏自己的行踪通常要用到如下技术:连接隐藏。如冒充其他用户、修改LOCNAME环境变量、修改utmp日志文件、使用IP SPOOF技术等;进程隐藏。如使用重定向技术减少PS给出的信息量、用特洛伊木马代替PS程序等;篡改日志文件中的审计信息;改变系统时间,造成日志文件数据紊乱,以迷惑系统管理员。
6.实施攻击
不同攻击者有不同攻击目的,可能是为获取机密文件访问权,或为破坏系统数据完整性,也可能是为获得整个系统控制权(系统管理权)等。可归结为:下载敏感信息,在目标系统中安装探测器软件,以便进一步收集攻击者感兴趣的信息,或进一步发现受损系统在网络中的信任等级,攻击其他被信任的主机和网络,使网络瘫痪,修改或删除重要数据。
7.开辟后门
一次成功入侵通常要耗费攻击者大量时间与精力,所以精明的攻击者在退出系统之前会在系统中制造一些后门,以方便下次入侵。攻击者设计后门时通常会考虑用以下方法:放宽文件许可权;重新开放不安全的服务,如REXD、TFTP等;修改系统的配置,如系统启动文件、网络服务配置文件等;替换系统本身的共享库文件;安装木马程序,修改系统源代码。
从以上分析可知,一次完整的攻击过程划分为三阶段:获取系统访问权前的攻击过程;获得系统控制权的攻击过程;获得系统访问权或控制权之后的攻击活动。完成第一阶段的攻击过程,获得系统访问权,已成功一半,而完成第二阶段的攻击过程,获得系统管理权限后,已近于完全成功。此时管理员已很难阻止攻击者的破坏活动,但可采取一些补救措施,如备份系统、关掉系统网络连接、或关机。备份系统是为便于事后系统重建;断掉系统网络连接或关机可驱赶外部或内部攻击者,但很多关键应用系统不容许此举,所以这两种措施只能作为在万不得已情况下的选择。采取以上三种措施,攻击可能已完成其攻击目标。攻击成功关键在第一、第二阶段的成功,在于尽早发现或利用了目标系统的安全漏洞或弱点的能力。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。