瓢虫CTF考核题

Web1

题目链接http://43.139.21.57:2220/
打开该题我们可以看见
在这里插入图片描述

题目上带有robots的信息,联想到攻防世界中做过的web的题
在这里插入图片描述

查看一下robots.txt.
这里百度了解一下什么时robots.txtRobots协议是什么,Robots.txt的作用有哪些?

1.Robots协议

简单理解:Robots协议是搜索引擎蜘蛛爬行的一种标准,当蜘蛛来访的时候会首先检测网站根目录下是否存在Robots.txt这个文件。如果存在,它会根据Robots协议的规定,去抓取只被SEO管理允许抓取的页面,而屏蔽不需要抓取的内容,它可以理解为是蜘蛛与站点之间的桥梁。
Robots.txt文本文件带有robots协议,该协议告诉所有搜索引擎该网站的哪些页面可以被抓取,哪些页面禁止被抓取。这有两个意思: 1、保护隐私。有些目录或页面不希望或不能被外界看到。有些搜索引擎可能不知道这些情况,它仍会像往常一样抓取并显示这些页面。如果我们通过robots来设置限制,搜索引擎蜘蛛将会放弃爬行,外界将无法通过搜索引擎知道这些保密信息。

2、调整抓取页面的数量。众所周知,每个网站上蜘蛛爬行的配额是有限的,如果我们禁止一些不重要的页面不被抓取,那么将配额留给那些重要的页面,会有更多的机会被抓取。
再百度一下“搜索引擎蜘蛛爬行”
在这里插入图片描述在这里插入图片描述在这里插入图片描述然后继续做题,访问该网站的robots.txt

在这里插入图片描述User-agent(用户代理)

在这里插入图片描述在这里插入图片描述

php语言,前面三句,显示跟着句意理解
后面看见GET,POST想到http协议传送的常用的两种方式,又想到之前再攻防世界做出来的题

在这里插入图片描述

让后读懂下面的语句如果get的传参/?cat=I want to join Ladybug
然后执行system函数,执行指令,并返回输出
这里执行的指令是laydbug,同时注意到laydbug是用POST传参,联想到之前培训所看过的内容,
在这里插入图片描述在这里插入图片描述让laydbug=一个命令就好了,问题windows的系统不应该执行windows的命令吗?然后去查一下?php的system函数执行的是windows的命令,还是linux的命令?为什么?
首先我用一下windows的命令
在这里插入图片描述
在这里插入图片描述
然后用Linux命令
在这里插入图片描述
在这里插入图片描述
这里我的理解时,对于php语言来说,system函数对于windows和Linux都能实行,那么就说得通了。
值得注意的是在操作过程中出现了这个问题
在这里插入图片描述首先出现这个问题,问题在我那个问号是中文里的问号。形成了乱码,然后又去了解了为什么会有
在这里插入图片描述
当我重新改的时候又出现了这个问题
在这里插入图片描述

这是查问题呢,当我用Hackbar的Load URL时候,我已经get传参了,那么下载出来的,就成了乱码,当我再一次传送的时候,get传上去的就不是我想传送的那句话了,而是那段字符串,从而导致错误!
所以要手动修改一下最后成功解决问题

Web2

做Web的过程中,我去查一些需要了解到的知识。
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述然后我们继续做题
在这里插入图片描述
做Web题,直接显示出源码,那就需要看懂这个意思,读懂。
下面我来翻译理解一下,前面三句和Web1一样,没啥可以说的
从下面开始,通过cookie传送的a值如果传送值为真,那么isset返回值为真,就执行。如果匹配a为system|passthru|flag|eval|~|^那么就返回hacker,并退出当前网页,最后如果没有匹配到,那就将a传送的值作为PHP的代码来执行!
这里看了学长写的WP,了解到phpinfo函数

在这里插入图片描述
根据学长的wp,值得注意的是:phpinfo();后面这个分号,会被cookie认为是间隔的标志,那就不会执行这个函数了!所以再后面进行url编码,从而让服务端认为它是字符来接收。
根据Web1,已经学习了url编码
在这里插入图片描述另一个问题?怎么找到flag?

方法二_
这里做一个扩展,除了system函数还有其他的函数也可以执行同样的方式,有shell_exec和exec等,这里看了学长的wp其中标注了exec这个函数
在这里插入图片描述
但是该函数没有回显,所以输出时还需要加一个echo,然后
在这里插入图片描述遇到了这么一个问题,首先因为不能tac flag,就不会绕过上面的if语句,了解一下
在这里插入图片描述这里还是不太了解,但是根据目前理解,Dockerfile文件里包含了flag的信息
在这里插入图片描述最后拿到flag

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Back~~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值