ip端口扫描代码_ip和端口扫描

hacker|
163

什么是IP地址的端口

1 tcpmux TCP Port Service Multiplexer 传输控制协议端口服务多路开关选择器

2 compressnet Management Utility compressnet 管理实用程序

3 compressnet Compression Process 压缩进程

5 rje Remote Job Entry 远程作业登录

7 echo Echo 回显

9 discard Discard 丢弃

11 systat Active Users 在线用户

13 daytime Daytime 时间

17 qotd Quote of the Day 每日引用

18 msp Message Send Protocol 消息发送协议

19 chargen Character Generator 字符发生器

20 ftp-data File Transfer [Default Data] 文件传输协议(默认数据口)

21 ftp File Transfer [Control] 文件传输协议(控制)

22 ssh SSH Remote Login Protocol SSH远程登录协议

23 telnet Telnet 终端仿真协议

24 ? any private mail system 预留给个人用邮件系统

25 *** tp Simple Mail Transfer 简单邮件发送协议

27 nsw-fe NSW User System FE NSW 用户系统现场工程师

29 msg-icp MSG ICP MSG ICP

31 msg-auth MSG Authentication MSG验证

33 dsp Display Support Protocol 显示支持协议

35 ? any private printer server 预留给个人打印机服务

37 time Time 时间

38 rap Route Access Protocol 路由访问协议

39 rlp Resource Location Protocol 资源定位协议

41 graphics Graphics 图形

42 nameserver WINS Host Name Server WINS 主机名服务

43 nicname Who Is "绰号" who is服务

44 mpm-flags MPM FLAGS Protocol MPM(消息处理模块)标志协议

45 mpm Message Processing Module [recv] 消息处理模块

46 mpm-snd MPM [default send] 消息处理模块(默认发送口)

47 ni-ftp NI FTP NI FTP

48 auditd Digital Audit Daemon 数码音频后台服务

49 tacacs Login Host Protocol (TACACS) TACACS登录主机协议

50 re-mail-ck Remote Mail Checking Protocol 远程邮件检查协议

51 la-maint IMP Logical Address Maintenance IMP(接口信息处理机)逻辑地址维护

52 xns-time XNS Time Protocol 施乐 *** 服务系统时间协议

53 domain Domain Name Server 域名服务器

54 xns-ch XNS Clearinghouse 施乐 *** 服务系统票据交换

55 isi-gl ISI Graphics Language ISI图形语言

56 xns-auth XNS Authentication 施乐 *** 服务系统验证

57 ? any private terminal access 预留个人用终端访问

58 xns-mail XNS Mail 施乐 *** 服务系统邮件

59 ? any private file service 预留个人文件服务

60 ? Unassigned 未定义

61 ni-mail NI MAIL NI邮件?

62 acas ACA Services 异步通

63 whois+ whois+ WHOIS+

64 covia Communications Integrator (CI) 通讯接口

65 tacacs-ds TACACS-Database Service TACACS数据库服务

66 sql*net Oracle SQL*NET Oracle SQL*NET

67 bootps Bootstrap Protocol Server 引导程序协议服务端

68 bootpc Bootstrap Protocol Client 引导程序协议客户端

69 tftp Trivial File Transfer 小型文件传输协议

70 gopher Gopher 信息检索协议

71 netrjs-1 Remote Job Service 远程作业服务

72 netrjs-2 Remote Job Service 远程作业服务

73 netrjs-3 Remote Job Service 远程作业服务

74 netrjs-4 Remote Job Service 远程作业服务

75 ? any private dial out service 预留给个人拨出服务

76 deos Distributed External Object Store 分布式外部对象存储

77 ? any private RJE service 预留给个人远程作业输入服务

78 vettcp vettcp 修正TCP?

79 finger Finger FINGER(查询远程主机在线用户等信息)

80 http World Wide Web HTTP 全球信息网超文本传输协议

81 hosts2-ns HOSTS2 Name Server HOST2名称服务

82 xfer XFER Utility 传输实用程序

83 mit-ml-dev MIT ML Device 模块化智能终端ML设备

84 ctf Common Trace Facility 公用追踪设备

85 mit-ml-dev MIT ML Device 模块化智能终端ML设备

86 mfcobol Micro Focus Cobol Micro Focus Cobol编程语言

87 ? any private terminal link 预留给个人终端连接

88 kerberos Kerberos Kerberros安全认证系统

89 su-mit-tg SU/MIT Telnet Gateway SU/MIT终端仿真网关

90 dnsix DNSIX Securit Attribute Token Map DNSIX 安全属性标记图

91 mit-dov MIT Dover Spooler MIT Dover假脱机

92 npp Network Printing Protocol *** 打印协议

93 dcp Device Control Protocol 设备控制协议

94 objcall Tivoli Object Dispatcher Tivoli对象调度

95 supdup SUPDUP

96 dixie DIXIE Protocol Specification DIXIE协议规范

97ft-rvfft Remote Virtural File Protocol 快速远程虚拟文件协议

98 tacnews TAC News TAC(东京大学自动计算机?)新闻协议

99 metagram Metagram Relay

101/tcp hostname NIC Host Name Server

102/tcp iso-tsap ISO-TSAP Class 0

103/tcp gppitnp Genesis Point-to-Point Trans Net

104/tcp acr-nema ACR-NEMA Digital Imag. Comm. 300

105/tcp cso CCSO name server protocol

105/tcp csnet-ns Mailbox Name Nameserver

106/tcp 3com-t *** ux 3COM-T *** UX

107/tcp rtelnet Remote Telnet Service

108/tcp snagas SNA Gateway Access Server

109/tcp pop2 Post Office Protocol - Version 2

110/tcp pop3 Post Office Protocol - Version 3

111/tcp sunrpc SUN Remote Procedure Call

112/tcp mcidas McIDAS Data Tran *** ission Protocol

113/tcp ident

114/tcp audionews Audio News Multicast

115/tcp sftp Simple File Transfer Protocol

116/tcp ansanotify ANSA REX Notify

117/tcp uucp-path UUCP Path Service

118/tcp sqlserv SQL Services

119/tcp nntp Network News Transfer Protocol

120/tcp cfdptkt CFDPTKT

121/tcp erpc Encore Expedited Remote Pro.Call

122/tcp *** akynet *** AKYNET

123/tcp ntp Network Time Protocol

124/tcp ansatrader ANSA REX Trader

125/tcp locus-map Locus PC-Interface Net Map Ser

126/tcp unitary Unisys Unitary Login

127/tcp locus-con Locus PC-Interface Conn Server

128/tcp gss-xlicen GSS X License Verification

129/tcp pwdgen Password Generator Protocol

130/tcp cisco-fna cisco FNATIVE

131/tcp cisco-tna cisco TNATIVE

132/tcp cisco-sys cisco SY *** AINT

133/tcp statsrv Statistics Service

134/tcp ingres-net INGRES-NET Service

135/tcp epmap DCE endpoint resolution

136/tcp profile PROFILE Naming System

137/tcp netbios-ns NETBIOS Name Service

138/tcp netbios-dgm NETBIOS Datagram Service

139/tcp netbios-ssn NETBIOS Session Service

140/tcp emfis-data EMFIS Data Service

141/tcp emfis-cntl EMFIS Control Service

142/tcp bl-idm Britton-Lee IDM

143/tcp imap Internet Message Access Protocol

144/tcp uma Universal Management Architecture

145/tcp uaac UAAC Protocol

146/tcp iso-tp0 ISO-IP0

147/tcp iso-ip ISO-IP

148/tcp jargon Jargon

149/tcp aed-512 AED 512 Emulation Service

150/tcp sql-net SQL-NET

151/tcp hems HEMS

152/tcp bftp Background File Transfer Program

153/tcp sgmp SGMP

154/tcp netsc-prod NETSC

155/tcp netsc-dev NETSC

156/tcp sqlsrv SQL Service

157/tcp knet-cmp KNET/VM Command/Message Protocol

158/tcp pcmail-srv PCMail Server

159/tcp nss-routing NSS-Routing

160/tcp sgmp-traps SGMP-TRAPS

161/tcp snmp SNMP

162/tcp snmptrap SNMPTRAP

163/tcp cmip-man CMIP/TCP Manager

164/tcp cmip-agent CMIP/TCP Agent

165/tcp xns-courier Xerox

166/tcp s-net Sirius Systems

167/tcp namp NAMP

168/tcp rsvd RSVD

169/tcp send SEND

170/tcp print-srv Network PostScript

171/tcp multiplex Network Innovations Multiplex

172/tcp cl/1 Network Innovations CL/1

173/tcp xyplex-mux Xyplex

174/tcp mailq MAILQ

175/tcp vmnet VMNET

176/tcp genrad-mux GENRAD-MUX

177/tcp xdmcp X Display Manager Control Protocol

178/tcp nextstep NextStep Window Server

179/tcp bgp Border Gateway Protocol

180/tcp ris Intergraph

181/tcp unify Unify

182/tcp audit Unisys Audit SITP

183/tcp ocbinder OCBinder

184/tcp ocserver OCServer

185/tcp remote-kis Remote-KIS

186/tcp kis KIS Protocol

187/tcp aci Application Communication Interface

188/tcp mumps Plus Five磗 MUMPS

189/tcp qft Queued File Transport

190/tcp gacp Gateway Access Control Protocol

191/tcp prospero Prospero Directory Service

192/tcp osu-nms OSU Network Monitoring System

193/tcp srmp Spider Remote Monitoring Protocol

194/tcp irc Internet Relay Chat Protocol

195/tcp dn6-nlm-aud DNSIX Network Level Module Audit

196/tcp dn6- *** m-red DNSIX Session Mgt Module Audit Redir

197/tcp dls Directory Location Service

198/tcp dls-mon Directory Location Service Monitor

199/tcp *** ux *** UX

200/tcp src IBM System Resource Controller

201/tcp at-rtmp AppleTalk Routing Maintenance

202/tcp at-nbp AppleTalk Name Binding

203/tcp at-3 AppleTalk Unused

204/tcp at-echo AppleTalk Echo

205/tcp at-5 AppleTalk Unused

206/tcp at-zis AppleTalk Zone Information

207/tcp at-7 AppleTalk Unused

208/tcp at-8 AppleTalk Unused

209/tcp qmtp The Quick Mail Transfer Protocol

210/tcp z39.50 ANSI Z39.50

211/tcp 914c/g Texas Instruments 914C/G Terminal

212/tcp anet ATEXSSTR

214/tcp vmpwscs VM PWSCS

215/tcp softpc Insignia Solutions

216/tcp CAIlic Computer Associates Int磍 License Server

217/tcp dbase dBASE Unix

218/tcp mpp Netix Message Posting Protocol

219/tcp uarps Unisys ARPs

220/tcp imap3 Interactive Mail Access Protocol v3

221/tcp fln-spx Berkeley rlogind with SPX auth

222/tcp rsh-spx Berkeley rshd with SPX auth

223/tcp cdc Certificate Distribution Center

242/tcp direct Direct

243/tcp sur-meas Survey Measurement

244/tcp dayna Dayna

245/tcp link LINK

246/tcp dsp3270 Display Systems Protocol

247/tcp subntbcst_tftp SUBNTBCST_TFTP

248/tcp bhfhs bhfhs

256/tcp rap RAP

257/tcp set Secure Electronic Transaction

258/tcp yak-chat Yak Winsock Personal Chat

259/tcp esro-gen Efficient Short Remote Operations

260/tcp openport Openport

263/tcp hdap HDAP

264/tcp bgmp BGMP

280/tcp http-mgmt http-mgmt

309/tcp entrusttime EntrustTime

310/tcp bhmds bhmds

312/tcp vslmp VSLMP

315/tcp dpsi DPSI

316/tcp decauth decAuth

317/tcp zannet Zannet

321/tcp pip PIP

344/tcp pdap Prospero Data Access Protocol

345/tcp pawserv Perf Analysis Workbench

346/tcp zserv Zebra server

347/tcp fatserv Fatmen Server

348/tcp csi-sgwp Cabletron Management Protocol

349/tcp mftp mftp

351/tcp matip-type-b MATIP Type B

351/tcp bhoetty bhoetty (added 5/21/97)

353/tcp ndsauth NDSAUTH

354/tcp bh611 bh611

357/tcp bhevent bhevent

362/tcp srssend SRS Send

365/tcp dtk DTK

366/tcp odmr ODMR

368/tcp qbikgdp QbikGDP

371/tcp clearcase Clearcase

372/tcp ulistproc ListProcessor

373/tcp legent-1 Legent Corporation

374/tcp legent-2

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数据包,而两个机器分别以它们最快的方式回应这些数据包。另一种东西是由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 *** tp 攻击者(spammer)寻找 *** TP服务器是为了传递他们的spam。入侵者的帐户总被关闭,他们需要拨号连接到高带宽的e-mail服务器上,将简单的信息传递到不同的地址。 *** TP服务器(尤其是sendmail)是进入系统的最常用 *** 之一,因为它们必须完整的暴露于Internet且邮件的路由是复杂的(暴露+复杂=弱点)。

53 DNS Hacker或crackers可能是试图进行区域传递(TCP),欺骗DNS(UDP)或隐藏其它通讯。因此防火墙常常过滤或记录53端口。需要注意的是你常会看到53端口做为UDP源端口。不稳定的防火墙通常允许这种通讯并假设这是对DNS查询的回复。Hacker常使用这种 *** 穿透防火墙。

6768 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.c *** d, rpc.ttybd, amd等。入侵者发现了允许的RPC服务将转向提供服务的特定端口测试漏洞。记住一定要记录线路中的daemon, IDS, 或sniffer,你可以发现入侵者正使用什么程序访问以便发现到底发生了什么。

113 Ident auth 这是一个许多机器上运行的协议,用于鉴别TCP连接的用户。使用标准的这种服务可以获得许多机器的信息(会被Hacker利用)。但是它可作为许多服务的记录器,尤其是FTP, POP, IMAP, *** TP和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) 这是防火墙管理员最常见的信息。

139 NetBIOS File and Print Sharing 通过这个端口进入的连接试图获得NetBIOS/ *** B服务。这个协议被用于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查

毕业论文 基于TCP/IP三次握手的端口扫描技术

基于TCP/IP 端口扫描技术

[摘要] 本文讲述了TCP联接的建立过程,以及介绍了一些经典的扫描器以及所谓的SYN扫描器的使用,以及隐藏攻击源的技术,更好介绍了另外一些扫描技术。考虑了一些不是基于TCP端口和主要用来进行安全扫描的扫描工具(例如SATAN)。另外分析了使用扫描器的栈指纹。栈指纹通过检测主机TCP并将应答跟已知操作系统TCP/IP协议栈应答相比较,解决了识别操作系统的问题。 关键字:

TCP/IP,UDP,三阶段握手,SYN扫描,FIN扫描,秘密扫描,间接扫描,诱骗扫描,指纹,协作扫描。

--------------------------------------------------------------------------------

正文:

端口扫描技术

前言

之一部分,我们讲述TCP连接的建立过程(通常称作三阶段握手),然后讨论与扫描程序有关的一些实现细节。

然后,简单介绍一下经典的扫描器(全连接)以及所谓的SYN(半连接)扫描器。

第三部分主要讨论间接扫描和秘密扫描,还有隐藏攻击源的技术。

秘密扫描基于FIN段的使用。在大多数实现中,关闭的端口对一个FIN 段返回一个RST,但是打开的端口通常丢弃这个段,不作任何回答。间接扫描,就像它的名字,是用一个欺骗主机来帮助实施,这台主机通常不是自愿的。

第四部分介绍了一种与应用协议有关扫描。这些扫描器通常利用协议实现中的一些缺陷或者错误。认证扫描(ident scanning)也被成为 *** 扫描(proxy scanning)。

最后一部分,介绍了另外一些扫描技术。考虑了一些不是基于TCP端口和主要用来进行安全扫描的扫描工具(例如SATAN)。另外分析了使用扫描器的栈指纹。栈指纹通过检测主机TCP并将应答跟已知操作系统TCP/IP协议栈应答相比较,解决了识别操作系统的问题。

一: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服务器在_blank"防火墙后面的时候

五:其它扫描 ***

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选项

一段IP地址端口的扫描用python怎么写代码阿

import socket

def scan(host, start_port=1, end_port=65535):

    result = []

    while start_port = end_port:

        # print 'scanning %d' % start_port

        sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

        try:

            sk.connect((host, start_port))

        except Exception, e:

            pass # print e

        else:

            result.append(str(start_port))

    sk.close()

        start_port = start_port + 1

    print 'opened ports: \n%s' %  '\n'.join(result)

scan('localhost', 20, 25)

怎么查找打印机的ip地址和端口名称?

查找打印机的ip地址和端口名称的 *** 如下:

电脑:联想电脑天逸510S。

系统:Windows10。

软件:本地设置。

1、在电脑桌面左下方点击开始,点击设置。

2、在设置页面,点击设备。

3、点击打印机和扫描仪。

4、进入设备和打印机页面,右击需要查看的打印机,在菜单中选择打印机属性。

5、进入打印机属性页面,点击配置端口。

6、在端口名下,查看打印机IP地址。

怎么看一个网站的IP和端口

查看 *** :

1、下载“局域网查看工具”软件,绿色软件,不用安装。

2、点击软件打开窗口,在菜单栏中点击“工具”项,选中下拉菜单中的“查看端口”见下图。

3、在“搜索工作组”下面的文本框内输入本电脑的 *** 计算机标识名称。可打开“系统属性”窗口查看如下图。红圈内的即计算机名。

4、输入后,点击“刷新”按钮,右边列表中本机IP、外网IP、内外端口、工作状态一目了然。

5、图中显示的详尽数据,在Windows中只有用命令行方式查看。

怎样快速扫描IP 【开放8080端口】的,除了S扫描器还有什么工具吗?

superscan 很好用 很专业的扫描器

快速扫描 准确率其实不高,不过 superscan虽然速度上 属于中等,不过精准度绝对无敌.

0条大神的评论

发表评论