从0到1教你一点一滴学废web安全_第三节:了解信息收集
字数 1708 2025-08-12 11:34:43
Web安全入门:信息收集详解
一、信息收集概述
信息收集是渗透测试和Web安全评估的第一步,其核心原理是:目标暴露的信息越多,可能存在的漏洞和攻击面就越大。通过全面收集目标系统的各种信息,可以找到潜在的突破口。
二、信息收集的目标
- 网站基础信息:开发语言、CMS系统、框架版本等
- 系统信息:操作系统类型、服务器配置等
- 应用信息:使用的第三方软件、中间件、数据库等
- 防护设备情况:是否使用WAF、CDN等防护措施
- 人员信息:管理员信息、开发团队信息等
三、信息收集方法详解
1. Web网站架构信息收集
(1) 判断网站开发语言
- 域名后缀:如.php、.asp、.aspx等可能直接暴露语言
- 查看源码:通过F12查看网页源码中的文件路径和注释
- 指纹识别:使用工具如FOFA(https://fofa.info)进行识别
- 版权信息:网站尾部版权信息可能注明CMS或开发厂商
(2) 判断操作系统
- 大小写敏感测试:修改文件名大小写测试访问(Windows不区分大小写,Linux区分)
- TTL值判断:通过ping命令获取TTL值
- Windows通常TTL=128
- Linux通常TTL=64
- 端口扫描:通过开放的服务端口判断系统类型
(3) 判断数据库和中间件
- 常见组合:
- PHP + MySQL
- ASP + MSSQL
- JSP + Oracle
- 端口扫描:
- MySQL: 3306
- MSSQL: 1433
- Oracle: 1521
- MongoDB: 27017
(4) Web源码获取方法
- 开源CMS:通过识别CMS下载对应源码进行审计
- 商业系统:购买或通过其他渠道获取
- 源码泄露漏洞:
- 网站备份文件泄露
- Git源码泄露
- SVN源码泄露
2. 源码泄露漏洞详解
(1) 网站备份文件泄露
- 常见备份文件后缀:.bak、.zip、.rar、.tar.gz等
- 使用目录扫描工具查找备份文件
(2) Git源码泄露
- 漏洞原理:.git目录被部署到生产环境
- 检测方法:访问
目标网站/.git/ - 利用工具:GitHack(https://github.com/lijiejie/GitHack)
- 环境要求:Python2环境
(3) SVN源码泄露
- 漏洞原理:.svn目录被部署到生产环境
- 检测方法:访问
目标网站/.svn/ - 利用工具:SvnHack(https://github.com/callmefeifei/SvnHack)
3. 其他信息收集方法
- 目录扫描:发现隐藏目录和其他网站
- 子域名收集:寻找更多相关资产
- 相似域名:如.com和.cn等变体
- 第三方软件:查找安装的第三方应用
- 功能点分析:使用Xmind等工具分析网站功能模块
四、信息收集中的挑战
-
CDN干扰:
- CDN会隐藏真实服务器IP
- 解决方法:查找历史DNS记录、使用特定技术绕过
-
站库分离:
- 网站程序和数据库不在同一服务器
- 需要分别攻击和获取权限
-
负载均衡:
- 攻击可能只影响其中一台服务器
- 需要获取整个集群的控制权
-
防火墙(WAF)拦截:
- 需要研究WAF绕过技术
- 使用非常规攻击手法
五、信息收集工具推荐
-
指纹识别:
- 云悉指纹平台:https://www.yunsee.cn/
- FOFA:https://fofa.info
-
源码泄露利用:
- GitHack:https://github.com/lijiejie/GitHack
- SvnHack:https://github.com/callmefeifei/SvnHack
-
扩展阅读:
- 信息收集技巧:https://forum.ywhack.com/bountytips.php?getinfo
- SVN泄露详解:https://www.secpulse.com/archives/124398.html
六、总结
信息收集是Web安全的基础,全面深入的信息收集能为后续渗透测试提供更多可能性。在实际操作中,需要结合多种方法和工具,从不同角度收集目标信息,同时注意规避防护措施的干扰。随着经验的积累,信息收集的效率和深度会不断提高。