这章,可能我总结开会比较长,图比较多,因为,我在做了一半,走进了一个死胡同,脑子,一下子没想开到底为啥。。。。

然后我自己想了好长时间也没想开,我也不想直接就去看源码,所以就先去百度了一下,结果一下子,我又跳进另一个坑了。。。。正如这章的顶图,MySQL语句,我看人家正好用这个分析,为什么大家在构造语句的时候要用这个SQL语句,我自己想了想,我好像没总结这么细,所以就趁着这章,把那个SQL语句的在MySQL里的用法,写写,总结总结,然后再打第四关。

我先上一个我将用到的命令图,大家先看一下,防止你看我下面的操作的时候,不知道啥意思。

不杂多,我就是简单的说说这几个。

首先我们下连接到 MySQL 这个操作命令里,由于我自己用的 xampp ,所以我就直接打了个 MySQL 进入到这个操作行(正因为我这里我的操作失误,导致了我下面走了个死胡同。。。)

show databases; 输入这个,显示当前数据库所有库名。

我的擦,杂才两个,还一个是系统默认的?当时我就楞了,没想通,我应该好多才是啊?不管了先连接到 test 这个数据库里。

use test ; 连接到这个数据库里。

连接成功, 我开始显示所有表名,我输入 show tables;

我的擦,啥都没有,这是搞啥子?真™想不通。。。。

我看看我的PHPmyadmin数据库,有没有数据,为啥会出现这个问题。。

好吧,确实,啥都没有。。。。

那我再连接全部的呢个虚拟库看看。。。

然后显示所有表名。。。

终于,出来表名,,,,我就说我的操作不会错。(其实我还是犯在上面的失误中,一会到最后我再解释。。。)

对了,我下面用了 desc 这个操作命令,让其显示出结构。

关于 desc 的介绍,我还专门去网上截了一个图。

然后我开始让其列出下面所有表里的数据。。。。

(比较乱,但是操作没错。。。)

毕竟数据比较多。。。。。

最后,我开始查里面的数据。

(也就是这里,我开始跳不出这个坑了!!!!)

(我自己给自己挖了个深坑。。。。。。)

当我弄到这里,我还是没意识到,我到底哪一步操作失误了。。。

后来想了想,是不是我没有连接 root数据库?我在试试看。。。。

好吧,确实是,我一开的这个坑。。。。这里补上了,但是我上个坑里,我还又进一个坑,我直到下面的操作时,我才意识到。。。。

看出来了没?我老是拿错数据库。。。。要不。。。坑啊啊啊!!!

然后我再查询列名。

好了,到这里,我的MySQL数据库操作就结束了,相信大家看到这里,应该能理解,我们在构造SQL注入语句时,要这样构造了吧?

我要开始闯第四关了!!!!

常规的 and 1=1 ,测试。

回显正常,那继续 and 1=2 。

还是正常!漂亮,继续输入 ' ,来测试。

我的法克!!!

就是这一步,对没错,就是这一步,我才开始有了上面呢个坑了的!!!

可能是我好久没玩手工注入的原理,我竟然想了好半天,啥原理。。。。

如果放在以前,我肯定测试所有符号来一遍的。。。

不管了试试昨天的语句,看看能不能过去。

好吧,行不通应该。。。。

最后找了一下资料,我没去直接看源码,感觉看了源码,就没啥意思了,,搜资料的话,还是有一点神秘感。

最后得出,用 " 这个,测试。

好的,成功报错。。。。

复制报错语句,开始分析。

好像懂了,和昨天的差不多,就是编程双引号了。

那么开始构造闭合语句。

常规的我第一个就想开呢个,开始测试能够成功。

and 1=1.

再来 and 1=2.

可以的。说明这个闭合成功了。

想开昨天关于搜索注入时,有人发的那个闭合法,我感觉也能闭合成功,我就来试试。

就是这个,我来 and 1=1 .测试下。

正常,再来, and 1=2 。

可以的,说明这个方法,可行。

原本就准备这样结束的,后来想了想,还有我们的注释法,还没用了。。。。

这个如何能少了我的注释法?

开始测试!!!!

再来!

完美!

Sqli labs系列-less-4 这关好坑!!!的更多相关文章

  1. Sqli labs系列-less-3 。。。

    原本想着找个搜索型的注入玩玩,毕竟昨天被实力嘲讽了 = = . 找了好长时间,我才发现,我没有 = = ,网上搜了一个存在搜索型注入的源码,我看了好长时间,楞没看出来从哪里搜索注入了....估计是我太 ...

  2. Sqli labs系列-less-2 详细篇

    就今天晚上一个小插曲,瞬间感觉我被嘲讽了. SQL手工注入这个东西,杂说了吧,如果你好久不玩的话,一时说开了,你也只能讲个大概,有时候,长期不写写,你的构造语句还非常容易忘,要不我杂会被瞬间嘲讽了啊. ...

  3. Sqli labs系列-less-1 详细篇

    要说 SQL 注入学习,网上众多的靶场,就属 Sqli labs 这个系列挺不错的,关卡达到60多关了,我自己也就打了不几关,一个挺不错的练习SQL注入的源码. 我一开始就准备等我一些原理篇总结完了, ...

  4. Sqli labs系列-less-5&6 报错注入法(下)

    我先输入 ' 让其出错. 然后知道语句是单引号闭合. 然后直接 and 1=1 测试. 返回正常,再 and 1=2 . 返回错误,开始猜表段数. 恩,3位.让其报错,然后注入... 擦,不错出,再加 ...

  5. Sqli labs系列-less-5&6 报错注入法(上)

    在我一系列常规的测试后发现,第五关和第六关,是属于报错注入的关卡,两关的区别是一个是单引号一个是双引号...当然我是看了源码的.... 基于报错注入的方法,我早就忘的差不多了,,,我记的我最后一次基于 ...

  6. SQLI LABS Basic Part(1-22) WriteUp

    好久没有专门练SQL注入了,正好刷一遍SQLI LABS,复习巩固一波~ 环境: phpStudy(之前一直用自己搭的AMP,下了这个之后才发现这个更方便,可以切换不同版本的PHP,没装的小伙伴赶紧试 ...

  7. SQL注入系列:SQLi Labs

    前言 关于注释 说明:在SQL中--[空格]表示注释,但是在URL中--空格在发送请求的时候会把最后的空格去掉,所以用--+代替,因为+在被URL编码后会变成空格 MYSQL有三种常用注释: --[空 ...

  8. SQLI LABS Challenges Part(54-65) WriteUp

    终于到了最后一部分,这些关跟之前不同的是这里是限制次数的. less-54: 这题比较好玩,10次之内爆出数据.先试试是什么类型: ?id=1' and '1 ==>>正常 ?id=1' ...

  9. SQL注入之Sqli-labs系列第五十关,第五十一关,第五十二关,第五十三关(ORDER BY堆叠注入)

    0x1第五十关 源码中使用的mysqli_multi_query()函数,而之前使用的是mysqli_query(),区别在于mysqli_multi_query()可以执行多个sql语句,而mysq ...

随机推荐

  1. Druid动态数据源配置

    上文已经讲了单个数据源的Druid的配置(http://www.cnblogs.com/nbfujx/p/7686634.html) Druid动态数据源配置 主要是继承AbstractRouting ...

  2. Jetson Nano系列教程1:烧写系统镜像

    下载镜像 NVIDIA官方为Jetson Nano Developer Kit (后面统称为Jetson Nano了)提供了SD卡版本的系统镜像,并且根据JetPack版本不断得在更新.所以你可以直接 ...

  3. C++ placement new与内存池

    参考:https://blog.csdn.net/Kiritow/article/details/51314612 有些时候我们需要能够长时间运行的程序(例如监听程序,服务器程序)对于这些7*24运行 ...

  4. js判断变量未定义

    js判断变量未定义 控制台输出未定义变量a会报错: 我们打印出a的数据类型是: 我们可以看到未定义变量的数据类型是 "undefined" 所以判断js变量是否未定义的方法就是 t ...

  5. Jplayer用法

    引用js:jquery.jplayer.min.js; body里面必须有这个: <div id="jplayer"></div> jplayer停止方法 ...

  6. stc单片机笔记

    volatile是一个类型修饰符(type specifier).volatile的作用是作为指令关键字,确保本条指令不会因编译器的优化而省略,且要求每次直接读值. 简单地说就是防止编译器对代码进行优 ...

  7. JS-拷贝对象

    As it is well known to us all, 拷贝对象分为浅拷贝和深拷贝,深拷贝只会复制地址,深拷贝才会复制内容,那么 JS 如何进行这两种拷贝呢? # 浅拷贝 ## Object.a ...

  8. bp网络全解读

    https://blog.csdn.net/weixin_40432828/article/details/82192709

  9. 使用 twine 上传自己的 python 包到 pypi

    打包检查 python setup.py check 打包 python3 setup.py sdist build 上传 twine upload dist/* twine 安装: pip inst ...

  10. Java拦截过滤器模式

    当我们想要对应用程序的请求或响应进行一些预处理/后处理时,使用截取过滤器设计模式. 在将请求传递到实际目标应用程序之前,在请求上定义和应用过滤器. 过滤器可以进行请求的认证/授权/日志记录或跟踪,然后 ...