SQL注入
远行01
这个作者很懒,什么都没留下…
展开
-
sqli-labs Less23 GET-Error based - strip comments
Less-23 get 方式注入,过滤了注释符当输入?id=1时,登陆成功当输入?id=1’ 或 ?id=1’ and 1=1 --+ 或?id=1’ and 1=1 # 均显示错误可判断闭合方式为 单引号查看源码发现注释符都被替换为了空格,在这里可以使用另外一种特殊的注释符 ;%00 (英文输入法)。测试输入 ?id=1’ and 1=1;%00 后可正常显示。此关也可以基于报错注入、延时注入、利用 or ‘1’='1 进行闭合方法一:联合查询语句除了最后的注释符不一样其他的和原创 2020-10-11 14:44:50 · 116 阅读 · 0 评论 -
sqli-labs Less-21 POST-Dump into outfile-String
sql注入读写文件1、注入点和Less-20的相同,请参考Less-20的分析,也可以采用Less-20的方法注入。但是这一关想考查的是利用sql注入读写文件。Less-20: https://blog.csdn.net/bigblue00/article/details/1089969082、sql注入读写文件的理论分析请参考Less-5。注入的语句也相同,只是两关一个是GET方法一个是POST方法。Less-5: https://blog.csdn.net/bigblue00/article/原创 2020-10-11 10:24:18 · 221 阅读 · 0 评论 -
sqli-labs Less-20 POST-Cookie injections-uagent field-error based
POST方式,基于报错的cookie注入1、页面分析登陆成功后,页面会显示cookie信息,判断为登陆成功后,在cookie处存在注入点。2、注入点分析用burpsuit 拦截,放行2次后,cookie处出现uname信息将报文发送到repeater后,在uname=admin处加上单引号,send后返回报错信息可判断此处存在注入点。3、获取数据库信息3.1获取数据库名’ or updatexml(1,concat(0x7e,(SELECT database()),0x7e),1)原创 2020-10-10 14:51:03 · 147 阅读 · 0 评论 -
sqli-labs Less-18/ Less-19 POST-Header Injection
POST方式,头部 User-Agent: 注入1. 页面分析当登陆失败时,只会返回用户的IP地址及登陆失败的提示图。当登陆成功时,会返回用户的IP地址、user-agent信息及登陆成功的提示图。2. PHP代码分析通过分析代码,Username, Password的参数进行了过滤,无法进行注入。(详细说明请参考Less-17中的说明,https://blog.csdn.net/bigblue00/article/details/108221236 )代码中有插入语句:$insert=原创 2020-10-09 17:08:25 · 238 阅读 · 0 评论 -
sqli-labs Less-17 Update Query-Error Based-String
标题基于错误_POST_更新查询注入这关模拟的场景是登录后在修改密码界面注入。1、注入点分析:第一步测试uname=1&passwd=1时,没有登录失败提示信息,只有下图的显示。接着尝试uname=1&passwd=1’和uname=1&passwd=1",还是什么都没有发生。这关的提示是更改密码,后台的Mysql语句应该会用到update,查看看源码:可以看出:用户输入uname和passwd后,首先根据uname来进行查询数据库的username和password原创 2020-08-25 16:07:37 · 213 阅读 · 0 评论 -
sqli-labs Less-15/Less-16 POST-Blind-Boolian/time Based
Less-15/Less-16 POST-Blind-Boolian/time BasedPOST 型基于布尔/时间的盲注Less-15 闭合方式 ',Less-16 闭合方式是 ",下面以Less-15为例说明1、页面情况访问页面,发现是一个登陆窗口。当登陆失败时会出现LOGIN ATTEMPT FAILED的图片用万能密码 1’ or 1-1 – + 登陆成功时会显示SUCCESSFULLY LOGGED IN图片当输入的语句有语法错误时,如 :1’ ,没有任何错误提示信息可以尝试用基原创 2020-06-23 12:15:25 · 199 阅读 · 0 评论 -
sqli-labs Less-11/Less-12 POST Error Based
Less-11/Less-12 POST Error BasedPOST方式基于错误的注入查看页面情况,发现是一个登陆表单随便输入一些内容,点击submit后,有login attempt failed的提示图片,尝试成能密码登陆 or 1=1 – + 提示登陆成功,并出现用户名和密码信息。接下来构造语句,获取数据库信息123’ union select 1,2,3 – + 提示查询列数不对,减少一列尝试一下123’ union select 1,2 – +提示登陆成功,并给出了显原创 2020-06-17 18:07:30 · 148 阅读 · 0 评论 -
sqli-labs Less-13/Less-14 POST Double Injection
Less-11/Less-12 POST Error BasedPOST型基于错误的注入Less-11单引号闭合,Less-12双引号闭合,下面以Less-11为例说明1、页面情况访问页面,发现是一个登陆窗口。2、获取数据库信息浏览器设置代理,先随便输入一些内容,打开Burpsuite进行拦截抓包将拦截到的请求信息发送到Repeater在uname=123后面加一个单引号,点击Send查看右侧的响应信息,发现有提示语法错误的报错信息,说明单引号被带入到数据库进行执行了。此位置存在SQ原创 2020-06-17 17:11:20 · 148 阅读 · 0 评论 -
sqli-labs Less-9/10 Blind--Time Based 基于时间的盲注
Less-9/10 Blind–Time Based 基于时间的盲注Less-9是单引号闭合,Less-10 是双引号闭合,下面以Less-9为例分析1、判断页面情况如论我们输入的语句是否合法,页面的显示信息是固定的,即不会出现查询的信息,也不会出现报错信息。可以尝试基于时间的盲注来测试。根据页面响应的时间,来判断输入的信息是否正确。2、语句构造常用的是结合if 和sleep语句使用,构造语句如下:if (条件,语句1,语句2):条件成立则执行语句1,否则执行语句2。length 获取字符串的原创 2020-06-17 13:16:40 · 372 阅读 · 0 评论 -
sqli-labs Less-8 Blind-- Boolian Based基于布尔的盲注
Less-8 Blind-- Boolian Based基于布尔的盲注1、回显分析当输入的语句正确时,显示 You are in…当输入的语句异常时,不显示任何信息2、SQL盲注根据页面的显示情况会有不同,可以构造判断语句,当语句成立时,显示You are in…当语句不成立时,不显示任何信息。先判断数据库名的长度:http://192.168.195.110/sqli-labs/Less-8/?id=1’and (length(database())>10) – +页面无信息显示,原创 2020-06-16 16:02:55 · 392 阅读 · 0 评论 -
sqli-labs Less-7 Dump into outfile sql注入读写文件
Less-7 Dump into outfile sql注入读写文件SQL语句只要正确就会输出 You are in … 错误就会输出You have an error in your SQL syntax本例主要练习SQL注入读写文件1、先了解一个语句:into outfile 语句用于把表数据导出到一个文本文件中要想mysql用户对文件进行导入导出,首先要看指定的权限目录mysql 新版本下secure_file_priv参数是用来限制LOAD DATA, SELECT … OUTFILE,原创 2020-06-16 11:45:57 · 1639 阅读 · 0 评论 -
sqli-labs测试Less-1到Less-4
Less-1单引号闭合1、正常页面2、输入单引号后,页面出现报错信息。http://192.168.195.110/sqli-labs/Less-1/?id=1’3、order by 断段列数,到4时,页面显示异常,说明前面查询了3列。http://192.168.195.110/sqli-labs/Less-1/?id=1‘ order by 4 – +4、确认回显位置:192.168.195.110/sqli-labs/Less-1/?id=-1’ union select 1,2,3原创 2020-06-14 15:10:52 · 298 阅读 · 0 评论 -
sqli-labs Less-5/Less-6 Double Injection
Less-5 Double Injection主要考查的是双查询注入,也称为基于报错的注入。标题1、单引号闭合后,出现报错信息http://192.168.195.110/sqli-labs/Less-5/?id=1’2、当查询的语句合法时,页面只会显示 You are inhttp://192.168.195.110/sqli-labs/Less-5/?id=1’ and 1=1 – +当让查询语句出现语法错误时,会显示错误提示信息。可以构造错误,让报错信息中附带我们需要的信息。3、构原创 2020-06-15 11:53:20 · 164 阅读 · 0 评论