MYSQL注入

复习 常见网站使用的sql:

或者awvs

默认单引号是开发人员的失误  所以双引号就没事

像上面这个参数多的 每个都要进行sql注入

/*就是空格 截断关键字

正式:MYSQL

大多使用mysql 的服务器 是linux搭建 建议少使用组件 因为一个组件可能就有一个漏洞\

PHPmyadmin可能会换名字 并且不允许 但网站可能会有我对外部开的接口

报token工具

mysql语法

2 6 7 8 9 很重要

注意是反斜杠

读取目录 找阿帕奇环境根目录

上图的问题结果: 会报错

相关函数

 mid函数username字段 从第3个字符到结束

limit函数效果如下

从第几行开始往后读 不包括第n行的

作用:

下图是计算有几行数据

group by

mysql注释

%0a都是url使用的 不要混淆

内联注释

!代表非注释

这一块学会了 绕过就很容易 上图

数据库结构对比

注入原理

下图前3个手工常用

例子

mysql 和下面那个 一般权限不够

为什么看版本 低于5.0没有这个库   图里面的白色的很重要 可改名 删不掉

需要报错 才能 显示注入出来的东西

这个函数是当前数据库 第二好database可能被waf 而不是下图

怕单引号 双引号 导致引号转移 数据库会  查询错误

或者转 16进制   最好!!!!不需要单引号

报完后指定表明报列名

报出来了列名如下

查列里面的数据

group concat 查出来的东西连一起

#是对php的注释 

asp不是# 是单引号

常见的防注入代码

显错注入

一般都是闭合 或者斜杠 语句没有执行成功 post get都有

表示sql语句出现问题了

这上面很多函数有些能用有些不能 要一个一个试

去网上搜索mysql显错注入语句

数据库不区分大小写 php检测时区分

显错直接看版本

!!实战当中肯定不会明文 

例如:

这个波浪线占了一个所以我们需要使用mid函数查询

其实不需要16进制 直接mid就行

实战经验

报id能报出来 但是字符就不行 

那我们就转16进制

然后16进制解码就行

下图方法可行 很麻烦

这种东西 tw rb 韩国、

 容易出这种问题

登录的检测注入 就乱起八早 输

'--

双引号就是无敌 不能闭合

开发者直接用双引号会报错 要用双引号 开发者要写函数

登录时 #可能就直接登录了 因为php代码

上图进不去

admin' order by 1#就进得去

长字节攻击

宽字节注入

绕过单引号截断 %bf %df

为了防止php把%修改我们需要用bp 把%25修改为%

utf-8有容错 宽字节会失败

读写函数 root权限

第一步获取根目录

老大发现使用单引号加路径 结果单引号被转义了 所以我们要使用16进制 不加单引号

第二步 写

但这里转16进制也不行

老大换了php版本 单引号没被过滤 才写进去的

linux mysql的root权限很低 不像win  

2016菜刀过不了魔术引号 

2016魔改能过

网上下的菜刀尽量放虚拟机 有后门

下图记录了很多路径名 这是配置文件信息

sqlmap跑忘了回去看视频吧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值