区别
CTF中,收集服务器信息、敏感信息、敏感文件
(实战中,收集更多的信息来找到渗透的突破口,比如开放的端口、使用的CDN、是否有泄露的源码)
一、收集信息
是了解一个web服务的首要途径,可以通过http头中的Server等字段来确定后端是什么服务器,用了什么语言开发,是什么版本,可以初步确定漏洞范围,避免盲目测试,除了对方主动告知外,还可以根据指纹来确定CMS信息,比如Wappalyzer
通过泄露的敏感目录,我们可以获取服务器路径,url甚至网站源码
敏感目录包括
1.git目录泄露
(有些网站在搭建时没有把git目录删掉,版本控制没有被删掉,导致.git目录可以访问到,可以通过一些软件下载git目录里的一些文件,把git项目还原回来,然后就可以读它的源码)
2.svn目录泄露
(类似于git,也是版本控制,会把一些源码暴露出来)
3.idea工程目录泄露
(创建一个idea项目,它会在这个目录的根目录下创建一个idea目录,这个目录里会保存着这个项目的路径,可能会有一些数据库的信息,有利于渗透测试的进行)
4.后台目录泄露
(通过目录扫描软件,判断后台在什么地方,爆破后台管理账号密码,目录扫描软件比如dirsearch和ffuf,核心原理就是不断的爆破网站的目录,不断发起请求,判断返回值,拿到题目只有少量信息时可以尝试爆破目录,看有没有有用的信息,但比赛可能会禁止)
二、敏感文件
主要是网站的一些备份文件,常见的有以下几种
1.vim备份文件
当vim被意外关闭时,可能会留下.swp .swo文件,可以通过这些文件恢复原始文件的内容
.index.php.swp .index.php.swo
2.gedit备份文件
gedit是一个编译器,也会产生一些恢复文件
.Index.php~
3.其他备份文件
与前面的敏感目录一样,都可以通过目录扫描软件获取敏感文件
www.zip sql.bak