@@ -285,50 +285,16 @@ private predicate qualifierToMethodStep(Expr tracked, MethodAccess sink) {
285285private predicate taintPreservingQualifierToMethod ( Method m ) {
286286 m instanceof CloneMethod
287287 or
288- m .getDeclaringType ( ) .getASupertype * ( ) .hasQualifiedName ( "java.io" , "Reader" ) and
289- (
290- m .getName ( ) = "read" and m .getNumberOfParameters ( ) = 0
291- or
292- m .getName ( ) = "readLine"
293- )
294- or
295288 m .getDeclaringType ( ) .getQualifiedName ( ) .matches ( "%StringWriter" ) and
296289 (
297290 m .getName ( ) = "getBuffer"
298291 or
299292 m .getName ( ) = "toString"
300293 )
301294 or
302- m .getDeclaringType ( ) .hasQualifiedName ( "java.util" , "StringTokenizer" ) and
303- m .getName ( ) .matches ( "next%" )
304- or
305- m .getDeclaringType ( ) .hasQualifiedName ( "java.io" , "ByteArrayOutputStream" ) and
306- ( m .getName ( ) = "toByteArray" or m .getName ( ) = "toString" )
307- or
308295 m .getDeclaringType ( ) .hasQualifiedName ( "java.io" , "ObjectInputStream" ) and
309296 m .getName ( ) .matches ( "read%" )
310297 or
311- m .getDeclaringType ( ) .hasQualifiedName ( "javax.xml.transform.sax" , "SAXSource" ) and
312- m .hasName ( "getInputSource" )
313- or
314- m .getDeclaringType ( ) .hasQualifiedName ( "javax.xml.transform.stream" , "StreamSource" ) and
315- m .hasName ( "getInputStream" )
316- or
317- m .getDeclaringType ( ) .hasQualifiedName ( "java.nio" , "ByteBuffer" ) and
318- m .hasName ( "get" )
319- or
320- m .getDeclaringType ( ) instanceof TypeFile and
321- m .hasName ( "toPath" )
322- or
323- m .getDeclaringType ( ) instanceof TypePath and
324- m .hasName ( "toFile" )
325- or
326- m .getDeclaringType ( ) instanceof TypeFile and
327- m .hasName ( "toURI" )
328- or
329- m .getDeclaringType ( ) instanceof TypeUri and
330- m .hasName ( "toURL" )
331- or
332298 m instanceof GetterMethod and
333299 m .getDeclaringType ( ) .getASubtype * ( ) instanceof SpringUntrustedDataType and
334300 not m .getDeclaringType ( ) instanceof TypeObject
0 commit comments