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)

Reply via email to