信息搜集
DNS信息搜集:
ping 域名/ip
whois 域名/ip //查看域名的详细信息
nslookup IP/域名
dig 域名/ip //查看域名解析的详细信息
dig @
如:dig @ns.watson.ibm.com testfire.net
dnsenum baidu.com
dnsenum -f dns.txt(域名字典) –dnsserver IP/域名 –o output.txt
dnsmap baidu.com –w wordlist.txt –c output.csv
dnsmap baidu.com -w wordlist.txt -c output.csv(只能输出scv结果)
DNS枚举:
fierce -dns example.com
fierce –dns example.com [–wordlist myWordList.txt]
通过查询 DNS 服务器枚举主机名
类似工具:subDomainsBrute 和 SubBrute 等等
路由信息搜集:
traceroute 目标域名
指纹识别:
操作系统指纹:
nmap -O IP
use auxiliary/scanner/smb/smb_version
xprobe2 ip/域名
xprobe2 -v -p tcp:80:open IP
http 指纹:
nc -nvv ip port
telnet ip port
httsquash –r IP/域名 (backtrack: pentest/scanners/httsquash)
whatweb IP/域名
端口探测
nmap -T4 –sS –Pn IP
nmap -T4 –sV –Pn IP
amap –A IP 端口号
amap –bqv IP 端口号
zmap -p 端口 ip段 -o output.txt -B 10M -i eth0
nc v w 1 target z 11000
主机发现
arping -c 请求包数量 IP段
genlist -s 10.10.10.\*
nbtscan 192.168.1.1-255
nmap -sP -PN IP段 | grep for
nmap -PU -sn IP段
use auxiliary/scanner/discoveryarp-sweep
netdiscover
fping cat IP.txt | grep alive > alive.txt
fping -a -s -f /root/ip.txt
*IP文件中,每个ip或域名占一行。-g 10.10.10.0 10.10.10.255
主机发现,生成存活主机列表
$ nmap -sn -T4 -oG Discovery.gnmap 192.168.56.0/24 && grep "Status: Up" Discovery.gnmap | cut -f 2 -d ' ' > LiveHosts.txt
注:
我们可以利用其它在线主机作为诱饵主机,这样扫描时会尽量少留下我们自己的ip,增加追查难度。
举例:192.168.1.15,192.168.1.16是诱饵主机,192.168.1.12是我们要扫描的主机
nmap -D192.168.1.15,192.168.1.16,ME -p 21,22,80,443 -Pn 192.168.1.12
参数解释
-D开关表示实施一次诱饵扫描,-D后面紧跟选择好的诱饵主机的IP地址列表并且这些主机都在线
-Pn不发ping请求包,-p选择扫描的端口范围。“ME”可以用来代替输入自己主机的IP。
防火墙探测
版本探测:wafw00f URL
nmap扫描策略
nmap -sP -PE -PP -PS21,22,23,25,80,113,31339 -PA80,113,443,10042 –source-port 53 -T4 -iL tcp-allports-1M-IPs
-iL tcp-allports-1M-Ips:使用产生的IP地址
–source-port 53 :指定发送包的源端口为53,该端口是DNS查询端口,
一般的防火墙都允许来自此端口的数据包
-T:时序级别为4,探测速度比较快
以TCP SYN包方式探测目标机的21,22,23,25,80,113,31339端口,以TCP ACK包方式探测对方80,113,443,10042端口
发送ICMP ECHO/ICMP TIMESTAMP包探测对方主机
只要上述的探测包中得到一个回复,就可以证明目标主机在线。
过滤状态:
nmap -sS -T4 www.fakefirewall.com //探测端口开放状态
nmap -sF -T4 www.fakefirewall.com // FIN扫描识别端口是否关闭
nmap -sA -T4 www.fakefirewall.com // ACK扫描判断端口是否被过滤
nmap -sW -p- -T4 docsrv.caldera.com //发送ACK包探测目标端口(只适合TCPIP协议栈)
FIN扫描:收到RST回复说明该端口关闭,否则说明是open或filtered状态。
ACK扫描:未被过滤的端口(无论打开、关闭)都会回复RST包。
将ACK与FIN扫描的结果结合分析,我们可以找到很多开放的端口。例如7号端口,FIN中得出的状态是:open或filtered,从ACK中得出的状态是 unfiltered,那么该端口只能是open的。
电子邮件/用户名/子域名信息搜集工具
theharvester:theharvester -d baidu.com -l 100 -b bing (通过bing搜集)
通过LinkedIn.com查找搜集目标用户名
theharvester -d baidu.com -l 100 -b linkedin.com
Recon-ng工具
root@kali:~/recon-ng# ./recon-ng
[recon-ng][default] > use recon/companies-contacts/linkedin_crawl
[recon-ng][default][linkedin_crawl] > set URL http://www.xxx.com/
[recon-ng][default][linkedin_crawl] > run
查看联系人
[recon-ng][default] > show contacts
利用搜索引擎搜集敏感信息:
以下命令可组合查询,威力更强大(最好不要带 www,因为不带的话可以检测二级域名)
site:域名(指定查某站点的所有页面)
inurl:inc(sql,bak,sql,mdf,login) //搜索含指定文件的页面
filetype:mdb //查找指定文件
inurl:"Vieweframe?Mode= //搜索在线监控设备
intext:to parent directory //IIS配置不当可遍历目录
parent directory site:testfire.net
例:
site:abc.com inurl:login(登录):
site:abc.com filetype:mdb(inc,conf,sql):
intext:to parent directory intext:to parent directory
site:abc.com inurl:asp?id=
site:example.com intext:管理|后台|登陆|
用户名|密码|验证码|系统|帐号|manage|admin|login|system
site:heimian.com inurl:login|admin|manage|manager|admin_login|login_admin|system
自动化信息搜集和安全审计工具:
Unicornscan
Unicornscan 是一个信息收集和安全审计的工具。
us H msf Iv IP p 165535
us H mU Iv IP p 1 65535
H 在生成报告阶段解析主机名 Iv 详细结果
m 扫描类型 ( sf: tcp , U:udp )
Metagoofil 元数据收集工具
$ python metagoofil.py d example.com t doc,pdf l 200 n 50 o examplefiles f results.html
Samba探测
利用smbclient工具可以获得这个TCP的139端口服务的旗标
smbclient -L 192.168.50.102 -N
smbclient连接到192.168.50.102,然后显示服务信息。-N选项表示没有目标的root密码。
我们可以利用这个服务的版本信息来搜索针对这个服务可能存在的漏洞,如:searchploit samba
枚举 Samba
nmblookup A target
smbclient //MOUNT/share -I target -N
rpcclient U "" target
enum4linux target
SNMP探测
1.windows: snmputil walk 目标IP public .1.3.6.1.4.1.77.1.2.25
(.1.3.6.1.4.1.77.1.2.25 "目标标识符(OID)",是为了得到更多信息)
2.linux:(net-snmp工具包)
snmpget -c public -v 2c 目标IP public system.sysName.0(=wave)
snmpwalk -c public -v 2c 目标IP #更快窃取MIB(与OID有关)
枚举 SNMP
snmpget v 1 c public IP
snmpwalk v 1 c public IP
snmpbulkwalk v2c c public Cn0 Cr10 IP
snmp自动探测工具
windows: SNScan(www.foundstone.com/us/resources/proddec/scan.htm)
linux: onesixtyone
nmblookup -A target
smbclient //MOUNT/share -I target -N rpcclient -U "" target 枚举Snmp
挂载远程 Windows 共享文件夹
smbmount //X.X.X.X/c$ /mnt/remote/ -o username=user,password=pass,rw
mount –t smbfs //192.168.0.103/c /mnt/remote -o username=administrator
mount.cifs //192.168.2.230/job /mnt/share -o username=administartor%123456
smbclient //192.168.1.114/d -U administrator%333333
新版:
mount -t cifs -o username=user,pass=password //127.0.0.1/shared /mnt
linux下NetBIOS信息探测: nmbscan 工具(nmbscan.g76r.eu/)
服务扫描
服务扫描
1.Web服务:
nmap -sS -PS80 -p 80 –oG web.txt
use auxiliary/sanner/http/webdav_scanner(Webdav服务器)
2.SSH服务:
Nmap
use auxiliary/sanner/ssh/ssh_version
猜解:use auxiliary/sanner/ssh/ssh_login
3.Telnet服务
use auxiliary/sanner/telnet/telnet_version
4.FTP服务
use auxiliary/sanner/ftp/ftp_version
use auxiliary/sanner/ftp/anonymous //探测是否允许匿名登录
5.SMB服务:
猜解:use auxiliary/smb/smb_login(易被记录)
use exploit/windows/smb psexec #凭证攻击登录域控制器
use auxiliary/admin/smb/psexec_command #命令执行
6.Oracle服务:
nmap -sS -p 1521 IP
use auxiliary/sanner/oracle/tnslsnr_version
7.Mssql服务:
nmap -sS -p T:1433,U:1434 IP nmap –sU 192.168.33.130 -p1434
use auxiliary/sanner/mssql/mssql_ping
8.Mysql服务:
use auxiliary/sanner/mysq/mysql_version发现mysql服务
use auxiliary/scanner/mysql/mysql
9.VNC服务
use auxiliary/sanner/vnc/vnc_none_auth //探测VNC空口令
10.SNMP服务:
use auxiliary/sanner/snmp/snmp_enum
猜解:use auxiliary/sanner/snmp_login
admsnmp IP –wordfile snmp.password [-outputfile
利用字符串获取系统信息:./snmpenum.pl IP 字符串 cisco.txt(linux.txt)
11.OpenX11空口令:
use auxiliary/scanner/x11/open_x11
当扫描到此漏洞的主机后可以使用 xspy工具来监视对方的键盘输入:cd/pentest/sniffers/xspy/
xspy –display 192.168.1.100:0 –delay 100
“Login: ” “password =” filetype: xls ( 搜索存储在excel文件中含有password的数据)。
allinurl: auth_user_file.txt (搜索包含在服务器上的 auth_user_file.txt 的文件)。
filetype: xls inurl: “password.xls” (查找 用户名和密码以excel格式)这个命令可以变为“admin.xls”.
intitle: login password (获取登陆页面的连接,登陆关键词在标题中。)
intitle: “Index of” master.passwd (密码页面索引)
index of / backup ( 搜索服务器上的备份文件)
intitle: index.of people.lst (包含people.list的网页)
intitle: index.of passwd.bak ( 密码备份文件)
intitle: “Index of” pwd.db (搜索数据库密码文件).
intitle: “Index of .. etc” passwd (安装密码建立页面索引).
index.of passlist.txt (以纯文本的形式加载包含passlist.txt的页面).
index.of.secret (显示包含机密的文档,.gov类型的网站除外) 还可以使用: index.of.private
filetype: xls username password email (查找表格中含有username和password的列的xls文件).
14.”# PhpMyAdmin MySQL-Dump” filetype: txt (列出包含敏感数据的基于PHP的页面)
inurl: ipsec.secrets-history-bugs (包含只有超级用户才有的敏感数据). 还有一种旧的用法 inurl: ipsec.secrets “holds shared secrets”
inurl: ipsec.conf-intitle: manpage
inurl: “wvdial.conf” intext: “password” (显示包含电话号码,用户名和密码的连接。)
18inurl: “user.xls” intext: “password” (显示用户名和密码存储在xls的链接。)
*19 filetype: ldb admin (web服务器查找存储在数据库中没有呗googledork删去的密码。)
*20inurl: search / admin.php (查找admin登陆的php页面). 如果幸运的话,还可以找到一个管理员配置界面创建一个新用户。
*21 inurl: password.log filetype:log (查找特定链接的日志文件。)
*22 filetype: reg HKEY_CURRENT_USER username (在HCU (Hkey_Current_User)路径中查找注册表文件(registyry)。)
还有很多命令可以用来抓取密码或者搜素机密信息。
“Http://username: password @ www …” filetype: bak inurl: “htaccess | passwd | shadow | ht users” (这条命令可以找到备份文件中的用户名和密码。)
filetype:ini ws_ftp pwd (通过ws_ftp.ini 文件查找admin用户的密码)
intitle: “Index of” pwd.db (查找加密的用户名和密码)
inurl:admin inurl:backup intitle:index.of (查找关键词包含admin和backup的目录。)
“Index of/” “Parent Directory” “WS _ FTP.ini” filetype:ini WS _ FTP PWD (WS_FTP 配置文件, 可以获取FTP服务器的进入权限)
ext:pwd inurl:(service|authors|administrators|users) “# -FrontPage-”
filetype: sql ( “passwd values *” |” password values *” | “pass values **“) 查找存储在数据库中的sql代码和密码。)
1.自己扫码加入下载学习,免费的:
2.左下角阅读原文,获得更多免费安全资源,羊毛薅起来!!!