mysql sys exec_mylab_sys_exec UDF调用mysql外部系统命令(For linux)
有时候为了方便,利用event/trigger调用系统外部命令,可因为安全问题,mysql自身并没有提供相关命令,这里提供个调用系统命令的自定义函数mylab_sys_exec
so文件下载:mylab_sys_exec.so ( mysql5.1.34 测试通过)
加载:
CREATE FUNCTION mylab_sys_exec RETURNS INTEGER SONAME "mylab_sys_exec.so";
使用:
SELECT mylab_sys_exec ('CMD');
源码:
my_bool mylab_sys_exec_init (UDF_INIT *initid, UDF_ARGS *args, char *message );
void mylab_sys_exec_deinit (UDF_INIT *initid );
int mylab_sys_exec (UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error );
my_bool mylab_sys_exec_init( UDF_INIT *initid, UDF_ARGS *args, char *message )
{
if(args->arg_count == 1 && args->arg_type[0]==STRING_RESULT)
{
return 0;
} else {
strcpy( message, "One string type parameter expected");
return 1;
}
}
void mylab_sys_exec_deinit ( UDF_INIT *initid ){}
int mylab_sys_exec( UDF_INIT *initid , UDF_ARGS *args , char *is_null , char *error)
{
return system (args->args[0]);
}
hi.baidu.com/isno
Marco Ivaldi 几年前曾经发表过一个 raptor_udf2.c,演示了如何利用mysql udf入侵系统,但是这个mysql udf也演示了一个调用系统命令的方式。但是这一插件目前应经不能兼容mysql 5.0+,主要是已经不符合新的mysql udf的规范了,并且没有返回结果。
mysql User-Defined Functions 是 Roland Bouman 开发的一个新的调用系统命令的udf包,其中有三个函数:
sys_exec: 调用系统命令,执行外部程序
sys_get: 返回系统环境变量的值
sys_set: 设置系统环境变量
这一mysql udf 包是兼容mysql 5.0+ ,同时支持linux和windows。但是这一包也有一个问题,执行命令后返回是命令的exit_code ,而不是命令的执行结果。
Bernardo Damele A. G. 针对这一问题做了一个更新包,增加了一个sys_eval函数,这一函数命令执行成功返回执行结果,而如果错误返回NULL。
这里下载补丁: here
lib_mysqludf_sys version 0.0.2 在这里下载 here.
使用实例:
$ wget --no-check-certificate https://svn.sqlmap.org/sqlmap/trunk/sqlmap/extra/mysqludfsys/lib_mysqludf_sys_0.0.3.tar.gz
$ tar xfz lib_mysqludf_sys_0.0.3.tar.gz
$ cd lib_mysqludf_sys_0.0.3
$
mysql sys exec_mylab_sys_exec UDF调用mysql外部系统命令(For linux)相关推荐
- mysql udf编译_MySql UDF 调用外部程序和系统命令
1.mysql利用mysqludf的一个mysql插件可以实现调用外部程序和系统命令 2.安装说明: 2.1查询mysql插件路径: 在mysql里查询mysql插件目录的路径:show variab ...
- mysql udf 执行命令_mylab_sys_exec UDF调用mysql外部系统命令(For linux)
有时候为了方便,利用event/trigger调用系统外部命令,可因为安全问题,mysql自身并没有提供相关命令,这里提供个调用系统命令的自定义函数mylab_sys_exec so文件下载:myla ...
- mysql c 驱动dll_C#调用MySQL数据库(使用MySql.Data.dll连接)mysql-connector-net-6.10.4.msi
下载地址:http://dev.mysql.com/downloads/connector/net/ 安装指导 1.安装:mysql-connector-net-6.10.4.msi 其下载地址:ht ...
- python调用系统命令_Python如何调用外部系统命令
前言 利用Python调用外部系统命令的方法可以提高编码效率.调用外部系统命令完成后可以通过获取命令执行返回结果码.执行的输出结果进行进一步的处理.本文主要描述Python常见的调用外部系统命令的方法 ...
- python调用系统命令_Python调用外部系统命令
利用Python调用外部系统命令的方法可以提高编码效率.调用外部系统命令完成后可以通过获取命令执行返回结果码.命令执行的输出结果进行进一步的处理.本文主要描述Python常见的调用外部系统命令的方法, ...
- 使用C语言调用mysql数据库编程实战以及技巧
今天编写使用C语言调用mysql数据库编程实战以及技巧,为其他IT同行作为参考,当然有错误可以留言,共同学习. 一.mysql数据库的C语言常用接口API 1.首先当然是链接数据库mysql_real ...
- java mysql自定义函数UDF之调用c函数
正如sqlite可以定义自定义函数,它是通过API定义c函数的,不像其他,如这里的mysql.sqlite提供原生接口就可以方便的调用其他语言的方法,同样的mysql也支持调用其它语言的方法. goo ...
- mysql udf shell_MySQL使用UDF调用shell脚本
前言 在最近的项目中,由于需要使用MySQL的UDF(user defined function),这个特性从未使用过,而且个人觉得这个特性以后应该会经常使用,所以写下博文,记录和分享这个特性的用法. ...
- Python调用MySQL模块初试
学Python喊了很长时间了,总是因为各种各样的理由搁置,昨天想起来前同事推荐过一本Python的书<Python核心编程>第二版,就火速买了一本,Python的学习也算是个开始了. 当然 ...
- python调用mysql中的自定义function并且返回结果
首先在Mysql中创立一个叫ForeignKeyTest的function,链接如下: https://blog.csdn.net/appleyuchi/article/details/7945291 ...
最新文章
- c语言股票最大收益_金斧子股票配资:股票配资的时候有哪些事项需要注意呢...
- 苹果官网下架 iPhone 8 全系;阿里推出“阿里云会议”;深度操作系统 20 BETA 发布 | 极客头条...
- 福州大学 Problem 2169 shadow
- 北京地铁5号线地图(线路图、站名、实拍pp)
- 二分法和牛顿迭代实现开根号函数:OC的实现
- 梦幻西游69人最多的服务器,梦幻西游:老王探访难以形容的鬼区,没有摆摊摊位,找不到69玩家...
- 【数据预测】基于matlab灰狼算法优化LSSVM数据预测【含Matlab源码 433期】
- java毕业设计——基于java+Java Swing+sqlserver的图书馆书库管理系统设计与实现(毕业论文+程序源码)——图书馆书库管理系统
- Direct3d纹理
- Back Projection
- 分布式操作系统 - 1.分布式系统概论
- c语言中常见的数学函数
- VS2022编写C语言及背景美化
- cs224n学习笔记
- http-equiv=“X-UA-Compatible“是什么意思?
- android_day01
- Gitee上传代码教程
- js如何让方法在延迟两秒后执行
- matching wildcard is strict, but no declaration can be found for element forcontext:property-plac
- 四年Java 一个java程序员的年终总结
热门文章
- python标准库学习5 ---bisect — Array bisection algorithm
- JSP九大内置对象详解
- 不惑网络人细数应用交付发展史(二)- 一枝独大
- recordset.Open strSql, Conn, 3,3
- Android Studio 4.1一键生成代码Template
- Flutter 的ButtonBar
- C# try-catch-finally 语句异常的类型
- php phantomjs 安装_安装php-phantomjs
- java.lang.UnsupportedOperationException: TextureView doesn‘t support displaying a background drawabl
- CSDN发布博文时出错的截图