news 2026/10/13 8:00:20

bugku ——各种绕过哟

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
bugku ——各种绕过哟

启动靶场读取源码

<?php highlight_file('flag.php'); $_GET['id'] = urldecode($_GET['id']); $flag = 'flag{xxxxxxxxxxxxxxxxxx}'; if (isset($_GET['uname']) and isset($_POST['passwd'])) { if ($_GET['uname'] == $_POST['passwd']) print 'passwd can not be uname.'; else if (sha1($_GET['uname']) === sha1($_POST['passwd'])&($_GET['id']=='margin')) die('Flag: '.$flag); else print 'sorry!'; } ?>

分析一下代码:

必须传入GET参数uname,还要传入POST参数passwd;

uname(GET)和password(POST)不能相等,否则会返回“passwd can not be uname”

uname 的sha1加密结果和passwd的sha1的加密结果必须完全相等(===),同时GET参数id必须等于margin;

满足所有条件,就会输出flag。

漏洞就在于如果给sha1加密函数传入一个数组就会返回NULL

NULL === NULL是严格相等的。

例如 uname[]=123和 passwd[]=456

这个时候sha1(uname) === sha1(passwd)就成立了

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/12 2:58:10

C语言图论:最短路径算法

本文献给&#xff1a; 已掌握无向图基础&#xff0c;希望理解如何在带权图中找到两点间最短路径的C语言学习者。本文将系统讲解两种经典的最短路径算法。 你将学到&#xff1a; 最短路径问题的定义与核心概念Dijkstra算法&#xff1a;解决单源、非负权图的最短路径Bellman-For…

作者头像 李华
网站建设 2026/10/12 4:53:45

实习面试题-聚合搜索项目面试题

1.你的项目中使用了哪些技术栈?请分别介绍一下 Spring Boot、Elastic Stack 在项目中的作用。 2.你提到自己二次开发了 Spring Boot 初始化模板,这个模板有哪些功能? 3.什么是 HttpClient?如何使用 HttpClient 来抓取外部网站的文章?请简述整个过程。 4.什么是 Jsoup?…

作者头像 李华
网站建设 2026/10/12 16:41:13

JavaScript 处理二进制数据流:从 ArrayBuffer 到 Blob 再到 File 的转换指南

各位同学&#xff0c;大家好。今天我们将深入探讨JavaScript中处理二进制数据流的核心机制。在现代Web应用中&#xff0c;我们不再仅仅局限于文本数据的交互&#xff0c;图片、音频、视频、文件上传下载、网络协议等都离不开对二进制数据的精确操控。理解并掌握JavaScript提供的…

作者头像 李华