Java: add models from client version 4; resolve conflicts

This commit is contained in:
Jami Cogswell
2023-04-13 09:12:42 -04:00
parent 68391acc98
commit 60dab3d779
4 changed files with 57 additions and 2 deletions

View File

@@ -0,0 +1,21 @@
extensions:
- addsTo:
pack: codeql/java-all
extensible: sinkModel
data:
- ["org.apache.http.client.fluent", "Request", True, "Delete", "(String)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Delete", "(URI)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Get", "(String)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Get", "(URI)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Head", "(String)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Head", "(URI)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Options", "(String)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Options", "(URI)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Patch", "(String)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Patch", "(URI)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Post", "(String)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Post", "(URI)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Put", "(String)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Put", "(URI)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Trace", "(String)", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.fluent", "Request", True, "Trace", "(URI)", "", "Argument[0]", "%-url", "manual"]

View File

@@ -11,6 +11,7 @@ extensions:
- ["org.apache.http.client.methods", "HttpPost", False, "HttpPost", "", "", "Argument[0]", "open-url", "manual"]
- ["org.apache.http.client.methods", "HttpPut", False, "HttpPut", "", "", "Argument[0]", "open-url", "manual"]
- ["org.apache.http.client.methods", "HttpRequestBase", True, "setURI", "", "", "Argument[0]", "open-url", "manual"]
- ["org.apache.http.client.methods", "HttpRequestWrapper", True, "setURI", "", "", "Argument[0]", "%-url", "manual"]
- ["org.apache.http.client.methods", "HttpTrace", False, "HttpTrace", "", "", "Argument[0]", "open-url", "manual"]
- ["org.apache.http.client.methods", "RequestBuilder", False, "delete", "", "", "Argument[0]", "open-url", "manual"]
- ["org.apache.http.client.methods", "RequestBuilder", False, "get", "", "", "Argument[0]", "open-url", "manual"]

View File

@@ -3,10 +3,23 @@ extensions:
pack: codeql/java-all
extensible: summaryModel
data:
- ["org.apache.http.client.utils", "URIBuilder", True, "URIBuilder", "(String)", "", "Argument[0]", "Argument[this]", "taint", "ai-manual"]
- ["org.apache.http.client.utils", "URIBuilder", True, "URIBuilder", "(URI)", "", "Argument[0]", "Argument[this]", "taint", "ai-manual"]
- ["org.apache.http.client.utils", "URIBuilder", True, "URIBuilder", "(URI,Charset)", "", "Argument[0]", "Argument[-1]", "taint", "manual"] # ! step for consistency
- ["org.apache.http.client.utils", "URIBuilder", True, "setHost", "(String)", "", "Argument[0]", "Argument[this]", "taint", "ai-manual"]
- ["org.apache.http.client.utils", "URIBuilder", True, "setHost", "(String)", "", "Argument[0]", "ReturnValue", "taint", "ai-manual"]
- ["org.apache.http.client.utils", "URIBuilder", True, "setPath", "(String)", "", "Argument[0]", "Argument[this].SyntheticField[org.apache.http.client.utils.URIBuilder.path]", "taint", "ai-manual"]
- ["org.apache.http.client.utils", "URIBuilder", True, "setPathSegments", "(List)", "", "Argument[0]", "Argument[this].SyntheticField[org.apache.http.client.utils.URIBuilder.path]", "taint", "ai-manual"]
- ["org.apache.http.client.utils", "URIBuilder", True, "URIBuilder", "(String)", "", "Argument[0]", "Argument[this]", "taint", "ai-manual"]
- ["org.apache.http.client.utils", "URIBuilder", True, "URIBuilder", "(URI)", "", "Argument[0]", "Argument[this]", "taint", "ai-manual"]
- ["org.apache.http.client.utils", "URLEncodedUtils", True, "parse", "(URI,String)", "", "Argument[0]", "ReturnValue.Element", "taint", "ai-manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "extractHost", "", "", "Argument[0]", "ReturnValue", "taint", "manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "normalizeSyntax", "", "", "Argument[0]", "ReturnValue", "taint", "manual"] # ! check if sanitizes too much
- ["org.apache.http.client.utils", "URIUtils", True, "resolve", "(URI,HttpHost,List)", "", "Argument[0]", "ReturnValue", "taint", "manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "resolve", "(URI,String)", "", "Argument[0]", "ReturnValue", "taint", "manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "resolve", "(URI,URI)", "", "Argument[0]", "ReturnValue", "taint", "manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "rewriteURI", "(URI)", "", "Argument[0]", "ReturnValue", "taint", "manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "rewriteURI", "(URI,HttpHost)", "", "Argument[0]", "ReturnValue", "taint", "manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "rewriteURI", "(URI,HttpHost,EnumSet)", "", "Argument[0]", "ReturnValue", "taint", "manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "rewriteURI", "(URI,HttpHost,boolean)", "", "Argument[0]", "ReturnValue", "taint", "manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "rewriteURIForRoute", "(URI,RouteInfo)", "", "Argument[0]", "ReturnValue", "taint", "manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "rewriteURIForRoute", "(URI,RouteInfo,boolean)", "", "Argument[0]", "ReturnValue", "taint", "manual"]
- ["org.apache.http.client.utils", "URIUtils", True, "rewriteURIForRoute", "(URI,RouteInfo,boolean)", "", "Argument[2]", "ReturnValue", "taint", "manual"]

View File

@@ -0,0 +1,20 @@
extensions:
- addsTo:
pack: codeql/java-all
extensible: sinkModel
data:
- ["org.apache.http.impl.client", "RequestWrapper", True, "setURI", "", "", "Argument[0]", "%-url", "manual"]
- addsTo:
pack: codeql/java-all
extensible: summaryModel
data:
- ["org.apache.http.impl.client", "RedirectLocations", True, "add", "(URI)", "", "Argument[0]", "Argument[-1].Element", "value", "manual"] # ! double-check the output for this step
- addsTo:
pack: codeql/java-all
extensible: neutralModel
data:
- ["org.apache.http.impl.client", "RedirectLocations", "contains", "(URI)", "manual"]
# The below APIs are currently being stored as neutral models since `WithoutElement` has not yet been implemented for Java.
# When `WithoutElement` is implemented, these should be changed to summary models of the form `Argument[-1].WithoutElement -> Argument[-1]`.
- ["org.apache.http.impl.client", "RedirectLocations", "remove", "(URI)", "manual"]