CTFSHOW~WEB入门

WEB~4(2022.1.16)

看题目,提示我们查看robots.txt文件

注:什么是robots.txt文件?

  搜索引擎通过一种程序robot(又称spider),自动访问互联网上的网页并获取网页信息。

  您可以在您的网站中创建一个纯文本文件robots.txt,在这个文件中声明该网站中不想被robot访问的部分,这样,该网站的部分或全部内容就可以不被搜索引擎收录了,或者指定搜索引擎只收录指定的内容。

robots.txt文件放在哪里?

     robots.txt文件应该放在网站根目录下。举例来说,当robots访问一个网站(比如http://www.abc.com)时,首先会检查该网站中是否存在http://www.abc.com/robots.txt这个文件,如果机器人找到这个文件,它就会根据这个文件的内容,来确定它访问权限的范围。

所以这道题我们可以通过robot.txt这个文件找出flag

 文件中提示我们查看flagishere.txt这个文件,通过访问我们获得了flag

 WEB~5(2022.1.17)

 此题提示phps源码可能会帮助我们解决问题,即phps文件泄露,我们可以访问index.phps,保存文件

 打开index.phps文件即可获得flag

WEB~6(2022.1.18)

题目提示我们解压源码,即网站源码泄露
访问www.zip获取网站源码

 

文件提示在fl000g.txt中

获得flag

WEB~7(2022.1.19)

题目: 版本控制很重要,但不要部署到生产环境更重要。

 解题思路: 根据提示版本控制,想到常用的版本控制工具git,svn,尝试访问.git和.svn

git:分布式版本控制系统。

何为分布式?分布式即与集中式对立,集中式是有一个中央服务器来存储源码,用户每次修改源码都需要从中央服务器把源码down下来,修改后再提交到中央服务器。而分布式则是每个人电脑里都有完整的版本库。

对理解git工作原理的重要知识点:工作区和暂存区

工作区就是电脑里看到的目录。

暂存区在版本库里,版本库就是隐藏目录.git。stage是暂存区,master是分支

我们把文件往git版本库添加的时候,分两步:

1、git add :文件添加到暂存区

2、git commit :暂存区的所有文件添加到master

.git 文件导致源码泄露

原理

  • 开发人员在开发时,常常会先把源码提交到远程托管网站(如github),最后再从远程托管网站把源码pull到服务器的web目录下,如果忘记把.git文件删除,就造成此漏洞。利用.git文件恢复网站的源码,而源码里可能会有数据库的信息。

  • 当前大量开发人员使用git进行版本控制,对站点自动部署。 如果配置不当,可能会将.git文件夹直接部署到线上环境,这就引起了git泄露漏洞。

当网站维护(开发)人员在从托管网站pull代码的时候 , 也会将这个储存了所有的版本信息的.git文件夹下载到服务器的Web目录下 , 这样的话 , 攻击者就可以利用这个目录 , 去下载git文件夹 , 就可以利用其中储存的版本控制信息,完全恢复网站后台的代码和目录结构 , 当然 , 一般网站都会涉及到数据库操作 , 而一般来说 , 需要链接数据库就需要用户名/密码/端口/库名等信息 , 而这些信息肯定会在网站后台的源码里面又体现 , 因此这种情况是极其危险的 , 还有 , 一旦服务器开放了数据库的远程连接功能 , 攻击者就可以利用从源码中找到的数据库用户名和密码对远程数据库进行登陆 , 危险性不言而喻。

所以我们可以解析.git/index文件来获得flag

 SVN

是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。

在使用SVN管理本地代码过程中,会自动生成一个隐藏文件夹,其中包含重要的源代码信息。但一些网站管理员在发布代码时,不愿意使用‘导出’功能,而是直接复制代码文件夹到WEB服务器上,这就使隐藏文件夹被暴露于外网环境,这使得渗透工程师可以借助其中包含版本信息追踪的网站文件,逐步摸清站点结构。

    在服务器上布署代码时。如果是使用 svn checkout 功能来更新代码,而没有配置好目录访问权限,则会存在此漏洞。黑客利用此漏洞,可以下载整套网站的源代码。
   使用svn checkout后,项目目录下会生成隐藏的.svn文件夹(Linux上用ls命令看不到,要用ls -al命令)。 

WEB~8(2022.1.20)

又是一个版本控制泄露问题 

根据上文所介绍,此题我们尝试访问.svn文件

http://d1283935-bc5f-42b2-8f14-f557e898b470.challenge.ctf.show/.svn

得到flag 

WEB~9(2022.1.21)

题目: 发现网页有个错别字?赶紧在生产环境vim改下,不好,死机了
解题思路: 提示vim异常关闭,想到linux下vi/vim异常关闭是会存留.swp文件,尝试访问index.php.swp,得到flag。

知识:

vim是个用的很多的文本编辑器

1.vim中的swp即swap(交换分区)的简写,在编辑文件时产生,它是隐藏文件。这个文件是一个临时交换文件,用来备份缓冲区中的内容。类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。

如果文件正常退出,则此文件自动删除。

如果并没有对文件进行修改,而只是读取文件,是不会产生swp文件的。

2.在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容

以 index.php 为例:第一次产生的交换文件名为 .index.php.swp

再次意外退出后,将会产生名为 .index.php.swo 的交换文件

第三次产生的交换文件则为 .index.php.swn

3.vim -r 可以查看当前目录下所有的swp文件。
vim -r filename可以恢复文件,这样上次意外退出没有保存的修改,就会覆盖文件。

所以此题我们可以通过访问index.php.swp文件获取flag

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值