OSINT 基础
OSINT 基础
本文适合
CTF Misc 入门学习者。学完你能:围绕域名、用户名、图片、代码仓库和公开记录建立可复核线索链,并交叉验证 OSINT 结论
OSINT(Open Source Intelligence,开源情报)是从公开来源收集和分析信息的技术。CTF 中的 OSINT 题通常要求选手通过公开信息找到隐藏的 flag、定位地点、追踪人物或发现泄露的敏感数据。
一句话判断
OSINT 题不是“搜索到一个像答案的东西”就结束;必须把公开来源、查询语法、时间点、交叉验证和排除过程写成证据链。
题目中常见信号
说明:需要关联公开身份或资产
第一动作:搜索引擎、WHOIS、DNS、代码仓库
说明:可能考地理定位、EXIF、反搜
第一动作:查元数据、反向图片搜索、地图特征
说明:secret 可能在历史提交
第一动作:查 commit、issues、releases、fork
说明:地理定位题
第一动作:提取文字、语言、道路、太阳方位
说明:需要历史网页或新闻记录
第一动作:Wayback、缓存、公告、社媒时间线
核心概念
OSINT 的核心是可验证来源,不是搜索技巧堆叠。每条线索都要回答:
- 来源:来自哪个公开页面、记录、图片或元数据。
- 时间:信息是什么时候出现的,是否可能已过期。
- 关联:为什么它和题目实体是同一个对象。
- 交叉验证:至少用另一个来源确认关键结论。
- 合规边界:只使用公开可访问资料,不做入侵、撞库或骚扰。
最小分析流程
- 把题目给出的实体拆开:域名、用户名、邮箱、图片、时间、地点、组织。
- 先做本地检查:
exiftool、文件名、图片文字、二维码、GPS。 - 搜索引擎用限定语法缩小范围,记录查询式。
- 域名/主机查 DNS、WHOIS、证书、历史解析和子域。
- 用户名查多平台复用、代码仓库、公开 profile、历史提交。
- 图片题做反向搜索、地图验证、地标比对和时间线校验。
- 找到候选答案后至少交叉验证一次,再提交。
最小验证示例
# 图片本地线索
exiftool photo.jpg
strings -n 6 photo.jpg | head
# DNS 和证书基线
nslookup example.com
dig example.com A
dig example.com TXT
dig _dmarc.example.com TXT
# Git 历史本地仓库
git log --all --oneline
git grep -n "flag\\|password\\|token" $(git rev-list --all)搜索语法示例:
site:github.com "example.com" "password"
site:example.com filetype:pdf
"username" "CTF" OR "flag"判断依据:
EXIF GPS 与地图位置一致 -> 图片位置可信
域名 TXT/证书/GitHub 三处指向同一组织 -> 实体关联可信
历史提交删除了 secret -> 需要引用 commit 证据常见利用 / 解题路线
路线总览:
关键证据:多平台相同用户名
常用动作:搜索、社媒、代码仓库
关键证据:EXIF、文字、地标、道路
常用动作:反搜、地图、街景、OCR
关键证据:commit、issue、release、fork
常用动作:git log --all、GitHub 搜索
关键证据:页面已删除或变更
常用动作:Wayback、缓存、公告
关键证据:PDF/Office/图片作者或路径
常用动作:exiftool、文档结构分析
关键证据:Shodan/Censys 线索
常用动作:只验证公开 banner,不攻击
常见失败原因
常见原因:用户名撞名
排查动作:用头像、地点、时间、链接交叉验证
常见原因:只凭单一地标
排查动作:至少验证文字、道路、建筑、环境
常见原因:信息已被删除或修改
排查动作:查历史快照和历史提交
常见原因:线索就在 EXIF/文件名
排查动作:先做本地检查
常见原因:搜索结果噪声大
排查动作:用引号、site、filetype、时间范围
常见原因:越界到攻击或骚扰
排查动作:限定公开资料和被动查询
迷你案例
题目给一张校园门口照片,没有文字 flag。先查:
exiftool gate.jpg没有 GPS,但图片中有校训和路牌。用 OCR 识别路牌文字,再搜索:
"校训文字" "路牌名"搜索结果指向学校官网新闻,新闻图中同一门楼出现,页面标题日期是题目要求的提交格式。再用地图街景核对门楼和道路方向,最终答案才可信。WP 要保留 OCR 文本、搜索式、官网链接标题和地图核对点。