|
63 | 63 | "taint": "Tainted Set"
|
64 | 64 | }
|
65 | 65 | },
|
| 66 | + { |
| 67 | + "comment": "Obtained tainted Set from tainted Map", |
| 68 | + "class": "java.util.HashMap", |
| 69 | + "method": "keySet:()Ljava/util/Set;", |
| 70 | + "input": { |
| 71 | + "location": "this", |
| 72 | + "taint": "Tainted Map" |
| 73 | + }, |
| 74 | + "result": { |
| 75 | + "location": "returns", |
| 76 | + "taint": "Tainted Set" |
| 77 | + } |
| 78 | + }, |
66 | 79 | {
|
67 | 80 | "comment": "Obtained tainted Iterator from tainted Set",
|
68 | 81 | "class": "java.util.Set",
|
|
76 | 89 | "taint": "Tainted Iterator"
|
77 | 90 | }
|
78 | 91 | },
|
| 92 | + { |
| 93 | + "comment": "Obtained tainted Iterator from tainted Set", |
| 94 | + "class": "java.util.HashMap$KeySet", |
| 95 | + "method": "iterator:()Ljava/util/Iterator;", |
| 96 | + "input": { |
| 97 | + "location": "this", |
| 98 | + "taint": "Tainted Set" |
| 99 | + }, |
| 100 | + "result": { |
| 101 | + "location": "returns", |
| 102 | + "taint": "Tainted Iterator" |
| 103 | + } |
| 104 | + }, |
| 105 | + { |
| 106 | + "comment": "Obtained tainted Object from tainted Iterator", |
| 107 | + "class": "java.util.HashMap$KeyIterator", |
| 108 | + "method": "next:()Ljava/lang/Object;", |
| 109 | + "input": { |
| 110 | + "location": "this", |
| 111 | + "taint": "Tainted Iterator" |
| 112 | + }, |
| 113 | + "result": { |
| 114 | + "location": "returns", |
| 115 | + "taint": "Tainted Thesaurus" |
| 116 | + } |
| 117 | + }, |
79 | 118 | {
|
80 | 119 | "comment": "Obtained tainted Object from tainted Iterator",
|
81 | 120 | "class": "java.util.Iterator",
|
82 |
| - "method": "next:()Ljava/util/Object;", |
| 121 | + "method": "next:()Ljava/lang/Object;", |
83 | 122 | "input": {
|
84 | 123 | "location": "this",
|
85 | 124 | "taint": "Tainted Iterator"
|
|
92 | 131 | {
|
93 | 132 | "comment": "Obtained tainted String from tainted Thesaurus",
|
94 | 133 | "class": "fr.mcc.ginco.beans.Thesaurus",
|
95 |
| - "method": "getTitle:()Ljava/lang/String;()", |
| 134 | + "method": "getTitle:()Ljava/lang/String;", |
96 | 135 | "input": {
|
97 | 136 | "location": "this",
|
98 | 137 | "taint": "Tainted Thesaurus"
|
|
141 | 180 | "taint": "Tainted String"
|
142 | 181 | }
|
143 | 182 | },
|
| 183 | + { |
| 184 | + "comment": "HACK[stub for missing apache libs]:By unescaping tainted String we get a tainted string again.", |
| 185 | + "class": "org.apache.commons.lang3.StringEscapeUtils", |
| 186 | + "method": "unescapeHtml4:(Ljava/lang/String;)Ljava/lang/String;", |
| 187 | + "input": { |
| 188 | + "location": "arg0", |
| 189 | + "taint": "Tainted String" |
| 190 | + }, |
| 191 | + "result": { |
| 192 | + "location": "returns", |
| 193 | + "taint": "Tainted String" |
| 194 | + } |
| 195 | + }, |
144 | 196 | {
|
145 | 197 | "comment": "ARTIFICIAL sink to capture servlet returning tainted String.",
|
146 | 198 | "class": "Main",
|
|
0 commit comments