Skip to content

Commit 1a3ba3c

Browse files
Remove experimental query versions
1 parent 935533b commit 1a3ba3c

File tree

8 files changed

+0
-244
lines changed

8 files changed

+0
-244
lines changed

python/ql/src/experimental/Security/CWE-614/InsecureCookie.py

Lines changed: 0 additions & 15 deletions
This file was deleted.

python/ql/src/experimental/Security/CWE-614/InsecureCookie.qhelp

Lines changed: 0 additions & 31 deletions
This file was deleted.

python/ql/src/experimental/Security/CWE-614/InsecureCookie.ql

Lines changed: 0 additions & 31 deletions
This file was deleted.

python/ql/src/experimental/semmle/python/Frameworks.qll

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
private import experimental.semmle.python.frameworks.AsyncSsh
66
private import experimental.semmle.python.frameworks.Stdlib
7-
private import experimental.semmle.python.frameworks.Flask
87
private import experimental.semmle.python.frameworks.Django
98
private import experimental.semmle.python.frameworks.LDAP
109
private import experimental.semmle.python.frameworks.Netmiko

python/ql/src/experimental/semmle/python/frameworks/Django.qll

Lines changed: 0 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -87,73 +87,6 @@ private module ExperimentalPrivateDjango {
8787
or
8888
result = baseClassRef().getReturn().getAMember()
8989
}
90-
91-
/**
92-
* Gets a call to `set_cookie()`.
93-
*
94-
* Given the following example:
95-
*
96-
* ```py
97-
* def django_response(request):
98-
* resp = django.http.HttpResponse()
99-
* resp.set_cookie("name", "value", secure=True, httponly=True, samesite='Lax')
100-
* return resp
101-
* ```
102-
*
103-
* * `this` would be `resp.set_cookie("name", "value", secure=False, httponly=False, samesite='None')`.
104-
* * `getName()`'s result would be `"name"`.
105-
* * `getValue()`'s result would be `"value"`.
106-
* * `isSecure()` predicate would succeed.
107-
* * `isHttpOnly()` predicate would succeed.
108-
* * `isSameSite()` predicate would succeed.
109-
*/
110-
class DjangoResponseSetCookieCall extends DataFlow::MethodCallNode,
111-
Http::Server::CookieWrite::Range
112-
{
113-
DjangoResponseSetCookieCall() {
114-
this.calls(PrivateDjango::DjangoImpl::DjangoHttp::Response::HttpResponse::instance(),
115-
"set_cookie")
116-
}
117-
118-
override DataFlow::Node getNameArg() {
119-
result in [this.getArg(0), this.getArgByName("key")]
120-
}
121-
122-
override DataFlow::Node getValueArg() {
123-
result in [this.getArg(1), this.getArgByName("value")]
124-
}
125-
126-
override predicate hasSecureFlag(boolean b) {
127-
if
128-
DataFlow::exprNode(any(True t))
129-
.(DataFlow::LocalSourceNode)
130-
.flowsTo(this.(DataFlow::CallCfgNode).getArgByName("secure"))
131-
then b = true
132-
else b = false
133-
}
134-
135-
override predicate hasHttpOnlyFlag(boolean b) {
136-
if
137-
DataFlow::exprNode(any(True t))
138-
.(DataFlow::LocalSourceNode)
139-
.flowsTo(this.(DataFlow::CallCfgNode).getArgByName("httponly"))
140-
then b = true
141-
else b = false
142-
}
143-
144-
// override predicate hasSameSiteFlag(boolean b) {
145-
// if
146-
// exists(StringLiteral str |
147-
// str.getText() in ["Strict", "Lax"] and
148-
// DataFlow::exprNode(str)
149-
// .(DataFlow::LocalSourceNode)
150-
// .flowsTo(this.(DataFlow::CallCfgNode).getArgByName("samesite"))
151-
// )
152-
// then b = true
153-
// else b = false
154-
// }
155-
override DataFlow::Node getHeaderArg() { none() }
156-
}
15790
}
15891
}
15992
}

python/ql/src/experimental/semmle/python/frameworks/Flask.qll

Lines changed: 0 additions & 72 deletions
This file was deleted.

python/ql/test/experimental/query-tests/Security/CWE-614/InsecureCookie.expected

Lines changed: 0 additions & 26 deletions
This file was deleted.

python/ql/test/experimental/query-tests/Security/CWE-614/InsecureCookie.qlref

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)