第三章 网络主机扫描

news2024/11/20 11:52:25

本章是进入渗透测试工作流程的第一步。无论你是高级还是新手,本章都将帮助你成功地进行网络扫描。在开始扫描网络之前,我们将介绍您需要了解的基础知识。之后,我们将深入研究如何扫描网络目标。本章涵盖以下内容:

一、网络基础

二、识别活主机

三、扫描服务、

四、枚举

五、操作系统指纹

六、nmap脚本引擎

七、扫描子域


网络基础

在开始扫描和识别主机之前,首先了解组网的基础知识。例如,为什么我们使用10.0.0.1/16?或者什么是TCP握手?让我们开始!学习以下的内容

网络协议

下面是成功扫描网络需要了解的两个主要网络协议。

传输控制协议(TCP)是网络基础设施中使用的主要协议。每个应用服务器(HTTP、FTP、SMTP等)都使用此协议来正确连接客户端与服务器。

TCP称为使用三向握手的概念来建立网络连接。首先,要启动 TCP 会话,客户端向服务器发送 SYN 数据包(同步)。服务器接收 SYN 并使用同步/确认(SYN/ACK)回复客户端数据包。最后,客户端通过向服务器发送数据包ACK数据包来完成会话。例如,图3.1显示了Bob先生上网并使用浏览器(客户端)通过访问www进行Google(Web服务器)搜索的场景。

了解 TCP 握手等概念非常重要。像 Nmap 这样的网络扫描仪使用它来识别活动主机、开放端口(您将在接下来的部分中了解更多相关信息)。像 Wireshark 这样的网络嗅探器是了解计算机网络如何工作的好工具。为什么?因为网络感知探器会监听通过中断的所有中断和传出流量。要启动 Wireshark,只需在终端窗口中输入其名称 ($wireshark)。 ,您选择网络接口;它要么是需要连接,要么是WiFi WLAN。在本例中,我们使用etho,然后单击屏幕左上角的“开始”按钮

UDP

用户数据报协议 (UDP) 是一种无连接的网络连接。

与 TCP 连接正好,UDP 客户端和服务器不能保证数据包传输,

因此 UDP 中不存在三向握手。使用 UDP 的应用程序示例包括音频和视频流 - 您正在寻找此类连接的性能。在前面,显示了最流行的应用程序及其相应的协议(TCP 或 UDP)。

其他网络协议

TCP和UPD是最流行的网络协议,但也存在其他类型的协议。在本节中,我们将介绍其余的内容。

ICMP

ICMP (Internet Control Message Protocol)协议用于测试连通性。Ping工具使用该协议来测试主机网络是否启动并运行(默认情况下traceroute也使用它)。下面以ping 10.0.20.1为例,检查Wireshark的ICMP连接情况。

ARP

ARP (Address Resolution Protocol)是一种将IPv4地址映射到MAC地址的机制。这个概念对于内部网络的工作是必不可少的。路由器通过IP地址(第3层)在互联网上相互连接,但是一旦数据包进入你的网络,那么ARP表将使用MAC地址(第2层)。你可以使用命令ARP -a来获取ARP表内的项目列表(保存在本地主机上):

arp -a

这些层指的是前面显示的OSI层。开放系统互连(OSI)将网络连接分成不同的层。

计算机网络的7层模型IP地址

互联网协议(IP)是网络的主要支柱之一,它使计算机能够相互通信。IP地址分为IPv4和IPv6两种版本。

IPv4

IPv4是32位的,但总是以十进制格式表示,如192.168.0.1,等于11000000.10101000.00000000.00000001。把它写成十进制比写成二进制更简单,对吧?IP地址分为公网IP地址和私网IP地址。公网IP地址用于internet,私网IP地址用于intranet。您的公共IP地址可能是由您的互联网服务提供商(ISP)自动提供给您的,除非您购买了静态公共IP地址。以下是私有IPv4地址范围:

子网和CIDR

子网的作用是将网络划分为更小的范围(网段)。子网将标识IP范围内的主机数量。例如,192.168.0.1可以有一个子网掩码255.255.255.0,这意味着我们可以请使用此IP范围内的254台主机。无类域间路由(CIDR)是为了简化子网掩码而创建的。如果我们以前面的示例为例,我们可以编写子网/24 (CIDR等效)而不是长子网。表3.2列出了可供参考的子网和子网掩码。

 IPv6

到目前为止,我们仍然大量使用IPv4来运行网络基础设施。自从世界上有一些尝试从IPv4到IPv6的变化,IPv4地址总有一天会用完。您至少需要了解IPv6在实践中是如何工作的。IPv6的格式是128位十六进制字符。下面是一个价值一万亿字的IPv6的例子:

oooofff0:0000:eeee: 000000000000000:fe77:03a我们将使用这个示例来了解IPv6格式是如何工作的。为了首先遵循IPv6的细节,我们需要删除前导零。

前:fff0:0000:eeee: 000000000000000:fe77:03a

后:fff0:0:eeee:0:0:0:fe77:3aa2。

压缩零序列(在我们的示例中,有三个零序列)并将它们替换为....

前: fff0:0:eeee:0:0:0:fe77:3a

后: fff0:0:eeee::fe77:3a

请注意,在IPv6中,一个0序列只能压缩一次。

端口号

端口号和IP地址就像兄弟姐妹一样。没有端口号,网络数据包将永远无法到达目的地。端口号就像一个公民地址。街道名称(IP地址)不足以获得某一属性;您将需要一个公民号码(端口号)有一个完整的地址。假设您正在使用浏览器访问www.google.com。您的数据包将需要web服务器主机的IP地址和端口号,

HTTPS的默认端口号是443。在同一台服务器上(具有相同的IP地址),谷歌可以托管其他服务,

例如FTP;然后数据包将使用端口21到达它。

网络扫描

现在您已经了解了网络的基本知识,是时候开始行动了。在接下来的部分中,您将了解如何识别网络中的目标主机。

识别活主机

有多种方法可以确定主机是否已启动并在网络上运行。

Ping

您可以使用 Ping 快速检查网络连接。那么,Ping 的底层是如何工作的呢?当您执行 ping 命令时,您的 Kali 主机将向目标发送 ICMP echo 请求,然后目标将使用 ICMP echo 回复数据包进行响应。因此,你可以说目标还活着。 ping 命令对于系统管理员很有用,但我们是精英,对吧? 稍后,您将了解为什么必须使用 Nmap 来扫描活动主机。最后,您需要注意,某些系统管理员会在防火墙级别关闭ICMP回显,以阻止黑客检查某些服务器的连接性。

ARP

地址解析协议是一个奇妙的实用程序,它将IP地址映射到本地网络中的物理MAC地址。现在,我们可以利用ARP表的内容,在Kali上使用ARP -scan命令列出同一网络上的所有主机:

arp-scan [ip地址]

Nmap

现在是时候向您展示我用来识别活动主机的最喜欢的工具:Nmap。您将需要使用以下命令选项来完成这项工作:

nmap -sn [ip地址]

为了帮助你记住它,把选项-s想象成Sam, N是Nanny。这些选项的真正含义如下:

n代表No。

s代表扫描。

这就是为什么此选项的名称为“无端口扫描”。有些人称之为Ping扫描,但不要把它和我们在本章前面讨论的ICMP Ping工具混在一起。话虽如此,让我们看看为什么这个选择是神奇的。为了识别活动的主机,Nmap将尝试执行以下操作:

1. 将发送 ICMP echo 请求,如果 ICMP 被阻止,Nmap 也不会放弃。

2.另外,它还会发送 ICMP 时钟请求。

3. 将向端口 80 发送 ACK 数据包,终端端口 443.

4 发送SYN 限制数据包。

最后,它会发送一个 ARP 请求。太强大了,对吧?重要的是要明白,你需要成为 Kali 机器上的 root 用户(或 sudo 组的成员),否则你的选项将受到,并且您将无法执行所有这些功能。让我们让 Sam 和 Nanny 付诸行动

端口扫描和服务枚举

在网络扫描期间,您需要执行的任务之一是查找每台主机上的开放端口。为什么?假设您想了解局域网 (LAN) 上的所有 Web 服务器;端口扫描可以让您轻松获取此信息。看看 Nmap 如何像老板一样处理这个任务。

TCP端口SYN扫描

在Nmap中有很多选项可以执行端口扫描,但是对于TCP,我总是使用SYN扫描。事实上,Nmap默认会执行这种类型的端口扫描:

为了记住它,你可以将选项-ss与Sam和Samantha联系起来。当您想要执行端口扫描时,请始终考虑Sam和Samantha。

如果你的名字是Sam,那你就太幸运了,但ss选项代表SYN扫描,有些人称之为隐身扫描;我编了SAM-Samantha的术语,这样你们就能轻松记住了。让我向您解释一下SYN扫描在Nmap中的工作原理。当提供ss选项时,扫描器将向服务器发送SYN请求,如果在响应中收到SYN/ ACK,则它将显示端口是打开的。如果扫描器没有接收到SYN/ACK,则关闭或过滤它。需要说明的是,过滤意味着有防火墙在保护它:

UDP

现在,UDP端口扫描呢?要在Nmap中使用UDP端口扫描,你必须添加sU选项:

nmap -sU [IP地址]

重要的是要注意,UDP由于其无连接的性质而很慢。我们总是可以使用T5计时选项来调整它,使它更快。防火墙可以很容易地阻止internet地址上的T5。T2选项是您扫描互联网IP地址时的朋友,因此您可以绕过雷达(防火墙等):

nmap -sU -T5 [IP地址]

因此,为了让UDP扫描器识别端口是打开还是关闭,它将发送一个UDP数据包并等待来自目的地的响应。如果Nmap是否得到响应,则可能端口是打开的。另一方面,如果扫描器接收到ICMP错误,则端口被关闭或过滤:

使用Nmap扫描的基础

让我们讨论Nmap中的一些基础知识。如果你在没有任何选项的情况下运行Nmap,默认情况下该工具将使用三个重要的功能:

它会将速度设置为T3。

它将扫描顶端的TCP 1000端口。

假设您是Kali机器的root用户,它将默认设置SYN TCP扫描。

那么,所有这一切都发生在前端,这意味着您不需要指定 T3 速度,因为它默认就在那里。它与端口号(不需要添加 --top-ports 1000)或 TCP SYN 扫描(不需要添加 -ss 选项)相同。在前面的示例中,我们为 SYN 扫描指定了 ss 选项,但这里不需要这样做,因为 Nmap 会默认设置它,对吗? 对于调整部分,请务必记住明智地选择速度。例如,不要在生产IP地址上使用像T5这样的快速速度;相反,请坚持使用默认值(T3)。另外,请确保选择适合您需要的端口数量,可以是前100个端口,也可以是默认选项 1,000 个。让我们看一个实际的例子;假设您使用 TCP 扫描来扫描前 100 个端口:

#更快的扫描TCP

nmap --top-ports 100 -T5 [IP地址]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1120186.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

BUUCTF 大白 1

BUUCTF:https://buuoj.cn/challenges 题目描述: 看不到图? 是不是屏幕太小了 。 密文: 下载附件后解压,发现一张名为dabai.png的图片。 (似乎因为文件被修改过,原图片无法放在这里,这张图片是…

Linux:firewalld防火墙-基础使用(2)

上一章 Linux:firewalld防火墙-介绍(1)-CSDN博客https://blog.csdn.net/w14768855/article/details/133960695?spm1001.2014.3001.5501 我使用的系统为centos7 firewalld启动停止等操作 systemctl start firewalld 开启防火墙 systemct…

怎么去别人的github工程下载

1、网络 确保网络能够顺利访问github,有的地方的公共网络不能访问github,我之前开过科学上网的会员,发现没必要特意开去访问它。可以直接开手机热点,一般是可以顺利访问的。 2、下载 以我的github开源笔记qq-hh/C_review (gith…

砖家预测:腾讯云双11服务器优惠价格表(新鲜出炉)

2023腾讯云双十一服务器优惠价格表多少钱一年?轻量服务器2核2G3M、2核2G4M、2核4G5M、4核8G12M、8核16G18M、16核32G28M和云服务器CVM标准型S5实例优惠价格,腾讯云百科今年双11服务器价格会在当前的价格基础上享受个9折优惠,可领券 https://c…

网站技术查看

当打开一个网页感觉很好奇,他使用了什么框架和什么技术? 常用的网页技术分析网站。 1. w3techs Check web technologies used by a website - Site InfoW3Techs identifies which web technologies such as CMS, programming language, web server an…

Python中的内存管理:深入分析垃圾回收机制

python中有一个名为refchian的环状双向链表,python运行时创建的所有对象都会添加到refchain中。在refchain中的对象PyObject里都有一个ob_refcnt用来保存当前对象的引用计数器,就是该对象被引用的次数,当对象有新引用时ob_refcnt就会增加&…

最简单修改nacos的修改权重修改上线下线报错

前言 我在docker中部署了一个单体的nacos服务,过了一段时间,由于我导入了另外一个nacos的服务配置导致服务注册没问题,但是服务的修改权重和修改服务的上线下线会报错.于是就有了这篇文章,这篇文章主要是解决上面说的问题 正文 1.报错信息展示(这里我已经修复过了已经展示不了了…

【iOS】简单的网络请求

应iOS小组要求,仿写知乎日报需要实现网络请求并解析JSON格式数据,这篇文章仅对基本的网络请求和iOS中的JSON解析作以记录,还涉及到RunLoop的一点小插曲,具体请求过程和原理以后会详细学习!🙏 基本网络流程简…

42915-2023 铜精矿及主要含铜物料鉴别规范

1 范围 本文件规定了铜精矿及主要含铜物料的鉴别特征、鉴别流程、鉴别实施及鉴别报告编写。 本文件适用于进口铜精矿与主要含铜物料的鉴别,主要含铜物料包括冰铜、铜火法冶炼渣、铜火法 冶炼烟尘、铜阳极泥、铜渣精矿等铜火法冶炼工艺产生的物料。 2 规范性引用…

前端Vue框架系列—— 学习笔记总结Day02

❤ 作者主页:欢迎来到我的技术博客😎 ❀ 个人介绍:大家好,本人热衷于Java后端开发,欢迎来交流学习哦!( ̄▽ ̄)~* 🍊 如果文章对您有帮助,记得关注、点赞、收藏、…

VMwarePlayer安装Ubuntu,切换中文并安装中文输入法

1.下载和安装 虚拟机使用的免费版官网链接:VMwarePlayer Ubuntu镜像下载官网链接:Ubuntu桌面版 自己学习使用,不需要考虑迁移之类的。选择单个磁盘IO性能会更高 安装过程中如果出现如下报错,则用系统管理员身份运行 右击VMwa…

造车先做三蹦子220101--机器学习字符(字母、和数字识别)的“小白鼠”与“果蝇”

“0”数字字符零 的图片(16*16点阵): import torch import torch.nn as nn import torch.optim as optim from PIL import Image, ImageDraw, ImageFont from torchvision import transforms import matplotlib.pyplot as pltTimes20001000# 参数设置 font_path &q…

嵌入式实时操作系统的设计与开发(内存资源池存储管理)

内存资源池存储管理 内存资源池存储管理属于固定大小内存管理系统,内存池中内存块的分配和回收是基于第一级内存管理系统的,因为内存池中内存块是由第一级内存管理的算法所确定的。 内存池存储管理系统主要用于操作系统的一些常用结构的内存管理。例如…

位操作符^以及正负数在计算机中的存储

(数据是怎么在计算机中存储的)​ 正数和负数在内存中都是以补码的形式存储的,但不同的是正数的原码,补码,反码都是相同的,而负数的原码,补码和反码是不同的。 负数的原码,补码,反码之间存在什么…

神仙级价格:腾讯云双十一服务器优惠价格表来了

2023腾讯云双十一服务器优惠价格表多少钱一年?轻量服务器2核2G3M、2核2G4M、2核4G5M、4核8G12M、8核16G18M、16核32G28M和云服务器CVM标准型S5实例优惠价格,腾讯云百科今年双11服务器价格会在当前的价格基础上享受个9折优惠,可领券 https://c…

【Java】一只小菜坤的编程题之旅【4】

文章目录 1丶合并两个有序链表2丶栈的压入、弹出序列3丶设计循环队列4丶最小栈 1丶合并两个有序链表 小菜坤的答案: class Solution {public ListNode mergeTwoLists(ListNode list1, ListNode list2) {ListNode newHeadnew ListNode(0);ListNode tmpnewHead;while…

Git的介绍和命令汇总

目录 一、git介绍 1、git的工作区域 2、git中文件的四种状态 二、常用命令 1、基础命令 2、提交类命令 3、删除类命令 4、分支类相关命令 5、 查看类相关命令 6、撤销类命令 一、git介绍 1、git的工作区域 在Git中,有四个工作区域:工作区域&am…

k8s认证

1. 证书介绍 服务端保留公钥和私钥,客户端使用root CA认证服务端的公钥 一共有多少证书: *Etcd: Etcd对外提供服务,要有一套etcd server证书Etcd各节点之间进行通信,要有一套etcd peer证书Kube-APIserver访问Etcd&a…

算法学习之 背包01问题 , 备战leecode

来看题目 我们分析一下题目&#xff0c;首先我们要排序&#xff0c;这有助于我们得到最大的值&#xff0c;我们要得到一个递推公式 代码如下: class Solution { public:int maxSatisfaction(vector<int>& satisfaction) {int n satisfaction.size();vector<v…

【数据结构复习之路】串 (超详细讲解) 严蔚敏版

专栏&#xff1a;数据结构复习之路 复习完上面一章【线性表】【栈和队列】&#xff0c;我们接着复习串&#xff0c;这篇文章我写的非常详细且通俗易懂&#xff0c;看完保证会带给你不一样的收获。如果对你有帮助&#xff0c;看在我这么辛苦整理的份上&#xff0c;三连一下啦 目…