渗透测试技术----端口扫描(一)--全连接扫描、半连接扫描

news/2024/5/17 16:46:08 标签: 端口扫描, 全连接扫描, 半连接扫描, TCP, UDP

一、端口扫描简介

1.二三四层发现的目的只是为了准确发现所有存活的主机IP,确定攻击目标。端口扫描即发现开放端口,发现攻击点。一个端口就是一个潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息。
2.进行端口扫描的原因
(1):端口对应网络服务及应用端程序
(2):服务端程序的漏洞通过端口攻入。
(3):通过发现的端口来放大攻击面

UDP_7">二、UDP端口扫描

  • 原理:因为UDP是面向无连接的传输协议,尽最大努力传输。因此使用UDP来探测开启的端口的步骤如下:
    (1):先向目标主机发送一个数据包并且目的端口是一个没有开启的端口(选择一个不常用并且尽可能大的端口),如果收到数据包并且表明端口不可达,则表明主机存活。
    (2):然后向目标主机发送需要测试的端口,如果收到数据包且表明端口不可达,则端口关闭;如果没有收到数据包,则端口开启
  • 优点:速度快
  • 缺点:准确性差

1.scapy

(1):探测主机是否存活
sr1(IP(dst=‘192.168.223.10’)/UDP(dport=8786),timeout=5,verbose=0).display()

  • IP(dst=‘192.168.223.10’):设置目标IP
  • UDP(dport=8786):设置目标端口
  • timeout=5:设置超时时间
  • verbose=0:verbose=0不显示详细信息,verbose=1显示详细信息
    在这里插入图片描述

(2):探测端口是否开启
在这里插入图片描述

TCP_26">三、TCP端口扫描

TCP端口扫描可以分为两类:全连接扫描半连接扫描
1.全连接扫描

  • 原理:扫描者向目标主机发送一个SYN+SYN/ACK数据包,目标主机会回复一个ACK数据包。无法利用scapy模块进行全连接扫描,因为如果同时向目标主机发送一个SYN+SYN/ACK数据包,目标主机会认为这是一个错误的数据包,会直接回复一个RST。如果向目标主机发送一个SYN数据包,目标主机会回复一个SYN/ACK数据包,但是此时并没有再向目标主机发送ACK数据包,因此,全连接无法建立。(但是可以使用nmap中的-sT参数来进行全连接扫描)
  • 优点:探测结果准确
  • 缺点:会被目标主机的日志记录

(1):nmap
namp -sT IP地址
-sT:进行全连接扫描
可以使用-p来指定端口号或端口范围,不指定默认扫描前1000个端口
在这里插入图片描述

(2):dmitry
dmitry使用全连接进行扫描,默认扫描最常用的150个端口
dmitry -p IP地址
在这里插入图片描述

(3):nc
nc -nv -w 超时时间 -z IP地址 端口号
-n表示跟数字内容,-v表示不做域名解析 -w表示超时时间 -z表示使用扫描模式
在这里插入图片描述

2.半连接扫描(也称为隐蔽扫描)

  • 原理:扫描者向目标主机发送一个SYN,如果目标主机回复了一个SYN/ACK数据包,那么说明主机存活,如果收到一个RST/ACK数据包,那么主机没有存活。因为扫描者只向目标主机发送了SYN,并没有和目标主机进行连接,因此称为半连接。
  • 优点:不会在目标主机的日志上有所记录
  • 缺点:扫描结果不是很准确

(1):scapy
在这里插入图片描述

(2):nmap
nmap -sS IP地址
-sS:进程半连接扫描
可以使用-p来指定端口号或端口范围,不指定默认扫描前1000个端口
在这里插入图片描述

hping3
hping3 IP地址 --scan 目标端口 -S
在这里插入图片描述


http://www.niftyadmin.cn/n/1805576.html

相关文章

20155308《网络对抗》Exp8 Web基础

20155308《网络对抗》Exp8 Web基础 实践原理与实践说明 本实践的具体要求有: (1).Web前端HTML 能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。 (2).Web前端javascipt 理解JavaScript的基本功能&…

Ubuntu安装php7.0环境

1.下载必须组件 sudo apt-get install libxml2-dev sudo apt-get install curl 参考文献:http://php.net/manual/zh/install.unix.nginx.php php下载地址:http://php.net/releases/ wget http://am1.php.net/distributions/php-7.0.0.tar.gz 2.开始配置安…

OWASP top 10漏洞原理及防御(2017版官方)

文章目录一、OWASP top 10简介二、OWASP top 10详解A1:2017-注入A2:2017-失效的身份认证A3:2017-敏感数据泄露A4:2017-XML外部实体(XXE)A5:2017-失效的访问控制A6:2017-安全配置错误A7:2017-跨站脚本(XSS)A8:2017-不安全的反序列化A9:2017-使用含有已知漏洞的组件A10:2017-不足…

高并发之config

对于config的读取,再熟悉不过了,通常的写法如下: //1. read from cache string configvalue GetFromCache(configKey); if(!configValue.IsNullOrEmpty()){return configValue; }//2. read from db configValue GetFromDb(configKey); if(c…

web容器、中间件以及web服务器的区别

一、web容器 1.web容器的介绍 web容器是一种服务程序,在服务器一个端口就有一个提供相应服务的程序,而这个程序就是处理从客户端发出的请求。实际上,Web容器是一种服务程序,给处于其中的应用程序组件提供环境,使其直接…

渗透测试技术----常见web漏洞--命令执行原理及防御

一、命令执行漏洞介绍 1.命令执行漏洞简介 命令执行漏洞时指服务器没有对执行的命令进行过滤,用户可以随意执行系统命令,命令执行漏洞属于高危漏洞之一,也属于代码执行的范围内。 2.命令执行漏洞的原理 应用程序有时需要调用一些执行系统命令…

渗透测试技术----常见web漏洞--暴力破解原理及防御

一、暴力破解漏洞介绍 1.暴力破解简介 暴力破解的产生原因是因为服务器端没有做限制,导致攻击者可以通过暴力破解的手段破解用户所需要的信息,如用户名、密码、验证码等。暴力破解需要有庞大的字典,暴力破解的关键在于字典的大小。 2.暴力破解…

Spring AOP的基石--Java动态代理

一、代理模式简介以及静态代理动态代理区别 1. 关系图 静态代理:可以看出有一接口Sourceable,两个实现类Source,Proxy,Client调用的Proxy。理解一下就是Client通过Proxy来调用这个method,而不是直接通过Source来调用。…