File tree Expand file tree Collapse file tree 1 file changed +8
-3
lines changed
java/ql/lib/semmle/code/java/security Expand file tree Collapse file tree 1 file changed +8
-3
lines changed Original file line number Diff line number Diff line change @@ -41,10 +41,11 @@ module TrustAllHostnameVerifierConfig implements DataFlow::ConfigSig {
4141
4242 predicate isSink ( DataFlow:: Node sink ) { sink instanceof HostnameVerifierSink }
4343
44- predicate isBarrier ( DataFlow:: Node barrier ) {
44+ predicate isBarrier ( DataFlow:: Node node ) {
45+ node instanceof ExternalHostnameVerifierSanitizer
46+ or
4547 // ignore nodes that are in functions that intentionally disable hostname verification
46- barrier
47- .getEnclosingCallable ( )
48+ node .getEnclosingCallable ( )
4849 .getName ( )
4950 /*
5051 * Regex: (_)* :
@@ -88,6 +89,10 @@ private class HostnameVerifierSink extends DataFlow::Node {
8889 HostnameVerifierSink ( ) { sinkNode ( this , "hostname-verification" ) }
8990}
9091
92+ private class ExternalHostnameVerifierSanitizer extends DataFlow:: Node {
93+ ExternalHostnameVerifierSanitizer ( ) { barrierNode ( this , "hostname-verification" ) }
94+ }
95+
9196/**
9297 * Flags suggesting a deliberately unsafe `HostnameVerifier` usage.
9398 */
You can’t perform that action at this time.
0 commit comments