[CTF] 20201024 bilibili1024havefun writeup

0x01 页面的背后是什么?

查看源代码,直接访问http://45.113.201.36/api/admin,出flag。

0x02 真正的秘密只有特殊的设备才能看到

直接访问页面提示需要使用bilibili Security Browser浏览器访问,加上题目的hint,非常传统的一道ctf题,应该是要改写UserAgent来访问。

构造UserAgent的值为bilibili Security Browser,刷新网页即可得到flag2。

0x03 密码是啥?

看源代码,没有什么提示,先随便猜几个,用户名肯定是admin,密码admin、password、123456瞎猜,最后猜到bilibili的时候登录直接得到flag -_-||

0x04 对不起,权限不足~

打开题目页,什么都没有,没有输入框,看源码,开burpsuite访问。

里面有一个role=ee11cbb19052e40b07aac0ca060c23ee,到解码网站解码,发现这串是user的md5加密字符串。

根据题目提示,尝试把role后面的这串值改为所谓的“超级管理员”,试了superadmin、admin、root等等都不对,最后在改为Administrator的md5对应加密值再提交时成功了。

0x05 别人的秘密

打开页面,又是啥也没有的界面。

看源码。里面有个写死的uid=100336889,开burpsuite从这个uid开始往后爆破。

出结果了,有一个Length长度比别的长的,得到flag。

0x06-0x0a 结束亦是开始

第7到第10题都没题目,点击题目显示“接下来的旅程需要少年自己去探索啦~”,感觉第6题到第10题就是一个环境下的一套答题。地址是120.92.151.189(后来又出来另一个地址45.113.201.36)。

第10题

目录扫描,出 http://120.92.151.189/blog/test.php

出来一大堆+!()[]之类的符号,经典的JSFuck加密,开个Chrome,console里面直接执行。

str1的内容进行unicode和中文的互转。

根据提示,前往“程序员最多的地方”-Github,搜索str2的内容bilibili1024havefun。Issue中看到有end.php。

构造路径,http://120.92.151.189/blog/end.php?id[]=&url=/flag.txt,是一张图,放到binwalk里面看一下,没有什么特别的,不是一张图片包多个文件的考点。

用记事本打开,搜索flag,可以找到flag10的值。

 

第8题

nmap扫一下,因为靶机一直被扫,要看运气,多试几次。大概率会出现只扫出来80端口的情况。

反正扫出来了就能做,扫不出来就一头雾水。贴一张最后一天晚上22点扫出来的图。

用6379的redis,kali中没有,现下一个。

sudo apt install redis

这道题要看RP,nmap要扫出来端口,redis还要能连上,谁连上了谁就能拿到flag。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先,我们需要分析题目所提供的代码: ```php <?php error_reporting(0); if ($_FILES["upload"]["error"] > 0) { echo "Error: " . $_FILES["upload"]["error"] . "<br />"; } else { echo "Upload: " . $_FILES["upload"]["name"] . "<br />"; echo "Type: " . $_FILES["upload"]["type"] . "<br />"; echo "Size: " . ($_FILES["upload"]["size"] / 1024) . " Kb<br />"; move_uploaded_file($_FILES["upload"]["tmp_name"], "upload/" . $_FILES["upload"]["name"]); echo "Stored in: " . "upload/" . $_FILES["upload"]["name"]; } ?> ``` 从上述代码中我们可以发现,这是一个文件上传的代码,该代码运行后会将用户上传的文件存储到 `upload` 目录下。 但是,该代码没有对上传的文件类型进行限制,这意味着我们可以上传任何类型的文件,甚至是一些恶意的文件。我们可以尝试上传一些常见的恶意文件,比如 `webshell`。 我们可以在本地创建一个 `webshell.php` 文件,然后上传到服务器上的 `upload` 目录。上传完成后,我们可以访问 `http://xxx.xxx.xxx.xxx/upload/webshell.php` 来执行我们上传的 `webshell`。 最后,我们需要注意的是,该上传脚本没有做任何安全性检查,这意味着我们可以上传任意大小的文件,这可能会影响服务器的性能,甚至导致服务器崩溃。因此,在实际应用中,我们应该对上传的文件大小进行限制,同时对上传的文件类型进行检查,从而确保服务器的安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值