Esben Sparre Andreasen
00c8387bb3
JS: model Koa redirects
2019-04-01 22:55:17 +02:00
Esben Sparre Andreasen
298dbe13c4
JS: improve Koa model to account for aliases on the context object
2019-04-01 22:49:00 +02:00
Esben Sparre Andreasen
0e01988622
JS: add koa tests
2019-04-01 22:49:00 +02:00
semmle-qlci
a7d9a50dcf
Merge pull request #1176 from xiemaisi/js/fix-socket-io-type-tracking
...
Approved by asger-semmle
2019-04-01 13:57:13 +01:00
Max Schaefer
c097031c7e
JavaScript: Fix uses of TypeTracker with custom flow steps.
...
These steps need to check that the type hasn't been tracked into a property.
2019-03-28 10:33:04 +00:00
Asger F
42c0efd549
JS: add test
2019-03-27 13:21:45 +00:00
Max Schaefer
084159dcfd
JavaScript: Teach type trackers to track flow through one level of properties.
2019-03-25 20:38:58 +00:00
Max Schaefer
55394df96f
JavaScript: Refactor HTTP libraries to use type tracking instead of tracked nodes.
2019-03-25 16:57:46 +00:00
Max Schaefer
74db8b1979
JavaScript: Use type tracking instead of tracked nodes in Express.
2019-03-25 16:57:46 +00:00
Max Schaefer
6fbf487524
Merge remote-tracking branch 'upstream/rc/1.20' into mergeback-2019-03-19
2019-03-19 14:09:03 +00:00
Max Schaefer
993345fb7b
JavaScript: Track Electron browser objects locally only.
2019-03-14 11:53:46 +00:00
Max Schaefer
5d35626c58
JavaScript: Rename a test file to avoid case clash.
2019-03-14 08:55:30 +00:00
Max Schaefer
f76efcb558
JavaScript: Fix modelling of Buffer base64 encoders and decoders.
2019-03-13 12:27:23 +00:00
Max Schaefer
28d8011bcf
JavaScript: Add models for popular base64 transcoders.
2019-03-13 08:20:58 +00:00
Max Schaefer
d2c3de6256
JavaScript: Consolidate tests.
2019-03-11 12:47:28 +00:00
Max Schaefer
41d83d5b7d
JavaScript: Introduce additional flow steps between sockets.
2019-03-11 12:42:51 +00:00
Max Schaefer
36c9af977b
JavaScript: Connect up client and server sockets.
2019-03-11 12:42:51 +00:00
Max Schaefer
dc614ebefe
JavaScript: Introduce indices for sent/received items.
2019-03-11 12:42:51 +00:00
Max Schaefer
b47b26ca61
JavaScript: Add basic model of client-side socket.io API.
2019-03-11 12:42:34 +00:00
Max Schaefer
37bc36d92e
JavaScript: Factor out handling of EventEmitter API.
2019-03-11 12:41:19 +00:00
Max Schaefer
eb07754eee
JavaScript: Introduce representation of socket.io servers and namespaces.
2019-03-11 12:41:19 +00:00
Max Schaefer
3ab465edcc
JavaScript: Consolidate ReactJS tests.
2019-03-05 08:24:39 +00:00
Max Schaefer
0b5599d009
JavaScript: Consolidate connect, koa, hapi and restify tests.
2019-03-05 08:04:01 +00:00
Max Schaefer
716e741371
JavaScript: Consolidate NodeJSLib tests.
2019-03-05 08:04:01 +00:00
Max Schaefer
8e340922cb
JavaScript: Simplify some imports.
2019-03-01 14:44:58 +00:00
Max Schaefer
75c76619d8
JavaScript: Autoformat rearranged tests.
2019-03-01 14:42:01 +00:00
Max Schaefer
d4d9d61216
JavaScript: Consolidate Express tests.
...
Instead of having many small independent tests, we now just have a single test that pulls in all the individual tests and runs them together.
Concretely, each `.ql` file has been turned into a `.qll` file with a query predicate corresponding to the original `select` clause and named after the original `.ql` file, plus a prefix `test_`.
The newly added `tests.ql` imports all these `.qll`s.
The individual `.expected` files have been concatenated together into `tests.expected`, each prefixed with the name of the corresponding query predicate. (This is the format that qltest produces for tests with multiple query predicates.)
2019-03-01 09:39:31 +00:00
Max Schaefer
b265ff7cdf
JavaScript: Delete stray .expected file.
2019-03-01 09:39:31 +00:00
semmle-qlci
6602b4dbda
Merge pull request #992 from xiemaisi/js/socket.io
...
Approved by asger-semmle
2019-02-27 18:43:40 +00:00
Max Schaefer
db5fbe29a3
Merge pull request #941 from esben-semmle/js/vue-support-2
...
JS: Vue security improvements
2019-02-26 16:49:38 +00:00
Max Schaefer
739705865b
JavaScript: Add basic model of socket.io.
2019-02-26 15:53:29 +00:00
Max Schaefer
c2a5350bf2
Merge pull request #982 from asger-semmle/closure-string-lib
...
JS: model string functions from closure library
2019-02-26 08:26:14 +00:00
Asger F
fab0afd755
JS: model string functions from closure library
2019-02-25 16:08:47 +00:00
Esben Sparre Andreasen
4ce7ec1661
JS: add XSS vector for Vue's v-html
2019-02-25 12:17:56 +01:00
Esben Sparre Andreasen
da1ffcfd1b
JS: introduce Vue Template Element
2019-02-25 12:17:33 +01:00
Esben Sparre Andreasen
9f4f945975
JS: introduce Vue::InstanceHeapStep
2019-02-25 12:17:33 +01:00
Max Schaefer
e7c95bae49
JavaScript: Add flow steps modelling Electron IPC.
2019-02-23 21:43:13 +00:00
Max Schaefer
a4e4957f31
JavaScript: Model webContents property.
2019-02-23 21:43:13 +00:00
Max Schaefer
ff83e600dc
JavaScript: Track Electron browser objects inter-procedurally.
2019-02-23 21:43:13 +00:00
Max Schaefer
d59c12e6eb
JavaScript: Recognise Electron browser objects based on TypeScript types when available.
2019-02-23 21:43:13 +00:00
Anders Schack-Mulligen
1182fca665
Javascript: Autoformat qls
2019-02-12 14:38:42 +01:00
Asger F
f6e0ccfcf0
JS: model URI and XHR methods from closure library
2019-02-08 15:18:27 +00:00
Max Schaefer
812cba0fe3
Merge pull request #828 from esben-semmle/js/vue-support-1
...
JS: basic Vue support
2019-02-07 08:00:17 +00:00
Esben Sparre Andreasen
ea175b2a9f
JS: introduce Vue XSS sinks
2019-02-06 09:38:00 +01:00
Esben Sparre Andreasen
ddf9ca2505
JS: introduce base Vue model
2019-02-06 09:37:23 +01:00
Asger F
cad5a064cd
JS: recognize a-sync-waterfall package
2019-02-05 16:38:47 +00:00
Anders Schack-Mulligen
e58094c732
Javascript: Autoformat.
2019-01-11 11:02:42 +01:00
Esben Sparre Andreasen
60fe0176ed
JS: add ClientRequest::getHost
2018-12-17 10:32:30 +01:00
Esben Sparre Andreasen
45b207c21b
JS: introduce models of three cookie libraries
2018-12-06 14:53:22 +01:00
Esben Sparre Andreasen
28b4a78430
JS: introduce DOM::PersistentWebStorage
2018-12-06 14:53:22 +01:00