1、CMS指纹识别

​ CMS指纹识别就是判断网站是使用哪种CMS(快速搭建网站的内容管理系统)搭建的,如果能够判断就可以尝试获取源码来进行白盒测试或代码设计,也可以搜索网上关于此CMS所曝出的相关漏洞加以利用。

​ 可以借助在线的CMS指纹识别平台来判断,如:
云悉:https://www.yunsee.cn/
WhatWeb:https://whatweb.net/
插件Wappalyzer: https://www.wappalyzer.com
脚本CMSeek:https://github.com/Tuhinshubhra/CMSeeK

2、源码泄露

(1)git源码泄露

​ Git是一个开源的分布式版本控制系统,在执行git init初始化目录的时候,会在当前目录下自动创建一个.git目录,用来记录代码的变更记录等。发布代码的时候,如果没有把.git这个目录删除,就直接发布到了服务器上,攻击者就可以通过它来恢复源代码。

漏洞利用工具:GitHack

github项目地址:https://github.com/lijiejie/GitHack

用法示例:

GitHack.py http://example/.git/

(2)svn源码泄露

​ SVN是一个开放源代码的版本控制系统。在使用SVN管理本地代码过程中,会自动生成一个名为.svn的隐藏文件夹,其中包含重要的源代码信息。网站管理员在发布代码时,没有使用‘导出’功能,而是直接复制代码文件夹到WEB服务器上,这就使.svn隐藏文件夹被暴露于外网环境,可以利用.svn/entries文件,获取到服务器源码。

漏洞利用工具:https://github.com/callmefeifei/SvnHack

(3)网站备份压缩文件

​ 管理员将网站源代码备份在Web目录下,攻击者通过猜解文件路径,下载备份文件,导致源代码泄露。

常见的备份文件后缀:

  • .rar
  • .zip
  • .7z
  • .tar.gz
  • .bak
  • .txt
  • .old
  • .temp

漏洞利用工具:御剑、7kbscan、dirsearch…

(4)WEB-INF/web.xml泄露

WEB-INF是Java的WEB应用的安全目录,如果想在页面中直接访问其中的文件,必须通过web.xml文件对要访问的文件进行相应映射才能访问。

WEB-INF 主要包含一下文件或目录:

WEB-INF/web.xml : Web应用程序配置文件, 描述了servlet和其他的应用组件配置及命名规则.
WEB-INF/database.properties : 数据库配置文件
WEB-INF/classes/ : 一般用来存放Java类文件(.class)
WEB-INF/lib/ : 用来存放打包好的库(.jar)
WEB-INF/src/ : 用来放源代码(.asp和.php等)

通过找到 web.xml 文件,推断 class 文件的路径,最后直接 class 文件,再通过反编译 class 文件,得到网站源码。

(5)DS_Store文件泄露

​ .DS_Store是Mac下Finder用来保存如何展示 文件/文件夹 的数据文件,每个文件夹下对应一个。如果将.DS_Store上传部署到服务器,可能造成文件目录结构泄漏,特别是备份文件、源代码文件。

漏洞利用工具:

github项目地址:https://github.com/lijiejie/ds_store_exp

用法示例:

ds_store_exp.py http://example.com/.DS_Store

​ 还有其它的可以参考相关链接:

https://www.secpulse.com/archives/124398.html