mirror of
https://github.com/github/codeql.git
synced 2025-12-20 18:56:32 +01:00
Merge tag 'codeql-cli/latest' into auto/sync-main-pr
Compatible with the latest released version of the CodeQL CLI
This commit is contained in:
@@ -1,3 +1,9 @@
|
||||
## 2.6.5
|
||||
|
||||
### Minor Analysis Improvements
|
||||
|
||||
* Added taint flow through the `URL` constructor from the `url` package, improving the identification of SSRF vulnerabilities.
|
||||
|
||||
## 2.6.4
|
||||
|
||||
### Minor Analysis Improvements
|
||||
|
||||
5
javascript/ql/lib/change-notes/released/2.6.5.md
Normal file
5
javascript/ql/lib/change-notes/released/2.6.5.md
Normal file
@@ -0,0 +1,5 @@
|
||||
## 2.6.5
|
||||
|
||||
### Minor Analysis Improvements
|
||||
|
||||
* Added taint flow through the `URL` constructor from the `url` package, improving the identification of SSRF vulnerabilities.
|
||||
@@ -1,2 +1,2 @@
|
||||
---
|
||||
lastReleaseVersion: 2.6.4
|
||||
lastReleaseVersion: 2.6.5
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
name: codeql/javascript-all
|
||||
version: 2.6.4
|
||||
version: 2.6.5
|
||||
groups: javascript
|
||||
dbscheme: semmlecode.javascript.dbscheme
|
||||
extractor: javascript
|
||||
|
||||
@@ -550,20 +550,25 @@ class DirectiveTargetName extends string {
|
||||
*
|
||||
* See https://docs.angularjs.org/api/ng/service/$location for details.
|
||||
*/
|
||||
private class LocationFlowSource extends RemoteFlowSource instanceof DataFlow::MethodCallNode {
|
||||
private class LocationFlowSource extends ClientSideRemoteFlowSource instanceof DataFlow::MethodCallNode
|
||||
{
|
||||
private ClientSideRemoteFlowKind kind;
|
||||
|
||||
LocationFlowSource() {
|
||||
exists(ServiceReference service, string m, int n |
|
||||
service.getName() = "$location" and
|
||||
this = service.getAMethodCall(m) and
|
||||
n = super.getNumArgument()
|
||||
|
|
||||
m = "search" and n < 2
|
||||
m = "search" and n < 2 and kind.isQuery()
|
||||
or
|
||||
m = "hash" and n = 0
|
||||
m = "hash" and n = 0 and kind.isFragment()
|
||||
)
|
||||
}
|
||||
|
||||
override string getSourceType() { result = "$location" }
|
||||
|
||||
override ClientSideRemoteFlowKind getKind() { result = kind }
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -82,6 +82,13 @@ module RequestForgery {
|
||||
pred = url.getArgument(0)
|
||||
)
|
||||
or
|
||||
exists(DataFlow::NewNode url |
|
||||
url = API::moduleImport("url").getMember("URL").getAnInstantiation()
|
||||
|
|
||||
succ = url and
|
||||
pred = url.getArgument(0)
|
||||
)
|
||||
or
|
||||
exists(HtmlSanitizerCall call |
|
||||
pred = call.getInput() and
|
||||
succ = call
|
||||
|
||||
Reference in New Issue
Block a user