Chris Smowton
a832342ecb
Add test for unmarshalling submessages
2020-09-04 15:14:49 +01:00
Chris Smowton
596204f79d
Add (currently-failing) expectations for submessage tainting
2020-09-04 15:14:49 +01:00
Chris Smowton
c9296abe25
Restrict tainting from field-writes to Message types
2020-09-04 15:14:49 +01:00
Chris Smowton
95798590ce
Implement MarshalState method
...
Currently relies on blanket field-write propagation.
2020-09-04 15:14:49 +01:00
Chris Smowton
c34fc3c9ad
Add tests for MarshalAppend and MarshalState
...
The MarshalState test doesn't work yet, because we don't know to read taint from the Message field of the input or write it to the Buf field of the output
2020-09-04 15:14:49 +01:00
Chris Smowton
2ca6157836
Protobuf: support both legacy and modern APIs
2020-09-04 15:14:49 +01:00
Chris Smowton
df0238a352
Fix proto.Clone method
...
This is top-level, not a member.
2020-09-04 15:14:49 +01:00
Chris Smowton
e76c07d77b
Temporarily taint all structs from field writes
...
This should be either refined to just Message types, or else a macro taint step should be added conducting taint from field-write-of-argument to Marshal's result.
On the read-side we're currently fine: the bytes are tainted, so the object is tainted, so the field reads are tainted.
2020-09-04 15:14:49 +01:00
Chris Smowton
19e1dacced
WIP: add more (manual) protobuf models, and a test that checks various taint-flow cases
...
Only some of the cases are currently working.
2020-09-04 15:14:49 +01:00
Sauyon Lee
4ff325aa13
--wip-- [skip ci]
2020-09-04 15:14:49 +01:00
Max Schaefer
25e4245568
Merge pull request #291 from smowton/smowton/admin/oauth2-query-polish
...
Promote OAuth2-misuse query to mainline
2020-09-04 10:50:31 +01:00
Max Schaefer
c7b4db8d16
Merge pull request #319 from aeisenberg/patch-1
...
Update devcontainer memory settings
2020-09-03 14:31:11 +01:00
Andrew Eisenberg
2e8e970978
Update devcontainer memory settings
...
CodeQL CLI needs a minimum of 2G of memory. By default, the memory used is slightly less than that, leading to poor performance.
This change also removes two old, unused settings.
2020-09-02 12:07:05 -07:00
Chris Smowton
b487799f69
Oauth2 state query: avoid duplicate paths by excluding variable references as sources
2020-09-02 17:40:53 +01:00
Chris Smowton
6fea8abd82
Oauth2 state query: improve code style
...
No behavioural changes intended.
2020-09-02 15:06:23 +01:00
Chris Smowton
2f175e365e
Oauth2 state query: remove unnecessary isSource overload
2020-09-02 15:05:22 +01:00
Chris Smowton
8f99972833
OAuth2 CSRF query: improve documentation
2020-09-02 15:05:22 +01:00
Chris Smowton
0ba42f7f87
OAuth2 state query: set precision
2020-09-02 15:05:22 +01:00
Chris Smowton
406ea741f4
Improve comment style
2020-09-02 15:05:22 +01:00
Chris Smowton
faf43efb60
Promote OAuth2 constant-state query to mainline
2020-09-02 15:05:22 +01:00
Chris Smowton
0ee7bbbaa7
Extend oauth2 tests
2020-09-02 15:05:21 +01:00
Chris Smowton
f61c62d2d8
Generalise isReturnedWithError
...
It now recognises any function returning an Error alongside other return values
2020-09-02 15:05:21 +01:00
Chris Smowton
9e4ee0accf
OAuth2 constant state query: trace local URLs across reference operations and Sprintf calls
2020-09-02 15:05:21 +01:00
Chris Smowton
050a823397
OAuth2 exclusion: hide cases that clearly target an out-of-band process or private HTTP server
2020-09-02 15:05:21 +01:00
Chris Smowton
bcb65157e6
Oauth2-state query: treat log calls the same as stdout printers
...
These presumably get to the user somehow, and in conjunction with stdin use are enough to identify use of oauth at the terminal.
2020-09-02 15:05:21 +01:00
Chris Smowton
3d877fc67d
Oauth2 state: note bufio.NewScanner is also a sign of probable terminal-interactive use
2020-09-02 15:05:21 +01:00
Chris Smowton
6fee4f382f
Constant-oauth2-state: exclude strings returned alongside an error value
...
For example, getState() { ... return "", someError } is commonly seen in the wild.
2020-09-02 15:05:21 +01:00
Chris Smowton
aac303c0a2
Merge pull request #287 from smowton/smowton/feature/restore-repo-after-build
...
Restore repo layout post-autobuild
2020-09-02 13:38:36 +01:00
Chris Smowton
246e8b1b27
Make failure to restore a file to its original location non-fatal
2020-09-02 11:44:43 +01:00
Chris Smowton
8de188a6ca
Restore repo layout post-autobuild
2020-09-02 11:44:43 +01:00
Max Schaefer
be64f3ed22
Merge pull request #316 from gagliardetto/standard-lib-pt-17
...
Move `path` and `path/filepath` packages to stdlib
2020-09-02 08:26:11 +01:00
Slavomir
386005d361
Add path and path/filepath packages to stdlib
2020-09-01 13:09:41 +02:00
Sauyon Lee
976151c08f
Merge pull request #315 from max-schaefer/fix-frontend-errors
...
Fix frontend errors in test.
2020-08-28 12:40:11 -07:00
Max Schaefer
2fe8fb9d83
Fix frontend errors in test.
2020-08-28 12:01:33 +01:00
Max Schaefer
031a48ecd3
Merge pull request #296 from owen-mc/allocation-size-overflow-improve-sanitizers-easy
...
Add new sanitizer guard to Allocation size overflow query
2020-08-28 07:44:45 +01:00
Max Schaefer
b4550f244b
Merge pull request #313 from github/rc/1.25
...
Merge rc/1.25 into main
2020-08-27 14:27:26 +01:00
Sauyon Lee
1743dae7b0
Merge pull request #312 from smowton/smowton/autobuilder-fixes-fixed-further
...
Autobuilder: always check the vendor directory works and if go.mod exists
2020-08-27 04:16:04 -07:00
Chris Smowton
4d084372b5
Fix autobuilder Go version comparison
...
The semver package requires versions of the form v1.2.3, and unhelpfully evaluates any malformed versions as equal.
2020-08-27 11:02:23 +01:00
Chris Smowton
c6dbb9fcb2
Tidy up -mod argument stringification
2020-08-27 10:46:36 +01:00
Chris Smowton
b13b54f7d7
Don't try to use -mod=... when go.mod doesn't exist
...
Also don't pass a blank argument to `go` when using an old version.
2020-08-26 13:56:36 +01:00
Chris Smowton
9ad2d6c119
Factor default and custom install paths
...
These now follow the same route:
* Run a default or custom build script
* If needed, check if vendor/ is usable
* If it isn't, or if their build failed, install dependencies using go get etc
This commit shouldn't cause any behavioural change.
2020-08-26 12:02:54 +01:00
Chris Smowton
859b427881
Check if the vendor/ directory is usable, even after a successful build
2020-08-26 11:53:50 +01:00
Sauyon Lee
8f6b25e0ac
autobuilder: Use -mod=mod for vendor directories wihtout modules.txt
2020-08-26 11:25:30 +01:00
Sauyon Lee
70d425d317
autobuilder: move vendor check before dependency installation check
...
This means dependency installation is still attempted when a vendor
directory is inconsistent.
2020-08-26 11:25:30 +01:00
Sauyon Lee
852ae9397b
autobuilder: Test for vendor inconsistency
2020-08-26 11:25:30 +01:00
Sauyon Lee
28c69743a4
Add workaround for go 1.14 explicit vendoring requirement
...
This only applies for module files for which no Go version has
been specified; Go will assume these should be parsed with the
latest Go version, which will cause them to fail if the vendor
directory has been generated with an old version of Go, as
the vendor/modules.txt will not meet the new requirements for
consistency.
2020-08-26 11:25:30 +01:00
Max Schaefer
34d5e970ff
Merge pull request #311 from owen-mc/add-missing-change-notes
...
Add missing change notes
2020-08-26 11:21:00 +01:00
Owen Mansel-Chan
7fd5e7e978
Add change note for https://github.com/github/codeql-go/pull/277
2020-08-26 10:54:18 +01:00
Owen Mansel-Chan
ad6c94e8f9
Add change note for https://github.com/github/codeql-go/pull/251
2020-08-26 07:58:19 +01:00
Owen Mansel-Chan
210208b003
Add change note for https://github.com/github/codeql-go/pull/226
2020-08-26 07:46:56 +01:00