服务扫描

服务扫描
nc

nc -nv ip port
观察返回内容

python socket
import socket
banner=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#  socket.SOCK_STREAM TCP连接
banner.connect(("ip",port))
banner.recv(4096)
banner.close()
exit()
dmitry

dmitry -pb ip
可以显示banner内容

nmap

nmap脚本保存位置:/usr/share/nmap/script
nmap -sT ip -p port --script=banner.nse 显示banner信息
nmap -sV ip port 通过指纹识别端口使用的应用

amap

amap -B ip port 显示banner信息
amap ip -qb 通过指纹识别使用的应用

操作系统扫描
  • 1.通过ttl值
    windows 128 (65-128)
    linux/unix 64(1-64)
    某些linux 255
  • 2.nmap
    nmap -O ip
  • 3.xprobe2 ip
  • 4、被动操作系统扫描 p0f
    输入p0f 即会监听所有流量,并进行操作系统识别
SNMP扫描

SNMP即简单网络管理协议,使用UDP161(默认服务端口)和162端口,若系统配置存在问题,允许任何用户访问SNMP,且community名称为默认,则可以通过客户端访问目标SNMP的服务,查看目标机器的服务等内容。

默认community为public private manager admin等

onesixtyone

onesixtyone ip communityname(ie. public)
onesixitone -c dict.txt -i hosts.txt -o my.log -w 100
可以通过dpkg查找默认字典

snmpwalk,查询结果较全面

snmpwalk ip -c communityname -v 2c -v 指定版本(1、2c、3 版本3加入了很多安全机制)
snmpwalk ip -c communityname -v 2c oid 查询指定oid的值

snmpcheck 展示比较清晰

snmpcheck ip

SMB扫描

Server Message Block 服务器消息块,文件共享、打印机共享等均是使用SMB协议实现,服务端口为139和445

nmap

nmap -v -p 139,445 ip 扫描系统是否开放SMB服务
nmap -p 139,445 ip --script=smb-os-discovery.nse 找到开放139和445的windows主机
nmap -p 139,445 --script=smb-check-vulns --script-args=safe=1 ip 查找存在SMB漏洞的主机,当参数为unsafe时,可能对服务器造成影响,慎用

nbtscan

nbtscan -r ip/mask

enum4linux,扫描结果比较详细

enum4linux -a ip

SMTP扫描,可以进行邮箱用户名枚举
nc

nc ip 25 vrfy username

nmap

nmap ip -p 25 --script=smtp-enum-users.nse --script-args=smtp-enum-users.methods={VRFY}

smtp-user-enum

smtp-user-enum -M VRFY -U users.list -t n IP

网络设备扫描
防火墙识别

nmap -sA ip

负载均衡识别

广域网实现负载均衡可以使用dns轮询、智能dns等方式,服务器负载均衡可以使用nginx、Apache等方式,
负载均衡识别
识别工具lbd:
lbd servername

waf识别

wafw00f servername nmap ip -p port --script=http-waf-detect.nse