Commit Graph

19777 Commits

Author SHA1 Message Date
Jonas Jensen
e012dce755 Merge pull request #4334 from github/faster-skip-copy-value-instructions
C++: Manual recursion in `skipCopyValueInstructions`
2020-09-24 16:43:25 +02:00
Geoffrey White
49f9a76c54 C++: Add tests for std::map and std::unordered_map. 2020-09-24 15:19:39 +01:00
Anders Schack-Mulligen
3ef3e6e140 Merge pull request #4319 from hvitved/python-java-block-precedes-var
Java/Python: Reduce size of `blockPrecedesVar`
2020-09-24 16:07:49 +02:00
Joe
9c8a468237 Java: PrintAst: Add synthetic nodes for other declarations 2020-09-24 14:31:24 +01:00
Joe
3e960c1e0b Java: PrintAst: Refactor exceptions to the usual AST of expressions and statements using dispatch 2020-09-24 14:31:24 +01:00
Joe
1f99607624 Java: PrintAst: Improve test 2020-09-24 14:31:24 +01:00
Joe
45651cf123 Java: PrintAst: Add a synthetic node for the initialisers of for statements 2020-09-24 14:31:24 +01:00
Anders Schack-Mulligen
d4d4c0f3f9 Merge pull request #4325 from aibaars/hibernate-changenote
Java: change note for Hiberate ORM improvements
2020-09-24 12:58:45 +02:00
Erik Krogh Kristensen
6163e6cf5f adjust test case for XML entity expansion 2020-09-24 09:53:06 +02:00
Mathias Vorreiter Pedersen
780a07e89c Merge pull request #4332 from jbj/ExtendedRangeAnalysis-stub
C++: ExtendedRangeAnalysis stub implementation
2020-09-24 09:01:06 +02:00
Tom Hvitved
7970fef3e4 Merge pull request #4315 from hvitved/merge-rc-1.25
Merge rc/1.25 into main
2020-09-24 08:27:01 +02:00
Robert Marsh
89332ca303 C++: autoformat 2020-09-23 15:29:51 -07:00
Robert Marsh
774dcc7c52 C++: New model class for iterator op* and op[] 2020-09-23 15:29:37 -07:00
Jonathan Leitschuh
17603c8091 Update java/ql/src/Security/CWE/CWE-338/JHipsterGeneratedPRNG.qhelp
Co-authored-by: Felicity Chapman <felicitymay@github.com>
2020-09-23 13:59:49 -04:00
Geoffrey White
71a605b7d9 C++: Add tests for std::pair. 2020-09-23 18:43:28 +01:00
Tamas Vajk
48bf6d55aa C#: Add implicit cast from array to pointer 2020-09-23 17:21:38 +02:00
Mathias Vorreiter Pedersen
f794eaa670 C++: Manual recursion in skipCopyValueInstructions instead of transitive closure 2020-09-23 16:26:40 +02:00
Erik Krogh Kristensen
83f0514475 add req.files as a RequestInputAccess in the Express model 2020-09-23 15:50:59 +02:00
Jonas Jensen
b7d0939f4a C++: ExtendedRangeAnalysis stub implementation
Just to demonstrate how things fit together, I've created
`SubtractSelf.qll` that adds a (hopefully sound) version of the test
extension that was already used in `extensibility.ql`.
2020-09-23 15:50:07 +02:00
Arthur Baars
5894263671 Java: improve change note
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com>
2020-09-23 15:37:55 +02:00
Max Schaefer
dc7b447895 JavaScript: Make alert locations for command injection more precise. 2020-09-23 14:07:36 +01:00
Max Schaefer
439aadf0b6 JavaScript: Do even more type tracking in command injection. 2020-09-23 14:07:36 +01:00
Max Schaefer
ef18b39124 JavaScript: Fix use of type backtracker in IndirectCommandArgument.qll. 2020-09-23 14:07:36 +01:00
Max Schaefer
825fc2228b JavaScript: Add two new command-injection tests. 2020-09-23 14:07:36 +01:00
Rasmus Wriedt Larsen
66815c9d3d Python: Suppress unused variable warnings in DataFlowPrivate 2020-09-23 14:33:10 +02:00
Tamás Vajk
9b14a70eef Merge pull request #4316 from tamasvajk/feature/local-functions
C#: Change TrapStackBehaviour of local functions
2020-09-23 14:12:07 +02:00
Tamas Vajk
2868d5bf34 C#: Add pointer cast test cases 2020-09-23 12:20:51 +02:00
Rasmus Wriedt Larsen
6aec2ec673 Python: Fix os.popen modeling
Co-authored-by: yoff <lerchedahl@gmail.com>
2020-09-23 11:18:32 +02:00
Rasmus Wriedt Larsen
624cdd339a Python: Fix grammar
Co-authored-by: yoff <lerchedahl@gmail.com>
2020-09-23 11:18:12 +02:00
Tom Hvitved
d652b95b21 Merge pull request #4011 from hvitved/csharp/asp-extraction-pre-finalize
C#: Move ASP extraction from auto builder to `pre-finalize.{sh,cmd}`
2020-09-23 09:11:11 +02:00
Tamás Vajk
03e20eed05 Merge pull request #4314 from tamasvajk/feature/switch-case-expr
C#: Fix switch case expression types
2020-09-23 08:57:32 +02:00
Rasmus Lerchedahl Petersen
ef4461ce54 Python: Address review comments 2020-09-22 23:48:28 +02:00
Tamás Vajk
5ab5e75b85 Merge pull request #4255 from fatenhealy/IncreaseInsufficientKeySizeValue
Increase insufficient key size value from 1024 to 2048
2020-09-22 23:06:12 +02:00
yoff
aece0ff652 Apply suggestions from code review
Co-authored-by: Taus <tausbn@github.com>
2020-09-22 22:33:46 +02:00
Jonathan Leitschuh
645d7c8831 Fix documentation in apache/Lang.qll 2020-09-22 15:04:06 -04:00
Erik Krogh Kristensen
ec2b3f0b6c better join-order fix in HTTP 2020-09-22 21:02:26 +02:00
Jonathan Leitschuh
8578bc5cf0 Update java/ql/src/Security/CWE/CWE-338/JHipsterGeneratedPRNG.qhelp
Co-authored-by: Felicity Chapman <felicitymay@github.com>
2020-09-22 15:02:00 -04:00
Robert Marsh
e28a45b8e6 Merge branch 'main' into rdmarsh2/cpp/output-iterators-1
Resolve test output conflicts from IR model improvements
2020-09-22 11:17:38 -07:00
Jonathan Leitschuh
24fe3d0663 Apply suggestions from code review
Co-authored-by: Felicity Chapman <felicitymay@github.com>
2020-09-22 13:11:11 -04:00
Arthur Baars
252f8aa89d Java: add Spring::MultipartRequest as taint source 2020-09-22 19:01:10 +02:00
Arthur Baars
b382711f14 Java: change note for Hiberate ORM improvements 2020-09-22 18:55:07 +02:00
CodeQL CI
475519c9ee Merge pull request #4267 from asgerf/js/log-typescript-memory
Approved by esbena
2020-09-22 08:51:51 -07:00
Jonas Jensen
4faeede5cd C++: Remove unnecessary comment on import 2020-09-22 16:55:25 +02:00
Rasmus Wriedt Larsen
71a75ce596 Python: Handle bound methods in flask modeling 2020-09-22 16:33:35 +02:00
Rasmus Wriedt Larsen
5709189c2a Python: Expand flask test 2020-09-22 16:33:34 +02:00
Rasmus Wriedt Larsen
e614365963 Python: Adopt new approach in flask modeling
Removed all the dict-like stuff, not sure that is how we should do things.
2020-09-22 16:33:33 +02:00
Rasmus Wriedt Larsen
a82fa04d8a Python: Add worked example of taint step modeling of external libs
This can't be seen on the example, but I went through quite a lot of iterations
before arriving at this fairly simple solution.
2020-09-22 16:28:26 +02:00
Rasmus Wriedt Larsen
00ea0cebc3 Python: More Flask modeling kinda works
It "kinda" works now, but it really is not a pretty solution. Adding all these
"tracked" objects is SUPER annoying... it _would_ be possible to skip them, but
that seems like it will give the wrong edges for dataflow/taintflow queries :|

A good chunk of it should be able to be removed with access-paths like C# does
for library modeling. Some of it could be solved by better type-tracking API
like API Graphs... but it seems like we generally are just lacking the
nice-to-have features like `.getAMemberCall` and the like. See
https://github.com/github/codeql/pull/4082/files#diff-9aa94c4d713ef9d8da73918ff53db774L33
2020-09-22 16:28:25 +02:00
Rasmus Wriedt Larsen
3c08590ee4 Python: Expand flask tests a bit 2020-09-22 16:28:24 +02:00
Rasmus Wriedt Larsen
2bdd0284dc Python: Port py-command-line-injection with new dataflow 2020-09-22 16:28:23 +02:00