基于ping命令的探测

一.ping命令

ping命令常用于判断主机之间网络是否通畅,同样也判断我们的目标主机是否存活

基于ping命令的探测_第1张图片

traceroute 命令可以对路由进行跟踪基于ping命令的探测_第2张图片

二.ARPING

arping 是一个网络工具,用于发送 ARP 请求以确定网络上指定 IP 地址的设备的 MAC 地址。ARP(Address Resolution Protocol)是在局域网中将 IP 地址解析为 MAC 地址的协议。

使用 arping 命令可以执行以下操作:

  1. 发送 ARP 请求:在命令行中使用 arping 命令,并指定目标主机的 IP 地址。例如:arping 192.168.0.1

  2. 等待 ARP 响应:arping 命令会发送 ARP 请求到目标主机,并等待该主机的 ARP 响应。如果目标主机在线且可访问,它将会回复一个包含其 MAC 地址的 ARP 响应。

  3. 显示结果:arping 命令将显示目标主机的 MAC 地址,并提供往返时间(RTT)和网络延迟等信息。

arping用途:

  • 确认主机是否在线:通过发送 ARP 请求并检查是否收到响应,可以确定一个主机是否在线。

  • 确认主机的 MAC 地址:arping 可以使用目标主机的 IP 地址确定其 MAC 地址,这对于构建网络拓扑图或进行网络审计很有用。

  • 探测网络中的重复 IP 地址:在局域网中,每个设备应具有唯一的 IP 地址。arping 可以用于检测网络中是否存在重复的 IP 地址。

arping

172.16.1.1 -c 3    # -c参数表示法送的次数

基于ping命令的探测_第3张图片

arping 172.16.1.1 -c 3 | grep "bytes from" | cut -d " " -f 5 | cut -d "(" -f 2 # “|”:管道符,“grep”:筛选,“cut”:提取,"-d":指定,"-f":字段

基于ping命令的探测_第4张图片

netdiscover 是一个网络扫描工具,用于发现局域网中的主机和识别其 IP 地址、MAC 地址和厂商信息等。它能够扫描目标局域网的 IP 地址范围,并尝试与每个主机进行通信,从而收集网络设备的信息。

主动模式:主动的探测发现网络内主机,但这种方式容易引起网络管理员的注意

基于ping命令的探测_第5张图片

被动模式

被动模式更加隐蔽,但速度会比较慢,网卡被设置为混杂模式来侦听网络内的arp数据包进行被动式探测,这种方式就需要网络内设备发送arp包才能被探测到

基于ping命令的探测_第6张图片

三.HPING3

hping3 是一个命令行工具,用于执行高级网络探测、包捕获和包注入等操作。它可以从 TCP/IP 级别深入探测网络,研究网络协议和安全。

hping3 -c 100 -d 120 -S -w 64 -p 80 --flood --rand-source ke.qq.com
 -c XXX =发送的数据报数量
-d XXX =发送到目标机器的每个数据包的大小。单位是字节
-S =只发送SYN数据包
-w 64 =TCP 窗口大小
-p 80 = 目标端口
-flood = 尽可能快地发送数据包,不考虑显示入站恢复。洪水攻击模式
--rand-source =使用随机性的源头IP地址,只能在局域中伪造IP地址,通过路由还可以还原为真实IP地址
2.fping 可以对一个IP段进行扫描
fping -g 192.168.1.0/24 -c > fping.txt

基于ping命令的探测_第7张图片

四.nmap扫描

scapy 侦测

扫描和攻击网络的工具
scapy  进入到scapy

基于ping命令的探测_第8张图片
ARP().display()

>>> ARP().display()
###[ ARP ]###
  hwtype    = Ethernet (10Mb)    #硬件类型
  ptype     = IPv4                          #协议类型
  hwlen     = None               #硬件地址长度(MAC)
  plen      = None                #协议地址长度(IP)
  op        = who-has          #who-has查询
  hwsrc     = 00:0c:29:b3:2a:b6    #源MAC地址
  psrc      = 172.16.1.201          #源IP地址
  hwdst     = 00:00:00:00:00:00   #目标MAC地址
  pdst      = 0.0.0.0            #向谁发送查询请求

>>> IP().display()
###[ IP ]###
  version   = 4      #版本4,即ipv4
  ihl       = None    #首部长度
  tos       = 0x0   #服务
  len       = None   #总长度
  id        = 1           #标识
  flags     =
  frag      = 0           #标志
  ttl       = 64        #生存时间
  proto     = hopopt    # 传输协议 ipv6 逐跳选项
  chksum    = None     #首部校验和
  src       = 127.0.0.1   #源地址
  dst       = 127.0.0.1  #目的地址
  \options   \

>>> ICMP().display()
###[ ICMP ]###
  type      = echo-request     #类型,标识ICMP报文的类型
  code      = 0            #代码
  chksum    = None     #校验和
  id        = 0x0         #标识
  seq       = 0x0
  unused    = ''

注:IP()生成ping包的源IP和目标IP,ICMP()生成ping包的类型。使用IP()和ICMP();两个函数,可以生成ping包,进行探测

sr1(ARP(pdst="192.168.1.1")) 发现原地址psrc=192.168.1.1
sr1(IP(dst="192.168.1.1")/ICMP(),TIMEOUT=1)

nmap

基于ping命令的探测_第9张图片

-sS表示使用SYN进行半连接扫描

基于ping命令的探测_第10张图片
-v 详细信息/版本号
-p 指定端口范围
-A 全部/所有信息
-O 扫描操作系统类型
-T4 加快执行速度(0-5)
-sS TCP SYN 扫描
-sU UDP 扫描
-Pn 非ping扫描
-sn ping扫描(速度快,易被防火墙拦截,没有返回结果)
-F 快速模式
-sV探测端口及版本服务信息
--version-light 设定侦测等级为2
-traceroute显示本机到目标的路由节点
-PY 简单的控制传输协议
-g 指定源端口号
nmap --randomize-hosts --scan-delay 5 192.168.1.100-106
--randomize-hosts 随机扫描
--scan-delay 5 延迟5秒扫描

lsof -i :80查看谁监听了80端口
ps -aux |grep http 查看过滤http

nmap脚本在/usr/share/nmap/scripts目录下
运行脚本例如:
ls membase-http-info.nse(查找存在文件脚本)
nmap --script smb-vuln-* ke.qq.com (运行脚本)(vuln专门扫漏洞的)

                       skipfish (man skipfish 查看用法)
                    skipfish -o text http://192.168.1.120 (扫描内容存放在text文件)
                    skipfish -o text1 @url.txt (扫描多个url,放在url.txt中)
            skipfish -o text2 -l /dvwa/ -S /usr/share/skipfish/dictionaries/minimal.wl http://192.16.1.120/dvwa/
                          #-S 指定字典
                           -X 不检查包含string的URL
              -K 不对指定参数进行Fuzz测试
              --config 指定配置文件
            -D 跨站点爬另外一个域
            -l(小L)每秒最大请求数
            -m 每秒IP最大并发连接数

nc扫描端口

nc是netcat的简写,netcat 是一款网络工具,它允许在网络上进行各种操作,包括端口扫描、数据传输、网络监听和创建简单的 TCP/IP 或 UDP 连接等。

nc参数

-nv 表示我们扫描的目标是个IP地址不做域名解析

-w 表示超时时间

-z 表示进行端口扫描

基于ping命令的探测_第11张图片

你可能感兴趣的:(kali,linux,网络安全)