MENU

信息收集

December 14, 2021 • Read: 843 • Penetration testing

信息收集 - 搜索引擎

这里要说的除了常见的Google高级搜索语法外,还有Shodan,ZoomEye等网络资产扫描引擎

常见Google语法指令大全

基础语法

"xxx": 将要搜索的关键字用引号括起来 (表示完全匹配,即关键词不能分开,顺序也不能变

+:"xxx"+baidu.com
搜索xxx与baidu.com 相关的内容

-:"xxx"-baidu.com
搜索结果里面除去baidu.com 相关的内容


site:

指定域名,如:site:edu.cn 搜索教育网站


inurl:

用于搜索包含的url关键词的网页,如:inurl:uploads 文件上传


intitle:

搜索网页标题中的关键字,如:intitle:“robots.txt”


intext:

搜索网页正文中的关键字,如:intext:登陆/注册/用户名/密码


filetype:

按指定文件类型即文件后缀名搜索,如:filetpye:php/asp/jsp


cache:

已经删除的缓存网页,推荐组合使用


语法扩展

查找后台

site:xx.com intext:管理|后台|登陆|用户名|密码|系统|帐号|admin|login|sys|managetem|password|username

site:xx.com inurl:login|admin|manage|member|admin_login|login_admin|system|login|user


查找sql注入漏洞

inurl:.php?id=

inurl:.asp?id=


查找文件上传点:

site:xx.com inurl:file| uploadfile


site:xx.com inurl:file| uploadfile

intitle:“Index of /admin”

intitle:“Index of /root”

intitle:“Index of /” +password.txt

intitle:phpinfo()或者inurl:phpinfo.php


查找未授权访问phpmyadmin

inurl:.php? intext:CHARACTER_SETS,COLLATIONS, ?intitle:phpmyadmin

空间搜索引擎
SHODAN

基本语法

hostname:"主机或域名"
如 hostname:"google''
port:"端口或服务"
如 port:"21"
ip : "ip地址"
如 ip : "168.205.71.64"
net:"IP地址或子网"
如 net:"210.45.240.0/24"
vuln :指定漏洞的cve
如 vuln:CVE-2015-8869但是这个命令最好搭配起来使用,如 country:CN vuln:CVE-2014-0160
os :"操作系统"​
如 os:"centOS"
isp:"ISP供应商"
如 isp:"China Telecom"
product:"操作系统/软件/平台"
如 product:"Apache httpd"
version:"软件版本"
如 version:"3.1.6"
geo:"经纬度"
如 geo:"39.8779,116.4550"
country`:"国家"
如 country:"China"
country:"UN"
city:"城市"
如 city:"Hefei"
org:"组织或公司"
如 org:"google"
before/after:"日/月/年"
如 before:"25/09/2017"
after:"25/09/2017"
asn : "自治系统号码"
如 asn:"AS2233"

使用时可以查看shodan中文文档
BINARYEDGE

FOFA

参考链接

是白帽汇推出的一款网络空间资产搜索引擎。它能够帮助用户迅速进行网络资产匹配、加快后续工作进程。例如进行漏洞影响范围分析、应用分布统计、应用流行度排名统计等。

ZoomEye

ZoomEye 是一款针对网络空间的搜索引擎,收录了互联网空间中的设备、网站及其使用的服务或组件等信息。

ZoomEye 拥有两大探测引擎:Xmap 和 Wmap,分别针对网络空间中的设备及网站, 通过 24
小时不间断的探测、识别,标识出互联网设备及网站所使用的服务及组件。 研究人员可以通过 ZoomEye
方便的了解组件的普及率及漏洞的危害范围等信息。

虽然被称为 “黑客友好” 的搜索引擎,但 ZoomEye 并不会主动对网络设备、网站发起攻击,收录的数据也仅用于安全研究。ZoomEye
更像是互联网空间的一张航海图。

信息收集 - 资产扫描

资产扫描包括如下内容:扫描子域名和扫描 C 段和旁站

旁站:同服务器不同站点
C 段:同网段不同服务器

扫描子域名

  • 经典的搜索引擎

直接 site:xx.com 即可
但是比较大的企业的子域名都是成百上千的
此方法仅对小站点有效,故衍生出了子域名查询工具和网站

  • 域名注册人反查

一般大企业都是用企业邮箱注册大批量的二级域名,那么我们直接用企业邮箱反查即可

使用站长whois即可
可以先查询
ICP备案号查询
公网安信息查询
然后再进行whois反查
也可以使用云悉资产查询 再进行whois反查

  • 在线网站查询

phpinfo.me 大佬的在线子域名查询

子成君大佬的在线子域名查询

  • 几个子域名扫描工具和脚本

layer子域名挖掘机5.0
链接:https://pan.baidu.com/s/1kpPiymBuDDcOvJmwzPYWlw
提取码:m1ka

subDomainsBrute
lijiejie 大佬写的子域名收集工具
GitHub地址:https://github.com/lijiejie/subDomainsBrute
源码下载下来是 python 文件,环境为 Python2,需要安装一个包:

pip install dnspython gevent

猪猪侠:https://github.com/ring04h/wydomain
子域名枚举与地图标记:https://github.com/le4f/dnsmaper
高效精准的子域名爆破工具:https://github.com/TheRook/subbrute

  • 扫描 C 段 / 旁站

phpinfo.me 除了子域名,也搞 C 段 / 旁站:https://phpinfo.me/bing.php
0x4i 大佬的网站:http://www.webscan.cc/
NTscan(变态扫描器)
链接:https://pan.baidu.com/s/122RU12kpuueLeyX2vayjmw
提取码:m1ka

K8Cscan
K8Team 出品,截至写这篇文章时,这个工具最后更新时间为 2019-05-06

详细介绍:https://www.cnblogs.com/k8gege/p/10519321.html
这个工具可配合插件使用:

插件教程:

插件9: Weblogic漏洞扫描&GetShell Exploit
https://www.cnblogs.com/k8gege/p/10779728.html

插件8:K8Cscan插件之Cisco思科设备扫描
https://www.cnblogs.com/k8gege/p/10679491.html

插件7: K8Cscan插件之多种方式操作系统版本探测
https://www.cnblogs.com/k8gege/p/10673707.html

插件6:  K8Cscan插件之Wmi爆破Windows密码
https://www.cnblogs.com/k8gege/p/10650659.html 

插件5:  K8Cscan插件之Mysql密码爆破
https://www.cnblogs.com/k8gege/p/10650642.html

插件4: K8Cscan插件之FTP密码爆破
https://www.cnblogs.com/k8gege/p/10650630.html
插件3: K8Cscan新增C段旁站扫描插件\子域名扫描插件
https://www.cnblogs.com/k8gege/p/10626465.html

插件2: 调用c#编写的DLL扫描内网WEB主机Banner以及标题
DLL源码 https://www.cnblogs.com/k8gege/p/10519512.html
已编译:https://www.cnblogs.com/k8gege/p/10650610.html

插件1: 配置Cscan.ini 调用外部程序S扫描器扫描C段主机开放端口
配置Cscan.ini
[Cscan]
exe=s.exe
arg=TCP $ip$ 21,80,3306,3389,1521

命令行下执行cscan
姿势太多,后面用到再现学现卖
nmap
此部分只简单介绍 nmap 的主机解析部分,nmap 的详细介绍到端口扫描那篇去看。

nmap 主机发现部分主要有如下参数:

-Pn 将所有指定的主机视为已开启状态,跳过主机发现过程
-PS TCP SYN ping,发送一个设置了SYN标志位的空TCP报文,默认端口为80,也可指定端口
-PA TCP ACK ping,发送一个设置了ACK标志位的空TCP报文,默认端口为80,也可指定端口
-PU UDP ping,发送一个空的UDP报文到指定端口,可穿透只过滤TCP的防火墙
-PR 使用ARP ping

扫描主机用到的 -Px 和扫描端口用到的 -sx 基本是一样的功能:

此处我们想要实现以最快速度最全面的扫描指定 C 段内的所有存活主机但是不扫描端口:
nmap -v -sn -Pn -PS -n x.x.x.1/24

信息收集 - 目录扫描

工具很多就不一一列举了
御剑专业版1.0
链接:https://pan.baidu.com/s/14LiBH8wSbfcIn0QMoqNMoA
提取码:m1ka

BBScan
Github:https://github.com/lijiejie/BBScan

dirsearch
Github:https://github.com/maurosoria/dirsearch
参考链接

GitHack

GitHack 是一个.git 泄露利用脚本,通过泄露的.git 文件夹下的文件,重建还原工程源代码。
渗透测试人员、攻击者,可以进一步审计代码,挖掘:文件上传,SQL 注射等 web 安全漏洞。

GitHub:https://github.com/lijiejie/GitHack

Dirmap

An advanced web directory & file scanning tool that will be more powerful than DirBuster, Dirsearch, cansina, and Yu Jian. 一个高级web 目录、文件扫描工具,功能将会强于 DirBuster、Dirsearch、cansina、御剑。

Github:https://github.com/H4ckForJob/dirmap
参考链接

7kbscan-WebPathBrute
Github:https://github.com/7kbstorm/7kbscan-WebPathBrute

信息收集 - CMS识别

Webfinger

这是一款很小巧的工具,由Python2编写,使用Fofa的指纹库

Github地址:https://github.com/se55i0n/Webfinger

御剑WEB指纹识别系统
链接:https://pan.baidu.com/s/1r2fNa1doShnPdM57fPyVWA
提取码:m1ka

Cmscan

一款小巧的工具

Github:https://github.com/ldbfpiaoran/cmscan

Gwhatweb

使用协程技术,大大提高IO操作较多的程序的效率

Github:https://github.com/boy-hack/gwhatweb

FingerPrint

Perl语言编写,使用Wappalyzer工具的库。

Github:https://github.com/tanjiti/FingerPrint

Test404轻量CMS指纹识别

   暂无资源

whatweb
kali2021自带工具

Github:https://github.com/urbanadventurer/WhatWeb/releases/tag/v0.5.5

WebEye

指纹库不是基于 md5 之类的,而是类似于 fofa 通过 http 头信息、关键字等进行快速识别。

GitHub 地址:https://github.com/zerokeeper/WebEye/

云悉在线 WEB 指纹识别

上面资产扫描有提到噢

信息收集 - 端口扫描及服务识别

zmap

是一个开源网络扫描工具,可以帮助研究人员快速的进行全网检测。只需要一台机器和足够上行网络速度,就可以以达到千兆以太网的理论值速度并在 45分钟内扫描全网络 IPv4 地址。

GitHub:https://github.com/zmap/zmap
kali执行:sudo apt install zmap -y 即可完成安装

常用参数如下:

-p, –target-port=port:需要扫描的TCP 端口号 (比如443)
-o, –output-file=name:将扫描结果输出到文件
-b, –blacklist-file=path:黑名单文件,即排除在扫描范围外的地址。在conf/blacklist.example文件中有实例,每同一行写一个网段,比如192.168.0.0/16。
-n, –max-targets=n,检测的上限范围,可以是一个数字如-n 10000,也可以是扫描地址空间中的百分比
-N, –max-results=n:接收到一定数量的结果后退出扫描
-t, –max-runtime=secs:最大扫描(发包)时间
-r, –rate=pps:设置发包速率(packets/sec)
-B, –bandwidth=bps:设置发包带宽(bits/second
-c, –cooldown-time=secs:接受返回的时间(default=8)
-T, –sender-threads=n:发包的线程数 (默认为1):-P, –probes=n 送达每个IP的探测器数量(默认为1):网络选项
-s, –source-port=port|range:发包的源端口(s)
-S, –source-ip=ip|range:发包的源IP,也可以是IP地址段
-G, –gateway-mac=addr:发包的网关MAC地址
-i, –interface=name:网络端口 –list-probe-modules:列出可用的探测器模块
-M, –probe-module=name:选择探测器模块 (默认为tcp_synscan) –probe-args=args:设置探测器模块的参数 –list-output-fields:列出所选择的探测器模块 输出选项:ZMap
允许用户定义和编写自己的输出模块。输出模块负责处理探测器模块的返回结果并且展示给用户。
–list-output-modules:列出所有输出模块
-O, –output-module=name:设置输出模块 –output-args=args:设置输出模块的参数
-f, –output-fields=fields 列出所选择的输出模块:–output-filter 输出模块过滤器:附加选项
-C, –config=filename:读一个配置文件,其中可以包含特殊的选项
-q, –quiet:安静模式
-g, –summary:在扫描结束后,打印配置和结果汇总
-v, –verbosity=n:log的等级 (0-5, 默认为3)
-h, –help:显示帮助
-V, –version:打印版本 虽然 zmap 的 -p 选项是指定端口,但是不能用 1-65535 这样的参数

zmap 的用途更多的偏向于扫描指定范围内主机的某个指定端口是否开放,比如:

zmap -p 80 1.2.3.4 10.0.0.3:扫描1.2.3.4,10.0.0.3这两个ip的80端口 zmap -p 80
10.0.0.0/8 192.168.0.0/16:
扫描扫描两个子网的80端口 zmap -p 80:
在Internet上查找tcp/ 80上的主机并输出到stdout zmap -N 5
-B 10M -p 80: 找到5个HTTP服务器,以10 Mb/s扫描

myscan
很好搜索到 我就不放资源了

nmap
这个工具我很早就想仔细学习 就趁着这次机会仔细学习一下
namp语法即常用命令
nmap语法格式: nmap [空格] [选项/多选项/协议] [空格] [目标]

例:       nmap -A ip , 或 nmap -A ip -p 1-65535 (对一个ip范围进行全面扫描)

  • -A         :全面扫描. 综合扫描. 是一种完整扫描目标信息的扫描方式.
  • --exclude      : 排除指定的地址 例: nmap 192.168.205.0/24 --exclude ip 那么就不会对ip进行扫描,
  • --excludefile     : 排除指定的地址列表 例: nmap 192.168.205.0/24 --excludefile list.txt 那么就不会对list.txt里面的地址进行扫描,
  • -iL         : 扫描一个列表文件 例 nmap -iL list.txt
  • -sP        : Ping扫描,效率高,返回信息少.   例: nmap -sP ip
  • -P0(Pn)      :无Ping扫描,可以躲避防火墙防护,可以在目标主机禁止ping的情况下使用
  • -PS        :TCP SYN Ping扫描
  • -PA        :TCP ACK Ping扫描
  • PR        : ARP Ping扫描
  • -n         : 禁止DNS反向解析
  • -T         : 时序选项, -TO-T5. 用于IDS逃逸,0=>非常慢,1=>缓慢的,2=>文雅的,3=>普通的,4=>快速的,5=>急速的
  • -p         : 指定端口扫描
  • -F         : 快速扫描
  • -f          : 报文分段
  • -D         : ip地址欺骗 例 nmap -D RND:5 ip10 RND:为生成随机ip地

址  

  • -sS         : TCP SYN 扫描,速度快, 1秒1000次左右. 较为隐蔽.
  • -sT         : TCP连接扫描
  • -sU        : UDP扫描,扫描非常慢,容易被忽视
  • -sN,-sF       : 隐蔽扫描
  • -sI         : 空闲扫描,允许端口完全欺骗,可以允许不使用自身ip的情况下发起扫描,非常之隐蔽的扫描.但得先寻找空闲主机,指令为 nmap -p80
    -open -script ipidseq 192.168......,第二种是往事随机寻找, nmap -p80 -open -script ipidseq -iR 2000 (iR选项代表随机选择目标.2000带表选择的数量,-open代表只选择端口开放的空闲主机)
  • -p         : 扫描所有端口 1-65535
  • -top-ports      : 只扫描开发概率最高的端口 后面跟上数值 例 nmap -top-ports 100 , 就是扫描概率最高的前100个端口

<版本探测相关>:

  • -sV         : 版本探测 ,通过相应的端口探测对应的服务,根据服务的指纹识别出相应的版本.
  • -sV --allports     : 只有使用--allports才能扫描所有的端口,默认情况下回跳过如 TCP9100端口(hp打印机专用端口)
  • --version-intersity   : 设置扫描强度 0-9 ,数值越大越有可能被识别,花费时间越多,默认是7
  • --version-ligth    : 扫描强度,轻量级扫描(2) ,等用于--version-intersity 2
  • --version-all     :扫描强度,重量级扫描(9) ,等同于--version-intersity 9
  • --version-trace    : 获取详细的版本信息
  • -sR         : 判断开放端口是否为RPC端口, 如果是返回程序和版本号.
  • --resaon      : 显示主机存活原因
  • -T(0-5) , 默认为3,

0 即Paranoid模式, 为了避开IDS的检测使扫描速度非常慢,nmap串所有的扫描.每隔最少5分钟才发送一个包.

1 即Sneaky模式,和0也差不多,区别就是发送数据包的间隔为15秒.

2 即Polite模式,不增加太大的网络负载.串行每个探测,并使每个探测间隔0.4秒

3 即Normal模式,nmap的默认选项,在不使网络过载或者主机/端口丢失的情况下尽可能快速的扫描.

4 即Aggressive模式,设置5分钟的超时限制,对每台主机的扫描时间不超过5分钟,并且对每次探测回应的等待时间不超过1.5秒.

5 即Insane模式, 只适合快速的网络或者不在意丢失默些信息,对每台主机的超时限制为75秒,对每次探测只等待0.3秒.

nmap支持多元化的语法格式

  • nmap 192.168.205.22 单个目标扫描
  • nmap 192.168.205.22 192.168.205.33 多个目标扫描
  • nmap 192.168.205.10,20,30 多个目标扫描简写
  • nmap 292.168,205.1-30   指定范围段扫描
    具体的用法可以去看看这篇文章:https://www.cnblogs.com/php09/p/10530057.html#autoid-7-0-0

参考链接

参考链接一
参考链接二
参考链接三
参考链接四
参考链接五

Last Modified: March 2, 2022
Archives Tip
QR Code for this page
Tipping QR Code