网络安全 频道

深入防火墙记录

dio 

  RealAudio客户将从服务器的6970-7170的UDP端口接收音频数据流。这是由TCP7070端口外向控制连接设置的。 

  13223 PowWow 

  PowWow 是Tribal Voice的聊天程序。它允许用户在此端口打开私人聊天的连接。这一程序对于建立连接非常具有“进攻性”。它会“驻扎”在这一TCP端口等待回应。这造成类似心跳间隔的连接企图。如果你是一个拨号用户,从另一个聊天者手中“继承”了IP地址这种情况就会发生:好象很多不同的人在测试这一端口。这一协议使用“OPNG”作为其连接企图的前四个字节。 

  17027 Conducent 

  这是一个外向连接。这是由于公司内部有人安装了带有Conducent "adbot" 的共享软件。Conducent "adbot"是为共享软件显示广告服务的。使用这种服务的一种流行的软件是Pkware。有人试验:阻断这一外向连接不会有任何问题,但是封掉IP地址本身将会导致adbots持续在每秒内试图连接多次而导致连接过载: 
机器会不断试图解析DNS名—ads.conducent.com,即IP地址216.33.210.40 ;216.33.199.77 ;216.33.199.80 ;216.33.199.81;216.33.210.41。(译者:不知NetAnts使用的Radiate是否也有这种现象) 

  27374 Sub-7
木马(TCP) 

  参见Subseven部分。 

  30100 NetSphere
木马(TCP) 

  通常这一端口的扫描是为了寻找中了NetSphere
木马。 

  31337 Back Orifice “elite” 

  Hacker中31337读做“elite”/ei’li:t/(译者:法语,译为中坚力量,精华。即3=E, 1=L, 7=T)。因此许多后门程序运行于这一端口。其中最有名的是Back Orifice。曾经一段时间内这是Internet上最常见的扫描。现在它的流行越来越少,其它的
木马程序越来越流行。 

  31789 Hack-a-tack 

  这一端口的UDP通讯通常是由于"Hack-a-tack"远程访问
木马(RAT, Remote Access Trojan)。这种木马包含内置的31790端口扫描器,因此任何31789端口到317890端口的连接意味着已经有这种入侵。(31789端口是控制连接,317890端口是文件传输连接) 

  32770~32900 RPC服务 

  Sun Solaris的RPC服务在这一范围内。详细的说:早期版本的Solaris(2.5.1之前)将portmapper置于这一范围内,即使低端口被防火墙封闭仍然允许Hacker/cracker访问这一端口。扫描这一范围内的端口不是为了寻找portmapper,就是为了寻找可被攻击的已知的RPC服务。 

  33434~33600 traceroute 

  如果你看到这一端口范围内的UDP数据包(且只在此范围之内)则可能是由于traceroute。参见traceroute部分。 

  41508 Inoculan 

  早期版本的Inoculan会在子网内产生大量的UDP通讯用于识别彼此。参见 
  http://www.circlemud.org/~jelson/software/udpsend.html 
  http://www.ccd.bnl.gov/nss/tips/inoculan/index.html 

  下面的这些源端口意味着什么? 

  端口1~1024是保留端口,所以它们几乎不会是源端口。但有一些例外,例如来自NAT机器的连接。参见1.9。 

  常看见紧接着1024的端口,它们是系统分配给那些并不在乎使用哪个端口连接的应用程序的“动态端口”。 

  Server Client 服务 描述 

  1-5/tcp 动态 FTP 1-5端口意味着sscan脚本 

  20/tcp 动态 FTP FTP服务器传送文件的端口 

  53 动态 FTP DNS从这个端口发送UDP回应。你也可能看见源/目标端口的TCP连接。 

  123 动态 S/NTP 简单网络时间协议(S/NTP)服务器运行的端口。它们也会发送到这个端口的广播。 

  27910~27961/udp 动态 Quake Quake或Quake引擎驱动的游戏在这一端口运行其服务器。因此来自这一端 

  口范围的UDP包或发送至这一端口范围的UDP包通常是游戏。 

  61000以上 动态 FTP 61000以上的端口可能来自Linux NAT服务器(IP Masquerade)

三、我发现一种对于同一系列端口的扫描来自于Internet上变化很大的源地址这通常是由于“诱骗”扫描(decoy scan),如nmap。其中一个是攻击者,其它的则不是。
利用防火墙规则和协议分析我们可以追踪他们是谁?例如:如果你ping每个系统,你就可以将获得的TTL与那些连接企图相匹配。这样你至少可以哪一个是“诱骗”扫描(TTL应该匹配,如果不匹配则他们是被“诱骗”了)。不过,新版本的扫描器会将攻击者自身的TTL随机化,这样要找出他们回更困难。 

  你可以进一步研究你的防火墙记录,寻找在同一子网中被诱骗的地址(人)。你通常会发现攻击者刚刚试图对你连接,而被诱骗者不会。 

四、特洛伊
木马扫描是指什么? 

  特洛伊
木马攻击的第一步是将木马程序放置到用户的机器上。常见的伎俩有: 

  1) 将
木马程序发布在Newsgroup中,声称这是另一种程序。 
  2) 广泛散布带有附件的E-mail 
  3) 在其Web上发布
木马程序 
  4) 通过即时通讯软件或聊天系统发布
木马程序(ICQ, AIM, IRC等) 
  5) 伪造ISP(如AOL)的E-mail哄骗用户执行程序(如软件升级) 
  6) 通过“文件与打印共享”将程序Copy至启动组 

  下一步将寻找可被控制的机器。最大的问题是上述方法无法告知Hacker/Cracker受害者的机器在哪里。因此,Hacker/Cracker扫描Internet。 

  这就导致防火墙用户(包括个人防火墙用户)经常看到指向他们机器的扫描。他们的机器并没有被攻击,扫描本身不会造成什么危害。扫描本身不会造成机器被攻击。真正的管理员会忽略这种“攻击” 

  以下列出常见的这种扫描。为了发现你的机器是否被种了
木马,运行“NETSTAT -an”。查看是否出现下列端口的连接。 

  Port Trojan 
  555 phAse zero 
  1243 Sub-7, SubSeven 
  3129 Masters Paradise 
  6670 DeepThroat 
  6711 Sub-7, SubSeven 
  6969 GateCrasher 
  21544 GirlFriend 
  12345 NetBus 
  23456 EvilFtp   
  27374 Sub-7, Seven 
  30100 NetSphere 
  31789 Hack‘a‘Tack 
  31337 BackOrifice, and many others 
  50505 Sockets de Troie 

  更多信息查看:http://www.commodon.com/threat/threat-ports.htm 

  什么是SUBSEVEN(sub-7) 

  Sub-7是最有名的远程控制
木马之一。现在它已经成为易于使用,功能强大的一种木马。原因是: 

  1〕它易于获得,升级迅速。大部分
木马产生后除了修改bug以外开发就停止了。 
  2〕这一程序不但包含一个扫描器,还能利用被控制的机器也进行扫描。 
  3〕制作者曾比赛利用sub-7控制网站。 
  4〕支持“端口重定向”,因此任何攻击者都可以利用它控制受害者的机器。 
  5〕具有大量与ICQ, AOL IM, MSN Messager和Yahoo messenger相关的功能,包括密码嗅探,发送消息等。 

  6〕 具有大量与UI相关的功能,如颠倒屏幕,用受害者扩音器发声,偷窥受害者屏幕。 

  简而言之它不仅是一种hacking工具而且是一种玩具,恐吓受害者的玩具。 

  Sub-7是由自称“Mobman”的人写的,他的站点是http://subseven.slak.org/。 
  Sub-7可能使用以下端口: 
  1243 老版本缺省连接端口 
  2772 抓屏端口 
  2773 键盘记录端口 
  6711 ??? 
  6776 我并不清楚这个端口是干什么用的,但是它被作为一些版本的后面 (即不用密码也能连接)。 
  7215 "matrix" chat程序 
  27374 v2.0缺省端口 
  54283 Spy端口

  五、来自低端口的DNS包 

  Q:我看见许多来自1024端口以下的DNS请求。这些服务是“保留”的吗?他们不是应该使用1024-65535端口吗? 

  A:他们来自于NAT防火墙后面的机器。NAT并不需要保留端口。(Ryan Russell >http://www.sybase.com/) 

  Q:我的防火墙丢弃了许多源端口低于1024的包,所以DNS查询失败。 

  A:不要用这种方式过滤。许多防火墙有类似的规则,但这是一种误导。因为Hacker/Cracker能伪造任何端口。 

  Q:这些NAT防火墙工作不正常吗? 
A:理论上不是,但实际上会导致失败。正确的方式是在任何情况下完全保证DNS通讯。(尤其在那些“代理”DNS并强迫DNS通过53端口的情况下) 

  Q:我以为DNS查询应该使用1024端口以上的随机端口? 

  A:实际上,一般DNS客户将使用非保留端口。但是有许多程序使用53端口。在任何情况下,NAT都会完全不同,因为它改变了所有SOCKET(IP+port combo) 

  六、一旦我拨号连接到ISP后,我的个人防火墙就开始警告“有人在探测你的xxxx端口”。 

  这种情况很常见。因为你使用ISP分配给你的IP,而在你使用之前刚有人使用。你看到的是上一个用户的“残留”信息。 

  常见的例子是聊天程序。如果有人刚刚挂断,刚才和他聊天的人会继续试图连接。一些程序的“超时”设置很长。如POWWOW或ICQ。 

  另一个例子是多人在线游戏。你会看到来自游戏提供者的通讯(如MPlayer),或其它不知名的游戏服务器。这些游戏通常基于UDP,因此无法建立连接。但为了获得较好的用户感觉,他们对于建立连接又很“执着”。以下是一些游戏的端口: 

  7777 Unreal, Klingon Honor Guard 
  7778 Unreal Tournament 
  22450 Sin 
  26000 Quake 
  26900 Hexen 2 
  26950 HexenWorld 
  27015 Half-life, Team Fortress Classic (TFC) 
  27500 QuakeWorld 
  27910 Quake 2 
  28000-28008 Starsiege TRIBES (TRIBES.DYNAMIX.COM) 
  28910 Heretic 2 

  另一个例子是多媒体广播、电视。如RealAudio客户端使用6970-7170端口接收声音数据。 

  你需要连接的来源。例如ICQ服务器运行于4000端口,而其客户端使用更高的随机端口。这就是说你会看到你会看到从4000端口到高端随机端口的UDP包。换句话说,不要试图查询端口列表找到随机高端端口的用途。重要的是源端口。 

  Sub-7也有类似问题。它使用不同的TCP连接用于不同的服务。如果受害者的机器下线,它会持续企图连接受害者机器的端口,特别是6776端口。 


  七、IRC服务器在探测我 

  最流行的聊天方式之一是IRC。这种聊天程序的特点之一就是它能告诉你正在和你聊天的人的IP地址。聊天室的问题之一是:人们匿名登陆并四处闲逛,往往会遭遇跑题的评论、粗鲁的话语、被打断谈话、被服务器“冲洗”或被其它客户踢下线。 

  因此,服务器端和客户端都默认禁止在聊天室内使用匿名登陆。特别需要指出的是,当有人进入聊天室时要检查他们是否通过其它代理服务器连接。最常见的这种扫描是SOCKS。假设你来的那个地方支持SOCKS,那么你完全有可能有一台完全独立的机器,你试图通过明处的代理服务器隐藏你在暗处的真实身份。Undernet’s关于这方面的策略可参考http://help.undernet.org/proxyscan. 

  同时,crackers/hackers会试图扫描人们的机器以确定他们是否运行某种服务,可被他们用做跳板。同样,通过检查SOCKS,攻击者希望发现某人打开了SOCKS,例如一个家庭的个人用户SOCKS实现共享连接,但将其错误设置成Internet上所有用户都能通过它。

  八、什么是“重定向”端口 

 一种常见的技术是把一个端口重定向到另一个地址。例如默认的HTTP端口是80,许多人把他们重定向到令一个端口,如8080( 这样,如果你打算访问本文就得写成http://www.robertgraham.com:8080/pubs/firewall-seen.html ) 

  实现重定向是为了让端口更难被发现,从而使Hacker更难攻击。因为Hacker不能对一个公认的默认端口进行攻击而必须进行端口扫描。 

  大多数端口重定向与原端口有相似之处。因此,大多数HTTP端口由80变化而来:81,88,8000,8080,8888。同样POP的端口原来在110,也常被重定向到1100。 

  也有不少情况是选取统计上有特别意义的数,象1234,23456,34567等。许多人有其它原因选择奇怪的数,42,69,666,31337。近来,越来越多的远程控制
木马( Remote Access Trojans, RATs )采用相同的默认端口。如NetBus的默认端口是12345。 
 Blake R. Swopes指出使用重定向端口还有一个原因,在UNIX系统上,如果你想侦听1024以下的端口需要有root权限。如果你没有root权限而又想开web服务,你就需要将其安装在较高的端口。此外,一些ISP的防火墙将阻挡低端口的通讯,所以即使你拥有整个机器你还是得重定向端口。 

  九、我还是不明白当某人试图连接我的某个端口时我该怎么办? 

  你可以使用Netcat建立一个侦听进程。例如,你想侦听1234端口: 
  NETCAT -L -p 1234 

  许多协议都会在连接开始的部分发送数据。当使用Netcat侦听某个端口时,你能想办法搞清在使用什么协议。如果幸运的话,你会发现是HTTP协议,它会为你提供大量信息,使你能追踪发生的事情。 

  “-L”参数是让Netcat持续侦听。正常情况下Netcat会接受一个连接,复制其内容,并退出。加上这个参数后,它可以持续运行以侦听多个连接。

ICMP 

  TCP和UDP能承载数据,但ICMP仅包含控制信息。因此,ICMP信息不能真正用于入侵其它机器。Hacker们使用ICMP通常是为了扫描网络,发动DoS攻击,重定向网络交通。(这
0
相关文章