服务扫描
服务扫描
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