Граф коммитов

3634 Коммитов

Автор SHA1 Сообщение Дата
Erik Krogh Kristensen 25aea900b6 add more dataflow steps for Arrays 2020-03-31 11:21:25 +02:00
Erik Krogh Kristensen a02213e745 change LoadStoreStep such that it can store in different property 2020-03-31 11:20:57 +02:00
semmle-qlci 0feb7f87e4
Merge pull request #2761 from erik-krogh/UrlSearch
Approved by asgerf
2020-03-31 09:46:48 +01:00
semmle-qlci 5c920eb625
Merge pull request #3120 from asger-semmle/js/prefer-typescript-file
Approved by esbena
2020-03-31 09:32:14 +01:00
semmle-qlci 73dd4c8686
Merge pull request #3133 from asger-semmle/js/dictionary-taint-step-regression
Approved by esbena
2020-03-31 09:28:55 +01:00
Erik Krogh Kristensen 40fd1825e9 autoformat 2020-03-31 09:08:32 +02:00
Erik Krogh Kristensen 7938bc4ed0 improve alert message for js/useless-assignment-to-local 2020-03-30 20:19:50 +02:00
semmle-qlci fce04f0bd0
Merge pull request #3127 from erik-krogh/PromiseTrack
Approved by asgerf
2020-03-30 11:56:33 +01:00
Asger Feldthaus a317b87b81 JS: Fix perf issue in DictionaryTaintStep 2020-03-30 11:23:47 +01:00
Erik Krogh Kristensen f55005a0ec more precise warning message for implicit string/number conversions 2020-03-30 11:17:56 +02:00
Robert Brignull 90fad6f762 add code scanning suites 2020-03-27 17:03:23 +00:00
Erik Krogh Kristensen 4864e77430 Merge branch 'master' of git.semmle.com:Semmle/ql into UrlSearch 2020-03-27 15:59:29 +01:00
Erik Krogh Kristensen 0ebbd80745 autoformat 2020-03-27 14:54:34 +01:00
semmle-qlci fad902fc9b
Merge pull request #3095 from erik-krogh/MorePerf
Approved by asgerf
2020-03-27 12:51:37 +00:00
semmle-qlci 9b3400337b
Merge pull request #3130 from erik-krogh/PreciseSteps
Approved by asgerf
2020-03-27 12:18:28 +00:00
semmle-qlci 1975a83cdd
Merge pull request #3116 from max-schaefer/js/postgres-type-tracking
Approved by asgerf
2020-03-27 09:23:52 +00:00
Erik Krogh Kristensen 58af63d8cc add test case for XSS on url suffix 2020-03-27 10:02:24 +01:00
Erik Krogh Kristensen d3e1a258fa autoformat 2020-03-27 09:34:56 +01:00
Erik Krogh Kristensen be11418c77 autoformat 2020-03-27 00:18:41 +01:00
Erik Krogh Kristensen 6b507c6933 add urlSuffix support to DomBasedXSS 2020-03-26 15:47:59 +01:00
Erik Krogh Kristensen a850616927 delete Xss.actual 2020-03-26 15:40:37 +01:00
Erik Krogh Kristensen e2d2c2341e autoformat and update expected output 2020-03-26 15:38:00 +01:00
Erik Krogh Kristensen baf50c832c more precise charpreds in taint steps 2020-03-26 15:30:43 +01:00
Asger Feldthaus 816968d102 JS: Rename test files to avoid clash 2020-03-26 11:59:57 +00:00
Erik Krogh Kristensen 1cefa12315 update expected output 2020-03-25 23:54:57 +01:00
Erik Krogh Kristensen 8f45c8fe83 use LoadStoreStep for type-tracking promises 2020-03-25 23:54:57 +01:00
Erik Krogh Kristensen 1a2983fe39 support small steps for promise tracking 2020-03-25 23:54:57 +01:00
Erik Krogh Kristensen 00181e059b add tests for type-tracking promises 2020-03-25 23:54:56 +01:00
Erik Krogh Kristensen 9a78d38df0 add a new LoadStoreStep as a StepSummary for TypeTracking 2020-03-25 23:54:56 +01:00
semmle-qlci e7fd97e72b
Merge pull request #3119 from erik-krogh/SockJS
Approved by esbena
2020-03-25 21:36:29 +00:00
Erik Krogh Kristensen 4b0bc6b2b3 autoformat 2020-03-25 19:47:41 +01:00
Asger Feldthaus ad1e0ec50b JS: Inline variable again 2020-03-25 14:01:33 +00:00
Asger Feldthaus 54021a1c30 JS: Update old entry point and add a test 2020-03-25 13:24:18 +00:00
Asger Feldthaus a78f1b864b JS: Fix trailing whitespace 2020-03-25 12:45:48 +00:00
Asger Feldthaus 6c9e35c22e JS: Skip .js files with a same-named .ts file next to it 2020-03-25 12:45:37 +00:00
semmle-qlci cf5b1f0cd5
Merge pull request #3019 from erik-krogh/ArrayStep
Approved by asgerf
2020-03-25 12:08:44 +00:00
Erik Krogh Kristensen abcdfe3c53 use LibraryName class for websocket library names 2020-03-25 13:06:21 +01:00
Erik Krogh Kristensen f2b9e2019c remove isRelevant from flowStep 2020-03-25 09:46:07 +01:00
Erik Krogh Kristensen 6f0e507242 outline predicate to fix join-ordering 2020-03-25 09:44:03 +01:00
Erik Krogh Kristensen 3000486b35 add more isRelevant calls 2020-03-25 09:42:24 +01:00
Erik Krogh Kristensen 1d8e103322 autoformat 2020-03-25 00:19:23 +01:00
Max Schaefer efbcec09ef JavaScript: Add type tracking to Postgres model. 2020-03-24 17:30:07 +00:00
Erik Krogh Kristensen 36981f385a Merge branch 'master' of git.semmle.com:Semmle/ql into MorePathSinks 2020-03-24 11:20:33 +01:00
semmle-qlci 4c9a6b73ee
Merge pull request #3107 from erik-krogh/FArgs
Approved by esbena
2020-03-24 08:32:56 +00:00
Erik Krogh Kristensen fa710c5864 Merge remote-tracking branch 'upstream/master' into UrlSearch 2020-03-24 00:23:15 +01:00
Erik Krogh Kristensen 5b4f091257 add test for remote flow sources in WebSockets 2020-03-23 23:58:20 +01:00
Erik Krogh Kristensen 6a1491d83d add SockJS to the existing WebSocket model 2020-03-23 23:56:11 +01:00
Erik Krogh Kristensen 9a18dc32c1 autoformat WebSocket tests 2020-03-23 23:49:26 +01:00
Erik Krogh Kristensen 7b7eddff1e remove previous SockJS implementation, and move example to WebSocket test 2020-03-23 23:45:05 +01:00
Asger F a1e032bee6
Merge pull request #3098 from kyprizel/master
Experimental SockJS support
2020-03-23 22:39:10 +00:00
kyprizel dec1b8b070
Update javascript/ql/src/experimental/SockJS/SockJS.qll
Fix comments

Co-Authored-By: Erik Krogh Kristensen <erik-krogh@github.com>
2020-03-23 22:59:48 +03:00
kyprizel b90ff5e84d
Update javascript/ql/src/experimental/SockJS/SockJS.qll
do not import specific libs

Co-Authored-By: Erik Krogh Kristensen <erik-krogh@github.com>
2020-03-23 22:59:23 +03:00
semmle-qlci e5590091a0
Merge pull request #3109 from max-schaefer/js/performance-fixes
Approved by asgerf
2020-03-23 16:08:07 +00:00
Max Schaefer 55e7b22cdf JavaScript: Autoformat. 2020-03-23 14:37:04 +00:00
kyprizel 49e5a22cab
Fixed code style for SockJS
also fixed appCreation, thanks to Erik Krogh.
2020-03-23 17:16:17 +03:00
Erik Krogh Kristensen 7bc7ffffd6 autoformat 2020-03-23 14:10:07 +01:00
Erik Krogh Kristensen f1e0d37273
Update javascript/ql/test/library-tests/frameworks/Concepts/file-access.js
Co-Authored-By: Asger F <asgerf@github.com>
2020-03-23 14:02:22 +01:00
Max Schaefer b13e6141a2 JavaScript: Inline `promiseStep/4`. 2020-03-23 12:01:52 +00:00
Asger F 6c2842bd49
Merge pull request #2919 from asger-semmle/js/property-barriers
JS: Make sanitizers no longer block taint inside an object
2020-03-23 11:43:18 +00:00
Erik Krogh Kristensen 2c43d1d731 fix FP in superfluous-trailing-arguments related to Function.arguments 2020-03-23 10:40:35 +01:00
Eldar T. Zaitov ee0b65ad39 Added experimental SockJS support 2020-03-20 21:24:16 +03:00
Erik Krogh Kristensen f88cc2a977 inline promiseStep predicate 2020-03-20 09:07:52 +01:00
Erik Krogh Kristensen 90a324148d add extra sinks to js/tainted-path 2020-03-20 09:07:39 +01:00
semmle-qlci deb20fc37f
Merge pull request #3076 from esbena/js/even-more-mongoose-improvements
Approved by erik-krogh
2020-03-19 12:03:53 +00:00
Max Schaefer ee62706ad2 JavaScript: Split up a predicate to avoid bad join order. 2020-03-19 11:47:53 +00:00
Max Schaefer d91e6a4893 JavaScript: Avoid a few bad join orders. 2020-03-19 11:47:53 +00:00
Asger Feldthaus 4f42675b35 JS: Autformat 2020-03-19 09:36:27 +00:00
Asger Feldthaus 3ae33e3c1a JS: Update prototype pollution query 2020-03-18 23:59:25 +00:00
Asger Feldthaus b6ca4fbee3 JS: Add getDefaultSourceLabel() 2020-03-18 23:52:25 +00:00
Asger Feldthaus 7393844699 JS: Update some queries that used data as source 2020-03-18 11:55:13 +00:00
Asger Feldthaus 506ddaf3f4 JS: Add explanation for test failure 2020-03-18 11:55:13 +00:00
Asger Feldthaus 028022158d JS: Add variant of test that passes 2020-03-18 11:55:13 +00:00
Asger Feldthaus a7e337ab28 JS: Add some lines in test case 2020-03-18 11:55:13 +00:00
Asger Feldthaus 3e68072e38 JS: Accept test case change 2020-03-18 11:55:13 +00:00
Asger Feldthaus 18eea96cf8 JS: Autoformat 2020-03-18 11:55:13 +00:00
Asger Feldthaus a9901a44e8 JS: Update TaintBarriers/isBarrier test 2020-03-18 11:55:13 +00:00
Asger Feldthaus 0edb765958 JS: Split test case function in two 2020-03-18 11:55:13 +00:00
Asger Feldthaus 4e75fe3977 JS: Update some qldoc comments 2020-03-18 11:55:13 +00:00
Asger Feldthaus a195429471 JS: Add test with non-guard sanitizer 2020-03-18 11:55:12 +00:00
Asger Feldthaus 83606e7b60 JS: Dont use data label in taint-tracking configs 2020-03-18 11:55:12 +00:00
Asger Feldthaus 8da0584b12 JS: Add test 2020-03-18 11:55:12 +00:00
Esben Sparre Andreasen b1a722fcda JS: typo fix 2020-03-18 10:11:38 +01:00
Esben Sparre Andreasen 12d8177b4b
Update javascript/ql/src/semmle/javascript/frameworks/NoSQL.qll
Co-Authored-By: Erik Krogh Kristensen <erik-krogh@github.com>
2020-03-18 10:12:05 +01:00
Esben Sparre Andreasen ce3b196b93
Update javascript/ql/src/semmle/javascript/frameworks/NoSQL.qll
Co-Authored-By: Erik Krogh Kristensen <erik-krogh@github.com>
2020-03-18 10:11:57 +01:00
Esben Sparre Andreasen b9860d3444
Update javascript/ql/src/semmle/javascript/frameworks/NoSQL.qll
Co-Authored-By: Erik Krogh Kristensen <erik-krogh@github.com>
2020-03-18 10:11:49 +01:00
Esben Sparre Andreasen d74c16f86c
Update javascript/ql/src/semmle/javascript/frameworks/NoSQL.qll
Co-Authored-By: Erik Krogh Kristensen <erik-krogh@github.com>
2020-03-18 10:11:36 +01:00
semmle-qlci 8792d0d248
Merge pull request #3070 from erik-krogh/DataPerf
Approved by asgerf
2020-03-17 13:47:09 +00:00
semmle-qlci fa08258c14
Merge pull request #3036 from erik-krogh/CustomTrack
Approved by asgerf
2020-03-17 13:44:51 +00:00
semmle-qlci ea46873bfe
Merge pull request #3065 from erik-krogh/PathSinks
Approved by esbena
2020-03-17 13:00:00 +00:00
Erik Krogh Kristensen 1dfe9e9c2a changes based on review 2020-03-17 11:28:29 +01:00
Erik Krogh Kristensen 9a3176d3cc
Apply suggestions from code review
Co-Authored-By: Esben Sparre Andreasen <esbena@github.com>
2020-03-17 11:26:35 +01:00
Esben Sparre Andreasen 380f66cb19 JS: rename Mongoose::CommonInterfase -> Mongoose::InvokeNode 2020-03-17 11:25:05 +01:00
Erik Krogh Kristensen 095d4d711a change import to an absolute import to fix warning 2020-03-17 11:21:46 +01:00
Erik Krogh Kristensen d7b69fcfea autoformat 2020-03-17 09:52:08 +01:00
Esben Sparre Andreasen 7dc80664e6
Merge pull request #3045 from Semmle/esbena-patch-2
JS: loosen qldoc for `barrierGuardIsRelevant`
2020-03-16 22:28:22 +01:00
Esben Sparre Andreasen b75486bb58 JS: refactor NoSQL::Mongoose. Introduce Mongoose::CommonInterface 2020-03-16 22:12:30 +01:00
Esben Sparre Andreasen 833d1b1ab0 JS: fixup mongoose test 2020-03-16 22:11:22 +01:00
Esben Sparre Andreasen 9d9926fdbf JS: model Mongoose Document for additional js/nosql-injection sinks 2020-03-16 22:11:22 +01:00
Esben Sparre Andreasen 55ab519fbe JS: add Mongoose Document tests 2020-03-16 22:11:22 +01:00
Esben Sparre Andreasen dc27a8f52c JS: model mongoose Model on createConnection.<model/models> 2020-03-16 22:11:22 +01:00
Esben Sparre Andreasen 730396df12 JS: add Mongoose createConnection tests 2020-03-16 22:11:22 +01:00
Erik Krogh Kristensen 7145a57db3 refactor StepSummary into an internal .qll 2020-03-16 17:52:04 +01:00
Erik Krogh Kristensen cd6fe8115d
Update javascript/ql/src/semmle/javascript/Promises.qll
Co-Authored-By: Asger F <asgerf@github.com>
2020-03-16 16:27:50 +01:00
semmle-qlci eb7d8092a6
Merge pull request #3064 from asger-semmle/js/typescript-semantic-errors
Approved by erik-krogh
2020-03-16 11:57:55 +00:00
Erik Krogh Kristensen f2548aa3b1 add more models for file related sinks and sources 2020-03-16 11:07:23 +01:00
Erik Krogh Kristensen 557b642a8e add isRelevant check on flowStep predicate 2020-03-16 11:01:20 +01:00
semmle-qlci 1d4dd2b2f7
Merge pull request #3057 from esbena/js/infer-this-as-exports
Approved by asgerf
2020-03-15 12:55:12 +00:00
Asger Feldthaus b2f008ea9e JS: Dont report TypeScript diagnostics by default 2020-03-15 12:06:08 +00:00
semmle-qlci 7e093a8e5c
Merge pull request #3041 from erik-krogh/JQueryAjax
Approved by esbena
2020-03-14 22:31:59 +00:00
semmle-qlci ff03478ae8
Merge pull request #3049 from asger-semmle/js/fix-cyclic-join
Approved by erik-krogh
2020-03-14 16:19:25 +00:00
Erik Krogh Kristensen 486efbab77 refactor based on review 2020-03-14 14:53:38 +01:00
Erik Krogh Kristensen 4f39c28741 Merge branch 'master' of git.semmle.com:Semmle/ql into CustomTrack 2020-03-14 14:37:52 +01:00
semmle-qlci 20cae302fd
Merge pull request #3054 from erik-krogh/NoDeferred
Approved by asgerf
2020-03-14 13:36:16 +00:00
Esben Sparre Andreasen 4d6aa20990
Merge pull request #3004 from esbena/js/additional-mongodb-and-mongoose-injection-sinks
JS: Mongoose and MongoDB improvements
2020-03-14 12:31:43 +01:00
Esben Sparre Andreasen 2fac7434df JS: infer `this` to be `module.exports` in node modules 2020-03-13 14:10:35 +01:00
Esben Sparre Andreasen ae8d38236b JS: add some tests for `this` 2020-03-13 14:09:23 +01:00
semmle-qlci 25b9fcfafd
Merge pull request #3058 from asger-semmle/js/may-receive-argument-fix
Approved by max-schaefer
2020-03-13 11:49:49 +00:00
Asger Feldthaus 2bdf26a8f1 JS: Remove unneeded forwarding method 2020-03-12 15:48:47 +00:00
Asger Feldthaus 788c0f9037 JS: Refactor metadata class a bit 2020-03-12 15:45:22 +00:00
Erik Krogh Kristensen 799c3eb06c remove model of Deferred 2020-03-12 16:38:20 +01:00
Asger Feldthaus ddab13ab44 JS: Add a comment 2020-03-12 15:29:51 +00:00
Erik Krogh Kristensen 59d2d6d4fd autoformat 2020-03-12 14:48:16 +01:00
Asger Feldthaus 4391b70b5f JS: Fix perf issue in mayReceiveArgument 2020-03-12 13:45:34 +00:00
Erik Krogh Kristensen 172c5ccaca changes based on review 2020-03-12 11:04:33 +01:00
Erik Krogh Kristensen 91bc124f78 autoformat 2020-03-12 10:45:25 +01:00
semmle-qlci 4355f8d2b4
Merge pull request #3023 from erik-krogh/RedundantUpdate
Approved by esbena
2020-03-12 09:34:53 +00:00
Pavel Avgustinov ecded4c11c
Merge pull request #3048 from jbj/desemmlify
Docs: Remove some Semmle references
2020-03-12 09:27:36 +00:00
Asger Feldthaus 1a1b7d4ee0 JS: Switch to whitelisting allowed properties 2020-03-11 16:09:14 +00:00
Erik Krogh Kristensen d32d14f572 model `responseText` and `responseXml` on jqXHR objects 2020-03-11 17:00:44 +01:00
Erik Krogh Kristensen 26d8e33434 Autoformat 2020-03-11 16:42:48 +01:00
Jonas Jensen 86ad4d0357 Docs: Remove some Semmle references
The only Semmle references now left in the public Markdown files are in
URLs and in legal text. There are also two Semmle references left in
`docs/language/vale-styles/README.md` because I didn't understand them
well enough to change them.
2020-03-11 15:20:15 +01:00
Erik Krogh Kristensen e88dac3dea remove FP for js/redundant-operation 2020-03-11 14:42:32 +01:00
Asger Feldthaus 6645df93ad JS: Blacklist another cyclic property 2020-03-11 13:09:37 +00:00
semmle-qlci 1d5fba85f9
Merge pull request #3034 from esbena/js/sharpen-useless-regexp-character-escape
Approved by asgerf
2020-03-11 12:29:45 +00:00
Erik Krogh Kristensen cb5ef7dbed add basic support for jqXHR with ajax calls 2020-03-11 13:05:41 +01:00
Erik Krogh Kristensen b987f2cf29 autoformat 2020-03-11 10:54:20 +01:00
Erik Krogh Kristensen 7f147221f5 refactor to include promise tracking as a core part of type tracking 2020-03-11 10:44:11 +01:00
Erik Krogh Kristensen fa26ce9f4b update expected output 2020-03-11 09:36:12 +01:00
Esben Sparre Andreasen 4dac835bb0
JS: loosen qldoc for `barrierGuardIsRelevant` 2020-03-11 07:54:38 +01:00
Erik Krogh Kristensen 13e855910e add more ClientRequest models for JQuery 2020-03-10 17:21:22 +01:00
semmle-qlci e3fed39f88
Merge pull request #3000 from asger-semmle/js/late-barrier-guards
Approved by erik-krogh
2020-03-10 15:38:35 +00:00
Erik Krogh Kristensen 62ae484545 autoformat and update expected output 2020-03-10 14:01:40 +01:00
semmle-qlci 570f095ae3
Merge pull request #2998 from asger-semmle/js/typescript-memory
Approved by erik-krogh
2020-03-10 12:24:52 +00:00
Esben Sparre Andreasen 5c8800a1c7 JS: make autoformatter happy 2020-03-10 13:11:31 +01:00
Erik Krogh Kristensen 066568ea60 add promise tracking to `Files.qll` 2020-03-10 12:36:42 +01:00
Erik Krogh Kristensen a24bc564a4 add extra tests for file-name with promises 2020-03-10 12:35:34 +01:00
Erik Krogh Kristensen 97f2760583 refactor `Files.qll` to use type-tracking (without tracking anything) 2020-03-10 12:34:20 +01:00
Erik Krogh Kristensen 6110f85748 refactor chrome-remote-interface to use type-tracking promise steps 2020-03-10 12:27:21 +01:00
Esben Sparre Andreasen 5b1b945c35 JS: distinguishes escapes in strings and regular expression literals 2020-03-10 12:26:20 +01:00
Erik Krogh Kristensen 3ddfd7ba73 add extra promise test for `chrome-remote-interface` 2020-03-10 12:24:16 +01:00
Erik Krogh Kristensen 69d8cf643d add type tracking predicates for promises 2020-03-10 12:23:23 +01:00
Esben Sparre Andreasen 3bfda6cd38 JS: refactoring: make separate modules for mongoose Model and Query 2020-03-10 09:57:45 +01:00
Esben Sparre Andreasen 480be06d86 JS: replace Model class with opaque type tracking predicate 2020-03-10 09:57:45 +01:00
Esben Sparre Andreasen dbeb216af0 JS: make use of TypeScript types for mongoose Model and Query 2020-03-10 09:57:45 +01:00
Esben Sparre Andreasen 0c46e4d1af JS: fixup typetracking usage: t2 -> t2.continue() 2020-03-10 09:57:45 +01:00
Esben Sparre Andreasen aae92ad795 JS: add test for DatabaseAccess 2020-03-10 09:57:45 +01:00
Esben Sparre Andreasen 6b9bd8bd97 JS: adjust tests slightly to also support DatabaseAccess testing 2020-03-10 09:57:45 +01:00
Esben Sparre Andreasen 7a2faa0b6b JS: add additional mongoose and mongodb js/nosql-injection sinks 2020-03-10 09:57:45 +01:00
Esben Sparre Andreasen b6c616efd3 JS: support optional options argument to MongoClient.connect 2020-03-10 09:57:45 +01:00
Esben Sparre Andreasen f24f03e1f8 JS: add mongodb .connect tests 2020-03-10 09:57:45 +01:00
Esben Sparre Andreasen 21e6e69f22 JS: support mongodb v3 (minimally)
https://github.com/github/codeql-javascript-team/issues/79
2020-03-10 09:57:45 +01:00
Erik Krogh Kristensen ad52d6446e add test case for tuple-like use 2020-03-09 19:47:05 +01:00
Erik Krogh Kristensen 981eef2587 expose arrayFunctionTaintStep in TaintTracking.qll 2020-03-09 17:22:29 +01:00
Erik Krogh Kristensen 509941649c remove redundant qldoc, and change parameter names to better reflect behavior 2020-03-09 17:20:12 +01:00
Erik Krogh Kristensen a476fc5c3b revert Array.from change 2020-03-09 17:09:31 +01:00
Erik Krogh Kristensen 68ffd52d4c update expected output 2020-03-09 16:45:10 +01:00
Erik Krogh Kristensen b4b05696e1 two bugfixes 2020-03-09 16:45:03 +01:00
Max Schaefer 3c785ecaa7 JavaScript: Move flow summaries to `experimental`.
Also update description and change note to call out their experimental character more clearly.
2020-03-09 12:57:20 +00:00
Asger Feldthaus 6c1f98a5ae JS: Update vague variable name 2020-03-09 11:58:38 +00:00
Erik Krogh Kristensen 0f0187d585 move `Array.from` to ArrayCreationNode 2020-03-09 10:26:21 +01:00
Erik Krogh Kristensen dc4e361d75 add data-flow steps for arrays 2020-03-09 09:53:08 +01:00
Erik Krogh Kristensen 8e3cf5c9c8 add test for data-flow on arrays 2020-03-09 09:25:17 +01:00
Erik Krogh Kristensen 14740d4ccc move existing array taint stracking into Arrays.qll 2020-03-09 09:20:45 +01:00
Asger Feldthaus a1d479e975 JS: Declassify sensitive exprs with special characters 2020-03-07 15:15:13 +00:00
Asger Feldthaus 759631ae56 JS: Raise default memory limit to 2.4G 2020-03-07 15:13:53 +00:00
Asger Feldthaus c55dcf88d5 JS: Improve error reporting 2020-03-07 15:13:52 +00:00
Asger Feldthaus 549d4e9b57 JS: Do not restart in the middle of a message 2020-03-07 15:13:52 +00:00
Asger Feldthaus e1657b237b JS: Extract compiler-restarting into a function 2020-03-07 15:13:52 +00:00
Asger Feldthaus 2ef21ea4b8 JS: Only evaluate relevant barrier guards 2020-03-07 15:13:20 +00:00
Asger Feldthaus fd1a14d3bd JS: Add qldoc to a private predicate 2020-03-07 15:13:20 +00:00
Asger Feldthaus eed4204e04 JS: Lift some internal members to private top-level 2020-03-07 15:13:20 +00:00
semmle-qlci 7891f8621e
Merge pull request #2982 from esbena/js/request-model-with-chaining
Approved by asgerf
2020-03-06 08:57:42 +00:00
Asger Feldthaus 2c8eae22d1 JS: Autoformat 2020-03-05 16:58:49 +00:00
semmle-qlci 0d76c71ed7
Merge pull request #2981 from asger-semmle/js/lower-syntax-error-severity
Approved by max-schaefer
2020-03-05 09:47:56 +00:00
semmle-qlci 98cee5cc1d
Merge pull request #2967 from asger-semmle/js/flow-through-prop
Approved by esbena
2020-03-05 09:46:35 +00:00
semmle-qlci 85ee5fc988
Merge pull request #2955 from erik-krogh/BetterHeader
Approved by asgerf
2020-03-05 08:24:43 +00:00
semmle-qlci 98034aaa53
Merge pull request #2988 from asger-semmle/js/autoformat-again-again
Approved by esbena
2020-03-04 21:20:52 +00:00
semmle-qlci c6e3d8df49
Merge pull request #2969 from esbena/js/process-as-event-emitter
Approved by erik-krogh
2020-03-04 20:24:12 +00:00
Asger Feldthaus 53569453ba JS: Autoformat again 2020-03-04 19:28:24 +00:00
semmle-qlci c5d39039bc
Merge pull request #2962 from erik-krogh/YetAnotherSanitizer
Approved by asgerf
2020-03-04 15:27:09 +00:00
Asger Feldthaus c2f7cdce25 JS: Change precision to very-high 2020-03-04 15:06:10 +00:00
Esben Sparre Andreasen db335ae89b JS: add default/chaining for `request` 2020-03-04 12:36:49 +01:00
Esben Sparre Andreasen 92b3e8c060 JS: add default/chaining tests for `request` 2020-03-04 12:25:23 +01:00
Asger Feldthaus af0df6c369 JS: Lower severity of js/syntax-error 2020-03-04 11:16:59 +00:00
Esben Sparre Andreasen ae43e90a67 JS: model `process` as an EventEmitter 2020-03-04 09:49:16 +01:00
Esben Sparre Andreasen 4625217a68 Merge branch 'master' of github.com:Semmle/ql into js/more-fs-modules 2020-03-03 15:07:51 +01:00
Esben Sparre Andreasen dfa07130b5 JS: add `process` EventEmitter test 2020-03-03 14:26:03 +01:00
Erik Krogh Kristensen f03c67266a add taint step for replace call that only removes dots 2020-03-03 12:58:06 +01:00
Erik Krogh Kristensen 95819c8731 use RegExpTerm to generalize predicate 2020-03-03 12:34:18 +01:00
Asger Feldthaus a2042094cf JS: Restrict reachableFromStoreBase 2020-03-03 11:32:23 +00:00
Asger Feldthaus 98524556c3 JS: Add some tests 2020-03-03 11:32:23 +00:00
Erik Krogh Kristensen 622a2fcfdc use regexp term instead of char class 2020-03-03 12:24:13 +01:00
semmle-qlci 57b3e6addf
Merge pull request #2958 from erik-krogh/InnerPrefix
Approved by asgerf
2020-03-03 11:10:44 +00:00
Erik Krogh Kristensen bc13204193 refactor header checks to be based on dominance 2020-03-03 12:04:31 +01:00
semmle-qlci 7f3f629d39
Merge pull request #2913 from asger-semmle/js/prototype-pollution-path
Approved by erik-krogh
2020-03-03 10:29:47 +00:00
semmle-qlci b3cbf8baa8
Merge pull request #2960 from erik-krogh/OverloadsWithThis
Approved by asgerf
2020-03-03 10:10:00 +00:00
Esben Sparre Andreasen adddebf039 Merge branch 'master' of github.com:Semmle/ql into js/more-fs-modules 2020-03-03 10:55:16 +01:00
semmle-qlci e1c5449885
Merge pull request #2867 from erik-krogh/UselessCat
Approved by esbena
2020-03-03 09:10:25 +00:00
Erik Krogh Kristensen 9016f43d80 update expected output 2020-03-03 10:04:57 +01:00
Erik Krogh Kristensen 1781179e25 doc fixes 2020-03-03 09:50:02 +01:00
Erik Krogh Kristensen c4ebd66b34 fix capitalization of predicate 2020-03-03 09:29:04 +01:00
Erik Krogh Kristensen d2d5af42bf add IndirectInclusionTest and IndirectEndsWith 2020-03-02 21:42:08 +01:00
Erik Krogh Kristensen 97c16929ca implement getPolarity and forward to inner StartsWith 2020-03-02 21:38:22 +01:00
Erik Krogh Kristensen 53d1cd33f6 support sanitizers that remove all forward slashes 2020-03-02 21:34:40 +01:00
Erik Krogh Kristensen 68fb8c52e9 check the type of the this-type, instead of the AST-node 2020-03-02 16:35:16 +01:00
Erik Krogh Kristensen e0fcc4af6a handle this parameters when finding unreachable overloads 2020-03-02 16:26:00 +01:00
Erik Krogh Kristensen 019266e537 change name of Useless cat 2020-03-02 13:06:08 +01:00
Erik Krogh Kristensen 26fd17bf39 recognize utility functions implementing a StartsWith check 2020-03-02 13:00:58 +01:00
Erik Krogh Kristensen 391b6a833c add link to The Useless Use of Cat Award 2020-03-02 12:28:51 +01:00
Asger Feldthaus e405a9769c JS: Really autoformat everything 2020-03-02 10:48:33 +00:00
Erik Krogh Kristensen c14a485ca7 recognize more HttpResponseSink by restricting the `hasNonHtmlHeader` check 2020-03-02 10:10:34 +01:00
Erik Krogh Kristensen 71ff32e930 recognize another prefix check for js/path-injection 2020-02-28 14:55:41 +01:00
Esben Sparre Andreasen a589061bee JS: add type-tracking to the fs-module and model the `original-fs` 2020-02-28 12:54:59 +01:00
Esben Sparre Andreasen 5a3a1c480d JS: add tests for the fs-module and friends 2020-02-28 12:21:10 +01:00
Erik Krogh Kristensen 5e0ae7b4d0 add end </p> tag 2020-02-28 10:23:03 +01:00
Erik Krogh Kristensen ce9cd53bf1 Merge remote-tracking branch 'upstream/master' into UselessCat 2020-02-28 09:56:23 +01:00
Erik Krogh Kristensen d8a96dd771 change name to suggestion from previous code review 2020-02-28 09:55:15 +01:00
Erik Krogh Kristensen 922779e049 remove double a/an and adjust line lenghts 2020-02-28 09:48:07 +01:00
Erik Krogh Kristensen 17f1974e05
Apply suggestions from code review
Co-Authored-By: mc <42146119+mchammer01@users.noreply.github.com>
2020-02-28 09:43:32 +01:00
semmle-qlci ec90627a64
Merge pull request #2909 from yo-h/experimental
Approved by aschackmull, jbj, max-schaefer, tausbn
2020-02-28 03:15:58 +00:00
Asger Feldthaus 52ebe49a0b JS: Flag deep assignments in prototype pollution query 2020-02-27 12:17:55 +00:00
Erik Krogh Kristensen a872d7c5c5 add comment about negative optionsArg 2020-02-27 12:42:22 +01:00
Erik Krogh Kristensen bb911bbbf1
Apply suggestions from code review
Co-Authored-By: Esben Sparre Andreasen <esbena@github.com>
2020-02-27 12:38:06 +01:00
Asger Feldthaus fefcf1a7a6 JS: Autoformat everything 2020-02-27 09:41:01 +00:00
Erik Krogh Kristensen 9c06c48dc7
Merge pull request #2884 from esbena/js/practically-exploitable-redos
JS: add query js/exploitable-polynomial-redos
2020-02-27 10:19:17 +01:00
Esben Sparre Andreasen 1b73cee692 JS: add js/exploitable-polynomial-redos 2020-02-27 08:42:43 +01:00
Erik Krogh Kristensen dc6bfad023 Merge remote-tracking branch 'upstream/master' into CVE481 2020-02-25 16:25:03 +01:00
semmle-qlci 03b882381a
Merge pull request #2723 from esbena/js/support-path-is-inside
Approved by asgerf
2020-02-25 11:21:24 +00:00
Erik Krogh Kristensen c83c27cbc4 add extra sanity-check that the output looks good 2020-02-25 11:11:58 +01:00
Erik Krogh Kristensen 8d26f32199 arg -> param 2020-02-25 10:53:07 +01:00
Erik Krogh Kristensen 87d283aa6c add tests for third party command execution libraries (and two small fixes) 2020-02-25 10:50:59 +01:00
Erik Krogh Kristensen d540caecdd
Apply suggestions from code review
Co-Authored-By: Esben Sparre Andreasen <esbena@github.com>
2020-02-25 10:04:51 +01:00
Asger F 160fc48803
Merge pull request #2896 from asger-semmle/typescript-3.8
TS: Support Typescript 3.8
2020-02-25 08:19:01 +00:00
Esben Sparre Andreasen 5baba62154 JS: model `path-is-inside`+`is-path-inside` for `js/path-injection` 2020-02-24 23:10:15 +01:00
Esben Sparre Andreasen 86b836cd29 JS: add tests for js/path-injection 2020-02-24 23:03:42 +01:00
semmle-qlci aadb148c1c
Merge pull request #2855 from asger-semmle/js/returned-partial-call
Approved by esbena
2020-02-24 21:37:41 +00:00
yo-h 43bcd5b26c Add guidelines for experimental CodeQL queries and libraries 2020-02-24 15:08:31 -05:00
Erik Krogh Kristensen afd6ea2628 small correction in doc + autoformat 2020-02-24 17:54:29 +01:00
Erik Krogh Kristensen b20e8520f6 add default message if not pretty printed call can be created 2020-02-24 14:52:08 +01:00
semmle-qlci 317356e591
Merge pull request #2898 from asger-semmle/js/prototype-pollution-isobject-sanitizers
Approved by erik-krogh
2020-02-24 13:35:32 +00:00
Erik Krogh Kristensen a779ae58a8 add qhelp 2020-02-24 14:03:41 +01:00
Erik Krogh Kristensen fb94af9764 remove the last dependency on PrettyPrinting 2020-02-24 13:18:15 +01:00
Erik Krogh Kristensen 051de247b0 change regexpMatch to regexpFind 2020-02-24 13:11:30 +01:00
Erik Krogh Kristensen a768e937f0 complete qldoc 2020-02-24 13:08:50 +01:00
Erik Krogh Kristensen 473787a426 refactor the getOptionsArg predicate into the SystemCommandExecution class 2020-02-24 12:59:20 +01:00
Asger Feldthaus 01309d7c2e TS: Add test for named re-export and exportsAs 2020-02-24 11:40:28 +00:00
Asger Feldthaus 78954489fb TS: Fix expected output 2020-02-24 11:40:28 +00:00
Asger Feldthaus 4e1bd9056c TS: Fix javadoc 2020-02-24 11:40:28 +00:00
Asger Feldthaus 18974bad1c TS: Add upgrade script and stats 2020-02-24 11:40:27 +00:00
Asger Feldthaus 47673c6e21 TS: Disable export analysis for type-only exports 2020-02-24 11:40:27 +00:00
Asger Feldthaus 16c909b433 TS: Add test case for import type * as ns 2020-02-24 11:40:27 +00:00
Asger Feldthaus 260b243c28 TS: Add test case to DeclBeforeUse 2020-02-24 11:40:27 +00:00
Asger Feldthaus 8d58aad0f2 TS: Support type-only import/export 2020-02-24 11:40:27 +00:00
Asger Feldthaus 0351f0b775 TS: Add test and documentation for private fields 2020-02-24 11:40:27 +00:00
Asger Feldthaus 8531c113a1 TS: Fix imports 2020-02-24 11:40:27 +00:00
Asger Feldthaus 9b52acc62a TS: Handle export * as ns 2020-02-24 11:40:27 +00:00
Asger Feldthaus 7f939fe1e4 TS: Update to TypeScript 3.8.2 2020-02-24 11:40:27 +00:00
semmle-qlci 94aa77748d
Merge pull request #2810 from erik-krogh/CVE74
Approved by asgerf
2020-02-24 11:32:42 +00:00
Asger Feldthaus f923b24bc5 JS: Fix test 2020-02-24 11:19:23 +00:00
Erik Krogh Kristensen 75c1852ee4
doc changes from review
Co-Authored-By: Esben Sparre Andreasen <esbena@github.com>
2020-02-24 11:58:59 +01:00
Erik Krogh Kristensen 44db0f4e5d better printing of the options arg 2020-02-21 15:39:49 +01:00
Asger Feldthaus d1df251b92 JS: Proto pollution: Add is-plain-object sanitizer 2020-02-21 14:38:33 +00:00
Erik Krogh Kristensen 90e5671d98 Merge branch 'master' of git.semmle.com:Semmle/ql into CVE481 2020-02-21 15:25:07 +01:00
Asger Feldthaus a673539c98 JS: Update expected output 2020-02-21 13:51:23 +00:00
Asger Feldthaus b780bc4d59 JS: Also track into callbacks 2020-02-21 13:51:22 +00:00
Asger Feldthaus e8e649102f JS: Also propagate out of returns 2020-02-21 13:51:22 +00:00
Asger Feldthaus 8c36b999cc JS: Track flow into calls to bound functions 2020-02-21 13:51:20 +00:00
semmle-qlci ee5cf95f5b
Merge pull request #2892 from asger-semmle/js/field-methods
Approved by esbena
2020-02-21 13:49:42 +00:00
semmle-qlci e163d8d8c8
Merge pull request #2796 from asger-semmle/js/partial-invoke-receiver
Approved by esbena
2020-02-21 13:48:43 +00:00
Erik Krogh Kristensen 75410e5760 big refactor of UselessUseOfCal 2020-02-21 14:26:42 +01:00
semmle-qlci 382e4bc06a
Merge pull request #2895 from max-schaefer/js/improve-param-qldoc
Approved by asgerf
2020-02-21 12:01:02 +00:00
Max Schaefer 75495d7aad
Update javascript/ql/src/semmle/javascript/Variables.qll
Co-Authored-By: Asger F <asgerf@github.com>
2020-02-21 10:06:32 +00:00
Erik Krogh Kristensen 6ea14532ab small changes based on review 2020-02-21 10:27:57 +01:00
Max Schaefer fc4afe6eb2 JavaScript: Improve qldoc for `Parameter` to clarify that it also contains catch-clause parameters. 2020-02-21 09:14:00 +00:00
semmle-qlci 2df3fe8f36
Merge pull request #2883 from asger-semmle/typescript-3.7.5
Approved by erik-krogh
2020-02-20 15:59:36 +00:00
Erik Krogh Kristensen 924272a7a5 insert placeholder qhelp 2020-02-20 14:35:26 +01:00
Erik Krogh Kristensen b2ccec28e0 require the file to be non-empty 2020-02-20 14:34:50 +01:00
Erik Krogh Kristensen b1cbfce50b use SystemCommandExecution and a few small fixes 2020-02-20 14:17:37 +01:00
Erik Krogh Kristensen 03e295ef11 Merge branch 'master' of git.semmle.com:Semmle/ql into CVE74 2020-02-20 12:19:32 +01:00
semmle-qlci f6af5da7f7
Merge pull request #2778 from erik-krogh/FalsySanitizer
Approved by asgerf
2020-02-20 11:17:03 +00:00
Erik Krogh Kristensen 63036aa444 Merge branch 'master' of git.semmle.com:Semmle/ql into CVE74 2020-02-20 12:09:06 +01:00
semmle-qlci 8b277f7226
Merge pull request #2868 from asger-semmle/js/missing-await-void
Approved by max-schaefer
2020-02-20 10:56:47 +00:00
Asger Feldthaus 6448acfa88 TS: Depend on TypeScript 3.7.5 2020-02-20 10:53:17 +00:00
Erik Krogh Kristensen 12c0291dde require that an options object has a known set of properties 2020-02-20 11:35:11 +01:00
Erik Krogh Kristensen b5ef45e6c2 add isSync predicate to SystemCommandExecution 2020-02-20 11:30:23 +01:00
Erik Krogh Kristensen a193cb110e support arrow functions in the callbacks 2020-02-20 11:13:39 +01:00
Erik Krogh Kristensen 558beb7255 simplify the output file argument 2020-02-20 10:57:33 +01:00
semmle-qlci 091c6c063c
Merge pull request #2856 from esbena/js/fix-RegExp-getPredecessor-getSuccessor
Approved by max-schaefer
2020-02-20 09:50:52 +00:00
Erik Krogh Kristensen a5fdcb67f9 restricts alerts to the first line 2020-02-20 10:43:41 +01:00
Erik Krogh Kristensen d4e73df92f remove dead predicate 2020-02-20 10:39:16 +01:00
Erik Krogh Kristensen 56f3e431f9 update expected output 2020-02-20 10:28:53 +01:00
Erik Krogh Kristensen 80962803b0 update doc for VarAccessBarrier, and make the class private 2020-02-20 10:09:32 +01:00
Erik Krogh Kristensen 2d437efdfd
corrections on qldoc
Co-Authored-By: Asger F <asgerf@github.com>
2020-02-20 09:54:11 +01:00
Asger Feldthaus 479770dc07 JS: Recognize class members in more cases 2020-02-19 17:04:41 +00:00
Erik Krogh Kristensen bdab9ee12b change useless cat query to only flag instances that can be re-written to 2020-02-19 16:59:28 +01:00
Asger Feldthaus 77105f6572 JS: Do not flag void operands MissingAwait 2020-02-19 09:30:03 +00:00
Erik Krogh Kristensen 344060e139 accept IO redirections as OK 2020-02-19 10:12:24 +01:00
Max Schaefer 4346691cdc JavaScript: Distinguish `{lo}` and `{lo,}` in the regular expression parser. 2020-02-19 08:26:14 +00:00
Erik Krogh Kristensen 73a7d406a5 add query for useless use of cat 2020-02-18 19:18:45 +01:00
Erik Krogh Kristensen e359e1a373 use a barrier directly instead of a barrier guard 2020-02-18 10:57:28 +01:00
Esben Sparre Andreasen abe7aeef7c
Merge pull request #2643 from esbena/js/unsafe-jquery
JS: add query js/unsafe-jquery-plugin
2020-02-18 09:26:14 +01:00
Esben Sparre Andreasen e8938fb466 JS: introduce RegExpSequence::nextElement and previousElement 2020-02-17 23:20:25 +01:00
Erik Krogh Kristensen 56e5bd50f6 update expected output 2020-02-17 14:55:08 +01:00
Erik Krogh Kristensen 2885d48ad0 changes based on review 2020-02-17 14:44:10 +01:00
Asger Feldthaus 9249b92d85 JS: Fix typo in comment 2020-02-17 12:48:13 +00:00
Esben Sparre Andreasen 8a9587fc91 JS: fix RegExp::getSuccessor/getPredecessor for sequence end/starts 2020-02-17 13:40:53 +01:00
Erik Krogh Kristensen d1a58f1d17 Merge remote-tracking branch 'upstream/master' into CVE74 2020-02-17 13:18:52 +01:00
Erik Krogh Kristensen b07f3d36d8 qldoc on splitPath 2020-02-17 13:17:12 +01:00
Erik Krogh Kristensen 5375604109 calling `pop` or `shift` on a SplitPath returns a PosixPath 2020-02-17 13:15:46 +01:00
Esben Sparre Andreasen c5ee436b16 JS: add RegExp::getSuccessor/getPredecessor tests 2020-02-17 13:06:55 +01:00
Erik Krogh Kristensen 3855268201 use RegExpCreationNode 2020-02-17 13:02:47 +01:00
Erik Krogh Kristensen 46cbeb0bc6 add more steps to the SplitPath label 2020-02-17 12:58:27 +01:00
semmle-qlci 23ed2bcc64
Merge pull request #2782 from asger-semmle/js/export-as-ns
Approved by erik-krogh, max-schaefer
2020-02-17 11:22:58 +00:00
Erik Krogh Kristensen a6d644bac0 add support for path.normalize(path.realtive(...)) 2020-02-14 13:10:35 +01:00
Erik Krogh Kristensen 94814fa721 fix typos in the test 2020-02-14 13:03:35 +01:00
Erik Krogh Kristensen d765a33b8d add support for "../" prefixes in sanitizer 2020-02-14 12:36:54 +01:00
Erik Krogh Kristensen 9d61004128 remove redundant constructor on sink 2020-02-14 12:31:12 +01:00
Max Schaefer f181111886 JavaScript: Add model of `http2` compatibility API.
Also deprecated the `httpOrHttps` predicate, which was now only used in one place and seemed a little pointless anyway.
2020-02-14 11:14:31 +00:00
Erik Krogh Kristensen 3a146514ce add sanitizer for relative ".." in js/path-injection 2020-02-14 10:51:48 +01:00
semmle-qlci da566a4484
Merge pull request #2828 from erik-krogh/CVE24
Approved by esbena
2020-02-14 09:12:48 +00:00
semmle-qlci 769dce511b
Merge pull request #2788 from erik-krogh/CVE42-sink
Approved by esbena
2020-02-14 08:00:00 +00:00
Erik Krogh Kristensen 897bb4d801 add test for chrome-remote-interface 2020-02-13 15:12:45 +01:00
Erik Krogh Kristensen 1ab5ca4e64
typo in docstring
Co-Authored-By: Esben Sparre Andreasen <esbena@github.com>
2020-02-13 14:15:28 +01:00
Erik Krogh Kristensen d6afd438ba add model for chrome-remote-interface as a ClientRequest 2020-02-13 10:58:07 +01:00
Erik Krogh Kristensen 35d8151374 add a few arrary methods to TaintedPath.qll 2020-02-11 12:23:51 +01:00
Erik Krogh Kristensen 8e316d2f05 add unary type-tracking predicates 2020-02-10 12:51:09 +01:00
Erik Krogh Kristensen 0f511c92b4 Merge remote-tracking branch 'upstream/master' into FalsySanitizer 2020-02-10 09:54:58 +01:00
semmle-qlci 37360e7d93
Merge pull request #2794 from esbena/js/move-EnumeratedPropName
Approved by asgerf
2020-02-07 21:31:37 +00:00
semmle-qlci 76ba48c6fb
Merge pull request #2790 from esbena/js/model-send
Approved by asgerf
2020-02-07 21:30:54 +00:00
Asger Feldthaus e4844bfad2 JS: Fix deprecated API usage 2020-02-07 17:17:48 +00:00
Asger Feldthaus ad10414604 JS: Update expected output of existing test 2020-02-07 16:57:57 +00:00
Erik Krogh Kristensen 06e13cb3a1 Merge branch 'master' of git.semmle.com:Semmle/ql into FalsySanitizer 2020-02-07 16:13:02 +01:00
Erik Krogh Kristensen c6668da02e expand how indirectCommandArguments are found 2020-02-07 15:00:05 +01:00
Asger Feldthaus 254af4f3a8 JS: Rewrite LodashUnderscore::AnalyzedThisInBoundCallback 2020-02-07 13:58:07 +00:00
Erik Krogh Kristensen dd9e3d2fec expose TaintTracking::arrayFunctionTaintStep and add a step for "concat" 2020-02-07 14:57:32 +01:00
Asger Feldthaus fea5a4331d JS: Rewrite React::AnalyzedThisInBoundCallback 2020-02-07 13:55:42 +00:00
Asger Feldthaus 3b28bdbeed JS: Rewrite AnalyzedThisInArrayIterationFunction 2020-02-07 13:55:36 +00:00
Asger Feldthaus f942e69482 JS: Improve flow through partial invokes 2020-02-07 13:54:14 +00:00
Esben Sparre Andreasen dcdaa96570 JS: remove unused imports 2020-02-07 14:10:50 +01:00
Esben Sparre Andreasen cb30329b3d JS: make DynamicPropertyAccess.qll from PrototypePollutionUtility.ql 2020-02-07 13:57:52 +01:00
Erik Krogh Kristensen 1ece6b9afe update expected output of tests 2020-02-07 12:57:51 +01:00
semmle-qlci 125c6a071c
Merge pull request #2787 from asger-semmle/js/lazy-cache-test-case
Approved by esbena
2020-02-07 11:53:04 +00:00
Esben Sparre Andreasen 736ccb98c2 JS: model the `send` library for `js/path-injection` 2020-02-07 12:45:32 +01:00
Erik Krogh Kristensen 8ea6070120 add indirect command injection sink for a concatenated array 2020-02-07 11:04:34 +01:00
Asger Feldthaus a2fa6bb41f JS: Add test case for lazy-cache 2020-02-07 09:50:37 +00:00
Asger Feldthaus a628f787e8 JS: Fix qldoc comment 2020-02-06 14:59:52 +00:00
Asger Feldthaus f84af74d1d JS: Handle more libraries 2020-02-06 14:59:52 +00:00
Asger Feldthaus c559ab13e7 JS: Add test and handle parameter with source object 2020-02-06 14:59:52 +00:00
Asger Feldthaus 34a9dce33d JS: Detect property enumeration through for-own 2020-02-06 14:59:52 +00:00
Asger Feldthaus 418f841749 JS: Handle imports through lazy-cache 2020-02-06 14:59:52 +00:00
semmle-qlci 180e9d4731
Merge pull request #2779 from asger-semmle/js/protopol-regression-fix
Approved by esbena
2020-02-06 14:58:19 +00:00
Erik Krogh Kristensen 75f23a189d
update docstring
Co-Authored-By: Asger F <asgerf@github.com>
2020-02-06 15:53:03 +01:00
Erik Krogh Kristensen 2865723059 add test for new barrier 2020-02-06 15:44:33 +01:00
Erik Krogh Kristensen ade93e66e1 move the if(!x) from DataFLow to TaintTracking 2020-02-06 15:44:22 +01:00
Asger Feldthaus 7090124a1d JS: Implement type inference through export * as ns 2020-02-06 14:29:35 +00:00
Asger Feldthaus a252a41459 JS: Rename/deprecate a predicate to loosen its return type 2020-02-06 14:27:23 +00:00
Asger Feldthaus 2b77c7969d JS: Add tests for 'export * as ns' 2020-02-06 14:04:12 +00:00
Asger Feldthaus f5c805bad1 JS: Move tests into one file 2020-02-06 13:55:29 +00:00
Asger Feldthaus 54c521d41c JS: Fix typo in test query 2020-02-06 13:50:06 +00:00
Erik Krogh Kristensen 1f7dda7fbc add dataflow barrier for if(xrandr) 2020-02-06 12:55:44 +01:00
Asger Feldthaus 0345c48503 JS: Bump extractor version string 2020-02-06 11:04:59 +00:00
Asger Feldthaus 38ef07ce73 JS: Fix join ordering 2020-02-06 10:29:05 +00:00
Erik Krogh Kristensen d8a30c48a3 update expected output of TaintedPath tests 2020-02-06 09:47:15 +01:00
semmle-qlci 5125dc7939
Merge pull request #2730 from esbena/js/model-path-parse
Approved by asgerf
2020-02-05 21:35:55 +00:00
semmle-qlci 163285bee7
Merge pull request #2735 from asger-semmle/prototype-pollution-manual-dataflow
Approved by esbena
2020-02-05 12:52:59 +00:00
Erik Krogh Kristensen da28d3b971 add "hash" and "search" to URL taint step 2020-02-05 12:44:10 +01:00
semmle-qlci a5e183bde3
Merge pull request #2619 from asger-semmle/ts-monorepo-deps
Approved by erik-krogh, max-schaefer
2020-02-05 10:57:55 +00:00
semmle-qlci 53763c789f
Merge pull request #2741 from esbena/js/split-and-slice-for-tainted-path
Approved by erik-krogh
2020-02-05 10:53:39 +00:00
semmle-qlci 52f34d7178
Merge pull request #2715 from erik-krogh/PrivateFields
Approved by asgerf
2020-02-05 10:20:28 +00:00
Erik Krogh Kristensen 88bb1dc23d bind `this` in each of the step methods of `UrlSearchParamsTaintStep` 2020-02-05 10:58:13 +01:00
Erik Krogh Kristensen 30d5eb5a13 update docstrings 2020-02-05 10:53:34 +01:00
Erik Krogh Kristensen ffc6fddddd update expected test output 2020-02-05 10:52:40 +01:00
Asger F cf18bd7bb8
Update javascript/ql/src/Security/CWE-400/PrototypePollutionUtility.ql
Co-Authored-By: Esben Sparre Andreasen <esbena@github.com>
2020-02-05 09:48:16 +00:00
Asger Feldthaus fd9975db85 JS: Address comments 2020-02-05 09:47:51 +00:00
Esben Sparre Andreasen f6ad22dd1f
Merge pull request #2758 from asger-semmle/js/string-concat-concat
JS: Model concat() calls as string concatenation
2020-02-05 10:41:02 +01:00
Erik Krogh Kristensen ec9c37075c address review feedback 2020-02-05 10:31:53 +01:00
Erik Krogh Kristensen 35a7e15a2f remove `private` modifer on `isUrlSearchParams` 2020-02-05 10:30:31 +01:00
Erik Krogh Kristensen 76aca02752 change the pseudo-property on URL to a two-stage process 2020-02-05 10:27:03 +01:00
Erik Krogh Kristensen e525cf0959 generalize `isAdditionalLoadStoreStep` such that it loads and stores different properties 2020-02-05 09:40:16 +01:00
Asger Feldthaus b4df03767d JS: Ignore obvious Array.prototype.concat calls 2020-02-04 16:36:41 +00:00
Asger Feldthaus db2212e33e TS: Only print number of errors if there were any 2020-02-04 15:31:30 +00:00
Erik Krogh Kristensen 8d37c03209 using pseudo-properties to model URL parsing 2020-02-04 16:30:07 +01:00
Asger Feldthaus 3ccdaa94ad JS: Expose argumentPassing as DataFlow::argumentPassingStep 2020-02-04 15:06:45 +00:00
Asger Feldthaus c185cededf JS: More pruning and more data flow 2020-02-04 15:06:42 +00:00
semmle-qlci 4b89eee683
Merge pull request #2757 from max-schaefer/js/resolveMainModule-extensions
Approved by asgerf
2020-02-04 13:07:08 +00:00
Erik Krogh Kristensen 15e26666cd add declaration for private field in syntax error test 2020-02-04 14:05:09 +01:00
Asger Feldthaus bf2c944b4f JS: Model concat() calls as string concatenation 2020-02-04 10:20:37 +00:00
Esben Sparre Andreasen 1ec8fa24b3 JS: reformulate optimization 2020-02-04 10:52:38 +01:00
Esben Sparre Andreasen 8a2c81b41c JS: address review comments about duplicated logic 2020-02-04 10:49:23 +01:00
Max Schaefer 43e4ed1e18 JavaScript: Teach `resolveMainModule` to try adding extensions. 2020-02-04 09:39:04 +00:00
Max Schaefer e21c24c60e JavaScript: Add failing test case. 2020-02-04 09:39:04 +00:00
Esben Sparre Andreasen e1180495f5 JS: optimize a prefix-check 2020-02-04 09:48:56 +01:00
semmle-qlci bd51ef35b7
Merge pull request #2731 from erik-krogh/CVE527
Approved by esbena
2020-02-04 08:38:26 +00:00
Esben Sparre Andreasen bbd60f52ba JS: add additional flow steps to js/path-injection 2020-02-03 16:36:25 +01:00
Erik Krogh Kristensen e3189aaa47 raise syntax error on declaration of private method, and add syntax tests for private fields 2020-02-03 16:00:25 +01:00
semmle-qlci 3a7845e7fc
Merge pull request #2653 from erik-krogh/exceptionFPs
Approved by esbena
2020-02-03 14:15:24 +00:00
Erik Krogh Kristensen 183dd68d6a add qldoc to isPrivateField 2020-02-03 14:23:27 +01:00
Asger Feldthaus 3c1cbcefa5 TS: Pass virtual source root explicitly to Node.js process 2020-02-03 10:36:36 +00:00
Asger Feldthaus 513854a608 TS: Add upgrade script 2020-02-03 09:32:56 +00:00
Asger Feldthaus 9abf5f06e6 TS: Resolve imports using TypeScript symbols 2020-02-03 09:32:56 +00:00
Asger Feldthaus abb95135c1 JS: Add UnresolvableImport metric 2020-02-03 09:32:56 +00:00
Erik Krogh Kristensen 5ff958a9cf fix compilation of PrototypePollutionUtility after refactor 2020-02-03 09:39:41 +01:00
Esben Sparre Andreasen 7f25c1bf47 JS: address doc-review comments 2020-01-31 19:33:04 +01:00
Esben Sparre Andreasen c70997febf JS: address review comments for js/unsafe-jquery-plugin 2020-01-31 19:33:04 +01:00
Esben Sparre Andreasen eaff78b37e JS: change severity to warning 2020-01-31 19:33:04 +01:00
Esben Sparre Andreasen 1de1c15919 JS: minor fixups 2020-01-31 19:33:04 +01:00
Esben Sparre Andreasen 2ad9b843ae JS: fix FP for js/unsafe-jquery-plugin 2020-01-31 19:33:04 +01:00
Esben Sparre Andreasen cfd567f01d JS: fix FP for js/unsafe-jquery-plugin 2020-01-31 19:33:04 +01:00
Esben Sparre Andreasen 9e247921fc JS: add FP tests for js/unsafe-jquery-plugin 2020-01-31 19:33:04 +01:00
Esben Sparre Andreasen fef918ac13 JS: add query "Unsafe jQuery plugin" 2020-01-31 19:33:04 +01:00
semmle-qlci d995d5a4a0
Merge pull request #2716 from esbena/js/additional-koa-requests
Approved by erik-krogh
2020-01-31 18:30:42 +00:00
Erik Krogh Kristensen 84be6e1286 update docString on getAnAliasedSourceNode 2020-01-31 15:38:19 +01:00
Erik Krogh Kristensen 32bcb18cdf add pragma[inline] to getAnAliasedSourceNode 2020-01-31 15:35:38 +01:00
Erik Krogh Kristensen 72114a48f5 rename getASourceAccess to getAnAliasedSourceNode 2020-01-31 15:34:58 +01:00
Erik Krogh Kristensen e6d46b9279 add test for new prefix check on TaintedPath 2020-01-31 12:35:03 +01:00
Erik Krogh Kristensen b6611b1fb3 add "slice" as a recognized prefix method in ClientSideUrlRedirectCustomizations.qll 2020-01-31 12:24:12 +01:00
Erik Krogh Kristensen 279c584bb8 fix FP in js/path-injection by recognizing more prefix checks 2020-01-31 11:03:11 +01:00
semmle-qlci f8d0b4e602
Merge pull request #2618 from erik-krogh/ExceptionalPromise
Approved by asgerf
2020-01-31 07:59:09 +00:00
Esben Sparre Andreasen 5f1317fa2d JS: model path.parse and its ponyfill package: "path-parse" 2020-01-30 21:26:18 +01:00
Esben Sparre Andreasen 5b5f52979d JS: add uniform support for path, path.posix and path.win32 2020-01-30 21:26:18 +01:00
Erik Krogh Kristensen 8fc273b9ec update expected output 2020-01-30 15:19:27 +01:00
semmle-qlci 3158b8401a
Merge pull request #2705 from erik-krogh/CVE75
Approved by asgerf
2020-01-30 13:07:05 +00:00
semmle-qlci 120b50f497
Merge pull request #2708 from asger-semmle/js/react-flow-through-imports
Approved by esbena
2020-01-30 13:05:07 +00:00
Erik Krogh Kristensen 162c19c348 changes based on review 2020-01-30 14:04:04 +01:00
Asger F b88cc50cdb
Apply suggestions from code review
Co-Authored-By: Max Schaefer <54907921+max-schaefer@users.noreply.github.com>
2020-01-30 12:42:58 +00:00
Asger Feldthaus 1bf8165098 TS: Other review comments 2020-01-30 12:41:02 +00:00
Asger Feldthaus 92dbfb2858 JS: Handle LGTM_WORKSPACE and fix emptiness check 2020-01-30 12:31:25 +00:00
Asger Feldthaus 141d4bfb70 TS: Handle multiple slashes in scope name 2020-01-30 12:28:16 +00:00
Erik Krogh Kristensen 7637ebcc03 Merge remote-tracking branch 'upstream/master' into exceptionFPs 2020-01-30 10:56:41 +01:00
Esben Sparre Andreasen 31743c42e5
Update javascript/ql/src/semmle/javascript/frameworks/Koa.qll
Co-Authored-By: Erik Krogh Kristensen <erik-krogh@github.com>
2020-01-29 20:28:29 +01:00
Esben Sparre Andreasen a6d3afd817 JS: support additional Koa request sources 2020-01-29 14:49:01 +01:00
Esben Sparre Andreasen d4d910b681 JS: add koa test 2020-01-29 14:41:23 +01:00
Anders Schack-Mulligen 743b612d0d Javascript/Python: Sync XML.qll 2020-01-29 13:31:25 +01:00
Erik Krogh Kristensen b8834ffcad add support for private fields in classes 2020-01-29 13:10:45 +01:00
semmle-qlci fb90c2ba52
Merge pull request #2681 from asger-semmle/csrf-only-session-cookie-access
Approved by erik-krogh, max-schaefer
2020-01-29 10:46:48 +00:00
Erik Krogh Kristensen aea365c424 adjust API naming 2020-01-28 15:09:31 +01:00
Erik Krogh Kristensen cb16116b4d adjust type-tracking on custom EventEmitters 2020-01-28 14:00:26 +01:00
Asger F 701d9989be
Apply suggestions from code review
Co-Authored-By: Erik Krogh Kristensen <erik-krogh@github.com>
2020-01-28 12:46:51 +00:00
Asger F 310dd05185
Update javascript/ql/src/Security/CWE-352/MissingCsrfMiddleware.ql
Co-Authored-By: Erik Krogh Kristensen <erik-krogh@github.com>
2020-01-28 12:46:34 +00:00
semmle-qlci 5ab6457370
Merge pull request #2699 from asger-semmle/js/callback-doc-typo
Approved by max-schaefer
2020-01-28 11:00:49 +00:00