主机发现


开一个新坑,将市面上现在流传的 redteam 系列书籍进行一个学习记录,文章内容主要摘自某红队系列丛书。

本章节内容主要是介绍常见的主机扫描和服务扫描工具。

Nmap

官网

https://nmap.org/

安装

Mac os:brew install nmap
Centos:yum install nmap
Ubuntu:apt install nmap

参考手册

https://nmap.org/man/zh/index.html

扫描方式

  • TCP:-sT
  • SYN:-sS
  • ACK:-sA
  • UDP:-sU
  • RPC:-sR
  • ICMP:-sP
  • Disable Port Scan:-sn

常用的扫描方法

  • 扫描10000端口、操作系统、版本
nmap -T4 -A <target>
  • 版本探测
nmap -sV <target>
  • 操作系统探测
nmap -O <target>

其他技巧

  • –host-timeout 主机超时 通常选值:18000
  • –scan-delay 报文时间间隔 通常选值:1000
  • -S <源地址> 定义扫描源地址,为了不被发现

示例

nmap -v -iR 100000 -P0 -p 80

随机选择100000台主机扫描是否运行Web服务器(80端口)。由起始阶段发送探测报文来确定主机是否工作非常浪费时间,而且只需探测主机的一个端口,因此使用 -P0 禁止对主机列表。(-P0 就是 -Pn)

host company.com | cut -d ‘ ‘ -f 4 | nmap -v -iL -(host -l company.com | cut -d ‘ ‘ -f 4 | nmap -v -iL -)

进行DNS区域传输,已发现company.com中的主机,然后将IP地址提供给nmap

host -l <domain> 需要有域系统的管理员权限,才可以列出所有子域名,一般情况下无法使用
cut -d ‘ ‘ -f 4 将输出终端的字符进行分割,-d 指定分割字符,指定分割位置
nmap -v -iL - 解析出来 ip 传给 nmap 扫描,-v 显示详细信息,-iL 指定传入的文件名

输出

$ sudo nmap -O -oG - www.baidu.com  

Nmap 7.92 scan initiated Thu Mar 24 06:16:08 2022 as: nmap -O -oG - www.baidu.com

Host: 110.242.68.3 ()   Status: Up
Host: 110.242.68.3 ()   Ports: 80/open/tcp//http///, 443/open/tcp//https///     Ignored State: filtered (998)Seq Index: 256   IP ID Seq: Randomized

Nmap done at Thu Mar 24 06:16:21 2022 -- 1 IP address (1 host up) scanned in 12.63 seconds
$ sudo nmap www.baidu.com -oG - | awk '/open/{print $2}'
110.242.68.3

awk ‘/open/{print $2}’ 正则匹配含 open 的行,以空格为分割取第二列

$ sudo nmap 110.242.68.4/29 -oG - -sP

Nmap 7.92 scan initiated Thu Mar 24 06:28:33 2022 as: nmap -oG - -sP 110.242.68.4/29

Host: 110.242.68.1 ()   Status: Up
Host: 110.242.68.2 ()   Status: Up
Host: 110.242.68.3 ()   Status: Up
Host: 110.242.68.4 ()   Status: Up
Host: 110.242.68.5 ()   Status: Up
Host: 110.242.68.6 ()   Status: Up
Host: 110.242.68.7 ()   Status: Up

Nmap done at Thu Mar 24 06:28:47 2022 -- 8 IP addresses (7 hosts up) scanned in 14.25 seconds

masscan

项目地址

https://github.com/robertdavidgraham/masscan

安装

sudo apt-get --assume-yes install git make gcc
git clone https://github.com/robertdavidgraham/masscan
cd masscan
make

该工具兼容Nmap的参数

现在可以直接apt安装

apt install masscan

高级选项

sudo masscan 121.37.71.222 --port 3389 --adapter-ip 192.168.186.26

  • –adapter-ip 指定发包的IP地址
  • –adapter-port 指定发包的源端口
  • –adapter-mac 指定发包的源MAC地址
  • –router-mac 指定网关的MAC地址
  • –exclude IP地址范围黑名单,防止masscan扫描
  • –includefile,-iL 读取一个范围列表进行扫描
  • –wait 指定网发送包后的等待时间,默认为10秒

nbtscan

kali中已经安装:

┌──(kali㉿kali)-[~]
└─$ whereis nbtscan
nbtscan: /usr/bin/nbtscan /usr/share/man/man1/nbtscan.1.gz
                                                                                                              
┌──(kali㉿kali)-[~]
└─$ nbtscan

NBTscan version 1.7.1.
This is a free software and it comes with absolutely no warranty.
You can use, distribute and modify it under terms of GNU GPL 2+.

Usage:
nbtscan [-v] [-d] [-e] [-l] [-t timeout] [-b bandwidth] [-r] [-q] [-s separator] [-m retransmits] (-f filename)|(<scan_range>) 

nbtscan示例

nbtscan -r 192.168.0.1/24
扫描整个C段

nbtscan 192.168.0.1-100
扫描一个范围

nbtscan -v -s : 192.168.0.0/24
以 : 分割显示结果

nbtscan -f <File>
从文件读取扫描范围

高级用法

┌──(kali㉿kali)-[~]
└─$ nbtscan -v -s ' ' 192.168.0.112 
192.168.0.112 DESKTOP-R5A39I1 00U
192.168.0.112 DESKTOP-R5A39I1 20U
192.168.0.112 WORKGROUP       00G
192.168.0.112 MAC 18:26:49:4c:f8:4c
                                                                                                              
┌──(kali㉿kali)-[~]
└─$ nbtscan -v -s ' ' 192.168.0.112 | awk '{print $1}' | uniq
192.168.0.112

awk ‘{print $1}’取第一列

uniq 筛选出重复字符串

hping3

hping3主要是测试防火墙的拦截规则,对网络设备进行测试

常用模式

  • -0 –rawip IP原始报文
  • -1 –icmp ICMP模式
  • -2 –udp UDP模式
  • -8 –scan 扫描模式
  • -9 –listen 监听模式
sudo hping3 --scan 1-30,70-90 -S www.baidu.com

SYN方式扫描主机端口

可以看到,目标主机回复:S..A,代表SYN/ACK

sudo hping3 -S -a 114.114.114.114 -p 53 114.114.114.114 -c 5

测试防火墙对ICMP包的反应,是否支持traceroute,是否开放某个端口,对防火墙进行拒绝服务攻击(Dos attack)。例如,以Land Attack方式测试目标防火墙(Land Attack是将发送源地址设置为与目标地址相同,诱使目标机与自己不停地建立链接)。

DRDDOS

sudo hping3 --udp -a 114.114.114.114 -p 53 114.114.114.114 -c 5

基于UDP的DOS


文章作者: f1veseven
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 f1veseven !
评论
  目录