OpenSearch/plugins
Robert Muir 2169a123a5 Filter classes loaded by scripts
Since 2.2 we run all scripts with minimal privileges, similar to applets in your browser.
The problem is, they have unrestricted access to other things they can muck with (ES, JDK, whatever).
So they can still easily do tons of bad things

This PR restricts what classes scripts can load via the classloader mechanism, to make life more difficult.
The "standard" list was populated from the old list used for the groovy sandbox: though
a few more were needed for tests to pass (java.lang.String, java.util.Iterator, nothing scary there).

Additionally, each scripting engine typically needs permissions to some runtime stuff.
That is the downside of this "good old classloader" approach, but I like the transparency and simplicity,
and I don't want to waste my time with any feature provided by the engine itself for this, I don't trust them.

This is not perfect and the engines are not perfect but you gotta start somewhere. For expert users that
need to tweak the permissions, we already support that via the standard java security configuration files, the
specification is simple, supports wildcards, etc (though we do not use them ourselves).
2015-12-05 21:46:52 -05:00
..
analysis-icu Fix compile errors 2015-11-26 13:41:00 +01:00
analysis-kuromoji Fix compile errors 2015-11-26 13:41:00 +01:00
analysis-phonetic Fix compile errors 2015-11-26 13:41:00 +01:00
analysis-smartcn Fix compile errors 2015-11-26 13:41:00 +01:00
analysis-stempel Fix compile errors 2015-11-26 13:41:00 +01:00
delete-by-query Remove "empty" licenses dir 2015-12-02 10:22:52 +01:00
discovery-azure Update Azure Service Management API to 0.9.0 2015-12-04 17:32:11 +01:00
discovery-ec2 ban RuntimePermission("getClassLoader") 2015-12-04 15:58:02 -05:00
discovery-gce Cleaner type-inference assistance 2015-12-02 10:49:35 -05:00
discovery-multicast Remove "empty" licenses dir 2015-12-02 10:22:52 +01:00
jvm-example Remove "empty" licenses dir 2015-12-02 10:22:52 +01:00
lang-javascript Filter classes loaded by scripts 2015-12-05 21:46:52 -05:00
lang-python Filter classes loaded by scripts 2015-12-05 21:46:52 -05:00
mapper-attachments Remove MergeMappingException. 2015-12-04 12:56:26 +01:00
mapper-murmur3 Remove "empty" licenses dir 2015-12-02 10:22:52 +01:00
mapper-size Remove MergeMappingException. 2015-12-04 12:56:26 +01:00
repository-azure Filter cloud azure credentials 2015-11-19 15:40:56 +01:00
repository-s3 ban RuntimePermission("getClassLoader") 2015-12-04 15:58:02 -05:00
site-example Remove "empty" licenses dir 2015-12-02 10:22:52 +01:00
store-smb Remove "empty" licenses dir 2015-12-02 10:22:52 +01:00
build.gradle Added modules, distributions now include them (just plugins installed in 2015-12-03 14:18:26 -08:00