渗透测试之端口探测实验


实验目的

  • 了解端口、服务的基本概念
  • 熟悉手工探测方式netstat命令的使用
  • 掌握扫描工具nmap的原理及使用

一、实验原理

1.1 端口

在网络技术中,端口有多种含义。集线器、交换机、路由器的端口指的是连接其他网络设备的接口,如RJ-45端口、Serial端口等。我们所关注的端口不是指物理意义上的端口,而是特指TCP/IP协议中的端口,是逻辑意义上的端口。一个IP地址的端口可以有65536(2^16)个之多。端口是通过端口号来标记的,端口号只有整数,范围是从0到65536。(可以这样理解端口:你的电脑和别人的电脑进行通信,你们通信的内容通过计算机端口进出),端口分为如下三类:

  • 公认端口(WellKnownPorts):端口号0到1023,它们紧密绑定于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:各个端口代表的服务
  • 注册端口(RegisteredPorts):端口号1024到49151.它们松散地绑定于一些服务,也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它的目的。例如:许多系统处理动态端口从1024左右开始;
  • 动态/私有端口(Dynamic/PrivatePorts):端口号49152到65535。理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。

1.2 服务

服务是指执行指定系统功能的程序、例程或进程,以便支持其他程序,尤其是低层(接近硬件)程序。服务是一种应用程序类型,它在后台运行。服务应用程序通常可以在本地和通过网络为用户提供一些功能,例如客户端/服务器应用程序、Web服务器、数据库服务器以及其他基于服务器的应用程序。典型的网络服务有:DHCP、DNS、FTP、Telnet、WINS、SMTP等。DHCP的全名是“Dynamic Host Configuration Protocol”即动态主机配置协议。服务分为如下两类:

  • 面向连接服务(Connection-Oriented)。面向连接服务要经过三个阶段:数据传输前,先建立连接,连接建立后再传输数据,数据传送完后,释放连接。面向连接服务可确保数据传送的次序和传输的可靠性。
  • 无连接服务(Connectionless)。无连接服务的特点是:无连接服务只有传输数据阶段,消除了除数据通信外的其它开销。只要发送实体是活跃的,无须接收实体也是活跃的。它的优点是灵活方便、迅速,特别适合于传送少量零星的报文。但无连接服务不能防止报文的丢失、重复或失序。

类似tcp连接和udp连接

二、实验环境

2.1 操作机器

  • 操作机:Linux_Kali
  • 目标机:Linux_Ubuntu
  • 目标机用户密码:root,123456

2.2 实验工具

  1. Nmap
    Nmap使用教程
    netstat使用教程

三、实验步骤

1. 使用netstat手动探测指定服务

netstat -anlp:命令查看本机开放的端口。查看结果分为四列,协议,本地地址,外部地址,状态。
在这里插入图片描述1. 协议:表示连接所使用的协议名称(TCP 或 UDP)。

  1. 本地地址:代表本地计算机的 IP 地址和正在使用的端口号。如果不指定 -anlp 参数,就显示与 IP 地址和端口的名称对应的本地计算机名称。如果端口尚未建立,端口以星号 (*) 显示。
    在这里插入图片描述

127.0.0.1是本地回环地址,0.0.0.0是不能被ping通的。在服务器中,0.0.0.0并不是一个真实的的IP地址,它表示本机中所有的IPV4地址。监听0.0.0.0的端口,就是监听本机中所有IP的端口。(0.0.0.0不要把这个地址当作ip地址,看后面显示的端口号就行了

  1. 外部地址:代表该连接的远程计算机的 IP 地址和端口号码。如果不指定 -anlp 参数,就显示与 IP 地址和端口对应的名称。如果端口尚未建立,端口以星号 (*) 显示。

  2. 状态:表明 TCP 连接的状态。
    在这里插入图片描述

2. 使用namp工具进行端口扫描

在这里插入图片描述

按照正常情况我先进行端口扫描发现端口开放情况:nmap -sP -Pn 192.168.0.246,然后再使用ssh 192.168.0.246进行远程连接

  • sP:探测端口
  • sV:探测服务/版本信息
  • Pn:将所有指定的主机视作已开启,跳过主机发现的过程。

2. 使用ssh命令

  1. 选定两台Linux机器,一般来说Linux不开发22号端口,所以使用如下命令开发和关闭22号端口:

开22号端口:iptables -A INPUT -ptcp --dport 22-j ACCEPT

关22号端口:iptables -A OUTPUT -p tcp --dport 22-j DROP

在这里插入图片描述

然后ssh远程连接
在这里插入图片描述


总结

netstat命令查看本机端口的开放情况,nmap查看目标机器的端口开放情况,Nmap使用教程

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安全天天学

你的鼓励是对我最大的鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值