【发布时间】:2017-11-03 14:02:26
【问题描述】:
我正在使用反射在运行时加载类,但声纳规则指向 它作为漏洞攻击我正在考虑使用 ByteBuddy,bytebuddy 库可以帮助我吗?
ClassLoader classLoader = MyClass.class.getClassLoader();
Class<?> classsName = classLoader.loadClass(className);
【问题讨论】:
-
在你上面的例子中没有反射,只是动态类加载。而且您的第二行没有意义(
className = loadClass(className))-但也许声纳抱怨您从不安全的来源获得className。 Bytebuddy 无济于事 - 您仍然需要动态加载类。 -
从加载的类中,我只想让一种方法可供公众访问,并且我想调用。
-
methodCall.setAccessible(true); methodCall.invoke(getmethod, "text");
-
如果和已知类(MyClass)在同一个ClassLoader中,为什么需要动态加载呢?我怀疑你可以在没有动态构建的类名的情况下实现你的目标。
-
为了证明我已经给出了 MyClass 但我需要加载不同的类。
标签: java reflection cglib byte-buddy