Do not allow to access compiler internals in .kts scripts
Set parent class loader to null explicitly instead of the system class loader
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
fun checkInaccessible(name: String) {
|
||||
try {
|
||||
Class.forName(name)
|
||||
throw AssertionError("Class should not be accessible from script via the class loader: $name")
|
||||
}
|
||||
catch (e: ClassNotFoundException) {
|
||||
// OK
|
||||
}
|
||||
}
|
||||
|
||||
checkInaccessible("org.jetbrains.kotlin.config.KotlinCompilerVersion")
|
||||
checkInaccessible("org.jetbrains.kotlin.cli.jvm.K2JVMCompiler")
|
||||
checkInaccessible("org.jetbrains.kotlin.preloading.Preloader")
|
||||
print("OK")
|
||||
Reference in New Issue
Block a user