Hacker101 CTF-Micro-CMS v2
一、打开网站是这个样子

找到一个登录框,存在注入漏洞

3.我们可以这样更改用户名中的输入:
admin' or 1=1 --
4.错误消息显示Invalid Password,因此我们也应该尝试构造一个密码才能登录。经过几次尝试,我终于通过使用有效负载成功了,如下所示:
admin' union select '123' as password --
并使用通行证123以管理员用户身份登录。

返回主页,我们可以看到一个超链接,该超链接链接到一个私人页面,并在其中显示第一个标志。

第二个flag
1.让我们像在Micro-CMS v1中一样创建一个新页面。
2.内容文本区域中的XSS仍然存在(有效载荷相同),但是我们无法获取该标志。
3.返回此CMS,我们已经知道新版本已升级版本控制。但是我们尚未测试edit API。由于我们是以伪造的管理员身份登录并获得了edit API,因此让我们检查一下它是否得到正确的授权。
4,我们可以将此API发送到BurpSuite Repeater,并删除请求标头中的Cookie段。看看发生了什么事?是的,我们获得了第二旗!

第三个flag
1.这很混乱。我在里面呆了几天。最后,我决定获取默认的管理员用户名和密码并使用它登录。
2.因此,让我们再来看一下错误消息。
“从管理员那里选择用户名= \'%s \''%request.form ['username']。replace('%','%%')的密码
而且我们还知道,在构造了一些sqli有效载荷之后,存在两种不同类型的错误。一个是“未知用户”,另一个是“无效密码”。
根据以上信息,我们可以使用SQL注入技术来获取所需的信息。
3.尝试这样的有效负载:
' or length(password)=1 --
响应显示“未知用户”。
使用BurpSuite入侵者模块进行自动破解。

现在我们知道密码长度为6。
4.我们可以继续猜测密码中的每个字符。这是有效载荷:
' or password like 'a%'
最后我们可以得到的密码是
joette
4,我们还可以通过使用有效载荷来获取用户名的长度,如下所示:
' or password='joette' and length(username)=1 --
我们也知道账户也是6位
然后我们将有效载荷更改为
' or password='joette' and username like 'a%'
我们知道用户名是
marlin
5.使用用户名“ marlin”和密码“ joette”登录CMS。然后...

Hacker101 CTF-Micro-CMS v2的更多相关文章
- PageAdmin Cms V2.0 getshell 0day
黑小子在土司公布了“PageAdmin cms getshell Oday”,并给出了一个漏 洞的利用EXP.经过危险漫步在虚拟机里测试,存在漏洞的是PageAdmin Cms的次最薪版本PageAd ...
- 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 ...
- go micro实战01:快速搭建服务
背景 go-micro给我们提供了一个非常便捷的方式来快速搭建微服务,而且并不需要提前系统了解micro,下面用一个简单的示例来快速实现一个服务. 创建Proto文件 因为我们要做微服务,那么就一定有 ...
- Go语言micro之快速搭建微服务
背景 go-micro给我们提供了一个非常便捷的方式来快速搭建微服务,而且并不需要提前系统了解micro,下面用一个简单的示例来快速实现一个服务. 创建Proto文件 因为我们要做微服务,那么就一定有 ...
- MakeCode图形编程应用在micro:bit上的多工性能实测
1. 简述 本文不涉及对测试中所用到的设备或软件的推广. micro:bit 是一款由英国广播电视公司(BBC)为青少年编程教育设计,并由微软,三星,ARM,英国兰卡斯特大学等合作伙伴共同完成开发的微 ...
- LEARN HOW TO HACK
出处:https://www.hackerone.com/hacker101 什么是HACKER101? https://hacker101.com/Hacker101是一个视频,资源和实践活动的集合 ...
随机推荐
- 安装JDK与卸载JDK教程
卸载JDK 删除JDK的安装目录,也就是删除了主程序(通过环境变量可以找到) 删除java_home的环境变量 删除环境变量path中与java_home相关的 通过DOS命令cmd来检验是否卸载成功 ...
- uni-app开发经验分享二十一: 图片滑动解锁插件制作解析
在开发用户模块的时候,相信大家都碰到过一个功能,图片滑动解锁后发送验证码,这里分享我用uni-app制作的一个小控件 效果如下: 需要如下图片资源 template <template> ...
- 基于Python的接口自动化-unittest测试框架和ddt数据驱动
引言 在编写接口自动化用例时,我们一般针对一个接口建立一个.py文件,一条接口测试用例封装为一个函数(方法),但是在批量执行的过程中,如果其中一条出错,后面的用例就无法执行,还有在运行大量的接口测试用 ...
- jmeter-并发及常数吞吐量定时器设定
- 代码 or 指令,浅析ARM架构下的函数的调用过程
摘要:linux程序运行的状态以及如何推导调用栈. 1.背景知识 1.ARM64寄存器介绍: 2.STP指令详解(ARMV8手册): 我们先看一下指令格式(64bit),以及指令对于寄存机执行结果的影 ...
- Shell从入门到精通
熟悉基本shell操作不仅是运维的基本功,对于开发来说也是多多益善,我在学习的过程中,总结了十个练手的小demo,并附上涉及的知识点,仅供娱乐. 1. 多线程ping监控,检查同一网段的IP是否连通 ...
- MySQL调优用户监控之show processlist
简介 show processlist显示这台MySQL正在连接的用户: mysql> show processlist; +----+------+-----------+-------+-- ...
- error Unexpected use of comma operator no-sequences解决过程
error Unexpected use of comma operator no-sequences解决过程 报错内容: ERROR in ./pages/course/_id.vue friend ...
- 关于MongoDB的简单理解(一)--基础篇
一.什么是MongoDB? MongoDB是一个基于分布式文件存储的文档数据库,旨在简化开发和扩展,为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之 ...
- 代理模式详解:静态代理+JDK/CGLIB 动态代理实战
1. 代理模式 代理模式是一种比较好的理解的设计模式.简单来说就是 我们使用代理对象来代替对真实对象(real object)的访问,这样就可以在不修改原目标对象的前提下,提供额外的功能操作,扩展目标 ...