[信息收集]-端口扫描--Nmap

news2024/11/23 12:47:30

端口号

端口号的概念属于计算机网络的传输层,标识这些不同的应用程序和服务而存在的。通过使用不同的端口号,传输层可以将接收到的数据包准确地传递给目标应用程序。

  • 80:HTTP(超文本传输协议)用于Web浏览器访问网页

  • 443:HTTPS(安全的超文本传输协议)用于通过加密连接访问安全的网页

  • 21:FTP(文件传输协议)用于文件传输

  • 22:SSH(安全外壳协议)用于远程登录和安全文件传输---FTP安全版

  • 25:SMTP(简单邮件传输协议)用于电子邮件发送

  • 110:POP3(邮局协议版本3)用于接收电子邮件

  • 143:IMAP(互联网邮件访问协议)用于接收和管理电子邮件

  • 53:DNS(域名系统)用于将域名解析为IP地址

  • 3389:RDP(远程桌面协议)用于远程访问和控制计算机--与ftp相比是带图形界面

  • 3306:MySQL数据库服务器的默认端口

  • 1521:Oracle数据库服务器的默认端口

状态码

HTTP状态码是由三个数字组成的代码,用于表示Web服务器处理HTTP请求时的响应状态。这些状态码按照其首位数字被划分为五类,每类都有其特定的含义和用途。以下是HTTP状态码的一些常见示例及其划分依据:

  1. 1XX(信息性状态码)
    • 100 Continue:服务器已接收到请求的一部分,并期望继续接收请求的其余部分。
    • 这类状态码表示请求已被接受,需要继续处理。
  2. 2XX(成功状态码)
    • 200 OK:请求已成功,请求所希望的响应头或数据体将随此响应返回。
    • 201 Created:请求成功并且服务器创建了新的资源。
    • 这类状态码表示请求已被成功接受、理解,并被处理。
  3. 3XX(重定向状态码)
    • 301 Moved Permanently:请求的资源已永久移动到新位置。
    • 302 Found(或302 Moved Temporarily):请求的资源现在临时从不同的URI响应请求。
    • 这类状态码表示请求需要进一步操作,如跳转到另一个URL等。
  4. 4XX(客户端错误状态码)
    • 400 Bad Request:由于明显的客户端错误(例如,格式错误的请求语法,无效的请求消息或伪造的请求路由),服务器不能或将不处理该请求。
    • 401 Unauthorized:请求要求身份验证。
    • 403 Forbidden:服务器理解请求客户端的请求,但是拒绝执行此请求。
    • 404 Not Found:服务器无法根据客户端的请求找到资源(网页)。
    • 这类状态码表示客户端提交的请求有错误或是服务器无法处理请求。
  5. 5XX(服务器错误状态码)
    • 500 Internal Server Error:服务器遇到了一个未曾预料的状况,导致其无法完成对请求的处理。
    • 503 Service Unavailable:由于临时的服务器维护或者过载,服务器当前无法处理请求。
    • 这类状态码表示服务器在处理请求时发生了错误。

HTTP状态码的划分依据主要是基于其首位数字:

  • 1XX:信息性状态码,表示请求已被接受,需要继续处理。
  • 2XX:成功状态码,表示请求已被成功接受、理解,并被处理。
  • 3XX:重定向状态码,表示请求需要进一步操作,如跳转到另一个URL等。
  • 4XX:客户端错误状态码,表示客户端提交的请求有错误或是服务器无法处理请求。
  • 5XX:服务器错误状态码,表示服务器在处理请求时发生了错误。

NMAP

Network Mapper(网络映射器)

Nmap包含四项基本功能:

  • 主机发现功能:向目标计算机发送特制的数据包组合,然后根据目标的反应来确定它是否处于开机并连接到网络的状态。

    • -sP :进行ping扫描  -sn: ping探测扫描主机, 不进行端口扫描---差别可以忽略

    • 过滤 IP 的网段扫描:nmap ip/子网掩码 -exclude 需要过滤的 IP 或 文件

    • nmap -sn ip/子网掩码 ---扫描并显示内网内所有的主机Ip/MAC

  • 端口扫描:向目标计算机的指定端口发送特制的数据包组合,然后根据目标端口的反应来判断它是否开放。

    状态可能是 open(开放的),filtered(被过滤的---防火墙等设备包过滤阻止探测报文到达端口), closed(关闭的,表面该端口不提供服务),或者unfiltered(未被过滤的---未被过滤,但是不知道是开/关)

    • 防火墙规则:许多防火墙配置有规则来检测并阻止异常的网络流量。如果防火墙识别到来自同一IP地址的大量SYN请求(而没有相应的ACK响应),它可能会认为这是一次SYN攻击,并阻止这些数据包。-----过滤
    • 指定端口号--nmap ip -p 端口号
    • 指定端口号范围--nmap ip -p 范围(1-100)
  • 服务及版本检测:向目标计算机的目标端口发送特制的数据包组合,然后根据目标的反应来检测它运行服务的服务类型和版本。

    • nmap -sV ip -p 端口号或范围

  • 操作系统检测:向目标计算机发送特制的数据包组合,然后根据目标的反应来检测它的操作系统类型和版本。

    • nmap -O ip

img

-sT (TCP connect()扫描) 

nmap -sT IP == nmap IP(默认TCP扫描)

完整的连接,默认的TCP扫描,用户没有权限发送原始报文或者扫描IPv6网络时,不得以选择st,会被日志记录

-sU(UDP扫描)

基于upd协议的服务---DNS DHCP Syslog(日志管理) UPD就是快--这个快是指相比TCP的响应速度,但是在Nmap中UPD扫描却更慢---UDP是无连接的,不需要在客户端和服务器之间建立持久的连接。因此,对于开放的UDP端口,服务通常不会主动响应,除非有数据发送到该端口,才会产生响应。这也意味着探测UDP端口时,如果没有实际的数据发送到该端口,可能无法获取预期的响应。开放的和被过滤的端口很少响应,让Nmap超时然后再探测,以防探测帧或者 响应丢失。同时对于closed的端口只能返回ICMP,但是许多主机在默认情况下限制ICMP端口不可到达消息。

-sS---SYN扫描( 半开放扫描)

经典----- 它执行得很快,不完成TCP连接---不会被日志记录。 可以应对任何兼容的 TCP协议栈。 它还可以明确可靠地区分open(开放的), closed(关闭的),和filtered(被过滤的) 状态 。

目标端口回应SYN/ACK表示端口在监听 (开放),而 RST(强制关闭TCP连接) 表示没有端口监听者(关闭)。如果数次重发后仍没响应, 该端口就被标记为被过滤。如果收到ICMP不可到达错误 (类型3,代码1,2,3,9,10,或者13),该端口也被标记为被过滤。

注:何为RST复位---当目标主机收到一个无效的连接请求或无法处理的数据包时,它会发送一个RST报文作为响应,他是TCP协议中的标志位,和ICMP在IP响应的作用一样

-sA(TCP ACK扫描)

这种扫描与目前为止讨论的其它扫描的不同之处在于 它不能确定open(开放的)或者 open|filtered(开放或者过滤的))端口。 它用于发现防火墙规则,确定它们是有状态的还是无状态的,哪些端口是被过滤的。

---ACK包在TCP连接建立过程中通常被认为是可信的,一些防火墙可能会对SYN包进行过滤,但允许ACK包通过。因此,ACK扫描可以绕过某些对SYN扫描进行了限制的防火墙规则。

ACK扫描探测报文只设置ACK标志位。当扫描未被过滤的系统时, open(开放的)和closed(关闭的) 端口 都会返回RST报文。Nmap把它们标记为 unfiltered(未被过滤的),意思是 ACK报文不能到达,但至于它们是open(开放的)或者 closed(关闭的) 无法确定。不响应的端口 或者发送特定的ICMP错误消息(类型3,代号1,2,3,9,10, 或者13)的端口,标记为 filtered(被过滤的)。

-sF(TCP FIN扫描)

TCP FIN扫描会发送一个带有FIN标志位的TCP报文段到目标主机的特定端口。如果目标主机的该端口是关闭状态,它会发送一个带有RST(重置)标志位的报文段作为响应;如果目标主机的该端口是开放状态,它则会直接忽略FIN报文段,不发送任何响应。

好处是扫描速度快,不易被防火墙过滤

(对于Windows系统,无论端口是否开放,都会返回RST数据包,因此FIN扫描对Windows系统无效)

-sN NULL扫描

NULL扫描是一种利用TCP头部中的标志位字段为空的特性进行端口扫描的技术

如果目标端口是开放的,目标主机通常会忽略 TCP Null 报文,不发送任何响应。如果目标端口是关闭的,目标主机可能会发送一个 TCP RST(复位)包,表示端口是关闭的。

但是NULL扫描的精确度可能不是很高,因为它依赖于目标主机对NULL数据包的响应。在某些情况下,目标主机可能会忽略NULL数据包而不返回任何响应

 

 

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

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

相关文章

【论文泛读】如何进行动力学重构? 神经网络自动编码器结合SINDy发现数据背后蕴含的方程

这一篇文章叫做 数据驱动的坐标发现与方程发现算法。 想回答的问题很简单,“如何根据数据写方程”。 想想牛顿的处境,如何根据各种不同物体下落的数据,写出万有引力的数学公式的。这篇文章就是来做这件事的。当然,这篇论文并没有…

一文带你了解多数企业系统都在用的 RBAC 权限管理策略

前言 哈喽你好呀,我是 嘟老板,今天我们来聊聊几乎所有企业系统都离不开的 权限管理,大家平时在做项目开发的时候,有没有留意过权限这块的设计呢?都是怎样实现的呢?如果现在脑子里对于这块儿不够清晰&#…

作为全栈工程师,如何知道package.json中需要的依赖分别需要什么版本去哪里查询?

作为前端工程师,当你需要确定package.json中依赖的具体版本时,可以通过以下方法来查询: NPM 官网查询: 访问 npm 官网,在搜索框中输入你想查询的包名。在包的页面上,你可以看到所有发布过的版本号&#xff…

[leetcode] 63. 不同路径 II

文章目录 题目描述解题方法动态规划java代码复杂度分析 相似题目 题目描述 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为…

PHP ASCII码的字符串用mb_convert_encoding 转utf-8之后不生效

检测数据类型是ascii,转码之后再检测还是utf-8没生效 private function toUTF8($str){$encode mb_detect_encoding($str, array("ASCII",UTF-8,"GB2312","GBK",BIG5,LATIN1));if ($encode ! UTF-8) {$str1 mb_convert_encoding($str, UTF-8, …

原生轮播图(下一页切换,附带指示器)

下面是目录结构&#xff1a; index.html <!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><meta name"viewport" c…

迅雷永久破解

链接&#xff1a;https://pan.baidu.com/s/1ZGb1ljTPPG3NFsI8ghhWbA?pwdok7s 下载后解压 以管理员身份运行绿化.bat&#xff0c;会自动生成快捷方式&#xff0c;如果没有可以在program中运行Thunder.exe

车牌检测识别功能实现(pyqt)

在本专题前面相关博客中已经讲述了 pyqt + yolo + lprnet 实现的车牌检测识别功能。带qt界面的。 本博文将结合前面训练好的模型来实现车牌的检测与识别。并用pyqt实现界面。最终通过检测车牌检测识别功能。 1)、通过pyqt5设计界面 ui文件如下: <?xml version="1…

基于树的时间序列预测(LGBM)

在大多数时间序列预测中&#xff0c;尽管有Prophet和NeuralProphet等方便的工具&#xff0c;但是了解基于树的模型仍然具有很高的价值。尤其是在监督学习模型中&#xff0c;仅仅使用单变量时间序列似乎信息有限&#xff0c;预测也比较困难。因此&#xff0c;为了生成足够的特征…

Docker容器:Docker-Consul 的容器服务更新与发现

目录 前言 一、什么是服务注册与发现 二、 Docker-Consul 概述 1、Consul 概念 2、Consul 提供的一些关键特性 3、Consul 的优缺点 4、传统模式与自动发现注册模式的区别 4.1 传统模式 4.2 自动发现注册模式 5、Consul 核心组件 5.1 Consul-Template组件 5.2 Consu…

ICML 2024有何亮点?9473篇论文投稿,突破历史记录

会议之眼 快讯 2024年5月1日&#xff0c;第42届国际机器学习大会ICML 2024放榜啦&#xff01;录用率27.5%&#xff01;ICML 2024的录用结果受到了广泛的关注&#xff0c;本届会议的投稿量达到了9473篇&#xff0c;创下了历史新高&#xff0c;比去年的6538篇增加了近3000篇&…

C/C++开发环境配置

配置C/C开发环境 1.下载和配置MinGW-w64 编译器套件 下载地址&#xff1a;https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/ 下载后解压并放至你容易管理的路径下&#xff08;我是将其放在了D盘的一个software的文件中管理&#xff09; 2.…

Nest 快速上手 —— (三)中间件 / 异常过滤器

一、 中间件&#xff08;Middleware&#xff09; 1.特点 中间件是一个在路由处理程序之前被调用的函数。中间件函数可以访问请求和响应对象&#xff0c;以及应用程序请求-响应周期中的next()中间件函数。下一个中间件函数通常由一个名为next的变量表示。 中间件函数可以执行以…

自动驾驶融合定位系列教程四:惯性导航解算

自动驾驶融合定位系列教程四&#xff1a;惯性导航解算 一、概述 惯性导航的解算是一个实现起来非常简单&#xff0c;但是理解起来要费一番功夫的东西&#xff0c;所谓“实现”就是把公式变成代码&#xff0c;所谓“理解”&#xff0c;就是要弄明白几个公式是怎么推导出来的。…

硬盘遭遇误删分区?这些恢复技巧你必须掌握!

在日常使用电脑的过程中&#xff0c;我们有时会遇到一些棘手的问题&#xff0c;其中误删分区无疑是一个令人头疼的难题。误删分区意味着我们不小心删除了硬盘上的某个分区&#xff0c;导致该分区内的所有数据瞬间消失。对于许多用户来说&#xff0c;这可能会引发极大的恐慌和焦…

[方法] Unity 实现仿《原神》第三人称跟随相机 v1.1

参考网址&#xff1a;【Unity中文课堂】RPG战斗系统Plus 在Unity游戏引擎中&#xff0c;实现类似《原神》的第三人称跟随相机并非易事&#xff0c;但幸运的是&#xff0c;Unity为我们提供了强大的工具集&#xff0c;其中Cinemachine插件便是实现这一目标的重要工具。Cinemachi…

软件测试面试问题汇总

一般软件测试的面试分为三轮&#xff1a;笔试&#xff0c;HR面试&#xff0c;技术面试。 前两轮&#xff0c;根据不同企业&#xff0c;或有或无&#xff0c;但最后一个技术面试是企业了解你“行不行”的关键环节&#xff0c;每个企业都会有的。 在平时的学习、工作中一定要善于…

【Ping】Windows 网络延迟测试 ping 、telnet、tcping 工具

ping 命令 属于网络层的ICMP协议&#xff0c;只能检查 IP 的连通性或网络连接速度&#xff0c; 无法检测IP的端口状态。 telnet telnet命令&#xff0c;属于应用层的协议&#xff0c;用于远程登录&#xff0c;也可用于检测IP的端口状态。但是功能有限&#xff0c;只能检测一时…

【WP】第一届 “帕鲁杯“ - CTF挑战赛 Web 全解

Web Web-签到 考点&#xff1a;审计py代码 from flask import Flask, request, jsonify import requests from flag import flag # 假设从 flag.py 文件中导入了 flag 函数 app Flask(__name__)app.route(/, methods[GET, POST]) def getinfo():url request.args.get(url)i…

ue引擎游戏开发笔记(32)——为游戏添加新武器装备

1.需求分析&#xff1a; 游戏中角色不会只有一种武器&#xff0c;不同武器需要不同模型&#xff0c;甚至可能需要角色持握武器的不同位置&#xff0c;因此需要添加专门的武器类&#xff0c;方便武器后续更新&#xff0c;建立一个武器类。 2.操作实现&#xff1a; 1.在ue5中新建…