信息收集一(理论篇)

teenerguo   ·   发表于 2020-11-09 19:51:54   ·   技术文章

一.信息收集的意义:

来一段古文:
《孙子兵法》讲:
“ 夫未战而庙算胜者,得算多也;未战而庙算不胜者,得算少也。多算胜,少算不胜,而况于无算乎!吾以此观之,胜负见矣” ;
“知彼知己,百战不殆;知彼而不知己,一胜一负;不知彼不知己,每战必殆”;
“兵者诡道也,攻其无备,出其不意,此兵家之胜,不可先传;”;
“修道保法,先生而后战”
“水无常势,兵无常形,致人而不致于人”;
“杂于利害,有别于常,吾有所待”;

二:信息收集主要内容

1.位置

1)ip,旁站,扫描C段
C段:例如(1.1.1.1-1.1.1.255)
ip收集方式: ping 域名(windows);dig 域名(Linux);站长工具;火狐插件等等
2)域名
域名与子域名收集
子域名:具有相同顶级域名的域名
方式:利用在线工具
3)端口
端口类似于窗户或者门或者关隘等通道;
方式:Nmap工具

2.程序

用户与服务器之间的交互基本是以超链接和表单的方式进行,即访问某个文件

1)内容

目录扫描
A.利用WEB爬虫自动爬取;(请求页面——>>分析——>>查找链接)但存在遗漏,伪访问,提交信息不被接受,会话被中止的缺陷,故在某些应用程序上极其危险,可能会得不偿失;
B.用户指定抓取(常规浏览——>>流量穿过工具<代理和爬虫工具>——>>监控请求和响应——>>绘制地图,集中已知URL,分析相应,更新站点地图——>>生成最终站点地图)
C.发现隐藏内容
隐藏内容:无法直接访问的内容,例如需要权限,备份文件(审查动态页面源码),备份文档(web根目录或者跟外目录固定位置,e.g:robots.txt),未对用户显示的功能,源代码(新,旧)中格外注意“测试此功能”类短语,敏感数据或日志文件,极端情况下会保存用户或程序的状态信息
方式(猜测隐藏功能的名称或标识符):
A.蛮力访问
确定服务器如何处理参数(有效与无效)
递归(发现新内容):
以站点地图为基础查找隐藏参数;
使用工具生成大量请求(忽略无效参数)
B.推测名称
由已知内容编译出列表,确定命名规律,将新内容加入列表,利用工具
C.利用公共信息
工具(搜索引擎和WEb档案)
使用工具搜索所有内容,在子域名中查找,查看缓存,从缓存和WEB档案中查找已删除的陈旧内容,查找与程序有关的论贴;
D.利用WEB服务器(利用自动化工具查找,burp intruder工具)
原理:程序缺陷及可执行的动态页面原始来源
内容:
样本和诊断性脚本
可被恶意利用的功能
第三方组件

2)功能

A.基于URL解析
确定不同功能间的逻辑与依赖关系,绘制出程序功能路径图
B.发现隐藏参数
使用名值对列表向程序提出大量请求;在post的URL查询字符串和消息主体中插入增加的参数;
监听全部响应,确定对程序的影响;
在最有可能执行调试逻辑的功能中查找隐藏参数
C.步骤:
仔细分析请求:(参数名及参数值,用何种技术和机制实现行为)
推测应用行为:
通常应用程序以统一方式执行全部功能;
对敏感性息进行的模糊处理通常可被逆向破解;
应用程序处理各种错误的方式并不一致;
确定应用程序中任何可能包含与其他区域内部结构和功能有关的线索位置;
隔离独特的程序行为:
许多成熟程序采用一致框架防止各类攻击,故需记录异于其他部分的任何功能和可能为后续添加的功能进行全面检查;
D.用户输入入口点
URL:标记,参数
THHP消息头:UA,Referer,Accept-Language,Host,
请求参数:post请求主体,cookie
带外通道:用来处理攻击者可控制的数据

3)技术

版本信息:
公开信息,HTTP消息头,HTML页面模板,url参数,识别WEB服务器;
指纹识别;
文件扩展名(确定平台与编程语言):
可识别但不存在的文件————>>错误页面
未识别文件————>>web服务器生成常规错误消息
目录名称和会话令牌;
第三方组件及软件标识符信息收集;

用户名金币积分时间理由
veek 100.00 0 2020-11-10 09:09:37 鼓励发帖~~

打赏我,让我更有动力~

0 条回复   |  直到 2020-11-9 | 1201 次浏览
登录后才可发表内容
返回顶部 投诉反馈

© 2016 - 2024 掌控者 All Rights Reserved.