windows端口扫描弱口令_windows端口扫描

hacker|
160

cmd扫描多个端口命令

1、cmd进行端口扫描,如果界面输入的地址没有被使用的,不支持windows跳线。

2、添加节点标签以K8scaler容器的形式添加Task。

3、Manager会自动创建,Manager每天自动添加节点。

如何测试某个端口通不通如何测试

测试端口通不通的四种方法:

1、使用telnet判断,telnet是windows标准服务,可以直接用,用telnet连接不存在的端口会提示连接被拒绝,则说明端口不通,连接存在的端口会提示Connected,则说明端口是通的;

2、使用ssh判断,ssh是linux的标准配置并且最常用,同样连接不存在的端口会提示连接被拒绝,说明端口不通,连接存在的端口会提示错误,说明端口是通的;

3、使用wget判断,wget是linux下的下载工具,需要先安装,连接不存在的端口会提示failed,说明端口不通,连接存在的端口会提示connected,说明端口是通的;

4、使用端口扫描工具,工具会自动检测并提示端口通不通。

那种扫描不能正确的判断windows系统的端口开放

1. 完全连接扫描

完全连接,利用TCP/IP协议的三次握手连接机制,使源主机和目的主机的某个端口建立一次完整的连接,如果建立成功,则表明该端口开放。否则表明该端口关闭。

2. 半连接扫描

半连接扫描是指在源主机和目标主机的三次握手连接过程中,只完成前两次握手,不建立异常完整的连接。

3. SYN扫描

首先向目标主机发送连接请求,当目标主机返回响应后,立即切断连接过程,并查看响应情况。

如果目标主机返回ACK信息,表示目标主机的该端口开发。如果目标主机返回RESET信息,表示该端口没有开放。

4. ID头信息扫描

首先知道一个概念,dumb主机:不太活跃的主机,类似于这个服务器上没有什么服务,被别人空置的主机。

首先由源主机A向dumb主机B发出连续的ping包,并查看数据包的ID头信息。每个顺序数据包的ID头会增加1。然后由源主机A假冒主机B的地址向目标的主机C的任意端口(1-65535)发送SYN数据包,这时,主机C向主机B发送的数据包有两种可能结果:

SYN | ACK表示改端口处于监听状态;

RST | ACK表示改端口处于非监听状态;

由后续ping包的响应信息的ID头信息可以看出,如果主机C的某个端口是开放的,则主机B返回A的数据包中,ID头的值不是递增1。如果主机C的端口是非开放的,则主机B返回A的数据包中,ID头的值递增1,非常规律。

5. 隐蔽扫描

隐蔽扫描是指能够成功的绕过IDS(intrusion detection system入侵检测系统)、防火墙和监视系统等安全机制,取得目标主机端口信息的一种扫描方式。

6. SYN | ACK扫描

由源主机向目标主机的某个端口直接发送SYN | ACK数据包,而不是先发SYN数据包。由于这种方式不发送SYN数据包,目标主机会认证这是一次错误的连接,从而会报错。

如果目标主机的该端口没有开放,则会发送RST信息。如果目标主机的该端口处于开放状态(listening),则不会返回任何信息,而是直接将这个数据包抛弃。

7. FIN扫描

源主机A向目标主机B发送FIN数据包,然后查看反馈信息,如果端口返回RESET(RST)信息,则说明该端口关闭。如果端口没有返回然后信息,则说明该端口开放。

8. ACK扫描

由主机A向目标主机B发送FIN数据包,查看反馈数据包的TTL值和WIN值。开放端口所返回的数据包的TTL值小于64,关闭端口的返回值大于64。开放端口的返回值大于64.开放端口返回的WIN值大于0,关闭端口的返回值一般等于0。

9. NULL扫描

将源主机发送的数据包中的ACK、FIN、RST、SYN、URG、PSH等标志位全部置空。如果目标主机没有返回任何信息,则表明该端口是开放的。如果返回RST信息,则表明该端口是关闭的。

10. XMAS扫描

XMAS扫描的原理和NULL相同,只是将要发送的数据包中的ACK、FIN、RST、SYN、URG、PSH等标志位全部设置为1。如果目标主机没有返回任何信息,则表明该端口是开放的,如果返回RST信息,则表明该端口关闭。

渗透测试之端口扫描

端口扫描:端口对应网络服务及应用端程序

服务端程序的漏洞通过端口攻入

发现开放的端口

更具体的攻击面

UDP端口扫描:

如果收到ICMP端口不可达,表示端口关闭

如果没有收到回包,则证明端口是开放的

和三层扫描IP刚好相反

Scapy端口开发扫描

命令:sr1(IP(dst="192.168.45.129")/UDP(dport=53),timeout=1,verbose=1)

nmap -sU 192.168.45.129

TCP扫描:基于连接的协议

三次握手:基于正常的三次握手发现目标是否在线

隐蔽扫描:发送不完整的数据包,不建立完整的连接,如ACK包,SYN包,不会在应用层访问,

僵尸扫描:不和目标系统产生交互,极为隐蔽

全连接扫描:建立完整的三次握手

所有的TCP扫描方式都是基于三次握手的变化来判断目标系统端口状态

隐蔽扫描:发送SYN数据包,如果收到对方发来的ACK数据包,证明其在线,不与其建立完整的三次握手连接,在应用层日志内不记录扫描行为,十分隐蔽,网络层审计会被发现迹象

僵尸扫描:是一种极其隐蔽的扫描方式,实施条件苛刻,对于扫描发起方和被扫描方之间,必须是需要实现地址伪造,必须是僵尸机(指的是闲置系统,并且系统使用递增的IPID)早期的win xp,win 2000都是递增的IPID,如今的LINUX,WINDOWS都是随机产生的IPID

1,扫描者向僵尸机发送SYN+ACY,僵尸机判断未进行三次握手,所以返回RST包,在RST数据包内有一个IPID,值记为X,那么扫描者就会知道被扫描者的IPID

2,扫描者向目标服务器发送SYN数据包,并且伪装源地址为僵尸机,如果目标服务器端口开放,那么就会向僵尸机发送SYN+ACK数据包,那么僵尸机也会发送RST数据包,那么其IPID就是X+1(因为僵尸机足够空闲,这个就为其收到的第二个数据包)

3,扫描者再向僵尸机发送SYN+ACK,那么僵尸机再次发送RST数据包,IPID为X+2,如果扫描者收到僵尸机的IPID为X+2,那么就可以判断目标服务器端口开放

使用scapy发送数据包:首先开启三台虚拟机,

kali虚拟机:192.168.45.128

Linux虚拟机:192.168.45.129

windows虚拟机:192.168.45.132

发送SYN数据包:

通过抓包可以查看kali给linux发送syn数据包

linux虚拟机返回Kali虚拟机SYN+ACK数据包

kali系统并不知道使用者发送了SYN包,而其莫名其妙收到了SYN+ACK数据包,便会发RST包断开连接

也可以使用下列该命令查看收到的数据包的信息,收到对方相应的SYN+ACK数据包,scapy默认从本机的80端口往目标系统的20号端口发送,当然也可以修改

如果向目标系统发送一个 随机端口:

通过抓包的获得:1,kali向linux发送SYN数据包,目标端口23456,

2,Linux系统由自己的23456端口向kali系统的20号端口返回RST+ACK数据包,表示系统端口未开放会话结束

使用python脚本去进行scapy扫描

nmap做隐蔽端口扫描:

nmap -sS  192.168.45.129 -p 80,21,110,443 #扫描固定的端口

nmap -sS 192.168.45.129 -p 1-65535 --open  #扫描该IP地址下1-65535端口扫描,并只显示开放的端口

nmap -sS 192.168.45.129 -p --open  #参数--open表示只显示开放的端口

nmap -sS -iL iplist.txt -p 80

由抓包可知,nmap默认使用-sS扫描,发送SYN数据包,即nmap=nmap  -sS

hping3做隐蔽端口扫描:

hping3 192.168.45.129 --scan 80 -S  #参数--scan后面接单个端口或者多个端口.-S表示进行SYN扫描

hping3 192.168.45.129 --scan 80,21,25,443 -S

hping3 192.168.45.129 --scan 1-65535 -S

由抓包可得:

hping3 -c 100  -S  --spoof 192.168.45.200 -p ++1 192.168.45.129

参数-c表示发送数据包的数量

参数-S表示发送SYN数据包

--spoof:伪造源地址,后面接伪造的地址,

参数-p表示扫描的端口,++1表示每次端口号加1,那么就是发送SYN从端口1到端口100

最后面跟的是目标IP

通过抓包可以得知地址已伪造,但对于linux系统(192.168.45.129)来说,它收到了192.168.45.200的SYN数据包,那么就会给192.168.45.200回复SYN+ACK数据包,但该地址却是kali伪造的地址,那么要查看目标系统哪些端口开放,必须登陆地址为kali伪造的地址即(192.168.45.200)进行抓包

hping3和nmap扫描端口的区别:1,hping3结果清晰明了

  2,nmap首先对IP进行DNS反向解析,如果没成功,那么便会对其端口发送数据包,默认发送SYN数据包

hping3直接向目标系统的端口发送SYN数据包,并不进行DNS反向解析

全连接端口扫描:如果单独发送SYN数据包被被过滤,那么就使用全连接端口扫描,与目标建立三次握手连接,结果是最准确的,但容易被入侵检测系统发现

response=sr1(IP(dst="192.168.45.129")/TCP(dport=80,flags="S"))

reply=sr1(IP(dst="192.168.45.129")/TCP(dport=80,flags="A",ack=(response[TCP].seq+1)))

抓包情况:首先kali向Linux发送SYN,Linux回复SYN+ACK给kali,但kali的系统内核不清楚kali曾给linux发送给SYN数据包,那么kali内核莫名其妙收到SYN+ACK包,那么便会返回RST请求断开数据包给Linux,三次握手中断,如今kali再给Linux发ACK确认数据包,Linux莫名其妙收到了ACK数据包,当然也会返回RST请求断开数据包,具体抓包如下:

那么只要kali内核在收到SYN+ACK数据包之后,不发RST数据包,那么就可以建立完整的TCP三次握手,判断目标主机端口是否开放

因为iptables存在于Linux内核中,通过iptables禁用内核发送RST数据包,那么就可以实现

使用nmap进行全连接端口扫描:(如果不指定端口,那么nmap默认会扫描1000个常用的端口,并不是1-1000号端口)

使用dmitry进行全连接端口扫描:

dmitry:功能简单,但功能简便

默认扫描150个最常用的端口

dmitry -p 192.168.45.129  #参数-p表示执行TCP端口扫描

dmitry -p 192.168.45.129 -o output  #参数-o表示把结果保存到一个文本文档中去

使用nc进行全连接端口扫描:

nc -nv -w 1 -z 192.168.45.129 1-100:      1-100表示扫描1-100号端口

参数-n表示不对Ip地址进行域名解析,只把其当IP来处理

参数-v表示显示详细信息

参数-w表示超时时间

-z表示打开用于扫描的模式

查看本主机开放的端口

分类: 电脑/网络 互联网

问题描述:

怎么查看本主机开放的端口?

解析:

关于端口以及如何查看端口

端口的最简单介绍以及说明怎样查看自己的端口

按对应的协议类型,端口有两种:TCP端口和UDP端口。由于TCP和UDP两个协议是独立的,因此各自的端口号也相互独立,比如TCP有235端口,UDP也可以有235端口,两者并不冲突。

端口号也不是随意使用的,而是按照一定的规定进行分配。端口的分类标准有好几种,这里不做详细讲解,只介绍一下周知端口和动态端口。

周知端口(Well Known Ports)

周知端口是众所周知的端口号,范围从0到1023,其中80端口分配给WWW服务,21端口分配给FTP服务等。我们在IE的地址栏里输入一个网址的时候(例如:123)是不必指定端口号的,因为在默认情况下WWW服务的端口号是"80"。

网络服务是可以使用其他端口号的,如果不是默认的端口号则应该在地址栏上指定端口号,方法是在地址后面加上冒号":"(半角),再加上端口号。比如使用"8080"作为WWW服务的端口,则需要在地址栏里输入"123:8080"。

但是有些系统协议使用固定的端口号,它是不能被改变的,比如139端口专门用于NetBIOS与TCP/IP之间的通信,不能手动改变。

动态端口(Dynamic Ports)

动态端口的范围是从1024到65535。之所以称为动态端口,是因为它一般不固定分配某种服务,而是动态分配。动态分配是指当一个系统进程或应用程序进程需要网络通信时,它向主机申请一个端口,主机从可用的端口号中分配一个供它使用。当这个进程关闭时,同时也就释放了所占用的端口号。

怎样查看端口

有两种方式:一种是利用系统内置的命令,一种是利用第三方端口扫描软件。

1.用"stat -an"查看端口状态

在Windows 2000/XP中,可以在命令提示符下使用"stat -an"查看系统端口状态,可以列出系统正在开放的端口号及其状态。

2.用第三方端口扫描软件

第三方端口扫描软件有许多,界面虽然千差万别,但是功能却是类似的。使用fport 就可以达到目的。它可以把你正在使用的软件端口和相应软件现实出来。FPort可以把本机开放的TCP/UDP端口同应用程序关联起来,这和使用"stat-an"命令产生的效果类似,但是该软件还可以把端口和运行着的进程关联起来,并可以显示进程PID、名称和路径。该软件可以用于快速识别未知的开放端口和与之关联的应用程序。下面给出此软件2.0版本。

附件 Fport.zip:blog.blogchina/upload/2005-02-13/20050213015455948372.zip

IP查看

开始-运行 输入ipconfig (2000/xp) winipcfg(95、98)

0条大神的评论

发表评论