针对网络攻击的处理对策_网络攻击处置程序

hacker|
138

网络安全处理过程?

网络安全应急响应是十分重要的,在网络安全事件层出不穷、事件危害损失巨大的时代,应对短时间内冒出的网络安全事件,根据应急响应组织事先对各自可能情况的准备演练,在网络安全事件发生后,尽可能快速、高效的跟踪、处置与防范,确保网络信息安全。就目前的网络安全应急监测体系来说,其应急处理工作可分为以下几个流程:

1、准备工作

此阶段以预防为主,在事件真正发生前为应急响应做好准备。主要包括以下几项内容:制定用于应急响应工作流程的文档计划,并建立一组基于威胁态势的合理防御措施;制定预警与报警的方式流程,建立一组尽可能高效的事件处理程序;建立备份的体系和流程,按照相关网络安全政策配置安全设备和软件;建立一个支持事件响应活动的基础设施,获得处理问题必备的资源和人员,进行相关的安全培训,可以进行应急响应事件处理的预演方案。

2、事件监测

识别和发现各种网络安全紧急事件。一旦被入侵检测机制或另外可信的站点警告已经检测到了入侵,需要确定系统和数据被入侵到了什么程度。入侵响应需要管理层批准,需要决定是否关闭被破坏的系统及是否继续业务,是否继续收集入侵者活动数据(包括保护这些活动的相关证据)。通报信息的数据和类型,通知什么人。主要包括以下几种处理方法:

布局入侵检测设备、全局预警系统,确定网络异常情况;

预估事件的范围和影响的严重程度,来决定启动相应的应急响应的方案;

事件的风险危害有多大,涉及到多少网络,影响了多少主机,情况危急程度;

确定事件责任人人选,即指定一个责任人全权处理此事件并给予必要资源;

攻击者利用的漏洞传播的范围有多大,通过汇总,确定是否发生了全网的大规模入侵事件;

3、抑制处置

在入侵检测系统检测到有安全事件发生之后,抑制的目的在于限制攻击范围,限制潜在的损失与破坏,在事件被抑制以后,应该找出事件根源并彻底根除;然后就该着手系统恢复,把所有受侵害的系统、应用、数据库等恢复到它们正常的任务状态。

收集入侵相关的所有资料,收集并保护证据,保证安全地获取并且保存证据;

确定使系统恢复正常的需求和时间表、从可信的备份介质中恢复用户数据和应用服务;

通过对有关恶意代码或行为的分析结果,找出事件根源明确相应的补救措施并彻底清除,并对攻击源进行准确定位并采取措施将其中断;

清理系统、恢复数据、程序、服务,把所有被攻破的系统和网络设备彻底还原到正常的任务状态。

4、应急场景

网络攻击事件:

安全扫描攻击:黑客利用扫描器对目标进行漏洞探测,并在发现漏洞后进一步利用漏洞进行攻击;

暴力破解攻击:对目标系统账号密码进行暴力破解,获取后台管理员权限;

系统漏洞攻击:利用操作系统、应用系统中存在漏洞进行攻击;

WEB漏洞攻击:通过SQL注入漏洞、上传漏洞、XSS漏洞、授权绕过等各种WEB漏洞进行攻击;

拒绝服务攻击:通过大流量DDOS或者CC攻击目标,使目标服务器无法提供正常服务;

信息破坏事件:

系统配置遭篡改:系统中出现异常的服务、进程、启动项、账号等等;

数据库内容篡改:业务数据遭到恶意篡改,引起业务异常和损失;

网站内容篡改事件:网站页面内容被黑客恶意篡改;

信息数据泄露事件:服务器数据、会员账号遭到窃取并泄露.

服务器遭受攻击后的处理流程

服务器遭受攻击后的处理流程

安全总是相对的,再安全的服务器也有可能遭受到攻击。作为一个安全运维人员,要把握的原则是:尽量做好系统安全防护,修复所有已知的危险行为,同时,在系统遭受攻击后能够迅速有效地处理攻击行为,最大限度地降低攻击对系统产生的影响。下面是我整理的服务器遭受攻击后的处理流程:

一、处理服务器遭受攻击的一般思路

系统遭受攻击并不可怕,可怕的是面对攻击束手无策,下面就详细介绍下在服务器遭受攻击后的一般处理思路。

1. 切断网络

所有的攻击都来自于网络,因此,在得知系统正遭受黑客的攻击后,首先要做的就是断开服务器的网络连接,这样除了能切断攻击源之外,也能保护服务器所在网络的其他主机。

2. 查找攻击源

可以通过分析系统日志或登录日志文件,查看可疑信息,同时也要查看系统都打开了哪些端口,运行哪些进程,并通过这些进程分析哪些是可疑的程序。这个过程要根据经验和综合判断能力进行追查和分析。下面的章节会详细介绍这个过程的处理思路。

3. 分析入侵原因和途径

既然系统遭到入侵,那么原因是多方面的,可能是系统漏洞,也可能是程序漏洞,一定要查清楚是哪个原因导致的,并且还要查清楚遭到攻击的途径,找到攻击源,因为只有知道了遭受攻击的原因和途径,才能删除攻击源同时进行漏洞的修复。

4. 备份用户数据

在服务器遭受攻击后,需要立刻备份服务器上的用户数据,同时也要查看这些数据中是否隐藏着攻击源。如果攻击源在用户数据中,一定要彻底删除,然后将用户数据备份到一个安全的地方。

5. 重新安装系统

永远不要认为自己能彻底清除攻击源,因为没有人能比黑客更了解攻击程序,在服务器遭到攻击后,最安全也最简单的方法就是重新安装系统,因为大部分攻击程序都会依附在系统文件或者内核中,所以重新安装系统才能彻底清除攻击源。

6. 修复程序或系统漏洞

在发现系统漏洞或者应用程序漏洞后,首先要做的就是修复系统漏洞或者更改程序bug,因为只有将程序的漏洞修复完毕才能正式在服务器上运行。

7. 恢复数据和连接网络

将备份的数据重新复制到新安装的服务器上,然后开启服务,最后将服务器开启网络连接,对外提供服务。

二、检查并锁定可疑用户

当发现服务器遭受攻击后,首先要切断网络连接,但是在有些情况下,比如无法马上切断网络连接时,就必须登录系统查看是否有可疑用户,如果有可疑用户登录了系统,那么需要马上将这个用户锁定,然后中断此用户的远程连接。

1. 登录系统查看可疑用户

通过root用户登录,然后执行“w”命令即可列出所有登录过系统的用户,如图1-11所示。

通过这个输出可以检查是否有可疑或者不熟悉的用户登录,同时还可以根据用户名以及用户登录的源地址和它们正在运行的进程来判断他们是否为非法用户。

2. 锁定可疑用户

一旦发现可疑用户,就要马上将其锁定,例如上面执行“w”命令后发现nobody用户应该是个可疑用户(因为nobody默认情况下是没有登录权限的),于是首先锁定此用户,执行如下操作:

[root@server ~]# passwd -l nobody

锁定之后,有可能此用户还处于登录状态,于是还要将此用户踢下线,根据上面“w”命令的输出,即可获得此用户登录进行的pid值,操作如下:

[root@server ~]# ps -ef|grep @pts/3

531 6051 6049 0 19:23 ? 00:00:00 sshd: nobody@pts/3

[root@server ~]# kill -9 6051

这样就将可疑用户nobody从线上踢下去了。如果此用户再次试图登录它已经无法登录了。

3. 通过last命令查看用户登录事件

last命令记录着所有用户登录系统的日志,可以用来查找非授权用户的登录事件,而last命令的输出结果来源于/var/log/wtmp文件,稍有经验的入侵者都会删掉/var/log/wtmp以清除自己行踪,但是还是会露出蛛丝马迹在此文件中的。

三、查看系统日志

查看系统日志是查找攻击源最好的方法,可查的'系统日志有/var/log/messages、/var/log/secure等,这两个日志文件可以记录软件的运行状态以及远程用户的登录状态,还可以查看每个用户目录下的.bash_history文件,特别是/root目录下的.bash_history文件,这个文件中记录着用户执行的所有历史命令。

四、检查并关闭系统可疑进程

检查可疑进程的命令很多,例如ps、top等,但是有时候只知道进程的名称无法得知路径,此时可以通过如下命令查看:

首先通过pidof命令可以查找正在运行的进程PID,例如要查找sshd进程的PID,执行如下命令:

[root@server ~]# pidof sshd

13276 12942 4284

然后进入内存目录,查看对应PID目录下exe文件的信息:

[root@server ~]# ls -al /proc/13276/exe

lrwxrwxrwx 1 root root 0 Oct 4 22:09 /proc/13276/exe - /usr/sbin/sshd

这样就找到了进程对应的完整执行路径。如果还有查看文件的句柄,可以查看如下目录:

[root@server ~]# ls -al /proc/13276/fd

通过这种方式基本可以找到任何进程的完整执行信息,此外还有很多类似的命令可以帮助系统运维人员查找可疑进程。例如,可以通过指定端口或者tcp、udp协议找到进程PID,进而找到相关进程:

[root@server ~]# fuser -n tcp 111

111/tcp: 1579

[root@server ~]# fuser -n tcp 25

25/tcp: 2037

[root@server ~]# ps -ef|grep 2037

root 2037 1 0 Sep23 ? 00:00:05 /usr/libexec/postfix/master

postfix 2046 2037 0 Sep23 ? 00:00:01 qmgr -l -t fifo -u

postfix 9612 2037 0 20:34 ? 00:00:00 pickup -l -t fifo -u

root 14927 12944 0 21:11 pts/1 00:00:00 grep 2037

在有些时候,攻击者的程序隐藏很深,例如rootkits后门程序,在这种情况下ps、top、netstat等命令也可能已经被替换,如果再通过系统自身的命令去检查可疑进程就变得毫不可信,此时,就需要借助于第三方工具来检查系统可疑程序,例如前面介绍过的chkrootkit、RKHunter等工具,通过这些工具可以很方便的发现系统被替换或篡改的程序。

五、检查文件系统的完好性

检查文件属性是否发生变化是验证文件系统完好性最简单、最直接的方法,例如可以检查被入侵服务器上/bin/ls文件的大小是否与正常系统上此文件的大小相同,以验证文件是否被替换,但是这种方法比较低级。此时可以借助于Linux下rpm这个工具来完成验证,操作如下:

[root@server ~]# rpm -Va

....L... c /etc/pam.d/system-auth

S.5..... c /etc/security/limits.conf

S.5....T c /etc/sysctl.conf

S.5....T /etc/sgml/docbook-simple.cat

S.5....T c /etc/login.defs

S.5..... c /etc/openldap/ldap.conf

S.5....T c /etc/sudoers

..5....T c /usr/lib64/security/classpath.security

....L... c /etc/pam.d/system-auth

S.5..... c /etc/security/limits.conf

S.5..... c /etc/ldap.conf

S.5....T c /etc/ssh/sshd_config

对于输出中每个标记的含义介绍如下:

? S 表示文件长度发生了变化

? M 表示文件的访问权限或文件类型发生了变化

? 5 表示MD5校验和发生了变化

? D 表示设备节点的属性发生了变化

? L 表示文件的符号链接发生了变化

? U 表示文件/子目录/设备节点的owner发生了变化

? G 表示文件/子目录/设备节点的group发生了变化

? T 表示文件最后一次的修改时间发生了变化

如果在输出结果中有“M”标记出现,那么对应的文件可能已经遭到篡改或替换,此时可以通过卸载这个rpm包重新安装来清除受攻击的文件。

不过这个命令有个局限性,那就是只能检查通过rpm包方式安装的所有文件,对于通过非rpm包方式安装的文件就无能为力了。同时,如果rpm工具也遭到替换,就不能通过这个方法了,此时可以从正常的系统上复制一个rpm工具进行检测。

;

网络攻击的过程通常是怎样的?

攻击者在一次攻击过程中通常采用如图

下面我们对攻击者的攻击过程中的各个步骤做一详细的介绍。

隐 藏位置

隐藏位置就是有效地保护自己,在因特网上的网络主机均有自己的网络地址,根据TCP/IP协议的规定,若没有采取保护措施,很容易反查到某台网络主机的位置,如IP地址和域名。因此,有经验的 黑 客 在实施攻击活动时的首要步骤是设法隐藏自己所在的网络位置,包括自己的网络域及IP地址,这样使调查者难以发现真正的攻击者来源。攻击者经常使用如 下 技 术 隐 藏 他 们 真实 的IP 地 址或者域名:

利用被侵入的主机作为跳板, 如在安装Windows 的计算机内利用Wingate软件作为跳板,利用配置不当的Proxy作为跳板;

使用电话转接技术隐蔽自己,如利用电话的转接服务联接ISP;

盗用他人的账号上网,通过电话联接一台主机,再经由主机进入Internet;

免 费 代 理 网关 ;

伪 造IP地址 ;

假 冒用户帐号 。

网络探测和收集资料

在发动一场攻击之前,攻击者一般要先确定攻击目标并收集目标系统的相关信息。他可能在一开始就确定了攻击目标,然后专门收集该目标的信息;也可能先大量地收集网上主机的信息,然后根据各系统的安全性强弱来确定最后的目标。

对于攻击者来说,信息是最好的工具。它可能就是攻击者发动攻击的最终目的(如绝密文件、经济情报);也可能是攻击者获得系统访问权的通行证,如用户口令、认证票据(ticket);也可能是攻击者获取系统访问权的前奏,如目标系统的软硬件平台类型、提供的服务与应用及其安全性的强弱等。攻击者感兴趣的信息主要包括:

操作系统信息;

开放的服务端口号;

系统默认帐号和口令;

邮件帐号;

IP地址分配情况;

域名信息;

网络设备类型;

网络通信协议;

应用服务器软件类型。

攻击者为了全面地掌握使目标系统的信息,常常借助软件工具,例如nmap、NESSUS、SATAN等。另外,攻击者进行搜集目标信息时,还要注意隐藏自己,以免引起目标系统管理员的注意。

弱点挖掘

系统中脆弱性的存在是系统受到各种安全威胁的根源。外部攻击者的攻击主要利用了系统提供的网络服务中的脆弱性;内部人员作案则利用了系统内部服务及其配置上的脆弱性;而拒绝服务攻击主要是利用资源分配上的脆弱性,长期占用有限资源不释放,使其他用户得不到应得的服务,或者是利用服务处理中的弱点,使该服务崩溃。攻击者攻击的重要步骤就是尽量挖掘出系统的弱点,并针对具体的脆弱性研究相应的攻击方法。常用到的弱点挖掘技术方法有:

系统或应用服务软件漏洞。攻击者还可以根据系统提供的不同的服务来使用不同的方法以获取系统的访问权限。如果攻击者发现系统提供了UUCP服务,攻击者可以利用UUCP的安全漏洞来获取系统的访问权;如果系统还提供其他的一些远程网络服务,如邮件服务、WWW服务、匿名FTP服务、TFTP服务,攻击者可以利用这些远程服务中的弱点获取系统的访问权。

机信任关系漏洞。攻击者寻找那些被信任的主机。这些主机可能是管理员使用的机器,或是一台被认为是很安全的服务器。比如,他可以利CGI 的漏洞,读取/etc/hosts.allow文件等。通过这个文件,就可以大致了解主机间的信任关系。接下一步,就是探测这些被信任的主机哪些存在漏洞。

寻找有 漏 洞 的 网 络 成 员 。尽量去发现有漏洞的网络成员对攻击者往往起到事倍功半效果,堡垒最容易从内部攻破就是这个缘故。用户网络安全防范意识弱,选取弱口令,使得从远程直接控制主机。

安全策略配置漏洞。主机的网络服务配置不当,开放有漏洞的网络服务。

通信协议漏洞。通过分析目标网络所采用的协议信息,寻找漏洞,如TCP/IP协议就存在漏洞。

网络业务系统漏洞

通过掌握目标网络的业务流程信息,然后发现漏洞,例如,在WWW服务中,允许普通用户远程上载的文件执行。

掌握控制权

一般帐户对目标系统只有有限的访问权限,要达到某些目的,攻击者必须有更多的权限。因此在获得一般帐户之后,攻击者经常会试图去获得更高的权限,如系统管理帐户的权限。获取系统管理权限通常有以下途径:

获得系统管理员的口令,如专门针对root用户的口令攻击;

利用系统管理上的漏洞:如错误的文件许可权,错误的系统配置,某些SUID程序中存在的缓冲区溢出问题等;

让系统管理员运行一些特洛伊木马,如经篡改之后的LOGIN程序等。

隐藏行踪

做为一个入侵者,攻击者总是惟恐自己的行踪被发现,所以在进入系统之后,聪明的攻击者要做的第一件事就是隐藏自己的行踪,攻击者隐藏自己的行踪通常要用到如下技术:

连接隐藏,如冒充其他用户、修改LOGNAME环境变量、修改utmp日志文件、使用IP SPOOF技术等;

进程隐藏,如使用重定向技术减少ps给出的信息量、用特洛伊木马代替ps程序等;

篡改日志文件中的审计信息;

改变系统时间造成日志文件数据紊乱以迷惑系统管理员。

实施攻击

不同的攻击者有不同的攻击目的,可能是为了获得机密文件的访问权,也可能是破坏系统数据的完整性,也可能是整个系统的控制权:系统管理权限,以及其他目的等。一般说来,可归结为以下几种方式:

下载敏感信息;

攻 击 其 他 被 信 任 的 主 机 和 网 络;

瘫 痪 网 络;

修改或删除重要数据。

开辟后门

一次成功的入侵通常要耗费攻击者的大量时间与精力,所以精于算计的攻击者在退出系统之前会在系统中制造一些后门,以方便自己的下次入侵,攻击者设计后门时通常会考虑以下方法:

放宽文件许可权;

重新开放不安全的服务,如REXD、TFTP等;

修改系统的配置,如系统启动文件、网络服务配置文件等;

替换系统本身的共享库文件;

安装各种特洛伊木马,修改系统的源代码;

安装sniffers。

服务器被攻击怎么处理?

目前来说解决服务器被DDOS攻击最常见的办法就是使用硬件防火墙了,也就是我们常说的高防服务器,高防服务器都会带有一定量的硬防,或大或小。

1、定期扫描

要定期扫描现有的网络主节点,清查可能存在的安全漏洞,对新出现的漏洞及时进行清理。骨干节点的计算机因为具有较高的带宽,是黑客利用的最佳位置,因此对这些主机本身加强主机安全是非常重要的。而且连接到网络主节点的都是服务器级别的计算机,所以定期扫描漏洞就变得更加重要了。

2、在骨干节点配置防火墙

防火墙本身能抵御DdoS攻击和其他一些攻击。在发现受到攻击的时候,可以将攻击导向一些牺牲主机,这样可以保护真正的主机不被攻击。当然导向的这些牺牲主机可以选择不重要的,或者是linux以及unix等漏洞少和天生防范攻击优秀的系统。

3、用足够的机器承受黑客攻击

这是一种较为理想的应对策略。如果用户拥有足够的容量和足够的资源给黑客攻击,在它不断访问用户、夺取用户资源之时,自己的能量也在逐渐耗失,或许未等用户被攻死,黑客已无力支招儿了。不过此方法需要投入的资金比较多,平时大多数设备处于空闲状态,和目前中小企业网络实际运行情况不相符。

4、充分利用网络设备保护网络资源

所谓网络设备是指路由器、防火墙等负载均衡设备,它们可将网络有效地保护起来。当网络被攻击时最先死掉的是路由器,但其他机器没有死。死掉的路由器经重启后会恢复正常,而且启动起来还很快,没有什么损失。若其他服务器死掉,其中的数据会丢失,而且重启服务器又是一个漫长的过程。特别是一个公司使用了负载均衡设备,这样当一台路由器被攻击死机时,另一台将马上工作。从而最大程度的削减了DdoS的攻击。

5、过滤不必要的服务和端口

过滤不必要的服务和端口,即在路由器上过滤假IP……只开放服务端口成为目前很多服务器的流行做法,例如WWW服务器那么只开放80而将其他所有端口关闭或在防火墙上做阻止策略。

6、检查访问者的来源

使用Unicast Reverse Path Forwarding等通过反向路由器查询的方法检查访问者的IP地址是否是真,如果是假的,它将予以屏蔽。许多黑客攻击常采用假IP地址方式迷惑用户,很难查出它来自何处。因此,利用Unicast Reverse Path Forwarding可减少假IP地址的出现,有助于提高网络安全性。

7、过滤所有RFC1918 IP地址

RFC1918 IP地址是内部网的IP地址,像10.0.0.0、192.168.0.0 和172.16.0.0,它们不是某个网段的固定的IP地址,而是Internet内部保留的区域性IP地址,应该把它们过滤掉。此方法并不是过滤内部员工的访问,而是将攻击时伪造的大量虚假内部IP过滤,这样也可以减轻DdoS的攻击。

8、限制SYN/ICMP流量

用户应在路由器上配置SYN/ICMP的最大流量来限制SYN/ICMP封包所能占有的最高频宽,这样,当出现大量的超过所限定的SYN/ICMP流量时,说明不是正常的网络访问,而是有黑客入侵。早期通过限制SYN/ICMP流量是最好的防范DOS的方法,虽然目前该方法对于DdoS效果不太明显了,不过仍然能够起到一定的作用。

网络攻击的攻击步骤

第一步:隐藏己方位置

普通攻击者都会利用别人的计算机隐藏他们真实的IP地址。老练的攻击者还会利用800电话的无人转接服务联接ISP,然后再盗用他人的帐号上网。

第二步:寻找并分析

攻击者首先要寻找目标主机并分析目标主机。在Internet上能真正标识主机的是IP地址,域名是为了便于记忆主机的IP地址而另起的名字,只要利用域名和 IP地址就能顺利地找到目标主机。当然,知道了要攻击目标的位置还是远远不够的,还必须将主机的操作系统类型及其所提供服务等资料作个全方面的了解。此时,攻击者们会使用一些扫描器工具,轻松获取目标主机运行的是哪种操作系统的哪个版本,系统有哪些帐户,WWW、FTP、Telnet 、SMTP等服务器程式是何种版本等资料,为入侵作好充分的准备。

第三步:帐号和密码

攻击者要想入侵一台主机,首先要该获取主机的一个帐号和密码,否则连登录都无法进行。这样常迫使他们先设法盗窃帐户文件,进行破解,从中获取某用户的帐户和口令,再寻觅合适时机以此身份进入主机。当然,利用某些工具或系统漏洞登录主机也是攻击者常用的一种技法。

第四步:获得控制权

攻击者们用FTP、Telnet等工具利用系统漏洞进入进入目标主机系统获得控制权之后,就会做两件事:清除记录和留下后门。他会更改某些系统设置、在系统中置入特洛伊木马或其他一些远程操纵程式,以便日后能不被觉察地再次进入系统。大多数后门程式是预先编译好的,只需要想办法修改时间和权限就能使用了,甚至新文件的大小都和原文件一模相同。攻击者一般会使用rep传递这些文件,以便不留下FTB记录。清除日志、删除拷贝的文件等手段来隐藏自己的踪迹之后,攻击者就开始下一步的行动。

第五步:资源和特权

攻击者找到攻击目标后,会继续下一步的攻击,窃取网络资源和特权。如:下载敏感信息;实施窃取帐号密码、信用卡号等经济偷窃;使网络瘫痪。

网络攻击一般分为哪几个步骤?

攻击的基本步骤:搜集信息 实施入侵 上传程序、下载数据 利用一些方法来保持访问,如后门、特洛伊木马 隐藏踪迹 【 信息搜集 】在攻击者对特定的网络资源进行攻击以前,他们需要了解将要攻击的环境,这需要搜集汇总各种与目标系统相关的信息,包括机器数目、类型、操作系统等等。踩点和扫描的目的都是进行信息的搜集。

 攻击者搜集目标信息一般采用7个基本步骤,每一步均有可利用的工具,攻击者使用它们得到攻击目标所需要的信息。找到初始信息 找到网络的地址范围 找到活动的机器 找到开放端口和入口点 弄清操作系统 弄清每个端口运行的是哪种服务 画出网络图

1 找到初始信息

攻击者危害一台机器需要有初始信息,比如一个IP地址或一个域名。实际上获取域名是很容易的一件事,然后攻击者会根据已知的域名搜集关于这个站点的信息。比如服务器的IP地址(不幸的是服务器通常使用静态的IP地址)或者这个站点的工作人员,这些都能够帮助发起一次成功的攻击。

 搜集初始信息的一些方法包括:

开放来源信息 (open source information)

在一些情况下,公司会在不知不觉中泄露了大量信息。公司认为是一般公开的以及能争取客户的信息,都能为攻击者利用。这种信息一般被称为开放来源信息。

 开放的来源是关于公司或者它的合作伙伴的一般、公开的信息,任何人能够得到。这意味着存取或者分析这种信息比较容易,并且没有犯罪的因素,是很合法的。这里列出几种获取信息的例子: 公司新闻信息:如某公司为展示其技术的先进性和能为客户提供最好的监控能力、容错能力、服务速度,往往会不经意间泄露了系统的操作平台、交换机型号、及基本的线路连接。 公司员工信息:大多数公司网站上附有姓名地址簿,在上面不仅能发现CEO和财务总监,也可能知道公司的VP和主管是谁。 新闻组:现在越来越多的技术人员使用新闻组、论坛来帮助解决公司的问题,攻击者看这些要求并把他们与电子信箱中的公司名匹配,这样就能提供一些有用的信息。使攻击者知道公司有什么设备,也帮助他们揣测出技术支持人员的水平 Whois

对于攻击者而言,任何有域名的公司必定泄露某些信息!

攻击者会对一个域名执行whois程序以找到附加的信息。Unix的大多数版本装有whois,所以攻击者只需在终端窗口或者命令提示行前敲入" whois 要攻击的域名"就可以了。对于windows操作系统,要执行whois查找,需要一个第三方的工具,如sam spade。

通过查看whois的输出,攻击者会得到一些非常有用的信息:得到一个物理地址、一些人名和电话号码(可利用来发起一次社交工程攻击)。非常重要的是通过whois可获得攻击域的主要的(及次要的)服务器IP地址。

Nslookup

 找到附加IP地址的一个方法是对一个特定域询问DNS。这些域名服务器包括了特定域的所有信息和链接到网络上所需的全部数据。任何网络都需要的一条信息,如果是打算发送或者接受信件,是mx记录。这条记录包含邮件服务器的IP地址。大多数公司也把网络服务器和其他IP放到域名服务器记录中。大多数UNIX和NT系统中,nslookup代理或者攻击者能够使用一个第三方工具,比如spade。

另一个得到地址的简单方法是ping域名。Ping一个域名时,程序做的第一件事情是设法把主机名解析为IP地址并输出到屏幕。攻击者得到网络的地址,能够把此网络当作初始点。2 找到网络的地址范围

当攻击者有一些机器的IP地址,他下一步需要找出网络的地址范围或者子网掩码。

需要知道地址范围的主要原因是:保证攻击者能集中精力对付一个网络而没有闯入其它网络。这样做有两个原因:第一,假设有地址10.10.10.5,要扫描整个A类地址需要一段时间。如果正在跟踪的目标只是地址的一个小子集,那么就无需浪费时间;第二,一些公司有比其他公司更好的安全性。因此跟踪较大的地址空间增加了危险。如攻击者可能能够闯入有良好安全性的公司,而它会报告这次攻击并发出报警。

攻击者能用两种方法找到这一信息,容易的方法是使用America Registry for Internet Numbers(ARIN)whois 搜索找到信息;困难的方法是使用tranceroute解析结果。

 (1) ARIN允许任何人搜索whois数据库找到"网络上的定位信息、自治系统号码(ASN)、有关的网络句柄和其他有关的接触点(POC)。"基本上,常规的whois会提供关于域名的信息。ARINwhois允许询问IP地址,帮助找到关于子网地址和网络如何被分割的策略信息。

 (2) Traceroute可以知道一个数据包通过网络的路径。因此利用这一信息,能决定主机是否在相同的网络上。

连接到internet上的公司有一个外部服务器把网络连到ISP或者Internet上,所有去公司的流量必须通过外部路由器,否则没有办法进入网络,并且大多数公司有防火墙,所以traceroute输出的最后一跳会是目的机器,倒数第二跳会是防火墙,倒数第三跳会是外部路由器。通过相同外部路由器的所有机器属于同一网络,通常也属于同一公司。因此攻击者查看通过tranceroute到达的各种ip地址,看这些机器是否通过相同的外部路由器,就知道它们是否属于同一网络。

 这里讨论了攻击者进入和决定公司地址范围的两种方法。既然有了地址范围,攻击者能继续搜集信息,下一步是找到网络上活动的机器。

3 找到活动的机器

 在知道了IP地址范围后,攻击者想知道哪些机器是活动的,哪些不是。公司里一天中不同的时间有不同的机器在活动。一般攻击者在白天寻找活动的机器,然后在深夜再次查找,他就能区分工作站和服务器。服务器会一直被使用,而工作站只在正常工作日是活动的。

Ping :使用ping可以找到网络上哪些机器是活动的。

Pingwar:ping有一个缺点,一次只能ping一台机器。攻击者希望同时ping多台机器,看哪些有反应,这种技术一般被称为ping sweeping。Ping war 就是一个这样的有用程序。

Nmap:Nmap也能用来确定哪些机器是活动的。Nmap是一个有多用途的工具,它主要是一个端口扫描仪,但也能ping sweep一个地址范围。4 找到开放端口和入口点

(1)Port Scanners:

为了确定系统中哪一个端口是开放的,攻击者会使用被称为port scanner(端口扫描仪)的程序。端口扫描仪在一系列端口上运行以找出哪些是开放的。

选择端口扫描仪的两个关键特征:第一,它能一次扫描一个地址范围;第二,能设定程序扫描的端口范围。(能扫描1到65535的整个范围。)

目前流行的扫描类型是:TCP conntect扫描 TCP SYN扫描 FIN扫描 ACK扫描常用端口扫描程序有:ScanPort:使用在Windows环境下,是非常基础的端口扫描仪,能详细列出地址范围和扫描的端口地址范围。 Nmap:在UNIX环境下推荐的端口扫描仪是Nmap。Nmap不止是端口扫描仪,也是安全工具箱中必不可少的工具。Namp能够运行前面谈到的不同类型的 。 运行了端口扫描仪后,攻击者对进入计算机系统的入口点有了真正的方法。

(2) War Dialing

进入网络的另一个普通入口点是modem(调制解调器)。用来找到网络上的modem的程序被称为war dialers。基本上当提交了要扫描的开始电话号码或者号码范围,它就会拨叫每一个号码寻找modem回答,如果有modem回答了,它就会记录下这一信息。

THC-SCAN是常用的war dialer程序。

5 弄清操作系统

攻击者知道哪些机器是活动的和哪些端口是开放的,下一步是要识别每台主机运行哪种操作系统。

有一些探测远程主机并确定在运行哪种操作系统的程序。这些程序通过向远程主机发送不平常的或者没有意义的数据包来完成。因为这些数据包RFC(internet标准)没有列出,一个操作系统对它们的处理方法不同,攻击者通过解析输出,能够弄清自己正在访问的是什么类型的设备和在运行哪种操作系统。Queso:是最早实现这个功能的程序。Queso目前能够鉴别出范围从microsoft到unix 和cisco路由器的大约100种不同的设备。 Nmap:具有和Queso相同的功能,可以说它是一个全能的工具。目前它能检测出接近400种不同的设备。 6 弄清每个端口运行的是哪种服务

(1) default port and OS

基于公有的配置和软件,攻击者能够比较准确地判断出每个端口在运行什么服务。例如如果知道操作系统是unix和端口25是开放的,他能判断出机器正在运行sendmail,如果操作系统是Microsoft NT和端口是25是开放的,他能判断出正在运行Exchange。

(2) Telnet

telnet是安装在大多数操作系统中的一个程序,它能连接到目的机器的特定端口上。攻击者使用这类程序连接到开放的端口上,敲击几次回车键,大多数操作系统的默认安装显示了关于给定的端口在运行何种服务的标题信息。

(3) Vulnerability Scanners

Vulnerability Scanners(弱点扫描器)是能被运行来对付一个站点的程序,它向黑客提供一张目标主机弱点的清单。7 画出网络图

进展到这个阶段,攻击者得到了各种信息,现在可以画出网络图使他能找出最好的入侵方法。攻击者可以使用traceroute或者ping来找到这个信息,也可以使用诸如cheops那样的程序,它可以自动地画出网络图。

Traceroute

Traceroute是用来确定从源到目的地路径的程序,结合这个信息,攻击者可确定网络的布局图和每一个部件的位置。

Visual Ping

Visual Ping是一个真实展示包经过网络的路线的程序。它不仅向攻击者展示了经过的系统,也展示了系统的地理位置。

Cheops

Cheops利用了用于绘制网络图并展示网络的图形表示的技术,是使整个过程自动化的程序。如果从网络上运行,能够绘出它访问的网络部分。经过一系列的前期准备,攻击者搜集了很多信息,有了一张网络的详尽图,确切地知道每一台机器正在使用的软件和版本,并掌握了系统中的一些弱点和漏洞。我们可以想象一下,他成功地攻击网络会很困难吗?回答是否定的!当拥有了那些信息后,网络实际上相当于受到了攻击。因此,保证安全让攻击者只得到有限的网络信息是关键!/B

0条大神的评论

发表评论