端口扫描的危害_关于端口扫描的题库

hacker|
199

关于互联网中“端口”的问题

端口知识介绍(如何关闭)

每一项服务都对应相应的端口,比如众如周知的WWW服务的端口是80,smtp是25,ftp是21,win2000安装中默认的都是这些服务开启的。对于个人用户来说确实没有必要,关掉端口也就是关闭无用的服务。 “控制面板”的“管理工具”中的“服务”中来配置。

1、关闭7.9等等端口:关闭Simple TCP/IP Service,支持以下 TCP/IP 服务:Character Generator, Daytime, Discard, Echo, 以及 Quote of the Day。

2、关闭80口:关掉WWW服务。在“服务”中显示名称为World Wide Web Publishing Service,通过 Internet 信息服务的管理单元提供 Web 连接和管理。

3、关掉25端口:关闭Simple Mail Transport Protocol (SMTP)服务,它提供的功能是跨网传送电子邮件。

4、关掉21端口:关闭FTP Publishing Service,它提供的服务是通过 Internet 信息服务的管理单元提供 FTP 连接和管理。

5、关掉23端口:关闭Telnet服务,它允许远程用户登录到系统并且使用命令行运行控制台程序。

6、还有一个很重要的就是关闭server服务,此服务提供 RPC 支持、文件、打印以及命名管道共享。关掉它就关掉了win2k的默认共享,比如ipc$、c$、admin$等等,此服务关闭不影响您的共他操作。

7、还有一个就是139端口,139端口是NetBIOS Session端口,用来文件和打印共享,注意的是运行samba的unix机器也开放了139端口,功能一样。以前流光2000用来判断对方主机类型不太准确,估计就是139端口开放既认为是NT机,现在好了。 关闭139口听方法是在“网络和拨号连接”中“本地连接”中选取“Internet协议(TCP/IP)”属性,进入“高级TCP/IP设置”“WINS设置”里面有一项“禁用TCP/IP的NETBIOS”,打勾就关闭了139端口。 对于个人用户来说,可以在各项服务属性设置中设为“禁用”,以免下次重启服务也重新启动,端口也开放了。

端口可分为3大类:

1) 公认端口(Well Known Ports):从0到1023,它们紧密绑定于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:80端口实际上总是HTTP通讯。

2) 注册端口(Registered Ports):从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它目的。例如:许多系统处理动态端口从1024左右开始。

3) 动态和/或私有端口(Dynamic and/or Private Ports):从49152到65535。理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。

本节讲述通常TCP/UDP端口扫描在防火墙记录中的信息。记住:并不存在所谓ICMP端口。如果你对解读ICMP数据感兴趣,请参看本文的其它部分。

0 通常用于分析操作系统。这一方法能够工作是因为在一些系统中“0”是无效端口,当你试图使用一种通常的闭合端口连接它时将产生不同的结果。一种典型的扫描:使用IP地址为0.0.0.0,设置ACK位并在以太网层广播。

1 tcpmux 这显示有人在寻找SGI Irix机器。Irix是实现tcpmux的主要提供者,缺省情况下tcpmux在这种系统中被打开。Iris机器在发布时含有几个缺省的无密码的帐户,如lp, guest, uucp, nuucp, demos, tutor, diag, EZsetup, OutOfBox, 和4Dgifts。许多管理员安装后忘记删除这些帐户。因此Hacker们在Internet上搜索tcpmux并利用这些帐户。

7 Echo 你能看到许多人们搜索Fraggle放大器时,发送到x.x.x.0和x.x.x.255的信息。

常见的一种DoS攻击是echo循环(echo-loop),攻击者伪造从一个机器发送到另一个机器的UDP数据包,而两个机器分别以它们最快的方式回应这些数据包。(参见Chargen)

另一种东西是由DoubleClick在词端口建立的TCP连接。有一种产品叫做“Resonate Global Dispatch”,它与DNS的这一端口连接以确定最近的路由。

Harvest/squid cache将从3130端口发送UDP echo:“如果将cache的source_ping on选项打开,它将对原始主机的UDP echo端口回应一个HIT reply。”这将会产生许多这类数据包。

11 sysstat 这是一种UNIX服务,它会列出机器上所有正在运行的进程以及是什么启动了这些进程。这为入侵者提供了许多信息而威胁机器的安全,如暴露已知某些弱点或帐户的程序。这与UNIX系统中“ps”命令的结果相似

再说一遍:ICMP没有端口,ICMP port 11通常是ICMP type=11

19 chargen 这是一种仅仅发送字符的服务。UDP版本将会在收到UDP包后回应含有垃圾字符的包。TCP连接时,会发送含有垃圾字符的数据流知道连接关闭。Hacker利用IP欺骗可以发动DoS攻击。伪造两个chargen服务器之间的UDP包。由于服务器企图回应两个服务器之间的无限的往返数据通讯一个chargen和echo将导致服务器过载。同样fraggle DoS攻击向目标地址的这个端口广播一个带有伪造受害者IP的数据包,受害者为了回应这些数据而过载。

21 ftp 最常见的攻击者用于寻找打开“anonymous”的ftp服务器的方法。这些服务器带有可读写的目录。Hackers或Crackers 利用这些服务器作为传送warez (私有程序) 和pr0n(故意拼错词而避免被搜索引擎分类)的节点。

22 ssh PcAnywhere建立TCP和这一端口的连接可能是为了寻找ssh。这一服务有许多弱点。如果配置成特定的模式,许多使用RSAREF库的版本有不少漏洞。(建议在其它端口运行ssh)

还应该注意的是ssh工具包带有一个称为make-ssh-known-hosts的程序。它会扫描整个域的ssh主机。你有时会被使用这一程序的人无意中扫描到。

UDP(而不是TCP)与另一端的5632端口相连意味着存在搜索pcAnywhere的扫描。5632(十六进制的0x1600)位交换后是0x0016(使进制的22)。

23 Telnet 入侵者在搜索远程登陆UNIX的服务。大多数情况下入侵者扫描这一端口是为了找到机器运行的操作系统。此外使用其它技术,入侵者会找到密码。

25 smtp 攻击者(spammer)寻找SMTP服务器是为了传递他们的spam。入侵者的帐户总被关闭,他们需要拨号连接到高带宽的e-mail服务器上,将简单的信息传递到不同的地址。SMTP服务器(尤其是sendmail)是进入系统的最常用方法之一,因为它们必须完整的暴露?赝nternet且邮件的路由是复杂的(暴露+复杂=弱点)。

53 DNS Hacker或crackers可能是试图进行区域传递(TCP),欺骗DNS(UDP)或隐藏其它通讯。因此防火墙常常过滤或记录53端口。

需要注意的是你常会看到53端口做为UDP源端口。不稳定的防火墙通常允许这种通讯并假设这是对DNS查询的回复。Hacker常使用这种方法穿透防火墙。

67和68 Bootp和DHCP UDP上的Bootp/DHCP:通过DSL和cable-modem的防火墙常会看见大量发送到广播地址255.255.255.255的数据。这些机器在向DHCP服务器请求一个地址分配。Hacker常进入它们分配一个地址把自己作为局部路由器而发起大量的“中间人”(man-in-middle)攻击。客户端向68端口(bootps)广播请求配置,服务器向67端口(bootpc)广播回应请求。这种回应使用广播是因为客户端还不知道可以发送的IP地址。

69 TFTP(UDP) 许多服务器与bootp一起提供这项服务,便于从系统下载启动代码。但是它们常常错误配置而从系统提供任何文件,如密码文件。它们也可用于向系统写入文件。

79 finger Hacker用于获得用户信息,查询操作系统,探测已知的缓冲区溢出错误,回应从自己机器到其它机器finger扫描。

98 linuxconf 这个程序提供linux boxen的简单管理。通过整合的HTTP服务器在98端口提供基于Web界面的服务。它已发现有许多安全问题。一些版本setuid root,信任局域网,在/tmp下建立Internet可访问的文件,LANG环境变量有缓冲区溢出。此外因为它包含整合的服务器,许多典型的HTTP漏洞可能存在(缓冲区溢出,历遍目录等)

109 POP2 并不象POP3那样有名,但许多服务器同时提供两种服务(向后兼容)。在同一个服务器上POP3的漏洞在POP2中同样存在。

110 POP3 用于客户端访问服务器端的邮件服务。POP3服务有许多公认的弱点。关于用户名和密码交换缓冲区溢出的弱点至少有20个(这意味着Hacker可以在真正登陆前进入系统)。成功登陆后还有其它缓冲区溢出错误。

111 sunrpc portmap rpcbind Sun RPC PortMapper/RPCBIND。访问portmapper是扫描系统查看允许哪些RPC服务的最早的一步。常见RPC服务有:rpc.mountd, NFS, rpc.statd, rpc.csmd, rpc.ttybd, amd等。入侵者发现了允许的RPC服务将转向提供服务的特定端口测试漏洞。

记住一定要记录线路中的daemon, IDS, 或sniffer,你可以发现入侵者正使用什么程序访问以便发现到底发生了什么。

113 Ident auth 这是一个许多机器上运行的协议,用于鉴别TCP连接的用户。使用标准的这种服务可以获得许多机器的信息(会被Hacker利用)。但是它可作为许多服务的记录器,尤其是FTP, POP, IMAP, SMTP和IRC等服务。通常如果有许多客户通过防火墙访问这些服务,你将会看到许多这个端口的连接请求。记住,如果你阻断这个端口客户端会感觉到在防火墙另一边与e-mail服务器的缓慢连接。许多防火墙支持在TCP连接的阻断过程中发回RST,着将回停止这一缓慢的连接。

119 NNTP news 新闻组传输协议,承载USENET通讯。当你链接到诸如:news://comp.security.firewalls/. 的地址时通常使用这个端口。这个端口的连接企图通常是人们在寻找USENET服务器。多数ISP限制只有他们的客户才能访问他们的新闻组服务器。打开新闻组服务器将允许发/读任何人的帖子,访问被限制的新闻组服务器,匿名发帖或发送spam。

135 oc-serv MS RPC end-point mapper Microsoft在这个端口运行DCE RPC end-point mapper为它的DCOM服务。这与UNIX 111端口的功能很相似。使用DCOM和/或RPC的服务利用机器上的end-point mapper注册它们的位置。远端客户连接到机器时,它们查询end-point mapper找到服务的位置。同样Hacker扫描机器的这个端口是为了找到诸如:这个机器上运行Exchange Server吗?是什么版本?

这个端口除了被用来查询服务(如使用epdump)还可以被用于直接攻击。有一些DoS攻击直接针对这个端口。

137 NetBIOS name service nbtstat (UDP) 这是防火墙管理员最常见的信息,请仔细阅读文章后面的NetBIOS一节

139 NetBIOS File and Print Sharing 通过这个端口进入的连接试图获得NetBIOS/SMB服务。这个协议被用于Windows“文件和打印机共享”和SAMBA。在Internet上共享自己的硬盘是可能是最常见的问题。

大量针对这一端口始于1999,后来逐渐变少。2000年又有回升。一些VBS(IE5 VisualBasic Scripting)开始将它们自己拷贝到这个端口,试图在这个端口繁殖。

143 IMAP 和上面POP3的安全问题一样,许多IMAP服务器有缓冲区溢出漏洞运行登陆过程中进入。记住:一种Linux蠕虫(admw0rm)会通过这个端口繁殖,因此许多这个端口的扫描来自不知情的已被感染的用户。当RadHat在他们的Linux发布版本中默认允许IMAP后,这些漏洞变得流行起来。Morris蠕虫以后这还是第一次广泛传播的蠕虫。

这一端口还被用于IMAP2,但并不流行。

已有一些报道发现有些0到143端口的攻击源于脚本。

161 SNMP(UDP) 入侵者常探测的端口。SNMP允许远程管理设备。所有配置和运行信息都储存在数据库中,通过SNMP客获得这些信息。许多管理员错误配置将它们暴露于Internet。Crackers将试图使用缺省的密码“public”“private”访问系统。他们可能会试验所有可能的组合。

SNMP包可能会被错误的指向你的网络。Windows机器常会因为错误配置将HP JetDirect remote management软件使用SNMP。HP OBJECT IDENTIFIER将收到SNMP包。新版的Win98使用SNMP解析域名,你会看见这种包在子网内广播(cable modem, DSL)查询sysName和其它信息。

162 SNMP trap 可能是由于错误配置

177 xdmcp 许多Hacker通过它访问X-Windows控制台,它同时需要打开6000端口。

513 rwho 可能是从使用cable modem或DSL登陆到的子网中的UNIX机器发出的广播。这些人为Hacker进入他们的系统提供了很有趣的信息。

553 CORBA IIOP (UDP) 如果你使用cable modem或DSL VLAN,你将会看到这个端口的广播。CORBA是一种面向对象的RPC(remote procedure call)系统。Hacker会利用这些信息进入系统。

600 Pcserver backdoor 请查看1524端口

一些玩script的孩子认为他们通过修改ingreslock和pcserver文件已经完全攻破了系统-- Alan J. Rosenthal.

635 mountd Linux的mountd Bug。这是人们扫描的一个流行的Bug。大多数对这个端口的扫描是基于UDP的,但基于TCP的mountd有所增加(mountd同时运行于两个端口)。记住,mountd可运行于任何端口(到底在哪个端口,需要在端口111做portmap查询),只是Linux默认为635端口,就象NFS通常运行于2049端口。

1024 许多人问这个端口是干什么的。它是动态端口的开始。许多程序并不在乎用哪个端口连接网络,它们请求操作系统为它们分配“下一个闲置端口”。基于这一点分配从端口1024开始。这意味着第一个向系统请求分配动态端口的程序将被分配端口1024。为了验证这一点,你可以重启机器,打开Telnet,再打开一个窗口运行“natstat -a”,你将会看到Telnet被分配1024端口。请求的程序越多,动态端口也越多。操作系统分配的端口将逐渐变大。再来一遍,当你浏览Web页时用“netstat”查看,每个Web页需要一个新端口。

端口扫描的最新技术有些什么?

一:TCP/IP相关问题

连接端及标记

IP地址和端口被称作套接字,它代表一个TCP连接的一个连接端。为了获得TCP服务,必须在发送机的一个端口上和接收机的一个端口上建立连接。TCP连接用两个连接端来区别,也就是(连接端1,连接端2)。连接端互相发送数据包。

一个TCP数据包包括一个TCP头,后面是选项和数据。一个TCP头包含6个标志位。它们的意义分别为:

SYN: 标志位用来建立连接,让连接双方同步序列号。如果SYN=1而ACK=0,则表示该数据包为连接请求,如果SYN=1而ACK=1则表示接受连接。

FIN: 表示发送端已经没有数据要求传输了,希望释放连接。

RST: 用来复位一个连接。RST标志置位的数据包称为复位包。一般情况下,如果TCP收到的一个分段明显不是属于该主机上的任何一个连接,则向远端发送一个复位包。

URG: 为紧急数据标志。如果它为1,表示本数据包中包含紧急数据。此时紧急数据指针有效。

ACK: 为确认标志位。如果为1,表示包中的确认号时有效的。否则,包中的确认号无效。

PSH: 如果置位,接收端应尽快把数据传送给应用层。

TCP连接的建立

TCP是一个面向连接的可靠传输协议。面向连接表示两个应用端在利用TCP传送数据前必须先建立TCP连接。 TCP的可靠性通过校验和,定时器,数据序号和应答来提供。通过给每个发送的字节分配一个序号,接收端接收到数据后发送应答,TCP协议保证了数据的可靠传输。数据序号用来保证数据的顺序,剔除重复的数据。在一个TCP会话中,有两个数据流(每个连接端从另外一端接收数据,同时向对方发送数据),因此在建立连接时,必须要为每一个数据流分配ISN(初始序号)。为了了解实现过程,我们假设客户端C希望跟服务器端S建立连接,然后分析连接建立的过程(通常称作三阶段握手):

1: C --SYN XXà S

2: C ?-SYN YY/ACK XX+1------- S

3: C ----ACK YY+1--à S

1:C发送一个TCP包(SYN 请求)给S,其中标记SYN(同步序号)要打开。SYN请求指明了客户端希望连接的服务器端端口号和客户端的ISN(XX是一个例子)。

2:服务器端发回应答,包含自己的SYN信息ISN(YY)和对C的SYN应答,应答时返回下一个希望得到的字节序号(YY+1)。

3:C 对从S 来的SYN进行应答,数据发送开始。

一些实现细节

大部分TCP/IP实现遵循以下原则:

1:当一个SYN或者FIN数据包到达一个关闭的端口,TCP丢弃数据包同时发送一个RST数据包。

2:当一个RST数据包到达一个监听端口,RST被丢弃。

3:当一个RST数据包到达一个关闭的端口,RST被丢弃。

4:当一个包含ACK的数据包到达一个监听端口时,数据包被丢弃,同时发送一个RST数据包。

5:当一个SYN位关闭的数据包到达一个监听端口时,数据包被丢弃。

6:当一个SYN数据包到达一个监听端口时,正常的三阶段握手继续,回答一个SYN ACK数据包。

7:当一个FIN数据包到达一个监听端口时,数据包被丢弃。"FIN行为"(关闭得端口返回RST,监听端口丢弃包),在URG和PSH标志位置位时同样要发生。所有的URG,PSH和FIN,或者没有任何标记的TCP数据包都会引起"FIN行为"。

二:全TCP连接和SYN扫描器

全TCP连接

全TCP连接是长期以来TCP端口扫描的基础。扫描主机尝试(使用三次握手)与目的机指定端口建立建立正规的连接。连接由系统调用connect()开始。对于每一个监听端口,connect()会获得成功,否则返回-1,表示端口不可访问。由于通常情况下,这不需要什么特权,所以几乎所有的用户(包括多用户环境下)都可以通过connect来实现这个技术。

这种扫描方法很容易检测出来(在日志文件中会有大量密集的连接和错误记录)。Courtney,Gabriel和TCP Wrapper监测程序通常用来进行监测。另外,TCP Wrapper可以对连接请求进行控制,所以它可以用来阻止来自不明主机的全连接扫描。

TCP SYN扫描

在这种技术中,扫描主机向目标主机的选择端口发送SYN数据段。如果应答是RST,那么说明端口是关闭的,按照设定就探听其它端口;如果应答中包含SYN和ACK,说明目标端口处于监听状态。由于所有的扫描主机都需要知道这个信息,传送一个RST给目标机从而停止建立连接。由于在SYN扫描时,全连接尚未建立,所以这种技术通常被称为半打开扫描。SYN扫描的优点在于即使日志中对扫描有所记录,但是尝试进行连接的记录也要比全扫描少得多。缺点是在大部分操作系统下,发送主机需要构造适用于这种扫描的IP包,通常情况下,构造SYN数据包需要超级用户或者授权用户访问专门的系统调用。

三:秘密扫描与间接扫描

秘密扫描技术

由于这种技术不包含标准的TCP三次握手协议的任何部分,所以无法被记录下来,从而必SYN扫描隐蔽得多。另外,FIN数据包能够通过只监测SYN包的包过滤器。

秘密扫描技术使用FIN数据包来探听端口。当一个FIN数据包到达一个关闭的端口,数据包会被丢掉,并且回返回一个RST数据包。否则,当一个FIN数据包到达一个打开的端口,数据包只是简单的丢掉(不返回RST)。

Xmas和Null扫描是秘密扫描的两个变种。Xmas扫描打开FIN,URG和PUSH标记,而Null扫描关闭所有标记。这些组合的目的是为了通过所谓的FIN标记监测器的过滤。

秘密扫描通常适用于UNIX目标主机,除过少量的应当丢弃数据包却发送reset信号的操作系统(包括CISCO,BSDI,HP/UX,MVS和IRIX)。在Windows95/NT环境下,该方法无效,因为不论目标端口是否打开,操作系统都发送RST。

跟SYN扫描类似,秘密扫描也需要自己构造IP 包。

间接扫描

间接扫描的思想是利用第三方的IP(欺骗主机)来隐藏真正扫描者的IP。由于扫描主机会对欺骗主机发送回应信息,所以必须监控欺骗主机的IP行为,从而获得原始扫描的结果。间接扫描的工作过程如下:

假定参与扫描过程的主机为扫描机,隐藏机,目标机。扫描机和目标记的角色非常明显。隐藏机是一个非常特殊的角色,在扫描机扫描目的机的时候,它不能发送任何数据包(除了与扫描有关的包)。

四:认证扫描和代理扫描

认证扫描

到目前为止,我们分析的扫描器在设计时都只有一个目的:判断一个主机中哪个端口上有进程在监听。然而,最近的几个新扫描器增加了其它的功能,能够获取监听端口的进程的特征和行为。

认证扫描是一个非常有趣的例子。利用认证协议,这种扫描器能够获取运行在某个端口上进程的用户名(userid)。认证扫描尝试与一个TCP端口建立连接,如果连接成功,扫描器发送认证请求到目的主机的113TCP端口。认证扫描同时也被成为反向认证扫描,因为即使最初的RFC建议了一种帮助服务器认证客户端的协议,然而在实际的实现中也考虑了反向应用(即客户端认证服务器)。

代理扫描

文件传输协议(FTP)支持一个非常有意思的选项:代理ftp连接。这个选项最初的目的(RFC959)是允许一个客户端同时跟两个FTP服务器建立连接,然后在服务器之间直接传输数据。然而,在大部分实现中,实际上能够使得FTP服务器发送文件到Internet的任何地方。许多攻击正是利用了这个缺陷。最近的许多扫描器利用这个弱点实现ftp代理扫描。

ftp端口扫描主要使用ftp代理服务器来扫描tcp端口。扫描步骤如下:

1:假定S是扫描机,T是扫描目标,F是一个ftp服务器,这个服务器支持代理选项,能够跟S和T建立连接。

2:S与F建立一个ftp会话,使用PORT命令声明一个选择的端口(称之为p-T)作为代理传输所需要的被动端口。

3:然后S使用一个LIST命令尝试启动一个到p-T的数据传输。

4:如果端口p-T确实在监听,传输就会成功(返回码150和226被发送回给S)。否则S回收到"425无法打开数据连接"的应答。

5:S持续使用PORT和LIST命令,直到T上所有的选择端口扫描完毕。

FTP代理扫描不但难以跟踪,而且当ftp服务器在防火墙后面的时候

五:其它扫描方法

Ping扫描

如果需要扫描一个主机上甚至整个子网上的成千上万个端口,首先判断一个主机是否开机就非常重要了。这就是Ping扫描器的目的。主要由两种方法用来实现Ping扫描。

1:真实扫描:例如发送ICMP请求包给目标IP地址,有相应的表示主机开机。

2:TCP Ping:例如发送特殊的TCP包给通常都打开且没有过滤的端口(例如80端口)。对于没有root权限的扫描者,使用标准的connect来实现。否则,ACK数据包发送给每一个需要探测的主机IP。每一个返回的RST表明相应主机开机了。另外,一种类似于SYN扫描端口80(或者类似的)也被经常使用。

安全扫描器

安全扫描器是用来自动检查一个本地或者远程主机的安全漏洞的程序。象其它端口扫描器一样,它们查询端口并记录返回结果。但是它们。它们主要要解决以下问题:

1:是否允许匿名登录。

2:是否某种网络服务需要认证。

3:是否存在已知安全漏洞。

可能SATAN是最著名的安全扫描器。1995年四月SATAN最初发布的时候,人们都认为这就是它的最终版本,认为它不但能够发现相当多的已知漏洞,而且能够针对任何很难发现的漏洞提供信息。但是,从它发布以来,安全扫描器一直在不断地发展,其实现机制也越来越复杂。

栈指纹

绝大部分安全漏洞与缺陷都与操作系统相关,因此远程操作系统探测是系统管理员关心的一个问题。

远程操作系统探测不是一个新问题。近年来,TCP/IP实现提供了主机操作系统信息服务。FTP,TELNET,HTTP和DNS服务器就是很好的例子。然而,实际上提供的信息都是不完整的,甚至有可能是错误的。最初的扫描器,依靠检测不同操作系统对TCP/IP的不同实现来识别操作系统。由于差别的有限性,现在只能最多只能识别出10余种操作系统。

最近出现的两个扫描器,QueSO和NMAP,在指纹扫描中引入了新的技术。 QueSO第一个实现了使用分离的数据库于指纹。NMAP包含了很多的操作系统探测技术,定义了一个模板数据结构来描述指纹。由于新的指纹可以很容易地以模板的形式加入,NMAP指纹数据库是不断增长的,它能识别的操作系统也越来越多。

这种使用扫描器判断远程操作系统的技术称为(TCP/IP)栈指纹技术。

另外有一种技术称为活动探测。活动探测把TCP的实现看作一个黑盒子。通过研究TCP对探测的回应,就可以发现 TCP实现的特点。TCP/IP 栈指纹技术是活动探测的一个变种,它适用于整个TCP/IP协议的实现和操作系统。栈指纹使用好几种技术来探测TCP/IP协议栈和操作系统的细微区别。这些信息用来创建一个指纹,然后跟已知的指纹进行比较,就可以判断出当前被扫描的操作系统。

栈指纹扫描包含了相当多的技术。下面是一个不太完整的清单:

1:FIN探测

2:BOGUS标记探测

3:TCP ISN 取样

4:TCP 初始窗口

5:ACK值

6:ICMP错误信息

7:ICMP信息

8:服务类型

9:TCP选项

什么是端口扫描?

一个端口就是一个潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息。进行扫描的方法很多,可以是手工进行扫描,也可以用端口扫描软件进行。 在手工进行扫描时,需要熟悉各种命令。对命令执行后的输出进行分析。用扫描软件进行扫描时,许多扫描器软件都有分析数据的功能。 通过端口扫描,可以得到许多有用的信息,从而发现系统的安全漏洞。 什么是扫描器 扫描器是一种自动检测远程或本地主机安全性弱点的程序,通过使用扫描器你可一不留痕迹的发现远程服务器的各种TCP端口的分配及提供的服务和它们的软件版本!这就能让我们间接的或直观的了解到远程主机所存在的安全问题。 工作原理 扫描器通过选用远程TCP/IP不同的端口的服务,并记录目标给予的回答,通过这种方法,可以搜集到很多关于目标主机的各种有用的信息(比如:是否能用匿名登陆!是否有可写的FTP目录,是否能用TELNET,HTTPD是用ROOT还是nobady在跑!) 扫描器能干什么 扫描器并不是一个直接的攻击网络漏洞的程序,它仅仅能帮助我们发现目标机的某些内在的弱点。一个好的扫描器能对它得到的数据进行分析,帮助我们查找目标主机的漏洞。但它不会提供进入一个系统的详细步骤。 扫描器应该有三项功能:发现一个主机或网络的能力;一旦发现一台主机,有发现什么服务正运行在这台主机上的能力;通过测试这些服务,发现漏洞的能力。 编写扫描器程序必须要很多TCP/IP程序编写和C, Perl和或SHELL语言的知识。需要一些Socket编程的背景,一种在开发客户/服务应用程序的方法。开发一个扫描器是一个雄心勃勃的项目,通常能使程序员感到很满意。 常用的端口扫描技术 TCP connect() 扫描 这是最基本的TCP扫描。操作系统提供的connect()系统调用,用来与每一个感兴趣的目标计算机的端口进行连接。如果端口处于侦听状态,那么connect()就能成功。否则,这个端口是不能用的,即没有提供服务。这个技术的一个最大的优点是,你不需要任何权限。系统中的任何用户都有权利使用这个调用。另一个好处就是速度。如果对每个目标端口以线性的方式,使用单独的connect()调用,那么将会花费相当长的时间,你可以通过同时打开多个套接字,从而加速扫描。使用非阻塞I/O允许你设置一个低的时间用尽周期,同时观察多个套接字。但这种方法的缺点是很容易被发觉,并且被过滤掉。目标计算机的logs文件会显示一连串的连接和连接是出错的服务消息,并且能很快的使它关闭。 TCP SYN扫描 这种技术通常认为是“半开放”扫描,这是因为扫描程序不必要打开一个完全的TCP连接。扫描程序发送的是一个SYN数据包,好象准备打开一个实际的连接并等待反应一样(参考TCP的三次握手建立一个TCP连接的过程)。一个SYN|ACK的返回信息表示端口处于侦听状态。一个RST返回,表示端口没有处于侦听态。如果收到一个SYN|ACK,则扫描程序必须再发送一个RST信号,来关闭这个连接过程。这种扫描技术的优点在于一般不会在目标计算机上留下记录。但这种方法的一个缺点是,必须要有root权限才能建立自己的SYN数据包。 TCP FIN 扫描 有的时候有可能SYN扫描都不够秘密。一些防火墙和包过滤器会对一些指定的端口进行监视,有的程序能检测到这些扫描。相反,FIN数据包可能会没有任何麻烦的通过。这种扫描方法的思想是关闭的端口会用适当的RST来回复FIN数据包。另一方面,打开的端口会忽略对FIN数据包的回复。这种方法和系统的实现有一定的关系。有的系统不管端口是否打开,都回复RST,这样,这种扫描方法就不适用了。并且这种方法在区分Unix和NT时,是十分有用的。 IP段扫描 这种不能算是新方法,只是其它技术的变化。它并不是直接发送TCP探测数据包,是将数据包分成两个较小的IP段。这样就将一个TCP头分成好几个数据包,从而过滤器就很难探测到。但必须小心。一些程序在处理这些小数据包时会有些麻烦。 TCP 反向 ident扫描 ident 协议允许(rfc1413)看到通过TCP连接的任何进程的拥有者的用户名,即使这个连接不是由这个进程开始的。因此你能,举

试给出x的范围。

解:用差比较法。

(x+3)(x--2)--(x--3)(x+1)

=(x^2+x-6)--(x^2--2x--3)

=x^2+x--6--x^2+2x+3

=3x--3

=3(x--1)

当 x1时,3(x--1)0, 即:(x+3)(x--2)(x--3)(x+1).

当 x=1时,3(x--1)=0, 即:(x+3)(x--2)=(x--3)(x+1).

当 x1时,3(x--1)0, 即:(x+3)(x--2)(x--3)(x+1)。

网络型安全漏洞扫描器的主要功能有() 多选?

ABCDE,这五个答案都是对的。

网络型安全漏洞扫描器的主要功能有五个,分别为:端口扫描检测、应用程序扫描检测、后门程序扫描检测、密码破解扫描检测、系统安全信息扫描检测。

题中选项刚好对应网络扫描仪的五个功能,所以五个答案都是正确的。

扩展资料:

网络扫描仪的工作原理:

网络扫描器是一种自动检测远程或本地主机安全脆弱点的程序,通过使用扫描器可以不留痕迹的发现远程服务器的各种TCP端口的分配及提供的服务和它们的软件版本,这就能让我们间接的或直观地了解到远程主机所存在的安全问题。

网络扫描器采用模拟攻击的形式对目标可能存在的已知安全漏洞进行逐项检查。目标可以是工作站、服务器、交换机、数据库应用等各种对象。

然后根据扫描结果向系统管理员提供周密可靠的安全性分析报告,为提高网络安全整体水平产生重要依据。

在网络安全体系的建设中,安全扫描工具花费低、效果好、见效快、与网络的运行相对对立、安装运行简单,可以大规模减少安全管理员的手工劳动,有利于保持全网安全政策的统一和稳定。

扫描器并不是一个直接的攻击网络漏洞的程序,它仅仅能帮助我们发现目标机的某些存在的弱点。一个好的扫描器能对它得到的数据进行分析,帮助我们查找目标主机的漏洞。但它不会提供进入一个系统的详细步骤。

0条大神的评论

发表评论