Anders Schack-Mulligen
27c973e157
Java: Fix some qltests.
2021-06-21 16:08:52 +02:00
Anders Schack-Mulligen
d383c0f69b
Java: Remove temporary store-as-taint.
2021-06-21 14:42:47 +02:00
Anders Schack-Mulligen
65ac8be5ac
Java: Add defaultImplicitTaintRead and sync.
2021-06-21 14:42:47 +02:00
Anders Schack-Mulligen
aa82d0b815
Java: Make Content public as DataFlow::Content.
2021-06-21 14:42:47 +02:00
Anders Schack-Mulligen
80880320d5
Dataflow: Sync.
2021-06-21 14:42:47 +02:00
Anders Schack-Mulligen
b7ac329ba1
DataFlow: Add support for configuration-specific implicit reads.
2021-06-21 14:41:19 +02:00
Anders Schack-Mulligen
9110dfaeb3
Merge pull request #6095 from hvitved/dataflow/local-cc-join
...
Data flow: Fix `getLocalCallContext` join-order
2021-06-21 12:53:38 +02:00
Anders Schack-Mulligen
7eb6da3888
Merge pull request #5772 from smowton/smowton/feature/apache-tuple-flow
...
Add models for Apache Commons Lang's tuple types
2021-06-18 11:25:07 +02:00
Tom Hvitved
eb86bceb4d
Address review comments
2021-06-18 10:18:47 +02:00
Chris Smowton
d28c95d16c
Field foo of -> Field[foo] of
2021-06-17 12:49:25 +01:00
Chris Smowton
74b2a2c7a6
Improve style of interpretField
2021-06-17 12:45:44 +01:00
Chris Smowton
2cc1f46871
Model constructors for (Imm|M)utable(Pair|Triple)
2021-06-17 12:34:40 +01:00
Chris Smowton
eebaab8fe9
Order left and right consistently
2021-06-17 12:34:40 +01:00
Chris Smowton
472a2a64dd
Add models for Apache Commons tuples
2021-06-17 12:25:21 +01:00
Chris Smowton
73fa680224
Add support for CSV-specified flow to or from fields.
2021-06-17 12:24:28 +01:00
Chris Smowton
11b70326fd
Add Jakarta WS url-open sink
2021-06-17 11:58:41 +01:00
Chris Smowton
da1e760269
Adjust Spring models to use erased function signatures
2021-06-17 11:43:33 +01:00
Chris Smowton
1176fec287
Improve docs
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2021-06-17 11:43:33 +01:00
Chris Smowton
8b080a94e7
Convert request forgery tests to inline expectations; add missing models revealed by this process.
2021-06-17 11:43:32 +01:00
Chris Smowton
b66dcbe5b6
Factor request-forgery config so it can be used in an inline-expectations test
2021-06-17 11:43:32 +01:00
Chris Smowton
ee872f1752
Add missing tests, add additional models revealed missing in the process, and add stubs to support them all.
2021-06-17 11:43:32 +01:00
Chris Smowton
49bbfc3f4b
Convert SSRF sinks into url-open CSV sinks
...
I also drop the previous approach of taint-tracking through various builder objects in favour of assuming that a URI set in a request-builder object is highly likely to end up requested in some way or another.
This will cause the `java/non-https-url` query to pick the new sinks up too, and fixes a Spring case that had never worked but went unnoticed until now.
2021-06-17 11:43:30 +01:00
Chris Smowton
0f2139ff5d
Fix and document one-based argument indexing in StringFormat's getAnArgUsageOffset
2021-06-17 11:41:06 +01:00
Chris Smowton
55c72cebf2
Improve StringBuilder append chain tracking
...
Previously this didn't catch the case of constructors chaining directly into appends, like `StringBuilder sb = new StringBuilder("1").append("2")`
2021-06-17 11:41:06 +01:00
Chris Smowton
5b25694a52
Simplify and improve AddExpr logic
...
The improvement is in considering (userSupplied + "/") itself a sanitising prefix.
2021-06-17 11:41:06 +01:00
Chris Smowton
6b76f42d22
Broaden PrimitiveSanitizer to include boxed primitives and other java.lang.Numbers
2021-06-17 11:41:06 +01:00
Chris Smowton
3167af29bd
Tidy and remove catersian product from getUrlArgument
2021-06-17 11:41:05 +01:00
Chris Smowton
f388aae78e
Fix getAnArgUsageOffset and improve its space complexity
...
Also add tests checking the output of the new function
2021-06-17 11:41:05 +01:00
Chris Smowton
0db5484399
Copyedit documentation
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2021-06-17 11:41:05 +01:00
Chris Smowton
9138d2b8f5
Improve comment casing
...
Co-authored-by: intrigus-lgtm <60750685+intrigus-lgtm@users.noreply.github.com >
2021-06-17 11:41:05 +01:00
Chris Smowton
b25e8671b9
Java SSRF query: comment on sanitizing regex
2021-06-17 11:41:05 +01:00
Chris Smowton
0d9a6e2b61
Update java/ql/src/semmle/code/java/security/RequestForgery.qll
...
SpringRestTemplateUrlMethods -> SpringRestTemplateUrlMethod
2021-06-17 11:41:05 +01:00
Chris Smowton
fb2989c16b
Copyedit comments and function names
...
Co-authored-by: Felicity Chapman <felicitymay@github.com >
2021-06-17 11:41:04 +01:00
Chris Smowton
960a903185
Java SSRF query: document RequestForgeryAdditionalTaintStep and use Unit not string for a supertype.
2021-06-17 11:41:04 +01:00
Chris Smowton
7899e17f3a
Java SSRF query: move RequestForgery qll file into semmle/code hierarchy
...
This makes it importable by people wishing to extend the query.
2021-06-17 11:41:04 +01:00
Chris Smowton
b5a450b881
SSRF query: add sanitizer looking for a variety of ways of prepending a sanitizing prefix, such as one that restricts the hostname a URI will refer to.
2021-06-17 11:41:03 +01:00
Anders Schack-Mulligen
6ca8d69b26
Merge pull request #5881 from haby0/java/UnsafeDeserialization
...
Java: CWE-502 Add UnsafeDeserialization sinks
2021-06-17 12:36:34 +02:00
Anders Schack-Mulligen
8fe2f4a554
Merge pull request #6034 from owen-mc/java/jax-rs
...
Improve JAX-WS and JAX-RS models
2021-06-17 12:35:34 +02:00
Owen Mansel-Chan
945db01f56
Address review comments
2021-06-17 10:29:33 +01:00
Tom Hvitved
ffb2350a54
Data flow: Fix getLocalCallContext join-order
2021-06-17 10:02:31 +02:00
Tom Hvitved
cc383e0f6a
Data flow: Workaround for too clever compiler in consistency queries
2021-06-17 09:43:36 +02:00
Owen Mansel-Chan
5d00bb23e4
Move logic for URL redirection sinks
2021-06-16 12:48:11 +01:00
haby0
c1ada6d85b
Merge branch 'main' into java/UnsafeDeserialization
2021-06-16 16:37:03 +08:00
haby0
9badd7aa27
change name
2021-06-16 11:29:37 +08:00
Anders Schack-Mulligen
19305a217a
Merge pull request #5374 from joefarebrother/guava-base
...
Java: Model additional flow steps for the package `com.google.common.base` of the Guava framwork.
2021-06-15 10:58:48 +02:00
Joe Farebrother
36cb207600
Increase precision of tests to test value flow
2021-06-14 11:20:07 +01:00
Owen Mansel-Chan
8cf47f12b4
Model constructors of classes implementing MultivaluedMap
2021-06-14 10:56:35 +01:00
Joe Farebrother
678597f3f9
Update CSV rows for collection flow
2021-06-11 15:08:27 +01:00
Joe Farebrother
04ffe80366
Add unit tests
2021-06-11 11:41:27 +01:00
Joe Farebrother
153e0c4ac3
Add modelling for more com.google.common.base methods
2021-06-11 11:40:37 +01:00