Banner识别

识别一个网站的Banner信息(服务器对外显示的一些基础信息)对整个渗透测试过程具有十分重要的作用。我们往往可以通过网站网站的Banner信息,可以得到很多方向与思路,如尝试相关历史漏洞,或根据当前系统的特性,进行尝试。

  1. 操作系统

    • ping判断,Windows TTL一般为128,Linux则为64。TTL大于100一般为Windows,几十的一般为Linux
    • nmap -O
    • Windows大小写不敏感,Linux大小写区分
  2. 网站服务 \ 容器类型

    • F12查看响应头Server字段
    • 浏览器插件 Wappalyzer
  3. 脚本类型

    通过插件也可以查到脚本类型

  4. 数据库类型

  5. CMS识别 CMS:网站内容管理

    常见的CMS:dedecms(织梦)、Discuz、phpcms等

Wappalyzer除了作为一个浏览器插件,还具有一个Python库python-Wappalyzer

敏感目录

image-20220919213442779
  1. Github泄露

部分开发人员将网站上传至开源网站的时候,忘记删除敏感信息。此类信息可以在Github上搜索公司的特定信息,查看是否有程序员将这些信息上传到github上

  1. .git泄露

Git是一个主流的分布式版本控制系统,开发人员在开发过程中,经常会遗忘.git文件夹,导致获取到开发人员提交过的所有源码,导致可以重建还原工程源文件,进而可能导致服务器被攻击沦陷。

(1)常规git泄漏

不需要额外操作,通过现成工具或者自行编写的代码即可获得泄漏的源码

工具:https://github.com/denny0223/scrabble

使用方法:scrabble <url>

还可以使用更为强大的GitHacker对其进行还原:https://github.com/WangYihang/GitHacker

GitHacker推荐我们使用Docker的方式运行

1
2
# 打印出帮助信息
docker run wangyihang/githacker --help

常见的用法:

1
2
# 简单使用
docker run -v $(pwd)/results:/tmp/githacker/results wangyihang/githacker --output-folder /tmp/githacker/results --url http://127.0.0.1/.git/
  1. 使用 docker run 命令启动一个 Docker 容器,并在容器中运行 GitHacker 工具。
  2. 使用 -v 选项将主机的 ./results 目录挂载到容器中的 /tmp/githacker/results 目录,以便将工具输出的结果保存到主机中。
  3. 使用 wangyihang/githacker 参数指定要使用的 Docker 镜像,该镜像包含了 GitHacker 工具的运行环境。
  4. 使用 --output-folder /tmp/githacker/results 选项指定了工具输出结果的本地保存路径为 /tmp/githacker/results 目录。
  5. 使用 --url http://127.0.0.1/.git/ 选项指定了要扫描的目标网站的 URL,该 URL 暴露了 .git 文件夹。

(2)git回滚

在有些时候,我们需要的敏感文件可能在修改中被删除或者覆盖了,这时候我们可以通过git的回滚功能git reset恢复到以前的版本。

我们利用上面scrabble工具获取到源码后,在通过git reset --hard HEAD^跳回到上一版本,或者使用类似的命令跳到其他版本(具体操作可以看我之前写的GIt操作),然后就可以获取到我们想要的敏感文件。

除此之外,还有git log -stat查看每次提交修改文件,git diff HEAD commit -id比较当前版本与想查看的版本之间的变化。

(3)git分支

Git允许多条分支同时开发,而不影响开发主线,往往的,我们需要的敏感文件也可能藏身与不同分支中,因此我们需要切换到不同的分支找到我们需要的文件。

当我们还原git项目后,我们使用检查git reflog,查看本地仓库中最近使用的引用的历史记录。通过类似的手段,发现其他分支。

GitHacker还提供了暴力猜解分支和标签名称的功能:

1
docker run -v $(pwd)/results:/tmp/githacker/results wangyihang/githacker --brute --output-folder /tmp/githacker/results --url http://127.0.0.1/.git/
  1. 网站备份文件

7kbstorm/7kbscan-WebPathBrute: 7kbscan-WebPathBrute Web路径暴力探测工具 (github.com)

  1. 目录扫描工具

dirsearch是一个强大的开源的目录扫描工具:

https://github.com/maurosoria/dirsearch

敏感备份文件

  1. gedit备份文件

gedit在编辑保存后,会在当前目录生成一个后缀为的文件,文件内容就是刚刚编辑的内容。

  1. vim备份文件

vim在用户编辑文件时,但意外退出时,会在当前目录下生成一个备份文件:.文件名.swp,该文件用于备份缓冲区中的内容,即意外退出时的文件内容。

在当前目录下创建一个同名文件,使用vim -r 文件名即可还原备份文件。

注:vim在第一次意外退出时生成的备份文件为swp,第二次为swo,第三次为swn,以此类推。