Web1-2
都是看源码就行了
ctfshow{a2d34c39-c43e-4089-b237-abc6b09f0479}
ctrl+u
ctfshow{80df75c7-4b72-4f7e-b875-8f094c42c822}
web3
抓包传参ctfshow{2dcf0b43-6e87-4e9c-822d-3068edba0d0b}
Web4
Robots泄露
ctfshow{44321466-7e83-4fb6-b7ad-0f811ba516db}
先访问robots.txt,接着下一步
Web5
Phps源码泄露
题目:“phps源码泄露有时候能帮上忙“
用bp抓包
Web6
压缩包
根据描述 访问www.zip
下载下来压缩包,在解压就行
flag{flag_here}
Web7
题目:版本控制很重要,但不要部署到生产环境更重要。
可能存在敏感目录,访问.git
Web8
.git敏感信息
和上一个描述一样
扫一下访问.svn 补充一下版本的一般配置文件
1. .git:包含Git版本控制系统的所有版本历史记录和元数据信息。
2. .svn:包含Subversion版本控制系统的所有版本历史记录和元数据信息。
3. package.json:用于Node.js项目中的JSON格式配置文件,包括项目的依赖信息、脚本命令等。
4. composer.json/lock:用于PHP项目中的依赖管理文件,包含项目的依赖信息、版本号、安装位置等。
5. pom.xml:用于Maven项目中的XML格式配置文件,包含项目的依赖信息、构建脚本等。
6. build.gradle:用于Gradle项目中的Groovy脚本配置文件,包含项目的依赖信息、构建脚本等。
7. requirements.txt:用于Python项目的依赖管理文件,列出了该项目所需的外部库及其版本号。
8. .babelrc/.eslintrc/.prettierrc:用于JavaScript项目中的配置文件,分别用于Babel编译器、ESLint代码检查工具、Prettier代码格式化工具。
9. .travis.yml/.circleci/config.yml:用于持续集成服务(如Travis CI、CircleCI)的配置文件,描述了项目的自动化构建和测试流程。
10. Dockerfile:用于Docker容器化部署的配置文件,包含了容器的构建过程、运行命令等信息。
Web9
Vim编辑器缓存信息泄露
题目:发现网页有个错别字?赶紧在生产环境vim改下,不好,死机了
考查的是Vim缓存,访问url/index.php.swp
Vim编辑器在进行编辑时,使用交换文件来保存未保存的修改。如果Vim在编辑时崩溃或被强制退出,则可以使用交换文件恢复编辑会话。
默认情况下,Vim会在交换目录中为每个打开的文件创建一个交换文件,文件名遵循以下命名规则:
1. 第一次创建的缓存文件名格式为:.filename.swp,例如 ~/.test.txt.swp
2. 如果缓存文件已存在,则文件名变更为:.filename.swo,例如 ~/.test.txt.swo
3. 如果另外一个编辑器实例正在编辑同一个文件,则文件名变更为:.filename.swn,例如 ~/.test.txt.swn
在第三种情况下,文件名中的“n”代表进程ID,这是为了区分同一文件的不同实例所创建的不同缓存文件。
请注意,交换文件是用于临时保存未保存的修改的,完成编辑后应该及时保存并删除交换文件以释放磁盘空间。
Web10
Cookie值
题目:cookie 只是一块饼干,不能存放任何隐私数据
我们查看cookie就行了
Web11
域名隐藏
题目:域名其实也可以隐藏信息,比如flag.ctfshow.com 就隐藏了一条信息
Web12
弱密码,敏感信息泄露
题目:有时候网站上的公开信息,就是管理员常用密码
那就访问admin ,然后要登录密码,在文章底部明显数字,尝试输入,登录
Web13
铭感信息泄露(pdf)
题目:技术文档里面不要出现敏感信息,部署到生产环境后及时修改默认密码
除了几个站内跳转链接,仔细看下面有的pdf,(真费眼啊)
根据提示,就可以了
Web14
.editor敏感信息泄露
题目:有时候源码里面就能不经意间泄露重要(editor)的信息,默认配置害死人
直接访问.editor,打开一个后台,以为可以上传,没权限
在界面有一个,链接
我们上传,之后在访问文件路径,
Web15
弱密码信息泄露
题目:公开的信息比如邮箱,可能造成信息泄露,产生严重后果
还是访问/admin 进入后台登录界面
密码不是邮箱,不过下面有忘记密码,填写所在城市就可以了 (可通过QQ查看归属所在地)
Web16
探针敏感信息
题目:对于测试用的探针,使用完毕后要及时删除,可能会造成信息泄露
了解一下探针:
探针(Probe)通常是一种用于监测网络、系统或应用程序状态的软件工具。它能够定期发送一些测试数据,通过检查其响应和结果来验证目标主机的可用性和问题。
在计算机网络中,探针通常用于确保网络设备能够正常工作,并且记录网络的性能和瓶颈。例如,管理员可以使用 ICMP 探针测试网络设备的连通性,HTTP 探针测试 Web 服务器的可用性,或 SNMP 探针监测路由器或交换机的状态等。
此外,在安全领域中也有探针的应用。攻击者可以使用探针扫描远程计算机以发现漏洞,而安全团队可以使用探针来发现已知漏洞的计算机。
探针(Probe)通常是一种用于监测网络、系统或应用程序状态的软件工具。它能够定期发送一些测试数据,通过检查其响应和结果来验证目标主机的可用性和问题。
在计算机网络中,探针通常用于确保网络设备能够正常工作,并且记录网络的性能和瓶颈。例如,管理员可以使用 ICMP 探针测试网络设备的连通性,HTTP 探针测试 Web 服务器的可用性,或 SNMP 探针监测路由器或交换机的状态等。
此外,在安全领域中也有探针的应用。攻击者可以使用探针扫描远程计算机以发现漏洞,而安全团队可以使用探针来发现已知漏洞的计算机。
根据提示我们访问/tz.php,发现了phpinfo,继续访问
Web17
sql文件的备份一般为backup.sql
题目:备份的sql文件会泄露敏感信息
sql文件的备份一般为backup.sql,然后访问一下
Web18
Unicode编码
题目:不要着急,休息,休息一会儿,玩101分给你flag
是个游戏,tM谁能打通关啊
访问js文件找到100关卡的数字,然后Unicode解码,让我们访问110.php.就可以了
Web19
前端验证泄露
题目:密钥什么的,就不要放在前端了
源码:
error_reporting(0);
$flag="fakeflag"
$u = $_POST['username'];
$p = $_POST['pazzword'];
if(isset($u) && isset($p)){
if($u==='admin' && $p ==='a599ac85a73384ee3219fa684296eaa62667238d608efa81837030bd1ce1bf04'){
echo $flag;
}
这个字符串是什么加密啊?
那就用抓包试试,用户有了,密码试试字符串,so?返回flag
Web20
/db/db.mdb 数据库泄露
题目:mdb文件是早期asp+access构架的数据库文件,文件泄露相当于数据库被脱裤了。
哎,不由得想到了数据库,访问 /db/db.mdb 下载之后是二进制文件,用010打开