CTFshow web入门 web12-20
web12

题目提示说在网站上面的公开信息,就是管理员常用密码,所以在网页上面找数字和字母组合在一起的,或者是纯数字/字母的

在网页下面找到了 372619038 这串数字,推测是密码,

使用 dirsearch 进行目录扫描,扫描到了/admin,直接访问试一下

是一个登录窗口,猜测在网站中得到的那一串数字是密码,而账号使用 admin 试一下,登录成功,得到 flag
ctfshow{e63b3786-527a-4d1c-af2b-d1906e80105e}

目录扫描的时候还有一个状态码为 200 的,/robots.txt,去访问试一下,返回的是/admin,和上面的闭环了

知识点:状态码
核心:
200:成功
301:永久跳转
302:临时跳转
403:禁止访问
404:资源不存在
405:请求方法不存在
500:服务器内部错误
502/503/504:服务或网关异常
常见:
401:未认证
204:成功但无内容
304:缓存未修改
413:上传内容太大
415:类型不支持
429:请求太多
思路总结:做题需要先使用三件套,目录扫描 dirsearch,抓包/放包/看包,看源代码,这个思路下来大部分都会找到一些有用的信息,还有查看题目提示和网页信息,看网页中有没有和题目相关的东西
web13

进入到页面,在页面最底下找到 document(文件),点击进入到系统使用手册



在最下面找到了后台登录地址和默认用户名、默认密码,访问默认后台地址发现无法访问此页面,看了一下别人的 wp 发现只要进入到后台登录地址之后,输入用户名和密码就能够得到 flag

思路总结:这种类型的信息搜集题目,需要根据题目提示找,在网页中尝试点击任何东西,看有没有有用的东西
web14


直接信息收集三件套,先使用 dirsearch 目录扫描一下,扫到了/editor 这个目录
editor:编辑

是一个编辑器

尝试了多个功能点之后,在图片->网络图片->图片空间中找到了 f1000g.txt 这个文档,



/editor/attached/image/var/www/html/nothinghere/fl000g.txt
nothinghere:这里什么都没有
在 url 后面加上这个/nothinghere/fl000g.txt 就能够得到 flag 了
https://c84a1aa3-c03d-467f-bba8-4582aec50ee5.challenge.ctf.show/nothinghere/fl000g.txt

ctfshow{3f2e0d55-05f9-4189-bff2-d89ef18b3281}
思路总结:首先是信息收集三件套起手,之后是通过三件套收集到的信息进入到编辑器页面,在编辑器中点击可用的功能点,看是否能够获得到有用的信息,不停的尝试自己的思路,之后是找到了可疑的路径,/nothinghere,这里什么都没有,这个路径就很可疑,点进去之后发现里面有一个/f1000g.txt 文档,把/nothinghere/f1000g.txt 路径和题目的 url 路径拼接到一起得到 flag
web15


根据题目提示在页面最下面找到了一个 qq 号

去 qq 看了一下他的信息

然后我使用 dirsearch 进行目录扫描,知道了他的后台登录地址为/admin


访问进去是一个后台登录系统,尝试使用弱口令进行登录,发现并不行,下面有一个忘记密码的功能,试一下,需要提交密保答案,这就和我们刚才收集到的 qq 号有关系了,那个人的信息简介地址是在陕西西安,试一下


密码被重置为了 admin7789

使用 admin admin7789 登录成功,得到 flag


web16

信息收集三件套,查看源码、抓包、目录扫描,都没有找到有用的信息,

搜索了一下提示信息,直接再 url 后面加上/tz.php 就行了,然后进入雅黑 PHP 探针中,点击 PHPINFO,进入到 phpinfo 页面,ctrl+f 搜索 flag,得到 flag

ctfshow{53531306-67af-4a40-807f-abc05f6160b2}

才开始使用 dirsearch 进行目录扫描的时候,没有扫描到任何信息,是因为 tz.php 不在 dirsearch 的默认字典库中,需要自己手动弄一个字典库,然后进行扫描就行了
phpinfo.php
info.php
test.php
tg.php
tz.php
probe.php
admin.php
backup.zip
将这几种常见的探针路径添加到字典库中再次进行目录扫描就 ok 了
python dirsearch.py -u https://4bafe972-d58d-4a36-afde-b035c3b3c22e.challenge.ctf.show/ -e php -w D:\OneDrive\桌面\字典库\zidian.txt
-w:指定字典库
-e:指定后缀
我的字典库中是添加了后缀的,这里再指定后缀的话,dirsearch 不会再次拼接的,比如 tz.php.php,他不会傻乎乎的拼接的,如果在字典库中的单词没有后缀,使用-e 指定后缀之后,他就会添加上后缀

知识点:phpinfo、PHP 探针
phpinfo 是 PHP 内置的环境信息显示函数;
PHP 探针是用 PHP 编写的服务器检测脚本,通常会集成 phpinfo 功能,并额外显示权限、组件、磁盘、数据库等更多信息
思路总结:通过题目提示知道了是使用探针,然后再 url 后面添加几种常见的探针进行访问,tz.php 访问成功,进入到 PHP 探针页面,然后找到 phpinfo ,进入到 phpinfo,ctrl+f 搜索 flag,才开始使用信息收集三件套,并没有收集到有用的信息,后面发现是 dirsearch 目录扫描的时候他的默认字典库中并没有 tz.php,自己创建一个字典库然后使用目录扫描就能够扫描到 tz.php 了
web17

信息收集,使用 dirsearch 扫描,扫描到了/backup.sql
backup:备份


把/backup.sql 拼接到 url 后面下载到了一个名为 backup.sql 的文件,打开之后,得到了 flag


web18

是一个玩到 101 分的小游戏,玩了一下,速度太快了,
信息收集查看源码
再调试器中直接搜索 flag,找到这个
var result=window.confirm("\u4f60\u8d62\u4e86\uff0c\u53bb\u5e7a\u5e7a\u96f6\u70b9\u76ae\u7231\u5403\u76ae\u770b\u770b");
然后对其中的字符进行解码:“你赢了,去幺幺零点皮爱吃皮看看”
再 url 后面拼接 /110.php,得到 flag


web19

第一种方法:
通过查看页面源代码,
知道了这是 AES 加密,
运算模式为:CBC
他分别给出了填充模式:ZerosPadding
密钥:0000000372619038
偏移:ilove36dverymuch
密钥:a599ac85a73384ee3219fa684296eaa62667238d608efa81837030bd1ce1bf04

使用 AES 进行解密,得到密码为:i_want_a_36d_girl

admin
i_want_a_36d_girl

第二种方法:发送 POST 请求

使用 burp 抓包,先抓取登录的页面,然后再发送到重放器中,再进行修改,
username=admin&pazzword=a599ac85a73384ee3219fa684296eaa62667238d608efa81837030bd1ce1bf04

思路总结:通过信息收集,得到源码,两种解法,一种是通过 AES 在线平台进行解密,源码出提供了需要的东西,解出密码,之后登录就行了。 另一种是通过在源码出得到的信息,使用 brup 发 POST 请求,得到 flag
web20

使用 dirsearch 进行目录扫描
python dirsearch.py -u https://9f937202-a889-4b2f-a877-4bf58efc8ce9.challenge.ctf.show/ -r
-r:递归扫描
扫描到,/db/db.mdb,拼接到 url 后面,下载到一个名为 db.mdb ,打开之后直接搜索 flag 就能够获得到 flag


知识点:.mdb
.mdb 文件时 Microsoft Access 数据库文件,早期很多 ASP(后端)+Access(数据库) 的网站,会直接用它来存网站的数据。
如果这个文件因为配置错误被别人下载到了,就等于网站的数据库整个被拿走了