扫描工具端口_centos端口扫描软件

hacker|
227

ncat命令使用实例

Ncat工具功能类似于cat 命令 ,但用于网络。它是一个 命令 行的工具,用于跨网络读取、写入和重定向数据。它被设计成一个可靠的后端工具,可以与 脚本 或其他程序一起使用。

ncat可以是端口扫描工具,安全工具或监视工具,并且还是简单的TCP代理。由于它具有许多功能,因此被称为网络瑞士军刀。它是每个系统管理员都应该了解工具之一。

系统环境

Centos 8

如何安装ncat

在Centos7/8系统中ncat安装包名称为nmap-ncat

[root@server1 ~]# yum -y install nmap-ncat

一、检查TCP的80端口的连接

此示例我们将检查主机名为DCserver的80端口连接。

[root@server1 ~]# nc -vz DCserver 80

Ncat: Version 7.70 ( )

Ncat: Connected to 192.168.0.6:80.

Ncat: 0 bytes sent, 0 bytes received in 0.01 seconds.

-z选项为“Zero - I/O 模式”,用于检查连接状态。

二、创建一个监听端口

下面命令可以创建一个tcp监听端口:

[root@server1 ~]# nc -vl 1234

Ncat: Version 7.70 ( )

Ncat: Listening on :::1234

Ncat: Listening on 0.0.0.0:1234

使用netstat -tlunp查看一下:

在另一台主机中,使用nc命令测试一下该端口的连接:

[root@server1 ~]# nc -vz 192.168.43.131 1234

Ncat: Version 7.70 ( )

Ncat: Connected to 192.168.43.131:1234.

Ncat: 0 bytes sent, 0 bytes received in 0.01 seconds.

然后返回到侦听端,可以看到来自192.168.43.131的45568端口连接侦听端的1234端口。

[root@server1 ~]# nc -vl 1234

Ncat: Version 7.70 ( )

Ncat: Listening on :::1234

Ncat: Listening on 0.0.0.0:1234

Ncat: Connection from 192.168.43.131.

Ncat: Connection from 192.168.43.131:45568.

可以使用-k选项,让侦听端保持打开状态。

三、作为聊天工具

ncat可以用作聊天工具,我们将服务器配置侦听端口,远程主机连接服务器的同一端口并发送消息。在服务器端,运行下面命令开启侦听端口:

[root@qdzabbix ~]# ncat -l 8080

在远程主机中运行下面命令,并且在下面输入聊天内容,按回车发送,在服务端可以看到消息内容了。

[root@server1 ~]# ncat 192.168.0.12 8080

Hello qdzabbix

下面在服务端和远程主机都可以看到消息内容。

想要退出,只需要按Ctrl + c就可以。

四、检查SSH软件版本

可以使用nc命令通过将EXIT命令发送到ssh的22端口上,来检查服务器软件版本,如下所示:

[root@server1 ~]# echo "EXIT" | nc 192.168.43.131 22

SSH-2.0-OpenSSH_7.8

Protocol mismatch.

五、使用ncat创建后门

可以使用ncat命令创建后门。此功能主要由黑客使用。可以这样运行命令,在服务端执行下面一条命令:

[root@qdzabbix ~]# nc -l 5566 -e /bin/bash

-e选项后面指定运行的命令。现在客户端可以连接到服务器上的端口5566,并且可以通过运行以下命令通过bash完全访问我们的系统:

[root@server1 ~]# nc qdzabbix 5566

ls

anaconda-ks.cfg

a.txt

batch

Customer_Supplied_Tickets

custom_resolv.conf

下图中红线圈出来的就是执行的命令。

六、使用ncat运行带有静态页面的Web服务器

可以在本地主机上使用ncat命令启动Web服务器,这将打开静态网页面sample.html。你可以运行如下命令:

首先将下面内容保存到/root/sample.html文件中。

[root@qdzabbix ~]# vim /root/sample.html

html

        head

                titleTest Page/title

        /head

        body

                h1Level 1 header/h1

                h2Subheading/h2

                pNormal text here/p

        /body

/html

然后执行下面命令:

[root@qdzabbix ~]# while true; do nc -l -p 80 /root/sample.html ; done

上面命令中,-p 88选项指定源端口为80。

在浏览器中访问,可以看到页面内容。

总结

ncat工具可以帮助你从使用telnet进行连通性测试切换到使用ncat测试连通性。

centos下安装nmap工具及简单用法

1、yum安装nmap

yum install nmap -y

yum install nc -y

nmap 命令参数:nmap -h

2、nmap 常用命令介绍:

udp 检测

nc -vuz 221.23.4.5 6127

快速扫描端口模式,扫描100个最有可能开放的端口 -v 获取扫描的信息

nmap -F -v 192.168.43.118

Tcp SYN Scan (sS) 隐蔽扫描 这是一个不完整的扫描方式,它被称为半开放扫描,Nmap发送SYN包到远程主机,但是它不会产生任何会话,在syn扫描中不需要通过完整3次的握手,因此不会在目标主机上产生任何日志记录,这个就是SYN扫描的优势,但是这种扫描是需要root权限(对于windows用户来说,是没有root权限这个概念的,root权限是linux的最高权限,对应windows的管理员权限)

Tcp connect() scan(sT) 最常用

如果不选择SYN扫描,TCP connect()扫描就是默认的扫描模式,不同于Tcp SYN扫描,Tcp connect()扫描需要完成三次握手,并且要求调用系统的connect(),Tcp connect()扫描技术只适用于找出TCP和UDP端口,但是这种方式扫描的速度快,准确性高,对操作者没有权限上的要求,但是容易被防火墙和IDS(防入侵系统)发现。

UDP scan(sU)

顾名思义,这种扫描技术用来寻找目标主机打开的UDP端口,它不需要发送任何的SYN包,因为这种技术是针对UDP端口的。UDP扫描发送UDP数据包到目标主机,并等待响应,如果返回ICMP不可达的错误消息,说明端口是关闭的,如果得到正确的适当的回应,说明端口是开放的。

nmap -sU 192.168.43.118

FIN scan (sF)

有时候Tcp SYN扫描不是最佳的扫描模式,因为有防火墙的存在,目标主机有时候可能有IDS和IPS系统的存在,防火墙会阻止掉SYN数据包。发送一个设置了FIN标志的数据包并不需要完成TCP的握手,收到RST回复说明该端口关闭,否则说明是open或filtered状态

nmap -sF 192.168.43.118

PING Scan (sP) 扫描在线主机

PING扫描它只用于找出主机是否是存在在网络中的,它不是用来发现是否开放端口的,PING扫描需要ROOT权限,如果用户没有ROOT权限,PING扫描将会使用connect()调用。

nmap -sP 192.168.43.118

版本检测(sV)

版本检测是用来扫描目标主机和端口上运行的软件的版本,它不同于其它的扫描技术,它不是用来扫描目标主机上开放的端口,不过它需要从开放的端口获取信息来判断软件的版本,使用版本检测扫描之前需要先用TCP SYN扫描开放了哪些端口。

nmap -sV 192.168.43.118

Idle scan (sL)

Idle scan是一种先进的匿名扫描技术,它不是用你真实的主机Ip发送数据包,而是使用另外一个目标网络的主机发送数据包,例如:通过目标网络中的192.168.43.118向主机192.168.43.4发送数据,来获取192.168.1.1开放的端口。

nmap -sL 192.168.43.118 192.168.43.4

有需要其它的扫描技术,如 FTP bounce(FTP反弹), fragmentation scan(碎片扫描),IP protocol scan(IP协议扫描),以上讨论的是几种最主要的扫描方式。

Nmap的OS检测(O)

Nmap最重要的特点之一是能够远程检测操作系统,Nmap的OS检测技术在渗透测试中用来了解远程主机的操作系统是非常有用的,通过获取的信息你可以知道已知的漏洞

nmap -O 192.168.43.17

ACK扫描:

利用ACK扫描判断端口是否被过滤。针对ACK探测包,为被过滤的端口(无论打开或关闭)会回复RST包

nmap -sA -T4 p1521,80 192.168.43.17

使用TCP ACK (PA)和TCP Syn (PS)扫描远程主机

nmap -pA -T4 p1521,80 192.168.43.17

nmap -pA -T4 p1521,80 192.168.43.17

扫描前不进行Ping扫描测试:

nmap -Pn p1521,80 192.168.43.17

通过tcp空扫描以绕过防火墙检测:

nmap -sN 192.168.43.17

打印主机接口和路由

nmap --iflist

按顺序扫描端口:

nmap -r 192.168.43.118

扫描主机检测是否有防火墙过滤:

nmap -PN -p 1521 192.168.43.17

扫描操作系统信息和路由跟踪

使用Nmap,你可以检测远程主机上运行的操作系统和版本。为了启用操作系统和版本检测,脚本扫描和路由跟踪功能,我们可以使用NMAP的“-A“选项。

nmap -A 192.168.43.17

扫描端口时状态介绍:

Open 端口开启,数据有到达主机,有程序在端口上监控

Closed 端口关闭,数据有到达主机,没有程序在端口上监控

Filtered 数据没有到达主机,返回的结果为空,数据被防火墙或者是IDS过滤

UnFiltered 数据有到达主机,但是不能识别端口的当前状态

Open|Filtered 端口没有返回值,主要发生在UDP、IP、FIN、NULL和Xmas扫描中

Closed|Filtered 只发生在IP ID idle扫描

以上总结来源于网络。

centos下防火墙已开,但为什么外界还能扫描出机器上一些端口的情况?

现在的电脑给人有一种弱不禁风的感觉,不是今天受到这个病毒突袭,就是明天受到那个黑客的攻击,出错、死机变得象家常便饭一样了。为了让计算机“坚强”起来, 不少人找来了杀毒软件、防火墙,希望通过这些软件来增强计算机的免役力。的确,这些软件在一定程度上增强了计算机抵抗外来攻击的能力,但对于计算机内部系统存在的漏洞就无能为力了。本文的目的主要是向大家介绍一下通过修改注册表的方法,来提高系统的安全。

一、隐藏一个服务器

为了保证局域网中服务器上的资源不受其他人的非法访问和攻击,我们从安全的角度考虑,有时需要把局域网中指定的服务器计算机名称隐藏起来,以便让其他局域网用户无法访问到,那么我们该如何实现呢?下面请看该设置的具体步骤:

1、打开注册表编辑器,并在编辑器对话框中用鼠标依次单击如下分支:HKEY_LOCAL_ MACHINE \ SYSTEM \ CurrentControlSet \Services \ LanmanServer \ Parameters键值。

2、用鼠标单击该键值下面的Hidden数值名称,如果未发现此名称,那么添加一个,其数据类型为REG_DWORD。

3、接着用鼠标双击此项,在弹出的“DWORD编辑器”对话框中输入1即可。

4、最后单击“确定”按钮,并退出注册表编辑窗口,重新启动计算机就可以在局域网中隐藏一个服务器了。

二、防止其他人非法编辑注册表

注册表是整个系统的灵魂所在,任何对注册表的错误修改都有可能让系统瘫痪。因此,如果您不是一位系统高手的话,最好不要轻易动手修改注册表。当然在公共场所,为了防止那些电脑“菜鸟”们,随意更改注册表设置,我们最好还是取消其他用户对注册表进行修改的权利。我们可以按照如下步骤来实现这样的目的:

1、首先在注册表编辑界面中,找到HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\键值;

2、然后在Policies键值的下面新建一个System主键,如果该主键已经存在的话,可以直接进行下一步;

3、接着在对应System主键右边窗口的空白处再新建一个DWORD串值,并命名为DisableRegistryTools;

4、把DisableRegistryTools的值设置为1,设置好以后,重新启动计算机就可以达到防止其他人非法编辑注册表的目的了。

六、隐藏用户登录名

Win9x以上的操作系统可以对以前用户登录的信息具有记忆功能,下次重新启动计算机时,我们会在用户名栏中发现上次用户的登录名,这个信息可能会被一些非法分子利用,而给用户造成威胁,为此我们有必要隐藏上机用户登录的名字。

1、在设置时,请用鼠标依次访问键值HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Winlogon;

2、在对应Winlogon键值右边的窗口中,用鼠标右键单击窗口的空白处,从弹出的快捷菜单中选择“新建”/“字符串”命令;

3、给新建字符串命名为"DontDisplayLastUserName",并把该字符串值设置为"1";

4、设置完后,重新启动计算机就可以隐藏上机用户登录的名字了。

七、不允许用户拨号访问

如果用户的计算机上面有重要的信息,有可能不允许其他人随便访问。那么如何禁止其他人拨入访问你的计算机,减少安全隐患呢,具体步骤为:

1、打开注册表编辑器,并在编辑器中依次展开以下键值:

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Network];

2、在编辑器右边的列表中用鼠标选择“NoDialIn”键值,如果没有该键值,必须新建一个DWORD值,名称设置为“NoDialIn”;

3、接着用鼠标双击“NoDialIn”键值,编辑器就会弹出一个名为“字符串编辑器”的对话框,在该对话框的文本栏中输入数值“1”,其中0代表禁止拨入访问功能,1代表允许拨入访问功能;

4、退出后重新登录网络,上述设置就会起作用。

八、屏蔽对软盘的网络访问

俗话说“病从口入”,计算机中的病毒有很多都是通过访问不干净的软盘而被感染得来的,如果我们允许用户通过网络来访问软盘的话,那么整个网络都有可能被感染病毒,最终的结果将会使网络中的所有计算机都中毒瘫痪。为了防止病毒入侵整个网络,我们必须严格管理计算机的输入设备,以断绝病毒的源头,为此就要禁止通过网络访问软盘。设置时,您可以按照如下操作步骤来进行:

1、在系统的运行对话框中输入regedit命令,打开注册表编辑器;

2、在注册表编辑器操作窗口中,依次打开键值HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon;

3、在对应Winlogon右边的窗口中,检查一下其中有没有包含键值AllocateFloppies,如果没有,用鼠标右键单击窗口的空白处,从弹出的快捷菜单中选择“新建”/“DWORD值”;

4、把新建的DWORD值取名为AllocateFloppies,同时把它的值修改为0或1,其中0代表可被域内所有管理员访问,1代表仅可被当地登陆者访问。

九、禁止访问“文件系统”按钮

在“系统属性”对话框中,有一个名为“文件系统”的功能按钮,利用它您可以对计算机的硬盘、软盘以及其他移动设备进行相关设置。但为了防止非法用户随意篡改这些设备的设置,您有时需要把“系统属性”中“文件系统”的按钮隐藏起来,下面是具体的设置步骤:

1、打开注册表编辑器窗口,并在窗口中依次访问如下键支:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System;

2、在对应System键值的右边窗口中,用鼠标单击窗口的空白处,从弹出的快捷菜单中选择“新建”/“DWORD串值”;

3、给新建的DWORD串值,取名为“NoFileSysPage”,并把它的值设置为“1”;

4、设置完后,重新启动计算机就可以使设置生效了。

十、让“网上邻居”图标隐藏起来

大家知道,通过网上邻居可以随意访问局域网中其他计算机上的内容,但如果其他计算机没有设置特别的访问权限的话,那些别有用心的破坏者很有可能利用网上邻居来非法删除其他计算机上的重要数据,给其他计算机造成了损失。为了避免这样的损失,我们可以利用注册表来隐藏“网上邻居”。

1、首先在打开的注册表编辑器操作窗口中,用鼠标依次访问键值HKEY_CURRENT_USER\Software\Microsoft\ Windows\CurrentVersion\Policies\Explorer;

2、在对应Explorer键值右边的操作窗口中,用鼠标单击窗口的空白处,从弹出的快捷菜单中,用鼠标依次访问“新建”/“DWORD串值”;

3、给新建的DWORD串值命名为NoNetHood,同时把该值设置为1(十六进制);

4、设置好后,重新启动计算机就可以使设置生效了。

十一、限制使用系统的某些特性

在网吧或公用场所中,有时为了保证系统的属性不被其他普通用户随意更改,我们就必须要限制使用系统的某些特性。要实现这个目的,我们可以利用修改注册表编辑器的方法来达到。

1、运行注册表编辑器,进入HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System键值;

2、如果不存在该键值,就新建一个;

3、然后将该键值下方的DisableTaskManager的值设为1,表示将阻止用户运行任务管理器。

4、接着将NoDispAppearancePage设为1,表示将不允许用户在控制面板中改变显示模式;

5、下面再将NoDispBackgroundPage设为1,表示将不允许用户改变桌面背景和墙纸。

十二、限制用户使用指定程序

为防止用户非法运行或者修改程序,导致整个计算机系统处于混乱状态,我们可以通过修改注册表来达到让用户只能使用指定的程序的目的,从而保证系统的安全。

1、在注册表编辑器窗口中依次打开HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer键值;

2、在对应Explorer键值右边的窗口中,新建一个DWORD串值,名字取为“RestrictRun”,把它的值设为“1”;

3、在RestrictRun的主键下分别添加名为“1”、“2”、“3”等字符串值,然后将“1”,“2”、“3”等字符串的值设置为我们允许用户使用的程序名。例如将“1”、“2”、“3”分别设置为word.EXE、notepad.EXE、write.EXE,则用户只能使用word、记事本、写字板了,这样我们的系统将会做到最大的保障,也可以限制用户运行不必要的软件了。

十三、不允许用户设置屏幕保护密码

许多电脑使用者在使用电脑时,都有一种独占性,他们不希望自己使用的电脑,再去让别人使用,于是他们常常会在短暂离开电脑时,给电脑设定了屏保密码;但遗憾的是,他们在用完电脑之后,又不能及时把这些屏保密码去除,这样很容易导致其他用户不能正常使用,严重的能使计算机无法启动。为了避免这些现象的发生,我们可以通过修改注册表,来设定用户无权进行屏保密码的设置。

1、打开注册表编辑器窗口,在该窗口中用鼠标访问CURRENT_USER\ControlPanel\desktop\ScreenSaveUsePassword键支;

2、在对应ScreenSaveUsePassword键值的右边窗口中,将ScreenSaveUsePassword的值设置为0就可以了。

十四、将文件系统设置为NTFS格式

在Windows2000以及NT系统中,用户可以将分区设置为NTFS格式来确保文件系统的安全,当然我们也可以通过修改注册表的方法来达到将文件系统设置为NTFS格式的目的,具体实现步骤如下:

1、打开注册表编辑器,并在编辑器中依次展开以下键值:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem;

2、在注册表编辑器中用鼠标单击“编辑”菜单,并在下拉菜单中选择“新建”菜单项,并在其弹出的子菜单中单击“DWORD值”;

3、在编辑器右边的列表中输入DWORD值的名称为“NtfsDisableLastAccessUpdate”;

4、接着用鼠标双击NtfsDisableLastAccessUpdate键值,编辑器就会弹出一个名为“字符串编辑器”的对话框,在该对话框的文本栏中输入数值“1”,其中0代表“取消”该项功能,1代表“启用”该项功能。

十五、抵御WinNuke黑客程序对计算机的攻击

WinNuke是一个破坏力极强的程序,该程序能对计算机中的Windows系统进行破坏,从而会导致整个计算机系统瘫痪,所以我们有必要预防WinNuke的破坏性。我们可以在注册表中对其进行设置,以保证系统的安全。

1、在注册表编辑器操作窗口中,用鼠标依次单击键值HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP;

2、在对应MSTCP键值的右边窗口中,用鼠标单击窗口的空白处,从弹出的快捷菜单中选择“新建”/“DWORD值”,并给DWORD值取名为“BSDUrgent”,如果该键值已经存在,可以直接进行下一步;

3、然后将BSDUrgent值设置为0,重新启动计算机后就可以实现目的了。

十六、恢复对注册表的错误修改

由于注册表是计算机的核心和灵魂,对注册表进行的任何一个错误修改都有可能使计算机不能正常启动。为了确保万无一失,我们在对注册表进行修改时,都要对注册表进行备份工作,一旦在修改注册表时出了一点小错误,就可将以前备份的注册表文件再导入注册表中,从而恢复注册表以前的内容,下面是具体的操作步骤:

1、在运行对话框中输入regedit命令,程序将弹出了一个注册表编辑器窗口;

2、在该窗口中用鼠标单击“注册表”菜单下的“导入注册表文件”,从弹出的文件对话框中找到备份的.reg文件,最后再用鼠标单击该对话框中的“确定”按钮,就可以重新向注册表写入正确信息;

3、当注册表损坏或错误更改了软硬件设置,导致系统启动失败,并且自动修复无效,用“Scanreg.exe /Fix”也无法恢复时,可在纯DOS下运行“scanreg.exe /restory” 进行恢复,有五个数据供选择,先选日期最近的恢复,若仍不行,再依次选择,直到系统正常运行为止。

在VMWare虚拟机上安装centos在里面安装了nmap后输入nmap+主机的ip扫描后情况。有一些不理解。求解惑。

windows 自身并不使用902端口,这个端口是扫描程序自己使用的吧。

Centos6.x修改ssh端口

       在实际的生产环境中,我们会把我们的服务器暴露在网络中,这时候就会有很多的黑客利用端口扫描软件扫描网络中常用的端口进行攻击,入侵服务器。为了增强措施我们有必要将我们的服务器的ssh等敏感端口隐藏起来。所以下面

1、修改在防火墙关闭22端口开启55555端口(随意)

vim /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 55555 -j ACCEPT

2、重启防火墙

/etc/init.d/iptables restart

3、修改ssh服务器的端口号为 55555,要与上面一致

vim /etc/ssh/sshd_config

Port 55555

4、重启ssh服务器

/etc/init.d/sshd restart

ssh 连接就行了:

ssh root@{ip} -p55555

【Linux】 Centos7 NC探测端口命令

linux centos7 测试端口的连通性, 分别测试TCP端口与UDP端口

安装nc命令

一、nc命令检测端口的用法

1 这个需要Linux服务器里边支持nc命令,检查NC 是否安装

2 安装nc

3 探测端口

错误信息如下

百度了半天没一个结果, google了一下就有结果了, 经测试成功.

4 原因分析:

-z参数原为扫描目标port是否打开, TCP三次握手成功则ok

但CentOS7新版的nc命令已取消了-z, 需输入重定向 /dev/null 才能成功

5 探测 udp: 通过 nc -h 可以看出,只需要加个 -u 即可。

更多高级应用参考:

0条大神的评论

发表评论