首页 > 数据库 >sql注入--基础注入判断方法(构造闭合)

sql注入--基础注入判断方法(构造闭合)

时间:2024-03-05 14:34:31浏览次数:28  
标签:-- 单引号 闭合 构造 报错 sql id 注入

在我们拿到一个sql注入的题目之后,在确定了注入点之后,接下来要做的事情就是进行基础注入判断。
在开始前,我们需要理解一个SQL注入中最常用的词汇 —— 构造闭合 。 对于SQL处理语句后台的写法:

SELECT username,password FROM users WHERE id = ?

这里的问号可以有多种的闭合方式, $id, '$id', "$id", ($id)。

我们要做的就是构造闭合,比如注入点是id='$id',这样的话我们如何构造闭合呢,可以传入$id=1',这样的话语句就变成了id=$'1'',这样的话我们就完成了对前半个单引号的闭合构造,但是多出来的原本那一半单引号怎么办呢?我们可以考虑用注释符号使其无效化,即传入$id=1'--+。


下面就来罗列一下常见的注入判断方法以及注入点类型:

通过是否报错来判断

比如我们用1'来试探一个注入点,会有以下几种情况:
"1'":"" 中为可以包含 ' ,而 1' 是一个合法的字符串,在查询时会先被强制类型转换为数字,不会报错
1':单引号未闭合,会报错
'1'':第三个单引号未闭合,会报错

通过报错信息来判断

image
(图片来自Hello-CTF)

标签:--,单引号,闭合,构造,报错,sql,id,注入
From: https://www.cnblogs.com/Tperm/p/18053761

相关文章

  • 基本操作之——Unicode编码
    自版本18.11后,支持UTF-81.字符转Unicode码tuple_ord('s',Ord)dev_clear_window()dev_disp_text('\'s\'的Unicode码为'+Ord,'window','center','center','black','box_color','#00ffffc0......
  • 代码随想录算法训练营第三十六天 | 56. 合并区间,763.划分字母区间,435. 无重叠区间
    435.无重叠区间 已解答中等 相关标签相关企业 给定一个区间的集合 intervals ,其中 intervals[i]=[starti,endi] 。返回 需要移除区间的最小数量,使剩余区间互不重叠 。 示例1:输入:intervals=[[1,2],[2,3],[3,4],[1,3]]输出:1解......
  • 项目开发中如何保证接口的幂等性
    1.幂等概述1.1什么是幂等性在计算机领域中,幂等(Idempotence)是指任意一个操作的多次执行总是能获得相同的结果,不会对系统状态产生额外影响。在Java后端开发中,幂等性的实现通常通过确保方法或服务调用的结果具有确定性,无论调用次数如何,结果都是可预期的。上面的定义是目前大多数......
  • 往 netty Channel中写入字符串
    示例代码:EventLoopGroupgroup=newNioEventLoopGroup();Bootstrapbootstrap=newBootstrap();bootstrap.group(group).channel(NioSocketChannel.class).option(ChannelOption.SO_KEEPALIVE,true)......
  • 变量$host、$http_host、$proxy_host区别
    //如果想让Host是crmtest.aty.sohuno.com,则进行如下设置:proxy_set_headerHostcrmtest.aty.sohuno.com;//如果不想改变请求头“Host”的值,可以这样来设置:proxy_set_headerHost$http_host;//但是,如果客户端请求头中没有携带这个头部,那么传递到后端服务器的请求也不含这个头......
  • tui-image-editor汉化
    tui-image-editor是一款开源的在线图片编辑包。官网:https://nhn.github.io/tui.image-editor/该工具未提供中文支持,下面是汉化的内容。//local_zh_cn.jsconstlocale_zh_cn={  'Load':'加载本地',  'Download':'下载当前',  'Custom':'自......
  • day56 动态规划part13 代码随想录算法训练营 300. 最长递增子序列
    题目:300.最长递增子序列我的感悟:之前做过,都忘记了,这次好好记思路理解难点:dp[i]是由昨天的历史遍历后,得到今天的值 听课笔记:我的代码:classSolution:deflengthOfLIS(self,nums:List[int])->int:#难点是dp的推导公式,#dp[i]是截止到n......
  • Mysql之SQL语句初体验
    前言本文通过简单的示例去了解Mysql的DDL、DML、DCL的语句用法。一、DDL语句DDL(DataDefinitionLanguage)语句:数据定义语言,主要是进行定义/改变表的结构、数据类型、表之间的链接等操作。常用的语句关键字有CREATE、DROP、ALTER等。获取帮助信息mysql>HELPCREATE......
  • Windows 操作系统中,Internet 协议版本 4 (TCP/IPv4) 的配置信息通常是保存在注册表中
    %SystemRoot%\system32\tcpipcfg.dll%SystemRoot%\system32\drivers\tcpip.sysSystem32\drivers\tcpip.sys%SystemRoot%\System32\wshtcpip.dll%SystemRoot%\System32\mswsock.dll%SystemRoot%\System32\perfnet.dll%SystemRoot%\System32\wsock32.dll......
  • Python 生成随机字符串
    0x00吐槽最近让项目坑的没办法,老写一些脚本来协助工作,刚好在测试python生成word的时候遇到需要随机字符串来命名文档名,简单写点东西记录一下0x01一班的童靴其实随机字符串这个东西在任何语言里都经常会用到,而且解决方法也简单首先定义一个字符串,随机字符串就从这里面取,然......