渗透框架

一 信息收集

1是否存在CDN

2服务器信息

IP
支持脚本
容器版本
开放端口情况(21,22,80,1433,5900,3306,3389,8080,43958)
绝对路径(报错页面显示、探针显示))

3子域名查询

4 whois

查询域名所有者的信息和邮箱 生成破解字典

5 指纹验证

核实目标站点采用何种cms搭建 然后定制方案 御剑指纹识别 云悉指纹识别

6 waf探测

防止有waf存在的情况下大规模扫描被封IP

7 绝对路径

1.site:域名 warning # google or baidu
2.报错显示,比如注入点报错就可以显示出来
3.phpinfo中泄露

二 漏洞发现

2.1. 目录扫描

目录扫描是用来探测目标的目录情况 来判断目标的cms情况 ,敏感文件泄露情况,形成一个大体的站点地图

推荐御剑后台扫描

2.2. 蜘蛛爬虫

和目录扫描类似 区别是目录扫描是根据字典进行枚举 很苛刻的目录因字典未收录从而导致无法被扫描 蜘蛛爬虫是通过站点链接进行获取站点目录

蜘蛛爬行在常用的漏洞扫描器中 以及 Burpsuite里面都具备。
这里写图片描述

2.3. 漏洞扫描

AWVS

扫描器 代替手工发掘漏洞 生成报告
这里写图片描述

Burpsuite

 Burpsuite不止是一个抓包分析工具,他还具备爬虫、被动漏洞扫描、主动漏洞扫描、自动化攻击、重放等功能。
这里写图片描述
这里写图片描述

2.4. 根据CMS发现漏洞

在已知对方使用的CMS时,我们可以去百度该CMS存在哪些漏洞,然后用已知的漏洞进行测试。
比如:目标站点使用的是PHPCMS V9,那么我们去百度PHPCMS V9的漏洞:
这里写图片描述

然后我可以用百度到的这些漏洞详情去测试目标站点是否存在该漏洞。

三 源代码泄漏漏洞

代码压缩包泄露

有网站管理员会把源码压缩包放在web目录下 访问该压缩包就会自动下载
常见的后缀:.rar .zip .tar.gz .7z
这里写图片描述

SVN源代码泄露

漏洞成因

有些管理员对svn机制不了解 直接把svn检到web目录下,而忘记删除.svn目录(文件类型和内容),导致被攻击者获取
#####SVN泄露两个版本的区别
SVN1.7以后的版本 取消了text-base备份文件夹,同时访问svn/entries返回数字12,只会在根目录下生成.SVN文件 而不会在每个目录下生成.svn 文件
这里写图片描述
并且在.svn目录下存在wc.db文件,该数据库文件在NODES表单relpath为真实文件名,checksum为文件的sha1值,kind为文件类型(dir->目录,file->文件)
这里写图片描述
在.svn/pristine目录的二级目录下存在一个文件名为sha1值.svn-base,二级目录名为sha1值的前两位
这里写图片描述
payload:http://www.admintony.com/.svn/pristine/sha1前两位/sha1.svn-base

利用工具

当SVN < 1.7时候,使用Seay法师的svn源代码利用工具

当SVN > 1,7时候,使用笔者的工具http://admintony.com/2018/02/06/SVN源代码泄露利用工具/

git代码泄露

从git仓库下载代码的时候会自动生成一个.git隐藏文件夹(存放代码的变更记录),攻击者可以通过该文件夹下的信息拿到代码
这里写图片描述
 利用工具:GitHack
这里写图片描述

swp源码泄露

使用vi编辑器打开文件会自动生成 .文件名.swp 的备份文件,是因为防止意外退出造成文件丢失
产生愿原因:有些管理员直接在web目录下修改代码生成.swp文件
利用方法:访问.swp文件会下载该文件,然后vi -r 文件名 来恢复内容
这里写图片描述
然后按下任意键就可以查看代码
这里写图片描述

数据库外泄

不止是源码泄露会导致安全威胁 数据库泄露也会导致
数据库外泄指的是数据库文件泄露,比如手access数据库是.mdb .db是SQLite的数据库,这两种数据库系统保存在该格式的文件中,如果将此文件放置于web目录下 攻击者即可以下载数据库或者数据

这种漏洞影响最多的是ASP+ACCESS的站点,比较经典两个案例:

1.某些CMS的目录下存在/data/#data.mdb 文件
2.ewebeditor 后台GETSHELL,下载eweb的数据库就是其中关键的一步

WEB-INF/web.xml泄露

WEB-INF介绍

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

/WEB-INF/web.xml:Web应用程序配置文件,描述了 servlet 和其他的应用组件配置及命名规则。
/WEB-INF/classes/:含了站点所有用的 class 文件,包括 servlet class 和非servlet class,他们不能包含在 .jar文件中
/WEB-INF/lib/:存放web应用需要的各种JAR文件,放置仅在这个应用中要求使用的jar文件,如数据库驱动jar文件
/WEB-INF/src/:源码目录,按照包名结构放置各个java文件。
/WEB-INF/database.properties:数据库配置文件
漏洞检测和利用

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

  一般情况,jsp引擎默认都是禁止访问WEB-INF目录的,Nginx 配合Tomcat做均衡负载或集群等情况时,使用了Nginx的安全策略,导致web.xml能够被攻击者访问到。

CVS泄露

测试目录
http://url/cvs/root 返回根信息
http://url/cvs/enties 返回所有文件目录
取回源码命令

 bk clon
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值