http协议——请求方式

img

根据题目得知请求方式为GET,题目让我们将GET请求头进行替换

http协议中共有八种请求头

1、OPTIONS

2、HEAD

3、GET

4、POST

5、PUT

6、DELETE

7、TRACE

8、CONNECT

与题目比对,没有相同的请求头,那么猜想可能为CTFHUB

用burp抓包,更改请求头,得到flag

img

http协议——302跳转

根据题目提示为HTTP临时重定向,先对HTTP重定向进行一个简单的了解

HTTP重定向:服务器无法处理浏览器发送过来的请求(request),服务器告诉浏览器跳转到可以处理请求的url上。(浏览器会自动访问该URL地址,以至于用户无法分辨是否重定向了。)

301和302状态码都表示重定向,就是说浏览器在拿到服务器返回的这个状态码后会自动跳转到一个新的URL地址,这个地址可以从响应的Location首部中获取(用户看到的效果就是他输入的地址A瞬间变成了另一个地址B)——这是它们的共同点。

301:永久重定向,重定向之后之前的地址不能再访问

302:暂时重定向,重定向之后之前的地址仍能访问

通过浏览器工具查看

img

发现302的网址

用linux curl进行抓取,执行后屏幕会显示html

img

http协议——cookie

cookie: 在网站中,http请求是无状态的。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户。cookie的出现就是为了解决这个问题,第一次登录后服务器返回一些数据(cookie)给浏览器,然后浏览器保存在本地,当该用户发送第二次请求的时候,就会自动的把上次请求存储的cookie数据自动的携带给服务器,服务器通过浏览器携带的数据就能判断当前用户是哪个了。

img

本道题要求只有admin能够得到flag,并且题目给出提示为cookie的伪造

用burp进行抓包,发现cookie处admin=0,我们改为1后放包

img

http——响应包查看

简单查看源代码

img

目录遍历

发现有几个目录,我们查看各个文件

img

找到flag.txt,得到flag

img

img

PHPINFO

打开之后就是phpinfo页面,查找了一下flag就发现了

img

Phpinfo中需要注意的要点:

system info 详细的操作系统信息 确定window or linux

disable_function 禁用函数

open_basedir 将用户可操作的文件限制在某目录下

SERVER_ADDR 真实ip

DOCUMENT_ROOT web根目录

fastcgi 查看是否开启fastcgi和fastcgi的版本,可能导致解析漏洞、远程命令执行、任意文件读取等问题

opcache 当开启了opcache并可以上传文件时,可以在本地生成一个与服务器文件名相同的文件,并生成缓存文件xx.php.bin。上传后恶意缓存文件会将服务器上的原文件覆盖,从而getshell。

备份文件下载——网站源码

img

题目给了我们提示,根据所给的备份文件名和文件后缀进行测试,下载备份文件

我尝试了用御剑去扫,可以把备份文件扫出来,要增加扫描时间

img

下载备份文件后,后发现flag的文件

此图像的alt属性为空;文件名为image-6.png

打开之后没有,就尝试访问这个页面,得到flag

img

备份文件下载——bak文件

img

题目给了提示备份文件在index.php.bak中

打开文件直接得到flag

img

备份文件下载——vim缓存

img

题目给了提示flag在index.php里,并且备份文件因vim异常退出而残留的缓存

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

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

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

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

得到swp文件后,用虚拟机打开,vim -r index.php恢复源文件

img

得到flag

备份文件下载——.DS_Store

.DS_Store 是 Mac OS 保存文件夹的自定义属性的隐藏文件。通过.DS_Store可以知道这个目录里面所有文件的清单。

下载. DS_Store文件拖进linux虚拟机里进行解析

img

Git泄露——index

因为是git泄露,我们选择先用githack查看暂存区文件,会发现一个.txt

img

因为是第一次使用githack记录一下用法

直接在cmd中进入到存放githack的目录

GitHack.py http://XXXXXXXXXXX/.git 下载缓存文件