ctfshow初学
CTFShow
无法查看源代码
解决方案:view-source:url
Robots
提示:总有人把后台地址写入robots,帮黑阔大佬们引路。
解决方案:url/robots.txt获取disallow路径flagishere.txt,再通过url/flagishere.txt获取flag
robots.txt
定义:robots.txt文件为网站根目录下的文本文件,用于告诉搜索引擎(比如baidu/google)可以爬取的路径和禁止爬取路径
位置:url/robots.txt
安全隐患:该文件必须公开,且往往包含敏感路径(禁止爬取路径)
phps源码泄露
某些php环境中,若访问某文件时加上.phps后缀.服务器不会执行该php代码,而是直接显示源码(给开发者调试用)
- 访问
index.php返回执行结果 - 访问
index.phps返回源代码内容
常见文件扩展名泄露有
1 | .phps:PHP 源码高亮显示 |
www.zip源码泄露
程序员为了迁移/备份,把源码打包(www.zip)上传到服务器,但忘了删除
常见路径有
1 | www.zip www.tar.gz website.rar backup.zip code.tar |
.git配置文件泄露
版本控制工具泄露
1 | .git/ → 可通过 git log, git show, git checkout 恢复源码 |
在vim下修改死机
提示:发现网页有个错别字?赶紧在生产环境vim改下,不好,死机了
解决方案:在Linux生产环境上使用vim或者vi做修改时,会生成swp为后缀的文件
- 第一次意外退出生成的是.swp
- 第二次意外退出生成的是.swo
- 第三次为.swn
输入url/index.php.swp得到flag
DNS域名查询
提示:域名其实也可以隐藏信息,比如flag.ctfshow.com 就隐藏了一条信息
解决方案:通过nslookup查询域名解析(txt一般是某个主机名或域名设置的说明)
nslookup
命令行工具,通过与DNS服务器交互查询域名对应的IP,DNS记录的生存时间
nslookup -qt=a 域名: 查询该域名的A记录。如果返回多个IP地址,表示该域名对应多个IPV4地址nslookup -qt=aaaa 域名: 查询该域名的AAAA记录。如果返回多个IP地址,表示该域名对应多个IPv6地址nslookup -qt=mx 域名: 查询该域名的MX记录(处理该域名电子邮件的邮件服务器), 当有多个MX记录时,优先级数字越小,优先级越高nslookup -qt=a 域名 DNS服务器IP或域名: 用指定的DNS服务器进行查询, 可判断是否是DNS服务器的问题导致域名无法解析set type=xxx可以设置查询类型,其中xxx可以是a、mx、ns等。例如,“set type=mx”表示查询MX记录nslookup查询当前使用的DNS服务器,然后输入“server 域名或IP”可以查看当前使用的DNS服务器- NS记录:NS记录用来指定该域名由哪个DNS服务器来进行解析。NS记录中的IP地址就是该域名的权威DNS服务器的地址。
- CNAME记录:CNAME记录是别名记录,也称为规范名字。它允许将多个名字映射到同一台计算机。例如,www.example.com可以映射到www.example.com.edgekey.net。通过CNAME记录可以设置域名的别名。
- PTR记录:PTR记录是反向记录,用于将IP地址映射到主机名或域名。通常用于DNS反向解析,即根据IP地址查找对应的域名或主机名。
- SOA记录:SOA记录是起始授权记录,包含了关于该DNS区域的基本信息,如区域名称、区域管理员电子邮件地址、区域序列号、区域刷新时间等。
- SRV记录:SRV记录是服务位置记录,用于标识提供特定服务的服务器地址和端口号。例如,SIP服务器的地址和端口号可以通过SRV记录来标识。
- TXT记录:TXT记录用于存储任意文本信息,可以用于多种目的,如SPF记录、DKIM签名等。



