一、打开网站是这个样子

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

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的更多相关文章

  1. PageAdmin Cms V2.0 getshell 0day

    黑小子在土司公布了“PageAdmin cms getshell Oday”,并给出了一个漏 洞的利用EXP.经过危险漫步在虚拟机里测试,存在漏洞的是PageAdmin Cms的次最薪版本PageAd ...

  2. Hacker101 CTF 学习记录(一)

    前言 苦力挖洞,靠运气赚点小钱.看着大佬严重,高危,再看看自己手上的低危,无危害默默流下了菜鸡的泪水 思路受局限,之前听学长推荐和同事聊到hacker101,因此通过hacker101拓展下漏洞利用思 ...

  3. Micro-CMS v1 (Hacker101 CTF)

    这道题一共有四个flag,初步观察可以创建或者修改发布的内容. Flag1: 首先随便创建了一个页面,创建完成后页面会直接跳转到我们所创建的页面. 初步判断网页应该是根据地址栏后的数字来查询并且显示页 ...

  4. A little something to get you started(Hacker101 CTF)

    打开题目的页面发现只有”Welcome to level 0. Enjoy your stay.“这么一行普通的文字,然后习惯性的打开浏览器的开发者工具的“network”模块,按下F5发现网页在请求 ...

  5. hacker101 CTF 学习记录(二)

    前言 无 Easy-Postbook 拿到功能有点多,先扫一遍目录 .Ds_Store没有啥东西,page是个静态页面 随便注册个账号,登录后已经有2篇文章,第一篇文章的id是1 自己创建文章,将ur ...

  6. 【hacker101 CTF】Photo Gallery

    0x01 打开首页看到 查看源代码,发现图片都是通过"fetch?id=1"这种方式加载的 简单测了一下存在SQL注入. 直接上sqlmap跑 第一个flag: ^FLAG^d45 ...

  7. go micro实战01:快速搭建服务

    背景 go-micro给我们提供了一个非常便捷的方式来快速搭建微服务,而且并不需要提前系统了解micro,下面用一个简单的示例来快速实现一个服务. 创建Proto文件 因为我们要做微服务,那么就一定有 ...

  8. Go语言micro之快速搭建微服务

    背景 go-micro给我们提供了一个非常便捷的方式来快速搭建微服务,而且并不需要提前系统了解micro,下面用一个简单的示例来快速实现一个服务. 创建Proto文件 因为我们要做微服务,那么就一定有 ...

  9. MakeCode图形编程应用在micro:bit上的多工性能实测

    1. 简述 本文不涉及对测试中所用到的设备或软件的推广. micro:bit 是一款由英国广播电视公司(BBC)为青少年编程教育设计,并由微软,三星,ARM,英国兰卡斯特大学等合作伙伴共同完成开发的微 ...

  10. LEARN HOW TO HACK

    出处:https://www.hackerone.com/hacker101 什么是HACKER101? https://hacker101.com/Hacker101是一个视频,资源和实践活动的集合 ...

随机推荐

  1. 安装JDK与卸载JDK教程

    卸载JDK 删除JDK的安装目录,也就是删除了主程序(通过环境变量可以找到) 删除java_home的环境变量 删除环境变量path中与java_home相关的 通过DOS命令cmd来检验是否卸载成功 ...

  2. uni-app开发经验分享二十一: 图片滑动解锁插件制作解析

    在开发用户模块的时候,相信大家都碰到过一个功能,图片滑动解锁后发送验证码,这里分享我用uni-app制作的一个小控件 效果如下: 需要如下图片资源 template <template> ...

  3. 基于Python的接口自动化-unittest测试框架和ddt数据驱动

    引言 在编写接口自动化用例时,我们一般针对一个接口建立一个.py文件,一条接口测试用例封装为一个函数(方法),但是在批量执行的过程中,如果其中一条出错,后面的用例就无法执行,还有在运行大量的接口测试用 ...

  4. jmeter-并发及常数吞吐量定时器设定

  5. 代码 or 指令,浅析ARM架构下的函数的调用过程

    摘要:linux程序运行的状态以及如何推导调用栈. 1.背景知识 1.ARM64寄存器介绍: 2.STP指令详解(ARMV8手册): 我们先看一下指令格式(64bit),以及指令对于寄存机执行结果的影 ...

  6. Shell从入门到精通

    熟悉基本shell操作不仅是运维的基本功,对于开发来说也是多多益善,我在学习的过程中,总结了十个练手的小demo,并附上涉及的知识点,仅供娱乐. 1. 多线程ping监控,检查同一网段的IP是否连通 ...

  7. MySQL调优用户监控之show processlist

    简介 show processlist显示这台MySQL正在连接的用户: mysql> show processlist; +----+------+-----------+-------+-- ...

  8. error Unexpected use of comma operator no-sequences解决过程

    error Unexpected use of comma operator no-sequences解决过程 报错内容: ERROR in ./pages/course/_id.vue friend ...

  9. 关于MongoDB的简单理解(一)--基础篇

    一.什么是MongoDB? MongoDB是一个基于分布式文件存储的文档数据库,旨在简化开发和扩展,为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之 ...

  10. 代理模式详解:静态代理+JDK/CGLIB 动态代理实战

    1. 代理模式 代理模式是一种比较好的理解的设计模式.简单来说就是 我们使用代理对象来代替对真实对象(real object)的访问,这样就可以在不修改原目标对象的前提下,提供额外的功能操作,扩展目标 ...