在挖掘hackerone的项目时,发现了一个公开的S3列表。使用了ARL和fofa收集资产,在挖掘此类的云安全漏洞的时候,可以重点关注一些子域名前缀。快速辨别它是否存在公开访问的一个情况
此处是它上传自身图片的地方,删除文件名就出来了
测试流程 在网站的图片处鼠标右键,复制图片路径,然后访问,删除文件名,访问根目录
本来这个是不算的,即使通过也只有低危,然后就看别的资产去了,后来实在搞不动就回来再继续碰碰运气。想到有些文件使用了PUT上传,那么是否存在在本地使用PUT也可以直接上传到服务器并可以上传任何文件格式的文件呢?
使用PUT协议测试该存储桶是否存在任意文件上传
上传,访问,成功
漏洞最终变为Files can be uploaded arbitrarily through PUT and exist in publicly listed S3 buckets
这篇开个原创啰嗦一些。
所使用的工具链如下
在子域名的收集方面我使用了ARL+fofa,辅助上使用reNgine作为辅助的漏扫,基本上能覆盖全资产。后续也就是一个个看,拿httpx扫描完存活后,一个个手动去筛选,虽然能做到不遗漏,但是效率太差,其他的扫描工具也扫描不出漏洞。在挖掘h1的时候,对资产点还是使用BP+dirsearch出洞的几率要大很多。
总结一下,还是要收集全面的子域名,才能捞到一两个高危漏洞。