前言 渗透任务太多了,做不完,根本做不完。今天又给了一个网站,关键还说只能测试这个一个网站,其他的不要碰。开始测试。 一个登录框打开一看,得,就一个登录框,连个注册按钮和找回密码都没有。测试账号也不说给一个。
正常走流程就个登录框,简单手工试一下payload,嗯,果然。没有什么问题。不过也测试出这个网站没有waf防护。 平时如果我们遇到这种情况,可以扩大范围,找真实IP,通过IP去查看有没有其他端口服务业务开放,进一步进行渗透。这里指定了只能渗透这一个系统,那就不扩大攻击面了。 那么剩下得工作就只能扫描一下目录,瞅瞅前端代码了。 挂上dirsearch,上大字典扫就完事了,期待来一波api接口泄露,源码泄露哈哈,然而现实总归时残酷的,果然没扫描到什么有用的东西。 翻看前端代码,可怜的js文件就几个,不过看还真的有了新发现,common.js里面定义了一些地址。 发现了这个系统除了生产还有两个地市级也在使用,同时还有一个本地调试地址,这里只是定义了这些服务地址,根本没用。但是呢,不妨碍我们去瞅一瞅其他的网站。 迂回作战在我们做渗透时,如果这个搞不定那就去找同一框架的其他网站,说不定就能拿到备份网站源码呢,同样的想法,我们也应该去这个分站看一看。 其中一个站点就发现了一个惊喜,webpack打包文件,通过这个文件我们就能批量测试他的API接口了。 对接口进行测试,果然目标站点的接口都是一样的,使用工具直接对接口进行批量未授权测试,发现了一个未授权的api/users/export/接口,可以直接导出数据 不算什么大问题,但终于算可以交差了。 扩大战果有了接口,除了测试接口未授权,我们还能对接口进行其他测试。看了下接口,账号只能后台添加、审核、删除、停用 而且都有鉴权,没得账号密码测试的点还是少了许多。不过功夫不负有心人,一个一个接口测试下来,还是发现了一个查看事件日志接口可以控制参数返回查询内容。(一些接口前端的webpack是没有的,但是可以通过报错信息带出来。不了解开发的心态) 这里的参数js中并没有提供,需要自己Fuzz,不过这个系统非常的人性化,提供了报错信息,图是后补的。 通过对接口的遍历测试,发现事件查询接口有SQL报错 直接保存post请求包,上神器sqlmap一把梭,拿捏。
|