信息收集:从图像元数据(隐藏信息收集)到用户身份的揭秘 --- 7000
目录
🌐 访问Web服务
💻 分析源代码
⬇️ 下载图片并保留元数据
🔍 提取元数据(重点)
👤 生成用户名列表
🛠️ 技术原理
图片元数据(EXIF 数据)
Username-Anarchy
Web枚举
📡 协议说明
🔚 结论
-
在网络安全领域,枚举(Enumeration)是渗透测试和安全分析中不可或缺的一环。
-
通过系统性地收集目标系统的信息,如服务、用户账户和资源,枚举为后续攻击或防御提供了关键情报。
-
本文将基于一个具体的Web服务枚举案例,详细阐述从访问目标网站到生成潜在用户名的技术过程,并从网络安全视角分析枚举的重要性。
-
展示如何将隐藏信息转化为可操作的情报。
-
7000粉丝 纪念一下
-
🌐 访问Web服务
-
枚举的第一步是从目标的外部接触点开始。
-
我们访问了
http://absolute.com
,发现一个图片展示页面,标题为“Absolutely Gorgeous”。 -
这一简单的Web页面不仅是用户界面的展示窗口,还可能是信息泄露的潜在来源。
-
在网络安全中,Web服务通常是攻击者或安全专家的首要目标,因为它们可能暴露未受保护的资源或配置细节。
-
💻 分析源代码
深入探索的第一步是检查页面源代码。通过查看HTML,我们发现了六张图片的路径:
images/hero_1.jpgimages/hero_2.jpgimages/hero_3.jpgimages/hero_4.jpgimages/hero_5.jpgimages/hero_6.jpg
这些图片文件名和路径为后续分析提供了线索。
源代码分析是Web枚举的核心技术之一,因为开发者可能在注释、资源引用或未隐藏的目录中留下敏感信息。
从网络安全角度看,这一过程揭示了目标站点的结构,并为提取更多数据奠定了基础。
⬇️ 下载图片并保留元数据
为了进一步分析,我们使用以下命令下载图片,同时确保保留其原始元数据:
for i in {1..6}; do wget http://absolute.com/images/hero_$i.jpg; done
工具 wget
能够高效获取文件,而保留元数据尤为重要,因为这些数据可能包含隐藏的用户或系统信息。在网络安全中,未经妥善清理的元n数据是常见的安全漏洞,攻击者可利用它来推断内部细节。
🔍 提取元数据(重点)
下载完成后,我们使用 exiftool
检查图片的元数据,特别关注 “Author” 字段。执行以下命令提取作者姓名:
exiftool *.jpg | grep -i Author | cut -d ":" -f 2 | cut -d " " -f 2,3 > authors
结果显示了类似 James Roberts 和 Michael Chaffrey 的姓名。这些信息可能是目标系统中真实用户的全名。
从网络安全角度看枚举的重要性
元数据提取是枚举中最具技术含量的一步。图像文件中的 EXIF 数据(如作者、创建时间或软件版本)往往被忽视,但却可能泄露组织结构、员工身份甚至设备信息。在渗透测试中,这些细节为后续攻击(如社会工程学或凭据猜测)提供了关键切入点,凸显了枚举在情报收集中的核心地位。
👤 生成用户名列表
利用提取的姓名,我们借助 username-anarchy
脚本生成潜在用户名列表。执行命令如下:
ruby username-anarchy/username-anarchy -i authors -f flast,lfirst,f.last > usernames
-
-i authors
:输入包含姓名的文件。 -
-f flast,lfirst,f.last
:指定用户名格式,如首字母+姓氏 (flast)、姓+名 (lfirst) 和名+姓 (f.last)。 -
输出示例:
j.roberts jroberts rjames m.chaffrey mchaffrey cmichael
这一步骤将原始姓名转化为符合 Active Directory (AD) 命名惯例的用户名,为后续测试(如密码喷洒)做好准备。
🛠️ 技术原理
图片元数据(EXIF 数据)
EXIF 数据是图像文件中的嵌入式信息,可能包括作者姓名、拍摄时间或编辑软件等。在本案例中,提取的 Author 字段直接揭示了用户身份,表明未清理的元数据可能无意中泄露敏感信息。
Username-Anarchy
该工具根据常见命名规则(如首字母+姓氏或姓+名)生成用户名,特别适用于 AD 环境。通过自动化这一过程,它显著提高了枚举效率,帮助安全专家快速构建攻击目标列表。
Web枚举
除了元数据,分析页面源代码和资源文件是Web枚举的关键。通过检查HTML结构和文件路径,我们发现了图像资源,这进一步验证了彻底枚举的重要性——隐藏信息往往散落在看似无关的角落。
📡 协议说明
-
本案例依赖 **HTTP 协议**,用于访问Web服务和下载图片。
-
HTTP 运行在 80 端口,基于 TCP,提供了一种无状态的请求-响应机制。
-
虽然简单,但其广泛使用使得Web服务成为枚举的热门目标。
-
理解协议特性有助于识别潜在的暴露点,如未加密的传输或未受保护的资源。
-
🔚 结论
- 从访问
http://absolute.com
到生成潜在用户名列表,这一枚举过程展示了如何通过系统性分析将隐藏信息转化为网络安全中的 actionable intelligence。- 借助工具如
wget
、exiftool
和username-anarchy
,我们从图像元数据中提取了关键线索,揭示了目标系统的潜在弱点。 - 枚举不仅是技术活,更是艺术——它要求细致入微的观察和对细节的执着追求。在网络安全中,成功的枚举往往是防御与攻击的分水岭,值得每一位从业者深入研究与实践。
- 借助工具如
相关文章:

信息收集:从图像元数据(隐藏信息收集)到用户身份的揭秘 --- 7000
目录 🌐 访问Web服务 💻 分析源代码 ⬇️ 下载图片并保留元数据 🔍 提取元数据(重点) 👤 生成用户名列表 🛠️ 技术原理 图片元数据(EXIF 数据) Username-Anarch…...
OCC笔记:TDF_Label中有多个相同类型属性
注:OCCT版本:7.9.1 TDF_Label中有多个相同类型的属性的方案 OCAF imposes the restriction that only one attribute type may be allocated to one label. It is necessary to take into account the design of the application data tree. For exampl…...

如何优雅地绕过限制调用海外AI-API?反向代理与API中转技术详解
阅读时长 | 8分钟 适用读者 | 需要跨境调用OpenAI等AI服务的开发者/企业 一、问题背景:为什么需要代理? 最近在技术社区看到这样的求助: "公司服务器在国内,但业务需要调用OpenAI接口,直接访…...

【自然语言处理】大模型时代的数据标注(主动学习)
文章目录 A 论文出处B 背景B.1 背景介绍B.2 问题提出B.3 创新点 C 模型结构D 实验设计E 个人总结 A 论文出处 论文题目:FreeAL: Towards Human-Free Active Learning in the Era of Large Language Models发表情况:2023-EMNLP作者单位:浙江大…...

React与原生事件:核心差异与性能对比解析
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「storms…...
Go 并发编程基础:select 多路复用
select 是 Go 并发编程中非常强大的语法结构,它允许程序同时等待多个通道操作的完成,从而实现多路复用机制,是协程调度、超时控制、通道竞争等场景的核心工具。 一、什么是 select select 类似于 switch 语句,但它用于监听多个通…...

暴雨新专利解决服务器噪音与性能悖论
6月1日,我国首部数据中心绿色化评价方面国家标准《绿色数据中心评价》正式实施,为我国数据中心的绿色低碳建设提供了明确指引。《评价》首次将噪音控制纳入国家级绿色评价体系,要求从设计隔声结构到运维定期监测实现闭环管控,加速…...

Go 语言中的内置运算符
1. 算术运算符 注意: (自增)和--(自减)在 Go 语言中是单独的语句,并不是运算符。 package mainimport "fmt"func main() {fmt.Println("103", 103) // 13fmt.Println("10-3…...
Spring Boot 中实现 HTTPS 加密通信及常见问题排查指南
Spring Boot 中实现 HTTPS 加密通信及常见问题排查指南 在金融行业安全审计中,未启用HTTPS的Web应用被列为高危漏洞。通过正确配置HTTPS,可将中间人攻击风险降低98%——本文将全面解析Spring Boot中HTTPS的实现方案与实战避坑指南。 一、HTTPS 核心原理与…...
项目研究:使用 LangGraph 构建智能客服代理
概述 本教程展示了如何使用 LangGraph 构建一个智能客服代理。LangGraph 是一个强大的工具,可用于构建复杂的语言模型工作流。该代理可以自动分类用户问题、分析情绪,并根据需要生成回应或升级处理。 背景动机 在当今节奏飞快的商业环境中,…...

JS面试常见问题——数据类型篇
这几周在进行系统的复习,这一篇来说一下自己复习的JS数据结构的常见面试题中比较重要的一部分 文章目录 一、JavaScript有哪些数据类型二、数据类型检测的方法1. typeof2. instanceof3. constructor4. Object.prototype.toString.call()5. type null会被判断为Obje…...
创客匠人:如何通过创始人IP打造实现知识变现与IP变现的长效增长?
在流量红利逐渐消退的当下,创始人IP的价值愈发凸显。它不仅能够帮助中小企业及个人创业者突破竞争壁垒,还能成为企业品牌影响力的核心资产。然而,市场上IP孵化机构鱼龙混杂,如何选择一家真正具备长期价值的合作伙伴?创…...

【靶场】XXE-Lab xxe漏洞
前言 学习xxe漏洞,搭了个XXE-Lab的靶场 一、搭建靶场 现在需要登录,不知道用户名密码,先随便试试抓包 二、判断是否存在xxe漏洞 1.首先登录抓包 看到xml数据解析,由此判断和xxe漏洞有关,但还不确定xxe漏洞是否存在。 2.尝试xxe 漏洞 判断是否存在xxe漏洞 A.send to …...

开源项目实战学习之YOLO11:12.6 ultralytics-models-tiny_encoder.py
👉 欢迎关注,了解更多精彩内容 👉 欢迎关注,了解更多精彩内容 👉 欢迎关注,了解更多精彩内容 ultralytics-models-sam 1.sam-modules-tiny_encoder.py2.数据处理流程3.代码架构图(类层次与依赖)blocks.py: 定义模型中的各种模块结构 ,如卷积块、残差块等基础构建…...

Python[数据结构及算法 --- 栈]
一.栈的概念 在 Python 中,栈(Stack)是一种 “ 后进先出(LIFO)”的数据结构,仅允许在栈顶进行插入(push)和删除(pop)操作。 二.栈的抽象数据类型 1.抽象数…...

Unity VR/MR开发-开发环境准备
视频讲解链接: 【XR马斯维】UnityVR/MR开发环境准备【UnityVR/MR开发教程--入门】_哔哩哔哩_bilibili...

2025-06-08-深度学习网络介绍(语义分割,实例分割,目标检测)
深度学习网络介绍(语义分割,实例分割,目标检测) 前言 在开始这篇文章之前,我们得首先弄明白,什么是图像分割? 我们知道一个图像只不过是许多像素的集合。图像分割分类是对图像中属于特定类别的像素进行分类的过程,即像素级别的…...
Caliper 配置文件解析:config.yaml 和 fisco-bcos.json 附加在caliper中执行不同的合约方法
Caliper 配置文件解析:config.yaml 和 fisco-bcos.json Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO…...

【Ragflow】26.RagflowPlus(v0.4.0):完善解析逻辑/文档撰写模式全新升级
概述 在历经半个月的间歇性开发后,RagflowPlus再次迎来一轮升级,正式发布v0.4.0。 开源地址:https://github.com/zstar1003/ragflow-plus 更新方法 下载仓库最新代码: git clone https://github.com/zstar1003/ragflow-plus.…...

智能照明系统:具备认知能力的“光神经网络”
智能照明系统是物联网技术与传统照明深度融合的产物,其本质是通过感知环境、解析需求、自主决策的闭环控制,重构光与人、空间、环境的关系。这一系统由智能光源、多维传感器、边缘计算单元及云端管理平台构成,形成具备认知能力的“光神经网络…...
ubuntu系统 | docker+dify+ollama+deepseek搭建本地应用
1、docker 介绍与安装 docker安装:1、Ubuntu系统安装docker_ubuntu docker run-CSDN博客 docker介绍及镜像源配置:2、ubuntu系统docker介绍及镜像源和仓库配置-CSDN博客 docker常用命令:3、ubuntu系统docker常用命令-CSDN博客 docker compose安装:4、docker compose-CS…...
Docker 镜像上传到 AWS ECR:从构建到推送的全流程
一、在 EC2 实例中安装 Docker(适用于 Amazon Linux 2) 步骤 1:连接到 EC2 实例 ssh -i your-key.pem ec2-useryour-ec2-public-ip步骤 2:安装 Docker sudo yum update -y sudo amazon-linux-extras enable docker sudo yum in…...

SpringSecurity+vue通用权限系统
SpringSecurityvue通用权限系统 采用主流的技术栈实现,Mysql数据库,SpringBoot2Mybatis Plus后端,redis缓存,安全框架 SpringSecurity ,Vue3.2Element Plus实现后台管理。基于JWT技术实现前后端分离。项目开发同时采 …...
如何在Spring Boot中使用注解动态切换实现
还在用冗长的if-else或switch语句管理多个服务实现? 相信不少Spring Boot开发者都遇到过这样的场景:需要根据不同条件动态选择不同的服务实现。 如果告诉你可以完全摆脱条件判断,让Spring自动选择合适的实现——只需要一个注解,你是否感兴趣? 本文将详细介绍这种优雅的…...

短视频时长预估算法调研
weighted LR o d d s T p 1 − p ( 1 − p ) o d d s T p ( T p o d d s ∗ p ) o d d s p o d d s T o d d s odds \frac{Tp}{1-p} \newline (1-p)odds Tp \newline (Tp odds * p) odds \newline p \frac{odds}{T odds} \newline odds1−pTp(1−p)oddsTp(Tpodds…...
基于Java的离散数学题库系统设计与实现:附完整源码与论文
JAVASQL离散数学题库管理系统 一、系统概述 本系统采用Java Swing开发桌面应用,结合SQL Server数据库实现离散数学题库的高效管理。系统支持题型分类(选择题、填空题、判断题等)、难度分级、知识点关联,并提供智能组卷、在线测试…...
板凳-------Mysql cookbook学习 (十--2)
5.12 模式匹配中的大小写问题 mysql> use cookbook Database changed mysql> select a like A, a regexp A; ------------------------------ | a like A | a regexp A | ------------------------------ | 1 | 1 | --------------------------…...

设计模式域——软件设计模式全集
摘要 软件设计模式是软件工程领域中经过验证的、可复用的解决方案,旨在解决常见的软件设计问题。它们是软件开发经验的总结,能够帮助开发人员在设计阶段快速找到合适的解决方案,提高代码的可维护性、可扩展性和可复用性。设计模式主要分为三…...

FTPS、HTTPS、SMTPS以及WebSockets over TLS的概念及其应用场景
一、什么是FTPS? FTPS,英文全称File Transfer Protocol with support for Transport Layer Security (SSL/TLS),安全文件传输协议,是一种对常用的文件传输协议(FTP)添加传输层安全(TLS)和安全套接层(SSL)加密协议支持的扩展协议。…...
RK3568项目(七)--uboot系统之外设与PMIC详解
目录 一、引言 二、按键 ------>2.1、按键种类 ------------>2.1.1、RESET ------------>2.1.2、UPDATE ------------>2.1.3、PWRON 部分 ------------>2.1.4、RK809 PMIC ------------>2.1.5、ADC按键 ------------>2.1.6、ADC按键驱动 ------…...