Craig Condit created HIVE-22150:
-----------------------------------
Summary: HS2 allows setting system properties
Key: HIVE-22150
URL: https://issues.apache.org/jira/browse/HIVE-22150
Project: Hive
Issue Type: Bug
Components: HiveServer2
Affects Versions: 3.1.1
Reporter: Craig Condit
HiveServer2 currently allows setting system properties, which is a problem when
used in a multi-user environment.
Connecting via beeline and executing the following demonstrates the issue:
{noformat}
0: jdbc:hive2://serv1000.example.com:2181,serv> SET system:java.io.tmpdir;
+-----------------------------+
| set |
+-----------------------------+
| system:java.io.tmpdir=/tmp |
+-----------------------------+
1 row selected (0.018 seconds)
0: jdbc:hive2://serv1000.example.com:2181,serv> SET
system:java.io.tmpdir=/tmp/attacker-dir;
No rows affected (0.013 seconds)
0: jdbc:hive2://serv1000.example.com:2181,serv> SET system:java.io.tmpdir;
+------------------------------------------+
| set |
+------------------------------------------+
| system:java.io.tmpdir=/tmp/attacker-dir |
+------------------------------------------+
1 row selected (0.019 seconds)
{noformat}
Any changes persist until HS2 is restarted, and affect all connected users. At
the very least, this is a denial-of-service vector (verified by setting
line.separator to a random string).
--
This message was sent by Atlassian Jira
(v8.3.2#803003)