热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

低速扫描实验记录

主要参考:https:blog.csdn.netzhaowei1945articledetails78466785https:www.cnblogs.comLuc

 

主要参考:

https://blog.csdn.net/zhaowei1945/article/details/78466785

https://www.cnblogs.com/LuckWJL/p/7692005.html

https://www.freebuf.com/sectool/119340.html

https://www.cnblogs.com/wiessharling/p/4070826.html

实验记录如下:


  • 概述

使用三种最常见的扫描工具:zmap、nmap、netcat,对内网IP进行低速扫描实验。统计实验中数据的特性,包括packets,bytes,timeout_state_num,retransmit等。


  • 实验内容

2.1 nmap工具

Nmap的功能非常强大,其基本功能有主机发现、开放端口扫描、支持多端口、多网段、可对目标域名进行扫描;同时具备识别功能:识别端口服务类型及版本、操作系统、设备类型等;而且还有多种扫描模式:TCP SYN scan、TCP connectscan、UDP scan、No Ping scan等。

本次实验中,采用了TCP半开扫描(TCP SYN scan)、TCP全扫描(TCP connect scan)以及Fin扫描(Fin scan)三种形式。可选项 -Tn,其中n取值0-5,表示不同的速度,T5最快(间隔0s),T0最慢(间隔5min)。实验选择T1,两次扫描间隔15s。

2.2 zmap工具

Zmap采用了无状态的扫描技术,没有进行完整的TCP三次握手,因此扫描速度极大提升。Zmap的基本功能是扫描发现主机的开放端口。

在实验中是对172.23.2.0/24段的22端口进行慢扫描,zmap对未开机的机器也会发送扫描包。可选项-r用于设置扫描的发包速率packets/sec(包每秒)。

2.3 netcat工具

nc是netcat的简写,有着网络界的瑞士军刀美誉。因为它短小精悍、功能实用,被设计为一个简单、可靠的网络工具,其有Windows和Linux的版本,可通过TCP或UDP协议传输读写数据。同时,它还是一个网络应用Debug分析器,因为它可以根据需要创建各种不同类型的网络连接。

实验过程中,netcat进行TCP全扫描,使用如下命令对某台机器的22-53号端口进行扫描,每次扫描间隔30s:nc -z -v -r -i 30 172.23.2.199 22-53


  • 实验结果

将实验结果进行统计后,如下面三个表格。表格头in、out表示两个方向,对应值为n(+m)[x],n表示packets,m表示重传数,x表示bytes。

 


工具

TCP 全扫描

防火墙过滤/不可达

端口开

端口关

状态

In

Out

状态

In

Out

状态

In

out

nmap

1

1[74B]

0

13

3[206B]

1[74B]

10

1[54B]

1[54B]

netcat

 

 

 

13

4[260B]

3[227B]

1

1[74B]

0

 

 


工具

TCP 半开扫描

防火墙过滤/不可达

端口开

端口关

状态

In

Out

状态

In

Out

状态

In

Out

nmap

1

1[58B]

0

11

2[112B]

1[58B]

10

1[58B]

1[54B]

zmap

1

1[54B]

0

11

3(+1)[162B]

1[58B]

10

1[54B]

1[54B]

 

 


工具

FIN 扫描

不可达/过滤

端口开

端口关

状态

In

Out

状态

In

Out

状态

In

Out

nmap

4

1[54B]

0

4

1[54B]

0

15

1[54B]

1[54B]

 

 

附录

1.TCP SYN Scan(TCP同步序列号扫描)

若端口扫描没有完成一个完整的 TCP连接,即在扫描主机和目标主机的一指定端口建立连接的时候,只完成前两次握手,在第三步时,扫描主机中断了本次连接, 使连接没有完全建立起来,所以这种端口扫描又称为“半连接扫描”,也称为“间接扫描”或“半开式扫描”(Half Open Scan)。

SYN 扫描,通过本机的一个端口向对方指定的端口,发送一个TCP的SYN连接建立请求数据报,然后开始等待对方的应答。如果应答数据报中设置了SYN位 和ACK位,那么这个端口是开放的;如果应答数据报是一个RST连接复位数据报,则对方的端口是关闭的。

 

2. TCP FIN Scan(TCP结束标志扫描)

这种扫描方式不依赖于TCP的3次握 手过程,而是TCP连接的“FIN”(结束)位标志。原理在于TCP连接结束时,会向TCP端口发送一个设置了FIN 位的连接终止数据报,关闭的端口会回应一个设置了RST的连接复位数据报;而开放的端口则会对这种可疑的数据报不加理睬,将它丢弃。可以根据是否收到 RST数据报来判断对方的端口是否开放。

此扫描方式的优点比前两种都要隐秘,不容易被发现。该方案有两个缺点:首先, 要判断对方端口是否开放必须等待超时,增加了探测时间,而且容易得出错误的结 论;其次,一些系统并没有遵循规定,最典型的就是Microsoft公司所开发的操作系统。这些系统一旦收到这样的数据报,无论端口是否开放都会回应一个 RST连接复位数据报,这样一来,这种扫描方案对于这类操作系统是无效的。

 

3. TCP connect Scan(TCP连接扫描)

这 种方法也称之为“TCP全连接扫描”。它是最简单的一种扫描技术,所利用的是TCP协议的3次握手过程。它直接连到目标端口并完成一个完整的3次握手过 程(SYN、SYN/ACK和ACK)。操作系统提供的“connect()”函数完成系统调用,用来与目标计算机的端口进行连接。如果端口处于侦听状态,那么“connect()”函数就能成功。否则,这个端口是不能用的,即没有提供服务,得到RST连接复位数据报。

TCP连接扫描技术的一个 最大的优点是不需要任何权限,系统中的任何用户都有权利使用这个调用。另一个好处是速度快。如果对每个目标端口以线性的方式,使 用单独的“connect()”函数调用,那么将会花费相当长的时间,用户可以同时打开多个套接字,从而加速扫描。使用非阻塞I/O允许用户设置一个低的 时间以用尽周期,并同时观察多个套接字。但这种方法的缺点是很容易被发觉,并且很容易被过滤掉。目标计算机的日志文件会显示一连串的连接和连接出错的服务 消息,目标计算机用户发现后就能很快使它关闭。


推荐阅读
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  • 大坑|左上角_pycharm连接服务器同步写代码(图文详细过程)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了pycharm连接服务器同步写代码(图文详细过程)相关的知识,希望对你有一定的参考价值。pycharm连接服务 ... [详细]
  • linux 禁止指定ip访问
    linux中如何禁止指定的ip访问呢?比如被别人暴力破解,被别人使用不同的密码尝试登录:所以我想直接禁用这些ip的访问.怎么办呢?解决方案:修改配置文件etchosts.deny把 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • Linux磁盘的分区、格式化的观察和操作步骤
    本文介绍了如何观察Linux磁盘的分区状态,使用lsblk命令列出系统上的所有磁盘列表,并解释了列表中各个字段的含义。同时,还介绍了使用parted命令列出磁盘的分区表类型和分区信息的方法。在进行磁盘分区操作时,根据分区表类型选择使用fdisk或gdisk命令,并提供了具体的分区步骤。通过本文,读者可以了解到Linux磁盘分区和格式化的基本知识和操作步骤。 ... [详细]
  • 预备知识可参考我整理的博客Windows编程之线程:https:www.cnblogs.comZhuSenlinp16662075.htmlWindows编程之线程同步:https ... [详细]
  • 本文介绍了Oracle存储过程的基本语法和写法示例,同时还介绍了已命名的系统异常的产生原因。 ... [详细]
  • 深入解析Linux下的I/O多路转接epoll技术
    本文深入解析了Linux下的I/O多路转接epoll技术,介绍了select和poll函数的问题,以及epoll函数的设计和优点。同时讲解了epoll函数的使用方法,包括epoll_create和epoll_ctl两个系统调用。 ... [详细]
  • Linux下安装免费杀毒软件ClamAV及使用方法
    本文介绍了在Linux系统下安装免费杀毒软件ClamAV的方法,并提供了使用该软件更新病毒库和进行病毒扫描的指令参数。同时还提供了官方安装文档和下载地址。 ... [详细]
author-avatar
海滨的微博小窝
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有