SQL注入漏洞利用(上)

news2024/11/24 17:35:06

SQL注入漏洞

    • SQL注入漏洞
    • SQL注入原理
    • SQL注入带来的危害
    • SQL注入分类
      • 数字型注入实操
      • 字符型注入实操
      • 类型检测
        • and测试
        • 绕过密码:'or 1=1 --
      • 搜索型注入实操

SQL注入漏洞

攻击者利用Web应用程序对用户输入验证上的疏忽,在输入的数据中包含对某些数据库系统有特殊意义的符号或命令,让攻击者有机会直接对后台数据库系统下达指令,进而实现对后台数据库乃至整个应用系统的入侵。

SQL注入原理

服务端没有过滤用户输入的恶意数据,直接把用户输入的数据当作SQL语句执行,从而产生威胁。

SQL注入带来的危害

  • 绕过登录验证:使用万能密码登录网站后台等
  • 获取敏感数据:获取网站管理员帐号、密码等
  • 文件系统操作:列目录,读取、写入文件等
  • 注册表操作:读取、写入、删除注册表等
  • 执行系统命令:远程执行命令

SQL注入分类

  • 按照注入点进行分类
    • 数字型注入
    • 字符型注入
    • 搜索性注入
  • 按照诸如技术进行分类
    • 基于布尔的盲注
    • 基于时间的盲注
    • 基于报错的注入
    • 联合查询注入
    • 堆查询注入

数字型注入实操

使用火狐打开到这个界面,sqli安装在之前文章中介绍过了。
在这里插入图片描述
页面提示请输入ID,
在这里插入图片描述
在这里输入ID即可,然后点击execute执行即可看到上面的页面,可以继续换ID的值,改成2或者3等等去测试:
在这里插入图片描述
可以在看一下页面相关的源文件:
在这里插入图片描述

字符型注入实操

因为并不是所有的地方都是输入数字就正确,接下来使用Less-1进行测试:
在这里插入图片描述
接下来打开index.php源文件进行查看,验证Less-1是要求输入字符串的:
在这里插入图片描述
Less-1的源文件和Less-2的源文件只有这里一个差别,现在在页面进行测试:
在这里插入图片描述
接下来尝试错误的输入,因为并不是一开始就能输入对:
在这里插入图片描述
我们把页面的报错信息的双引号中间的内容拿出来:‘4’’ LIMIT 0,1,刚才输入进去的是4’,再稍微观察一下:
在这里插入图片描述
现在就很明显了,显然我们输入错误的是4’,然后4’的外面又有一个单引号,所以猜测这里使用的是字符串,加上刚才原码的查看,可以证明猜测是正确的。原来的语句就是select * from 表名 where id = ‘值’ limit 0,1;

类型检测

and测试

接上面的字符型注入,我们可以使用别的方法进行检测输入类型是什么,好比and:
如果输入的是:1’ and ‘1’ = '1,将这一部分替换到值的那一部分,那么原来的语句就变成了:
select * from 表明 where id = ‘1’ and ‘1’ = ‘1’ limit 0,1;可以发现是一点错误都没有,接下来进行测试:
在这里插入图片描述
发现没有问题,说白了其实就是一个引号闭合的事情,然后进行测试输入的类型。

绕过密码:'or 1=1 –

现在假设有这么一个源码:
select username password from users where username= ‘$ username’ and password=‘$password’
其中的 $username和 $password通过 $_GET[‘ ’]获取,显示加上or–,因为这个‘–’在数据库中代表注释的意思,即使输入也不影响:
在这里插入图片描述
在这里插入图片描述
这个语句为真,于是就跳过了密码,接下来进行测试:
在这里插入图片描述
admin库下的账号密码全都出来了。

搜索型注入实操

一般源文件的代码为:
select * from 表名 where 字段 like ‘%值%’;
当把值改为:‘and [查询条件] and ‘%’=’,那么提交过去的话, 最终显示为:select * from 表名 where 字段 like ‘%‘and [查询条件] and ‘%’=’%’;
在这里插入图片描述
以上就是按照注入点所作的三种分类了。

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

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

相关文章

离散数学笔记_第一章:逻辑和证明(2 )

1.2 命题逻辑的应用1.2.1 语句翻译 1.2.2 系统规范说明 1.2.3 布尔搜索 1.2.4 逻辑谜题泥巴孩子谜题骑士和流氓(考研逻辑题)1.1.2.5 逻辑电路1.2.1 语句翻译 🐳为啥要翻译语句? ➡因语言常常有二义性(有歧义&#x…

Window.location 详细介绍

如果你需要获取网站的 URL 信息,那么 window.location 对象就是为你准备的。使用它提供的属性来获取当前页面地址的信息,或使用其方法进行某些页面的重定向或刷新。 https://www.samanthaming.com/tidbits/?filterJS#2 window.location.origin → htt…

Dbeaver连接Hive数据库操作指导

背景:由于工作需要,当前分析研究的数据基于Hadoop的Hive数据库中,且Hadoop服务端无权限进行操作且使用安全模式,在研究了Dbeaver、Squirrel和Hue三种连接Hive的工具,在无法绕开useKey认证的情况下,只能使用…

基于vscode开发vue项目的详细步骤教程

1、Vue下载安装步骤的详细教程(亲测有效) 1_水w的博客-CSDN博客 2、Vue下载安装步骤的详细教程(亲测有效) 2 安装与创建默认项目_水w的博客-CSDN博客 目录 五、vscode集成npm开发vue项目 1、vscode安装所需要的插件: 2、搭建一个vue小页面(入门vue) 3、大致理解…

近期常见组件漏洞更新:

(1)mysql 5.7 在2023年1月17日,发布了到5.7.41版本 mysql 8.0 在2023年1月17日,发布了到8.0.32版本 MySQL :: Download MySQL Community Serverhttps://dev.mysql.com/downloads/mysql/ (2)Tomcat8在202…

react react-redux数据共享学习记录

react react-redux数据共享1.目的2.数据共享版本2.1Person模块的添加2.1.1 Containers下的Person2.1.2 actions下的person.js2.1.3 reducers下的person.js2.2 store.js的改写!2.3 组件中取出状态的时候,记得“取到位”3.纯函数1.目的 前面的react和reac…

精确光度预测计算工具:AGi32 Crack

什么是AGi32? AGi32首先是一种用于精确光度预测的计算工具:一种技术工具,可以计算任何情况下的照度,协助灯具放置和瞄准,并验证是否符合任意数量的照明标准。 然而,要增强对光度学结果的理解,还…

创建SpringBoot注意事项

作为一个java小白,你是否因为创建SpringBoot项目那些莫名其妙的错误搞得头皮发麻。不要慌张,这篇文章能帮你解决90%的问题【持续更新…】 本文结合创建SpringBoot项目的完整过程来讲 在idea中新建项目 虽然SpringBoot项目是由maven内核组成的&#xff0…

【Linux驱动】驱动设计硬件基础----串口、I2C、SPI、以太网接口、PCIE

1.前言 常见的外设接口与总线的工作方式,包括串口、I2C、SPI、USB、以太网接口、PCI和PCI-E、SD和SDIO等。 2.串口 RS-232、RS-422与RS-485都是串行数据接口标准,最初都是由电子工业协会(EIA)制订并发布的。 3.I2C I2C&…

canvas复习笔记(绘制直线、矩形、圆形、圆弧)

canvas 画一条直线 <body><canvasid"c"width"300"height"200"style"border: 1px solid #ccc;"></canvas> </body><script>// 2、获取 canvas 对象const cnv document.getElementById("c");…

数据结构与算法之Huffman tree(赫夫曼树 / 霍夫曼树 / 哈夫曼树 / 最优二叉树)

目录赫夫曼树概述定义构造赫夫曼树步骤代码实现赫夫曼树概述 HuffmanTree因为翻译不同所以有其他的名字&#xff1a;赫夫曼树、霍夫曼树、哈夫曼树 赫夫曼树又称最优二叉树&#xff0c;是一种带权路径长度最短的二叉树。所谓树的带权路径长度&#xff0c;就是树中所有的叶结点…

【IDEA】【工具】幸福感UP!开发常用的工具 插件/网站/软件

IDEA 插件 CodeGlance Pro —— 代码地图 CodeGlance是一款非常好用的代码地图插件&#xff0c;可以在代码编辑区的右侧生成一个竖向可拖动的代码缩略区&#xff0c;可以快速定位代码的同时&#xff0c;并且提供放大镜功能。 使用:可以通过Settings—>Other Settings—&g…

Linux学习(9.1)文件系统的简单操作

以下内容转载自鸟哥的Linux私房菜 原文&#xff1a;鸟哥的 Linux 私房菜 -- Linux 磁盘与文件系统管理 (vbird.org) 磁盘与目录的容量 df&#xff1a;列出文件系统的整体磁盘使用量&#xff1b;du&#xff1a;评估文件系统的磁盘使用量(常用在推估目录所占容量) df du 实体…

【数据库的基础知识(2)】

&#x1f339;作者:云小逸 &#x1f4dd;个人主页:云小逸的主页 &#x1f4dd;Github:云小逸的Github &#x1f91f;motto:要敢于一个人默默的面对自己&#xff0c;强大自己才是核心。不要等到什么都没有了&#xff0c;才下定决心去做。种一颗树&#xff0c;最好的时间是十年前…

【蓝桥杯每日一题】递推算法

&#x1f34e; 博客主页&#xff1a;&#x1f319;披星戴月的贾维斯 &#x1f34e; 欢迎关注&#xff1a;&#x1f44d;点赞&#x1f343;收藏&#x1f525;留言 &#x1f347;系列专栏&#xff1a;&#x1f319; 蓝桥杯 &#x1f319;我与杀戮之中绽放&#xff0c;亦如黎明的花…

Python字典-- 内附蓝桥题:统计数字

字典 ~~不定时更新&#x1f383;&#xff0c;上次更新&#xff1a;2023/02/28 &#x1f5e1;常用函数&#xff08;方法&#xff09; 1. dic.get(key) --> 判断字典 dic 是否有 key&#xff0c;有返回其对应的值&#xff0c;没有返回 None 举个栗子&#x1f330; dic …

实际案例呈现,教你如何掌握询盘细节

以下通过一个实际案例教大家如何掌握询盘细节&#xff0c;让你的回复率直线上升&#xff01; 这个朋友是从事首饰珠宝行业的&#xff0c;他在阿里巴巴上收到了一封来自摩洛哥买家的询盘&#xff0c;回复后客户就没有音讯了。 摩洛哥买家询盘内容&#xff1a; Hello sir Aft…

这么强才给我28k,我头都不回,转身拿下40k~

时间真的过得很快&#xff0c;眨眼就从校园刚出来的帅气小伙变成了油腻大叔&#xff0c;给各位刚入道的测试朋友一点小建议&#xff0c;希望你们直通罗马吧&#xff01; 如何选择自己合适的方向 关于选择测试管理&#xff1a; 第一&#xff0c;你一定不会是一个喜欢技术&…

python基础命令

1.现在包的安装路径 #pip show 包名 2.pip讲解 相信对于大多数熟悉Python的人来说&#xff0c;一定都听说并且使用过pip这个工具&#xff0c;但是对它的了解可能还不一定是非常的透彻&#xff0c;今天小编就来为大家介绍10个使用pip的小技巧&#xff0c;相信对大家以后管理和…

【Python实战】激情澎湃,2023极品劲爆舞曲震撼全场,爬虫一键采集DJ大串烧,一曲醉人女声DJ舞曲,人人都听醉~(排行榜采集,妙啊~)

导语 哈喽&#xff01;大家好。我是木木子吖~今天给大家带来爬虫的内容哈。 所有文章完整的素材源码都在&#x1f447;&#x1f447; 粉丝白嫖源码福利&#xff0c;请移步至CSDN社区或文末公众hao即可免费。 今天教大家Python爬虫实战一键采集大家喜欢的DJ舞曲哦&#xff01; …