首页    新闻    小组    威客    人才    下载    博客    代码贴    在线编程    论坛
MySQL 客户端允许 MySQL 服务器请求任何本地文件
2019年1月21日 15:11 | 阅读 1026 次

近期大型商务网站和政府网站被黑客通过 Adminer 数据库入侵,根本原因是 MySQL 的协议缺陷。

但在官方文档显示,客户端主机到服务器主机的文件传输由 MySQL 服务器启动。理论上,客户端程序选择的文件不应是 LOAD DATA 语句中客户端指定的文件,而应该是传输服务器选择的文件。

虽然由很大的泄密风险,但服务器必须知道客户端上文件的完整路径,才可能成功。而请求/self/proc/environ,服务器就可以了解客户端上的文件夹结构。

一些客户端和库具有对此“功能”的内置保护,或者在默认情况下禁用它(例如 GolangPythonPHP-PDO)。但并非所有都会这么做,正如 Adminer 案例所示。Adminer 很可能不会是最后一个出现该问题的


(文/开源中国)    




评论 (0)
游客请输入验证码
最新评论
0
0
收藏