Nick Rolfe
d293418672
Merge pull request #2478 from jbj/mergeback-20191202
...
Mergeback from rc/1.23 to master
2019-12-02 12:28:20 +00:00
Calum Grant
fcd13dc595
Merge remote-tracking branch 'upstream/master' into ASPNetRequestValidationMode
...
# Conflicts:
# change-notes/1.24/analysis-csharp.md
2019-12-02 12:03:11 +00:00
semmle-qlci
dc7a0c1b91
Merge pull request #2442 from hvitved/csharp/dataflow/conversion-operator
...
Approved by calumgrant
2019-12-02 11:01:35 +00:00
Jonas Jensen
5b24b1efc3
Merge remote-tracking branch 'upstream/rc/1.23' into mergeback-20191202
...
Conflicts solved:
javascript/extractor/src/com/semmle/js/extractor/Main.java
javascript/ql/test/query-tests/Statements/UseOfReturnlessFunction/tst.js
2019-12-02 09:57:34 +01:00
Paulino Calderon
8026925a3a
Update csharp/ql/src/Security Features/CWE-016/ASPNetRequestValidationMode.ql
...
Added missing quotes.
Co-Authored-By: James Fletcher <42464962+jf205@users.noreply.github.com >
2019-11-29 22:39:50 -05:00
Paulino Calderon
879d34d24d
Update csharp/ql/src/Security Features/CWE-016/ASPNetRequestValidationMode.qhelp
...
Missing comma.
Co-Authored-By: James Fletcher <42464962+jf205@users.noreply.github.com >
2019-11-29 22:39:29 -05:00
Paulino Calderon
22964cba74
Update csharp/ql/src/Security Features/CWE-016/ASPNetRequestValidationMode.qhelp
...
Rephrasing.
Co-Authored-By: James Fletcher <42464962+jf205@users.noreply.github.com >
2019-11-29 22:39:04 -05:00
Paulino Calderon
a2dfd551f6
Update csharp/ql/src/Security Features/CWE-016/ASPNetRequestValidationMode.qhelp
...
built in to built-in
Co-Authored-By: James Fletcher <42464962+jf205@users.noreply.github.com >
2019-11-29 22:38:42 -05:00
Tom Hvitved
c845a1ba91
C#: Improve performance of dispatch library
2019-11-29 15:32:00 +01:00
Calum Grant
30a2620a8c
C#: Tidy up docs, query metadata and add tests.
2019-11-29 10:31:58 +00:00
Tom Hvitved
a062d7d41c
C#: Add regression test
2019-11-29 10:10:24 +01:00
Anders Schack-Mulligen
333d0a69d2
Java/C++/C#: Bugfix for field flow through reverse read.
2019-11-29 09:38:24 +01:00
Tom Hvitved
04cecc04dd
C#: Update EntityFrameworkCore test
2019-11-28 15:28:50 +01:00
Paulino Calderon
eeffd7cf8d
Adds CodeQL query to check for Pages validateRequest directive
2019-11-28 14:22:08 +00:00
Tom Hvitved
af453d081e
C#: Only track taint through conversion operators defined in libraries
2019-11-28 15:21:04 +01:00
Tom Hvitved
ba4fb82a08
C#: Add DB upgrade script
2019-11-28 14:30:21 +01:00
Tom Hvitved
b79fc87961
C#: Split up localvars database relation into two relations
2019-11-28 14:30:21 +01:00
Calum Grant
d001c3c2d2
C#: Restructure files.
2019-11-27 17:29:53 +00:00
Calum Grant
c906a8238d
C#: Edit qhelp for cs/insecure-request-validation-mode
2019-11-27 16:37:37 +00:00
Calum Grant
4b19f3b6a4
C#: Whitespace edit and edit query metadata.
2019-11-27 16:37:37 +00:00
Paulino Calderon
6f346c6676
Adds CodeQL query to check for insecure RequestValidationMode in ASP.NET
2019-11-27 16:37:37 +00:00
Tom Hvitved
ce16bc553a
C#: Autoformat
2019-11-27 13:47:24 +01:00
Tom Hvitved
39aaa38486
C#: Update EntityFramework test
2019-11-27 10:28:12 +01:00
Dave Bartolomeo
aa6bd07971
Merge remote-tracking branch 'upstream/master' into dbartol/May-Must
2019-11-26 14:07:13 -07:00
Robert Marsh
e368d5dda0
C++: simplify getDisplayOrderInBlock
2019-11-26 16:02:30 -05:00
Jonas Jensen
c05cc77a91
Merge pull request #2421 from dbartol/dbartol/IndirectAlias
...
C++/C#: Cleanup in preparation for indirect alias analysis
2019-11-26 21:59:17 +01:00
Dave Bartolomeo
f3b4140948
C++/C#: Consistent handling of "may" vs. "must" memory accesses
...
In the IR, some memory accesses are "must" accesses (the entire memory location is always read or written), and some are "may" accesses (some, all, or none of the bits in the location are written). We previously had to special case specific "may" accesses in a few places. This change regularizes our handling of "may" accesses.
The `MemoryAccessKind` enumeration now describes only the extent of the access (the set of locations potentially accessed), but does not distinguish "must" from "may". The new predicates `Operand.hasMayMemoryAccess()` and `Instruction.hasResultMayMemoryAccess()` hold when the access is a "may" access.
Unaliased SSA now correctly ignores variables that are ever accessed via a "may" access.
Aliased SSA now distinguishes `MemoryLocation`s for "may" and "must" accesses. I've refactored `getOverlap()` into the core `getExtentOverlap()`, which considers only the extent, but not the "may" vs. "must", and `getOverlap()`, which tweaks the result of `getExtentOverlap()` based on "may" vs. "must" and read-only locations.
When determining the overlap between a `Phi` operand and its definition, we now use the result of the defining `Chi` instruction, if one exists. This gives exact definitions for `Phi` operands for virtual variables.
2019-11-26 12:13:07 -07:00
Dave Bartolomeo
4e1ee7a998
C++/C#: Fix formatting
2019-11-26 10:48:24 -07:00
Tom Hvitved
71e958eabc
C#: Add taint-tracking steps through conversion operator calls
2019-11-26 13:53:50 +01:00
Tom Hvitved
acb069f69b
C#: Add data flow tests for conversion operators
2019-11-26 13:53:17 +01:00
Robert Marsh
60b384a6e5
C++/C#: use line numbers for instruction IDs
...
This should reduce the number of merge conflicts in the IR tests resulting
from instruction ID changes due to inserting or removing instructions
2019-11-25 18:27:59 -05:00
Calum Grant
113df4ea1d
Merge pull request #2278 from hvitved/csharp/autobuilder/shared-compilation
...
C#: Only set `UseSharedCompilation=false` in autobuilder when needed
2019-11-25 18:37:09 +00:00
Dave Bartolomeo
7d48220a76
C++/C#: Make QLDoc conform to style guide
2019-11-25 11:26:45 -07:00
Dave Bartolomeo
521fbb125e
C++/C#: Fix formatting
2019-11-25 11:12:23 -07:00
Tom Hvitved
fede9aed04
Merge pull request #2355 from cldrn/AspNetMaxRequestLength
...
CodeQL query to check for insecure MaxLengthRequest values in ASP.NET applications
2019-11-25 17:02:22 +01:00
Tom Hvitved
07e18c88a8
C#: Address review comments
2019-11-25 16:51:09 +01:00
Tom Hvitved
795959ef8d
C#: Update expected test output
2019-11-25 13:41:12 +01:00
Tom Hvitved
71fd5379c9
C#: Remove tabs from qhelp file
2019-11-25 13:40:44 +01:00
Tom Hvitved
a26efdf4c1
Java/C++/C#: Rename DataFlowErasedType back to DataFlowType
2019-11-25 11:43:58 +01:00
Dave Bartolomeo
bd78f68975
C++/C#: Fix formatting
2019-11-22 16:08:49 -07:00
Dave Bartolomeo
df21835759
C++/C#: Refactor some integer constant code
...
Make `bitsToBytesAndBits` omit the leftover bits if zero.
2019-11-22 13:23:00 -07:00
Dave Bartolomeo
51ff262cbc
C++/C#: Add IR SSA sanity tests
2019-11-22 13:16:05 -07:00
Dave Bartolomeo
bc48c25690
C++/C#: Make IRVariable and its derived classes non-abstract
2019-11-22 12:13:39 -07:00
Dave Bartolomeo
12daa76b70
C++: Make duplicateOperand query report function name
2019-11-22 11:00:01 -07:00
Dave Bartolomeo
27cc6b1e4f
C++/C#: Fix compilation error in PrintSSA.qll
...
We were privately importing `semmle.code.<lang>.ir.internal.Overlap`, but `PrintSSA.qll` was depending on it being public. This is made a little more complicated by the presence of cross-langage pyrameterized modules.
2019-11-21 13:18:25 -07:00
Robert Marsh
34593701b2
Merge branch 'master' into rdmarsh/cpp/ir-callee-side-effects
2019-11-20 10:03:32 -08:00
Tom Hvitved
acc7d5298d
Data flow: Sync files
2019-11-20 14:10:02 +01:00
Tom Hvitved
d0b4653e32
C#: Introduce DataFlowErasedType
2019-11-20 14:09:46 +01:00
Paulino Calderon
63884c1a86
Mixed spaces and tabs
2019-11-19 13:06:55 -05:00
Paulino Calderon
85eda8c978
Brings security tests from other PRs
2019-11-19 13:04:19 -05:00