@@ -8,85 +8,6 @@ import csharp
8
8
/** An unsafe deserializer. */
9
9
abstract class UnsafeDeserializer extends Callable { }
10
10
11
- /** Unsafe deserialization calls. */
12
- class UnsafeDeserializerCallable extends Callable {
13
- UnsafeDeserializerCallable ( ) {
14
- this instanceof BinaryFormatterDeserializeMethod
15
- or
16
- this instanceof BinaryFormatterUnsafeDeserializeMethod
17
- or
18
- this instanceof BinaryFormatterUnsafeDeserializeMethodResponseMethod
19
- or
20
- this instanceof SoapFormatterDeserializeMethod
21
- or
22
- this instanceof ObjectStateFormatterDeserializeMethod
23
- or
24
- this instanceof NetDataContractSerializerDeserializeMethod
25
- or
26
- this instanceof NetDataContractSerializerReadObjectMethod
27
- or
28
- this instanceof DataContractJsonSerializerReadObjectMethod
29
- or
30
- this instanceof JavaScriptSerializerClassDeserializeMethod
31
- or
32
- this instanceof JavaScriptSerializerClassDeserializeObjectMethod
33
- or
34
- this instanceof XmlObjectSerializerReadObjectMethod
35
- or
36
- this instanceof XmlSerializerDeserializeMethod
37
- or
38
- this instanceof DataContractSerializerReadObjectMethod
39
- or
40
- this instanceof XmlMessageFormatterReadMethod
41
- or
42
- this instanceof LosFormatterDeserializeMethod
43
- or
44
- this instanceof FastJsonClassToObjectMethod
45
- or
46
- this instanceof ActivityLoadMethod
47
- or
48
- this instanceof ResourceReaderConstructor
49
- or
50
- this instanceof BinaryMessageFormatterReadMethod
51
- or
52
- this instanceof XamlReaderParseMethod
53
- or
54
- this instanceof XamlReaderLoadMethod
55
- or
56
- this instanceof XamlReaderLoadAsyncMethod
57
- or
58
- this instanceof ProxyObjectDecodeValueMethod
59
- or
60
- this instanceof ProxyObjectDecodeSerializedObjectMethod
61
- or
62
- this instanceof JaysonConverterToObjectMethod
63
- or
64
- this instanceof ServiceStackTextJsonSerializerDeserializeFromStringMethod
65
- or
66
- this instanceof ServiceStackTextJsonSerializerDeserializeFromReaderMethod
67
- or
68
- this instanceof ServiceStackTextJsonSerializerDeserializeFromStreamMethod
69
- or
70
- this instanceof ServiceStackTextTypeSerializerDeserializeFromStringMethod
71
- or
72
- this instanceof ServiceStackTextTypeSerializerDeserializeFromReaderMethod
73
- or
74
- this instanceof ServiceStackTextTypeSerializerDeserializeFromStreamMethod
75
- or
76
- this instanceof ServiceStackTextCsvSerializerDeserializeFromStringMethod
77
- or
78
- this instanceof ServiceStackTextCsvSerializerDeserializeFromReaderMethod
79
- or
80
- this instanceof ServiceStackTextCsvSerializerDeserializeFromStreamMethod
81
- or
82
- this instanceof ServiceStackTextXmlSerializerDeserializeFromStringMethod
83
- or
84
- this instanceof ServiceStackTextXmlSerializerDeserializeFromReaderMethod
85
- or
86
- this instanceof ServiceStackTextXmlSerializerDeserializeFromStreamMethod
87
- }
88
- }
89
-
90
11
/** A deserializer exploitable only if user controls the expected object type. */
91
12
class StrongTypeDeserializer extends Class {
92
13
StrongTypeDeserializer ( ) {
@@ -143,12 +64,12 @@ class WeakTypeDeserializer extends Class {
143
64
* An unsafe deserializer method that calls any unsafe deserializer on any of
144
65
* the parameters.
145
66
*/
146
- private class WrapperDeserializer extends UnsafeDeserializerCallable , UnsafeDeserializer {
67
+ private class WrapperDeserializer extends UnsafeDeserializer {
147
68
WrapperDeserializer ( ) {
148
69
exists ( Call call |
149
70
call .getEnclosingCallable ( ) = this and
150
71
call .getAnArgument ( ) instanceof ParameterAccess and
151
- call .getTarget ( ) instanceof UnsafeDeserializerCallable
72
+ call .getTarget ( ) instanceof UnsafeDeserializer
152
73
)
153
74
}
154
75
}
0 commit comments