1-6信息收集
文章目录
####信息收集
作用
- 了解安全架构
- 缩小攻击范围
- 描绘拓扑网络
- 建立脆弱点数据库
分类
- 主动信息搜集:与目标主机进行直接交互,缺点是会记录自己的操作信息
- 被动信息搜集:不与目标主机进行直接交互,间接获取
模型
黑客攻击模型:踩点—定位—入侵—留后门—抹痕迹
思路
域名信息
-
whois协议:查询某网站是否被注册以及注册的数据库信息
[域名查询]:https://whois.chinaz.com/ https://whois.domain.cn/
-
子域名:*域名的下一级
工具:子域名挖掘机
旁站C段
- 查询旁站:某服务器的同IP所有域名,即是和目标网站在同一台服务器上的其它的网站,http://www.webscan.cc/
- 查询C段:某服务器IP所在C段的所有域名
征信查询
针对企业信息
备案号查询
根据备案号(网站是否合法注册)查询备案号下的所有合法网站
DNS查询
获取域名或IP地址并进行反向查找同一服务器承载的其他域
IP查询
根据ip地址查询同一IP地址的其他信息
密码收集
GitHub.com(账号tys123,密码[email protected])是全球最大的面向开源且私有软件的托管平台
Google hacking
- 搜索引擎:bing.com、baidu.com、google.com
- 语法
- intitle:关键字:在标题里面搜索关键字。例:intitle:公司
- inurl:关键字:在url里面搜索关键字。例:url:.php?id= intitle:公司(联合使用)
- intext:关键字:网页正文含的关键字
- site:关键字:搜索特定的网站或网站域名
- filetype:搜索特定文档格式
网络架构
- 操作系统类型:可以通过修改url的大小写来区分是windows还是linux
- 数据库类型:sql server、mysql、mariadb、oracle、access等
- web中间件:nginx、apache、jboss、tomcat、iis、weblogic等
- 网站开发语言:php、asp、aspx、jsp、py等
指纹识别
- 开源cms:开源内容的管理系统
- 探测网站是否使用开源cms
- 开源cms有:
- 指纹识别网站有 :BugScaner、云悉指纹、WhatWeb
信息收集技术----端口扫描
- 通常使用端口扫描工具详细手机开放的端口服务、应用版本、操作系统、活跃主机等信息
- 流程:存活判断(ping、tcp、udp)----->端口扫描(tcp、udp)----->服务识别(基于端口(准确率低,效率高)、banner(准确率中、效率高)、指纹(不同系统不同服务具有的不同协议栈,准确率高、效率低))
- 端口扫描器:
- 主流方式:TCP connect scan(三次握手)、TCP SYN Scan(半开放,即三次握手中没有最后一步确认)、UDP Scan
Nmap端口扫描器—诸神之眼
-
Network Mapper,具备主机探测、服务版本检测、操作系统检测、网络路由跟踪、Nmap脚本引擎功能
-
命令格式:nmap [参数] IP/ip段/主机名。例:nmap -v -sS -O 10.2.2.2
-
TCP端口扫描选项
- -sT:使用TCP连接扫描,建立成功则端口开放
- -sS:半开连接(SYN stealth)扫描,收到SYN/ACK则开放,收到RST/ACK则关闭
- -sA:使用ACK标志位数据包,若回复RST则目标端口未被过滤
- -sN:TCP null扫描不设置标志位,若回复RST则目标端口关闭,否则打开或过滤
- -sF:只设置FIN标志位,若回复RST则目标端口关闭
- -sX:TCP只设置FIN、PSH、URG,若回复RST则目标端口关闭
- -sM:使用FIN/ACK标志位,若端口打开会丢弃数据包,否则回复RST
- -sW:窗口扫描,若返回的RST数据包中窗口字段是正值则端口开放,回复字为0则关闭
- -sI:TCP Idle扫描,通过僵尸主机发送数据宝宝与主机通信
- -sV:打开系统版本检测
- -O:尝试识别远程操作系统
- -A:同时打开操作系统直问和版本检测,综合扫描
- -v:详细输出扫描情况
-
UDP端口扫描选项
- -sU:使用UDP扫描,回复UDP则开放
- 目标端口选项
- -p:扫描指定端口
- -F:快速扫描常用的100个端口
- -r:按从小到大的顺序扫描
-
输出选项
- -oN:输出标准nmap文件
- -oX:输出XML格式文件
- -oG:输出标准gnmap文件
- -oA:同时输出以上三种格式的文件
- 常用命令
- 获取远程主机的系统类型和开放端口:nmap -sS -P0 -sN -O 《target》
- 流出开放指定端口的主机列表:nmap -sT -p 80 《target网段》| grep open
- 在网络寻找所有在线主机:nmap -sP 《target网段》
- PING指定范围内的IP地址:nmap -sP 192.168.1.1-255
-
TCP端口扫描选项
-
图形化--------zenmap
- 输入目标主机和ip地址和域名
- 选择扫描方式
- 根据扫描结果更改配置参数再次扫描
- 分析结果
-
扫描的六种端口状态
- Open:开放状态
- Closed:关闭状态
- Filtered:过滤的,指收到不可达报文,发送的报文由于防火墙、路由规则等未到达指定的端口
- unfiltered:未被过滤,指发送报文到达了指定的端口,但是不能确定端口是开放的
- Open|filtered:nmap无法区别端口处于open还是Filtered状态,只会出现在open端口对保温不作回应
- Closed|filtered:nmap无法区别端口处于close还是unFiltered状态,只会出现在IP ID idle scan
masscan端口扫描器-----最快扫描器
- 异步传输方式,无状态扫描,即不需要三次握手
- 原理:不完整tcp连接,客户端收到SYN,ACK后回复RST在断开
- 基本使用:
- 单端口扫描:扫描网段,例,masscan 10.11.0.0./16 -p443
- 多端口扫描:masscan 10.11.0.0./16 -p80,443
- 扫描一系列端口:masscan 10.11.0.0./16 -p20-25
- 快速扫描:masscan 10.11.0.0./16 --port 20-25 --rate 100000
- 扫描十大端口的网络:masscan 10.11.0.0./16 --p0-65535 --rate 100000
- 排除目标:masscan 10.11.0.0./16 --port 20-25 --excludefile a.txt
- 结果保存:masscan 10.11.0.0./16 --port 20-25 > b.txt
.11.0.0./16 --p0-65535 --rate 100000
- 排除目标:masscan 10.11.0.0./16 --port 20-25 --excludefile a.txt
- 结果保存:masscan 10.11.0.0./16 --port 20-25 > b.txt