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://www.mfbz.cn/a/610672.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C#中字典Dictionary与自定义类型CustomType之间的转换

C#中字典Dictionary与自定义类型CustomType之间的转换 思路&#xff1a; 可以使用反射System.Reflection来获取类的具体属性&#xff0c; 属性名称就映射字典的键Key。 新建控制台程序DictionaryCustomClassConversionDemo 第一步、新建关键转换类ConversionUtil。 类Con…

GB2312发码测试

编码表&#xff1a;https://www.toolhelper.cn/Encoding/GB2312 GB2312 编码表 GB 2312 标准由中国国家标准总局 1980 年发布&#xff0c;GB 即国标&#xff0c;共收录 6763 个汉字&#xff0c;其中一级汉字 3755 个&#xff0c;二级汉字 3008 个。 GB 2312 的出现&#xff0…

领导关怀 | 西湖区委常委韩斌等一行领导调研创邻科技

5月8日&#xff0c;西湖区委常委韩斌、紫金港科技城管委会党委委员、副主任陈杰、西湖区委办副主任韩鹰等一行领导走访创邻科技&#xff0c;关心企业发展近况。创邻科技COO吴菁、CTO周研陪同参观交流。 韩斌常委一行首先参观了企业荣誉展示区和办公区。参观过程中&#xff0c;…

3D Gaussian Splatting for Real-Time Radiance Field Rendering 论文阅读

如此热门的项目&#xff0c;网络上有很多大牛分析了这篇文章的做法&#xff0c;在这里简单记录一下个人粗浅的理解。 关于各种数学表达式的推导&#xff0c;论文和参考资料中都提供了较为详细的解读&#xff0c;本人能力有限&#xff0c;这一部分理解不够深刻&#xff0c;先不做…

Git 如何管理标签命令(tag)

1.查看本地仓库tag --1.查看本地仓库tag UserDESKTOP-2NRT2ST MINGW64 /e/GITROOT/STARiBOSS/STARiBOSS-5GCA (gw_frontend_master) $ git tag 1stBossUpgrade V10.0.1_20220224_test V10.0.1_20220301_test tag-gwfrontend-V1.0.12-230625 tag-gw_frontend-23.08.29 tag-gw_f…

【python基础】python经典题目100题

文章目录 前言初阶题目1.字符串2.列表3.元组4.字典5.运算6.random 模块7.open函数8.time模块时间9.其他 进阶题目 前言 本文主要是python经典题目100题&#xff0c;适合入门的新手。仅作自己学习的记录。 初阶题目 1.字符串 题目1&#xff1a;怎么找出序列中的最⼤最⼩值&am…

360极速浏览器X全新Chromium内核极致顺滑,绿色便携版 v22.3.1002.64

01 软件介绍 360极速浏览器X是一款基于Chromium 95的高级双核浏览器&#xff0c;支持IE内核&#xff0c;并优化了用户体验与性能。包括无广告弹窗&#xff0c;新增的阅读模式&#xff0c;个性化标签页壁纸&#xff0c;以及专业导航功能&#xff0c;旨在提供更快、更高效的浏览…

Ubuntu意外断电vmdk损坏--打不开磁盘“***.vmdk”或它所依赖的某个快照磁盘。

背景&#xff1a;电脑资源管理器崩溃卡死&#xff0c;强行断电重启&#xff0c;结果虚拟机打不开了&#xff0c;提示打不开磁盘“***.vmdk”或它所依赖的某个快照磁盘。 删除lck文件&#xff1a;失败vmware-vdiskmanager修复 &#xff1a;提示无法修复最终用 VMFS Recovery挂载…

找不到vcruntime140_1.dll怎么办,介绍5种简单有效的解决方法

当您的电脑系统提示找不到vcruntime140_1.dll文件时&#xff0c;这通常意味着系统在尝试运行某个应用程序或游戏时&#xff0c;无法定位到这个至关重要的动态链接库&#xff08;DLL&#xff09;文件。此情况可能源于几个不同的原因&#xff0c;包括但不限于&#xff1a;文件被误…

中信证券:量子产业蓄势待发,看好相关投资机会!

在1994年&#xff0c;数学家彼得肖尔&#xff08;Peter Shor&#xff09;首次提出了现在广为人知的肖尔算法&#xff0c;那时许多人认为量子计算机的概念遥不可及、纯属幻想。然而&#xff0c;到了2024年&#xff0c;全球正深入探讨量子科技在现实世界的应用&#xff0c;以及所…

智启未来:富唯智能AI-ICDP引领的可重构柔性装配产线

在全球制造业竞争日益激烈的今天&#xff0c;如何快速响应市场变化、提高生产效率、降低生产成本&#xff0c;成为了企业面临的重要挑战。随着产品个性化时代的到来&#xff0c;装配产品频繁变换&#xff0c;多品种小批量的生产模式逐渐成为主流。在这一背景下&#xff0c;富唯…

【ArcGIS Pro微课1000例】0059:计算地级城市之间的距离

一、加载数据并符号化 1. 加载实验数据 数据加载完毕。 2. 符号化设置 点击面状数据符号,在右侧的符号系统中选择黑色轮廓。 点击点状符号,选择以个样式。 3. 标注名称 选择地级市图层,打开标注选项卡,设置标注字段为name,设置字体属性,如下所示:

Docker部署Azure chatgpt样例应用

Github地址 https://github.com/microsoft/sample-app-aoai-chatGPT?tabreadme-ov-file#environment-variables 使用Amazon Linux 2 AMI 的arm 64版本镜像, t4g.medium实例。 需要安装git&#xff0c;可能需要安装 pip3等 sudo apt-get install -y python3-pip 然后从如下…

Day7 字符串和常用数据结构

文章目录 字符串和常用数据结构使用字符串使用列表生成式和生成器使用元组使用集合使用字典练习练习1&#xff1a;在屏幕上显示跑马灯文字。练习2&#xff1a;设计一个函数产生指定长度的验证码&#xff0c;验证码由大小写字母和数字构成。练习3&#xff1a;设计一个函数返回给…

希捷硬盘打不开怎么把资料拿出来

在现代社会&#xff0c;硬盘作为存储数据的重要设备&#xff0c;一旦出现问题&#xff0c;往往会让我们倍感焦虑。尤其是当希捷硬盘打不开时&#xff0c;很多人可能会感到无从下手。本文将为大家介绍一些实用的方法&#xff0c;帮助您在希捷硬盘无法打开的情况下&#xff0c;依…

适合中小生产企业的ERP软件有哪些?推荐用哪个?

总结一下适合中小生产企业的ERP软件的需求 功能全面&#xff1a;能够进行客户管理、供应商管理、销售管理、采购管理、财务管理&#xff1b;适用规模&#xff1a;适合10人以内的中小生产企业&#xff1b; 相信很多企业也和题主一样&#xff0c;对ERP软件有如上要求&#xff0…

前端基础知识-ES6解构赋值(将数组内元素、字符串内字符、对象内属性值快速赋值给其他变量)

前言&#xff1a; 将数组、字符串、对象进行展开&#xff0c;并将展开的数据赋值给指定变量&#xff0c;以达到语法简化的目的&#xff0c;日常开发中可以大大提升我们的效率。 主要语法&#xff1a; 一、[变量1,变量2。。。]目标数组 将数组里面的内容赋给其他变量 场景1…

Canvas绘制图片和区域(前端使用Canvas绘制图片,并在图片上绘制区域)

简介&#xff1a;在Web开发中&#xff0c;有时候我们需要在图片上进行一些交互式操作&#xff0c;比如绘制区域、标记等。这种场景下&#xff0c;我们可以使用HTML5的<canvas>元素来实现。Canvas 是 HTML5 提供的一种图形绘制接口&#xff0c;可以通过 JavaScript 在网页…

GPU云渲染平台选择应该看什么?瑞云渲染带你了解

在选择GPU云渲染平台时&#xff0c;关键的考量因素包括渲染速度、支持的软件兼容性、价格性价比以及用户服务质量。了解这些指标将帮助用户在众多选项中做出明智的选择&#xff0c;以优化渲染效率和成本效益。 一、GPU与渲染有什么关系 GPU与渲染有着密切的关系&#xff0c;在…

如何创建window11虚拟机,超详细!!!

为什么要创建window11虚拟机&#xff0c;有了虚拟机&#xff0c;可以避免一些软件的危害&#xff0c;我们可以在虚拟机里&#xff0c;测试软件的安全性。当然你也可以在虚拟机里体验下流氓软件带来的快乐。众所周知&#xff0c;流氓软件会修改默认浏览器&#xff0c;将几款流氓…