主动信息收集-端口扫描-Kali Linux社区-电脑端-X黑手网
雨云服务器助你轻松搭建内网穿透,解决无公网IP问题。-X黑手网
雨云服务器助你轻松搭建内网穿透,解决无公网IP问题。-X黑手网
雨云服务器助你轻松搭建内网穿透,解决无公网IP问题。-X黑手网

主动信息收集-端口扫描

端口扫描

UDP端口扫描

  • 假设ICMP  port-unreachable响应代表端口关闭

    • 目标系统不响应ICMP port-unreachable时,可能产生误判

  • 完整的UDP应用请求

    • 准确性高

    • 耗时巨大

通过scapy演示:

  • scapy UDP scan

    • 端口关闭:ICMP port-unreachable

    • 端口开放:没有回报

    • 了解每一种基于UDP的应用层包接口更好

    • 与三层相同的技术

    • 误判

这个演示在《主动信息收集-四层发现》里面演示过,这里不做演示。看我之前的文章即可!

主动信息收集-四层发现 – X黑手网-Kali Linux论坛-电脑端-X黑手网 (x10001.com)

使用nmap演示:

nmap -sU 180.215.224.194 #扫描UDP端口

 

image

当然,也可以加全端口,但是扫描非常缓慢:

 

image

TCP端口扫描

  • 基于连接的协议

  • 三次握手

  • 隐蔽扫描

  • 僵尸扫描

  • 全连接扫描

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

隐蔽扫描—-syn

  • 不建立完整扫描

  • 应用日志不记录扫描行为—–隐蔽

僵尸扫描:

  • 极度隐蔽

  • 实施条件苛刻

  • 可伪造源地址

  • 选择僵尸机

    • 0(早期的操作系统)

    • 随机 (windows和Linux)

    • 闲置系统

    • 系统使用递增的IPID(就是通过这个来判断主机是否存活)

实例展示:

隐蔽端口扫描:

scapy:

a=sr1(IP(dst="180.215.224.194")/TCP(flags="S"),timeout=4,verbose=0)
 #含义不解释了,不明白的看我之前的文章

下方是回包,回了S+A包;

 

image

当然nmap也可以,上面已经演示过,这里不做再次演示;

nmap -sS 180.215.224.194 --open   #扫描TCP端口
#注意:也可以加-p后面跟端口或连续端口;也可以加-iL跟IP文

 

image

hping3

hping3 180.215.224.194 –scan 1-100 -S #–scan就是扫描端口,后面跟端口范围,-S是根据SYN扫描

 

image

hping3 -c 50 -S --spoof 114.114.114.114 -p ++1 185.30.35.7
#-spoof后面是跟伪装的地址  ++1意思是以此加1

 

image

 

image

全连接端口扫描:

scapy

  • Syn扫描不需要raw packets

  • 内核认为syn/ack是非法包,直接发送rst中断连接

  • 全连接扫描对scapy比较困难

通过iptables:

iptables -A OUTPUT -p tcp --tcp-flags RST RST -d 185.30.35.7 -j DROP
#添加一条防火墙规则

 

image

之后通过脚本去实现建立TCP全连接,脚本去百度搜索:

nmap

nmap -sT 180.215.224.194 -p1-100 #-sT代表全连接扫描,全连接速度较慢。默认是1000个常用端口

 

image

dmitry

dmitry -p 180.215.224.194

 

image

nc

nc -nv -w 1 -z 192.168.1.134 1-100

 

image

僵尸扫描:

系统的IPID必须是递增的:

scapy:

>>> i=IP()
>>> t=TCP()
>>> rz=(i/t)  #定义发送到僵尸机的函数
>>> rt=(i/t)  #定义至目标机的函数
>>> rz[IP].dst="192.168.0.125"    #这里填写僵尸机IP地址
>>> rz[TCP].dport=445   #这里填写僵尸机开放的端口
>>> rz[TCP].flags="SA"  #向僵尸机发送的包
>>> rt[IP].src="192.168.0.125"
>>> rt[IP].dst="180.215.224.194"
>>> rt[TCP].dport=22
>>> rt[TCP].flags="S"
>>> az1=sr1(rz)
>>> at2=sr1(rt,timeout=1)
>>> az2=sr1(rz)

如果端口是通的,那么查看返回包的IPID是递增的,如果端口是关闭的,则IPID只增加1;

nmap:

nmap -p445 192.168.1.113 --script=ipidseq.nse
#探测僵尸机器

有如下显示证明可以当作僵尸机;

 

image

nmap 目标机器  -sI  僵尸机IP  -Pn  -p 0-100

 

请登录后发表评论

    没有回复内容