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 ...
随机推荐
- 3DMAX 卸载工具,完美彻底卸载清除干净3dmax各种残留注册表和文件
一些同学安装3dmax出错了,也有时候想重新安装3dmax的时候会出现这种本电脑windows系统已安装3dmax,你要是不留意直接安装,只会安装3dmax的附件,3dmax是不会安装上的.这种原因呢 ...
- ionic2踩坑之ionic resources失败
网上关于ionic2怎么修改应用图标和启动画面资料也挺多的.不过大家执行ionic resources的时候不少人都执行失败了,关于执行失败的原因网上很少.下面分享一下我的经验吧. 1.看自己的项目下 ...
- 接口测试-chap2-关于重定向
重定向: 301:资源永久转移 302:资源暂时转移到另一个地址了 1.如果请求接口时发生了重定向,python会自动跟随重定向,对重定向地址发起请求,最后只能得到重定向地址的响应结果.而看不到重定向 ...
- js mvvm:闲来无事,实现一个只具最基本数据双向绑定的mvvm
近期项目内用knockoutjs. 想模拟实现数据双向绑定的基本功能. 只具有最基本的功能,且很多细节未曾考虑,也未优化精简. 能想到的缺少的模块 1事件监听,自定义访问器事件 2模版 3父子级 编码 ...
- 浅谈JobExecutionContext & JobDataMap
JobExecutionContext是什么? 当Scheduler调用一个Job,就会将JobExecutionContext传递给Job的 execute() 方法: Job能通过JobExecu ...
- Java多态详解
package QianFeng02; //多态 public class Polymorphic { public static void main(String[] args){ // HomeC ...
- MySQL5.7彻底取消主从复制
由于手误在master节点执行了stop slave;->change master to XXX;->start slave;的动作,后面虽然使用stop slave停止了主从复制,但是 ...
- loadrunner通过odbc测mysql数据库语句
#include "lrd.h" Action() { double trans_time; //定义一个double型变量用来保存事务执行时间 static LRD_INIT_ ...
- 机器学习算法的基本知识(使用Python和R代码)
本篇文章是原文的译文,然后自己对其中做了一些修改和添加内容(随机森林和降维算法).文章简洁地介绍了机器学习的主要算法和一些伪代码,对于初学者有很大帮助,是一篇不错的总结文章,后期可以通过文中提到的算法 ...
- Azure Devops测试管理(上)
因为最近测试人员合并到我这边开发组,对于如何能更好管理测试流程和测试与开发能更高效的完成任务,通俗的说如何能更敏捷,深入思考,然后就开始琢磨起TFS(也称之为VSTS/Azure Devops,因为我 ...