Hacker101-CTF | Postbook
Hacker101-CTF | Postbook
mirror王宇阳
水平有限,不足之处还望指教 _
看看这个一大堆英文介绍
With this amazing tool you can write and publish your own posts. It'll allow you to write public and private posts. Public posts can be read by anyone that signs up. Private posts can only be read by you. See it as your own diary. We'll make sure that your private posts are safe with us.
===百度翻译===
有了这个神奇的工具,你可以写和发表你自己的文章。它允许你写公开和私人的帖子。任何注册的人都可以阅读公共帖子。私人帖子只能由你阅读。把它当作你自己的日记。我们会确保你的私人岗位安全。
提取关键字:
写文章、发文章、公开帖子、私密帖子
直观访问页面,首先注册一个test账户
越权访问/枚举参数(访问)
观察urlxxx/xxx/index.php?page=home.php发现可存在包含,测试后发现没有
浏览现有的几个留言信息发现


由URL得知留言的访问是通过id参数索引进行访问的,这里就有可能存在越权访问的可能;(考虑越权的理由是该留言板存在私人帖子)
将url加载到burp中
GET /xxxx/index.php?page=view.php&id=§1§ HTTP/1.1
Host: xxxxxx
Pragma: no-cache
Cache-Control: no-cache
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.79 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Referer: http://35.227.24.107/1825372d7a/index.php?page=home.php&message=
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: id=eccbc87e4b5ce2fe28308fd9f2a7baf3
Connection: close
将参数id从1开始1为单位进行递增(根据具体配置增加线程)

这是id为2的页面

这是admin用户创建的一个私密不公开的帖子,我们利用参数递归(爆破)确认这里存在“越权”访问的可能。

笔者也是很累,这个id参数是参考前辈的,否则死活也没考虑到这一点,前辈介绍说这是考察“参数枚举”
这道ctf综合考察的是越权的各种操作,留言板的操作是写、该、删
Createpost创建一个留言:
我们创建留言界面url是
xx/xx/index.php?page=view.php?id=5由于是自己的,可以具备编辑(edit)删除(delete)功能
越权编辑
创建的title留言编辑url是xx/xx/index.php?page=edit.php&id=5
我们在之前的操作中得知到有几个帖子的id分别是:1、2、5…… 这里越权编辑id=2(之前枚举出来的admin私密的帖子)

由图可见越权访问成功,Save post提交

越权删除
title的删除url是1825372d7a/index.php?page=delete.php&id=e4da3b7fbbce2345d7772b0674a318d

id参数从直观上看是一个加密结果,放到解密网站上得到的结果是被md5加密的数字“5”

我们这里越权删除id为1的帖子,构造'id=c4ca4238a0b923820dcc509a6f75849b'
越权创建

修改user_id参数为2

越权(伪造)登录
登录的关键是Cookie

cookie解密分析后结果是

我们伪造修改cookie为:2 ==> c81e728d9d4c2f636f067f89cc14862c

修改cookie为1 ==> c4ca4238a0b923820dcc509a6f75849b

其他的cookie尝试后无果……

完成
Hacker101-CTF | Postbook的更多相关文章
- Hacker101 CTF 学习记录(一)
前言 苦力挖洞,靠运气赚点小钱.看着大佬严重,高危,再看看自己手上的低危,无危害默默流下了菜鸡的泪水 思路受局限,之前听学长推荐和同事聊到hacker101,因此通过hacker101拓展下漏洞利用思 ...
- Micro-CMS v1 (Hacker101 CTF)
这道题一共有四个flag,初步观察可以创建或者修改发布的内容. Flag1: 首先随便创建了一个页面,创建完成后页面会直接跳转到我们所创建的页面. 初步判断网页应该是根据地址栏后的数字来查询并且显示页 ...
- A little something to get you started(Hacker101 CTF)
打开题目的页面发现只有”Welcome to level 0. Enjoy your stay.“这么一行普通的文字,然后习惯性的打开浏览器的开发者工具的“network”模块,按下F5发现网页在请求 ...
- hacker101 CTF 学习记录(二)
前言 无 Easy-Postbook 拿到功能有点多,先扫一遍目录 .Ds_Store没有啥东西,page是个静态页面 随便注册个账号,登录后已经有2篇文章,第一篇文章的id是1 自己创建文章,将ur ...
- 【hacker101 CTF】Photo Gallery
0x01 打开首页看到 查看源代码,发现图片都是通过"fetch?id=1"这种方式加载的 简单测了一下存在SQL注入. 直接上sqlmap跑 第一个flag: ^FLAG^d45 ...
- LEARN HOW TO HACK
出处:https://www.hackerone.com/hacker101 什么是HACKER101? https://hacker101.com/Hacker101是一个视频,资源和实践活动的集合 ...
- 个人CTF资源聚合
i春秋 幻泉 CTF入门课程笔记 视频地址 能力 思维能力 快速学习能力 技术能力 基础 编程基础 (c语言 汇编语言 脚本语言) 数学基础 (算法 密码学) 脑洞 (天马行空的想象推理) 体力耐力( ...
- 暑假CTF训练一
暑假CTF训练一 围在栅栏中的爱 题目: 最近一直在好奇一个问题,QWE到底等不等于ABC? -.- .. --.- .-.. .-- - ..-. -.-. --.- --. -. ... --- ...
- Sharif University CTF 2016 -- Login to System (PWN 200)
EN: It's easy to find out where is the bug : .text:0000000000400DE4 ; void *start_routine(void *).te ...
随机推荐
- 使用Spring AOP 实现日志管理(简单教程)
有时候,我们在做项目时会遇到这样的需求: 给XXX.java中的所有方法加上指定格式的日志输出. 针对这种指定类.或者指定方法进行共性操作的功能,我们完全可以使用Spring AOP来实现. 本文使用 ...
- Mysql主从同步原理简介
1.定义:当master(主)库的数据发生变化的时候,变化会实时的同步到slave(从)库. 2.好处: 1)水平扩展数据库的负载能力. 2)容错,高可用.Failover(失败切换)/High Av ...
- python 简单主机批量管理工具
需求: 主机分组 主机信息配置文件用configparser解析 可批量执行命令.发送文件,结果实时返回,执行格式如下 batch_run -h h1,h2,h3 -g web_cluster ...
- IOS常见语法解惑
由于工作过程中经常需要查看IOS的Objective-C代码,遂把一些常见的.有疑问的OC语法列出,方便之后会看,提升效率. Objective-C中的@语法 @interface告诉编译器,我要声明 ...
- 在python中使用json
在服务器和客户端的数据交互的时候,要找到一种数据格式,服务端好处理,客户端也好处理,这种数据格式应该是一种统一的标准,不管在哪里端处理起来都是统一的,现在这种数据格式非常的多,比如最早的xml,再后来 ...
- /lib64/libc.so.6: version `GLIBC_2.18' not found报错解决
今日安装一区块链服务时报错:/lib64/libc.so.6: version `GLIBC_2.18' not found,检查后现有的glibc版本是2.17,然后参考https://www.ji ...
- 本地开启https服务
### ##自签名证书 ##配置Apache服务器SSL ##自己作为CA签发证书 ###这里是OpenSSL和HTTPS的介绍 OpenSSL HTTPS 开启HTTPS配置前提是已在Mac上搭建A ...
- 使用Handler的步骤
使用Handler的大致流程: 1.首先创建一个Handler对象,可以直接使用Handler无参构造函数创建Handler对象,也可以继承Hander类,重写HandleMessage方法来创建Ha ...
- C++银行储蓄程序代码
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...
- 少用 string.Format
如果你使用的是 C# 6.0 及其以上版本的话我建议你使用新增的 内插字符串 这个功能.这个功能可以更好的帮助开发人员设置字符串格式.下面我们就来看一下为什么要少用 string.Format 而要多 ...