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是一个视频,资源和实践活动的集合 ...
随机推荐
- Mysql简要概述
Mysql学习笔记 Mysql简介: Mysql是一个轻量级关系型数据库管理系统,由瑞典Mysql AB公司开发,目前属于Oracle公司.目前Mysql被广泛地应用在Internet上的中小型网 ...
- 解决安装mysql动态库libstdc++.so.6、libc.so.6版本过低问题
初始化mysql报错: ./bin/mysqld: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ...
- shell批量解压源码包
有时候部署环境有很多安装包,如果一个一个地解压缩实在太麻烦了,可以用shell批量进行解压缩.命令如下: [root@localhost ~]# vi tar.sh #! /bin/bash #标称是 ...
- logging philosophy 日志哲学
Go kit - Frequently asked questions https://gokit.io/faq/ Logging - Why is package log so different? ...
- http的响应码及含义
1xx(临时响应) 100: 请求者应当继续提出请求. 101(切换协议) 请求者已要求服务器切换协议,服务器已确认并准备进行切换. 2xx(成功) 200:正确的请求返回正确的结果 201:表示资源 ...
- 题解 UVA11694 【Gokigen Naname谜题 Gokigen Naname】
题目 题解 考场上连暴力都不会打的码农题,深搜是真的难 /kk 前置问题 怎么输出"\" cout<<"\\"; 2.怎么处理不在一个环里,可以考虑 ...
- JavaWeb——过滤器及监听器
什么是过滤器? 过滤器示意图 Filter是如何实现拦截的? Filter的生命周期 Filter的创建 Filter的销毁 FilterConfig接口 Servlet过滤器有关接口 过滤器配置 F ...
- 彻底记住看起来很高级的__pycache__与__name__
参考了的博客:https://blog.csdn.net/yitiaodashu/article/details/79023987 https://blog.csdn.net/ipi715718/ar ...
- 【STM32】时钟
1. 在STM32中,有五个时钟源,为HSI.HSE.LSI.LSE.PLL: ① HSI是高速内部时钟,RC振荡器,频率为8MHz: ② HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源 ...
- springBoot之 spring-boot-starter-parent 引入详解
springBoot中引入 <parent> <groupId>org.springframework.boot</groupId> <artifactId& ...