NSSCTF中的web学习(md5())

目录

MD5的学习

[BJDCTF 2020]easy_md5

[LitCTF 2023]Follow me and hack me

[LitCTF 2023]Ping

[SWPUCTF 2021 新生赛]easyupload3.0

[NSSCTF 2022 Spring Recruit]babyphp


MD5的学习

md5()函数:

md5($a):返回a字符串的散列值

md5($a,TRUE):返回a字符串散列值的16进制转ascii码值

md5函数的语法:

可参考:PHP md5()函数详解,PHP计算MD5,md5()绕过,md5()漏洞原理剖析-CSDN博客

[BJDCTF 2020]easy_md5

1.查看源码什么都没有,尝试之后也不是sql,抓包之后看到响应头hint

2.响应头是有关md5加密的,输入的密码会被md5加密,需要绕过,参考wp,得到ffifdyop可以绕过md5的加密,原因:ffifdyop加密之后的这一串,经过十六进制的转换,可以变为  ’or’6乱码,然后实现绕过

3.传入后得到以下页面

4.查看源代码,很明显是一个php弱比较以及md5函数的绕过

5.这里我使用数组绕过,数组绕过之后,跳转到如下页面

6.代码依旧是md5函数的绕过,只是传参方式是post,利用数组绕过,得到flag

[LitCTF 2023]Follow me and hack me

1.根据提示传参,得到flag

[LitCTF 2023]Ping

1.提示输入IP地址,输入127.0.0.1,发现有回显

2.输入ping的命令执行,发现提示只能输入ip

3.查看源代码,发现存在过滤,是前端过滤,我们直接禁用JS即可

4.禁用js之后,再运用命令,发现有回显

5.查看根目录,发现flag

6.使用cat命令查看flag

[SWPUCTF 2021 新生赛]easyupload3.0

1.根据提示,需要上传一个图片

2.上传成功之后,经过尝试,发现是.htaccess解析文件,新建一个文件夹,在里面输入SetHandler application/x-httpd-php,它会让后面传入的jpg文件中的php语句都可以执行

3.接着就上传jpg木马文件

4.使用蚁剑连接,得到flag

[NSSCTF 2022 Spring Recruit]babyphp

1.进入页面,发现是php代码

翻译代码为:
<?php
highlight_file(__FILE__);
include_once('flag.php'); //这行代码将包含(或导入)flag.php 文件。这意味着 flag.php 文件中定义的任何变量或函数都可以在当前文件中使用。
if(isset($_POST['a'])&&!preg_match('/[0-9]/',$_POST['a'])&&intval($_POST['a'])){ //这是一个 if 语句,它包含三个条件:1.isset($_POST['a']):检查是否有一个名为 a 的 POST 请求参数。2.!preg_match('/[0-9]/',$_POST['a']):使用正则表达式检查 $_POST['a'] 是否不包含任何数字。3.intval($_POST['a']):将 $_POST['a'] 转换为整数,并检查其是否为真(即非零)。if(isset($_POST['b1'])&&$_POST['b2']){ //检查是否有一个名为 b1 的 POST 请求参数,并且 b2 参数也存在.if($_POST['b1']!=$_POST['b2']&&md5($_POST['b1'])===md5($_POST['b2'])){ 、、这是一个嵌套 if 语句,它检查 b1 和 b2 的值是否不同,但它们的 MD5 哈希值是否相同。      if($_POST['c1']!=$_POST['c2']&&is_string($_POST['c1'])&&is_string($_POST['c2'])&&md5($_POST['c1'])==md5($_POST['c2'])){ 、、又一个嵌套 if 语句,这次它检查 c1 和 c2 的值是否不同,但它们都是字符串,并且它们的 MD5 哈希值相同。echo $flag; //如果这些条件都满足,代码将输出 $flag 变量的值,该变量从 flag.php 文件中导入}else{echo "yee"; //如果第四个if中的条件不满足,它将输出 "yee"。}}else{echo "nop"; //如果第四个if中的条件不满足,它将输出 "nop"。}}else{echo "go on"; //如果第二个if的两个条件都满足,代码将执行 if 语句块中的代码。否则,它将输出 "go on"。}
}else{echo "let's get some php";
} 

2.这个题主要让a,b,c都满足条件就能得到flag,其中a涉及正则表达式,就使用数组绕过,b使用数组进行md5函数的绕过,c必须是字符串,就不能用数组绕过,需要用md5的字符串绕过

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

探索计算之美:HTML CSS 计算器案例

本次案例是通过HTML和CSS&#xff0c;我们可以为计算器赋予独特的外观和功能&#xff1b; 在这个计算器中&#xff0c;你将会发现&#xff1a; 简洁清晰的界面设计&#xff0c;使用户能够轻松输入和查看计算结果。利用HTML构建的结构&#xff0c;确保页面具有良好的可访问性和…

亲测有效!关键点检测——COCO格式转YOLO格式代码!!!

话不多收&#xff0c;直接上代码&#xff0c;这个我也是找了好久的&#xff0c;分享不易&#xff0c;给个鼓励&#xff01;&#xff08;记得点赞收藏&#xff09; 大家可以直接使用此代码转换你自己的数据集&#xff0c;路径换成你自己的就行了&#xff0c;注意路径格式&#x…

C++ Primer Plus第二章复习题

1、C的程序模块叫什么&#xff1f; 答&#xff1a;函数。 2、下面的预处理器编译指令是做什么用的&#xff1f; #include <iostream> 答&#xff1a;将iostream加入到源代码中&#xff0c;在最终的编译之前&#xff0c;使用iostream文件的内存替换该编译指令。 3、下…

MySQL变量的四则运算以及取模运算

1、定义多个变量在一条语句中&#xff0c;需要使用,作为分隔符 除法默认保留4位有效数字 2、浮点数运算&#xff1a; 除法默认保留4位有效数字

内存拆解分析表:学习版[图片]

对拆解system中主要是对比测试机和对比机之间的差距&#xff0c;测试机那些地方高于对比机 拆解表&#xff0c;作为理解 在拆解表中system测试机比对比机多出113M 这说明是有问题的 对system拆解&#xff1a; system12345对比机9102294380941069391081628测试机10252010331…

uni-appH5Android混合开发二 || 使用Android Studio打包应用APK

前言&#xff1a; 在上一章节我们已经讲了如何uni-app离线打包Android平台教程&#xff0c;这一章就该来讲讲如何使用Android Studio打包应用APK提供给Android手机安装使用了。 uni-app跨平台框架介绍和快速入门 uni-app跨平台框架介绍和快速入门 第一步、首先打开已经编译好的…

【Spring】Spring 整合 Junit、MyBatis

一、 Spring 整合 Junit <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache…

世上最全前端开发教程(HTMLCSS)

HTML介绍 HTML&#xff0c;全称为HyperText Markup Language&#xff0c;即超文本标记语言&#xff0c;是一种用来创建网页的标准标记语言。HTML使用一系列的标签&#xff08;Tags&#xff09;来定义网页的不同部分和它们的行为&#xff0c;比如段落、链接、图片等。 CSS介绍 …

Docker + Django跨域解决方案

什么是Django Django 是一个开源的高级 Python Web 框架&#xff0c;它鼓励快速开发并遵循可重用和可维护的实践。Django 是在 MTV&#xff08;模型-模板-视图&#xff09;模式的基础上设计的&#xff0c;这个模式类似于但不同于 MVC&#xff08;模型-视图-控制器&#xff09;模…

使用 MSYS2 Qt6 发布绿色版的SDR软件无线电应用

文章目录 概要整体架构流程技术名词解释技术细节在启动器中为子进程设置路径和环境。如何迅速找齐所有的DLL 小结附件 概要 新接触软件定义无线电&#xff08;SDR&#xff09;的朋友一般都会一股脑的安装一些现有的SDR平台。无论是GNURadio还是SDR、SDRSharp、SDRAngel&#x…

【WPF学习笔记(一)】WPF应用程序的组成及Window类介绍

WPF应用程序的组成及Window类介绍 WPF应用程序的组成及Window类介绍前言正文1、WPF介绍1.1 什么是WPF1.2 WPF的特点1.3 WPF的控件分类 2、XAML介绍2.1 XAML的定义2.2 XAML的特点2.3 XAML的命名空间 3、WPF应用程序组成3.1 App.config3.2 App.xaml3.3 App.xaml.cs3.4 MainWindow…

【配置】IT-Tools部署

github地址 docker运行如下&#xff0c;记得打卡端口 docker run -d --name it-tools --restart unless-stopped -p 9090:80 corentinth/it-tools:latestip:9090查看&#xff0c;很香大部分工具都有

【C++】CentOS环境搭建-安装CATCH2

【C】CentOS环境搭建-安装CATCH2 1.克隆Catch2仓库2. 进入Catch2目录3. 创建一个构建目录4. 使用CMake生成构建系统&#xff08;以及可能的编译&#xff09;5.安装Catch2&#xff08;可选&#xff0c;根据你的需求&#xff09; 1.克隆Catch2仓库 git clone https://github.com…

Secnet-智能路由系统 actpt_5g.data 信息泄露漏洞复现

0x01 产品简介 Secnet安网智能AC管理系统是广州安网通信技术有限公司&#xff08;简称“安网通信”&#xff09;的无线AP管理系统。 0x02 漏洞概述 Secnet-智能路由系统 actpt_5g.data 接口存在信息泄露漏洞&#xff0c;未经身份验证的远程攻击者可以利用此漏洞获取系统账户…

【Java难点】多线程-高级

悲观锁和乐观锁 悲观锁 synchronized关键字和Lock的实现类都是悲观锁。 它很悲观&#xff0c;认为自己在使用数据的时候一定有别的线程来修改数据&#xff0c;因此在获取数据的时候会一不做二不休的先加锁&#xff0c;确保数据不会被别的线程修改。 适合写操作多的场景&…

sipeed 的 MaixCam UART操作

发现问题 根据sipeed MaixCam官方文档 使用MaixVision会报错。 正确的接线 1&#xff0c;usb转ttl的RX和TX与sipeed MaixCam官方赠送的usb转接头反向连接&#xff0c;GND互相连接。 2&#xff0c;再用一根tpyc-c为其供电。 连接WiFi路由器 MaixCam液晶屏输入WiFi名称和密…

【Nginx】如何在 Nginx 中阻止来自特定国家的 IP 地址访问

文章目录 前言一、准备工作二、查看 Nginx 服务器都拥有哪些模块2.1 先查看本地nginx是否有ngx_http_geoip2模块2.2 安装nginx并配置ngx_http_geoip2模块2.2.1下载所需版本的nginx到服务器2.2.2 先安装所需依赖2.2.3 解压文件2.2.4 下载ngx_http_geoip2模块2.2.5 编译安装nginx…

视频批量剪辑指南:一键合并视频并添加背景音乐,高效便捷

在数字化时代&#xff0c;视频剪辑已经成为了一项常见且重要的技能。无论是制作家庭影片、工作展示还是社交媒体内容&#xff0c;掌握高效的视频剪辑技巧都能极大地提升我们的工作效率和创作质量。本文将为您介绍云炫AI智剪中高效的视频批量剪辑方法&#xff0c;让您能够一键合…

(Java)心得:LeetCode——15.三数之和

一、原题 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。 注意&#xff1a;答案中不可以包含重复的三元组。…

Java集合框架之LinkedHashSet详解

哈喽&#xff0c;各位小伙伴们&#xff0c;你们好呀&#xff0c;我是喵手。运营社区&#xff1a;C站/掘金/腾讯云&#xff1b;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点&#xff0c;并以文字的形式跟大家一起交流&#xff0c;互相学习&#xff0c;一…