mysql udf
最近用到了udf总结一下吧
UDF
UDF(user defined function)用户自定义函数,是mysql的一个拓展接口。用户可以通过自定义函数实现在mysql中无法方便实现的功能,其添加的新函数都可以在sql语句中调用,就像调用本机函数一样。通过动态库方式实现
UDF 编写
自己编写
MySQL通过UDF实现扩展功能(Linux环境和Windows环境)
GitHub上找,进行修改
利用sqlmap中的udf.dll
在sqlmap/udf/mysql/windows目录下,里面有32位和64位,注意:这里的位数是mysql的位数,并不是对方系统的位数(这里我遇到了这个问题,对方用的是64位系统,但mysql装的是32位,所以你要用32位的dll, 不然会报errno:193)
还有一个需要注意的是,sqlmap里的udf.dll是通过异或编码的,使用之前一定要记得解码,解码的工具也在sqlmap中,在sqlmap/extra/cloak目录下的cloak.py就是接码文件
python cloak.py -d -i .../64/lib_mysqludf_sys.dll_
亲测可以使用(真香)
UDF的使用条件
- 如果mysql版本大于5.1,udf.dll文件必须放置在mysql安装目录的lib\plugin文件夹下
- 如果mysql版本小于5.1, udf.dll文件在windows server 2003下放置于c:\windows\system32目录,在windows server 2000下放置在c:\winnt\system32目录。
1,2 这两个条件非