Asger F
50f2afb622
JS: add test
2019-03-27 11:20:39 +00:00
Max Schaefer
3e16d16525
JavaScript: Make type tracking-related parameter and predicate names more consistent.
2019-03-26 13:00:09 +00:00
Max Schaefer
bf04664bd7
Update javascript/ql/src/semmle/javascript/GeneratedCode.qll
...
Co-Authored-By: esben-semmle <42067045+esben-semmle@users.noreply.github.com >
2019-03-26 10:01:24 +01:00
Esben Sparre Andreasen
3cd93129a6
JS: classify HTML files with > 20 elements on a line as generated
2019-03-26 08:03:56 +01:00
Max Schaefer
c50067b597
JavaScript: Refactor type tracking to avoid computing very large relations.
2019-03-25 20:38:58 +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
9fbc0eb717
JavaScript: Switch from path summaries to step summaries for type tracking.
...
This is sufficient since we are not doing summarisation.
2019-03-25 20:37:05 +00:00
Max Schaefer
8e926333a9
JavaScript: Simplify a few newtypes and remove unused predicates.
2019-03-25 16:57:46 +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
276f216ef9
JavaScript: Use type tracking to improve modelling of socket.io.
2019-03-25 16:57:46 +00:00
Max Schaefer
4702790696
JavaScript: Refactor AMD/CommonJS path expression analysis to avoid bad magic.
2019-03-25 16:57:46 +00:00
Max Schaefer
0e0fe2545d
JavaScript: Refactor Closure::isTopLevelExpr to avoid unhelpful magic.
2019-03-25 16:57:46 +00:00
Max Schaefer
c17f4d7d41
JavaScript: Cache SourceNode::track and SourceNode::backtrack.
2019-03-25 16:57:46 +00:00
Max Schaefer
2b778afdf5
JavaScript: Cache a bunch of flow steps to avoid recomputation.
2019-03-25 16:57:46 +00:00
Esben Sparre Andreasen
4ab3407726
JS: add classification test cases
2019-03-25 10:45:44 +01:00
Esben Sparre Andreasen
335a969946
JS: fix performance in ObjectDefinePropertyAsPropWrite::getRhs
2019-03-22 12:29:34 +01:00
Max Schaefer
8c460ae385
Merge remote-tracking branch 'upstream/master' into rc/1.20-merge-master
...
Conflict in `javascript/extractor/src/com/semmle/js/extractor/Main.java` resolved
in favour of `master`.
2019-03-21 14:46:29 +00:00
semmle-qlci
313134cb8c
Merge pull request #1148 from xiemaisi/js/adm-zip
...
Approved by esben-semmle
2019-03-21 14:00:30 +00:00
Asger F
1a6c95c908
TS: update test expectation
2019-03-21 11:06:04 +00:00
Max Schaefer
1835028b93
JavaScript: Show character code when reporting unexpected character.
2019-03-21 10:44:49 +00:00
Max Schaefer
4533e1f6fe
JavaScript: Add model of adm-zip library for ZipSlip query.
2019-03-21 08:04:06 +00:00
Asger F
5768d85c7b
TS: fix trap test output
2019-03-20 12:46:52 +00:00
Asger F
8201e7ea27
TS: update trap test output
2019-03-20 10:23:28 +00:00
Asger F
aaa8bfb874
TS: allow namespace imports as types
2019-03-20 10:09:18 +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
77c383aee2
JavaScript: Simplify flow-summary queries.
...
Previously, `AllConfigurations.qll` would pull in (almost) all taint
tracking configurations, which has started causing OOMEs during
compilation.
I've pruned it down to only the most interesting configurations. Since
flow summaries are experimental at this point and require a bit of manual
configuration anyway, this shouldn't be much of an issue in practice.
2019-03-19 10:58:49 +00:00
Jason Reed
4475dd4b9f
JavaScript: Add test and fix change note.
2019-03-15 14:40:48 -04:00
Jason Reed
aa9ba9557c
JavaScript: Include 'unzipper' library in ZipSlip.
2019-03-15 09:32:39 -04:00
Jason Reed
8124980f58
JavaScript: Add change note and comment.
2019-03-15 09:32:39 -04:00
Jason Reed
a674dbb5cd
JavaScript: Update docstrings to reflect generalization.
2019-03-15 09:31:26 -04:00
Jason Reed
6589813ec7
JavaScript: Add tar-stream extraction to ZipSlip query.
2019-03-15 09:31:26 -04:00
Max Schaefer
5441352d41
Merge pull request #1113 from esben-semmle/js/useless-property-assign-setter
...
JS: improve use of attributes from ~Object.defineProperty~
2019-03-15 12:11:50 +00:00
semmle-qlci
cb86687302
Merge pull request #1078 from psygnisfive/UndefinedReturns
...
Approved by xiemaisi
2019-03-15 08:37:12 +00:00
Rebecca Valentine
f3683794d6
stylistic changes per PR change req. in description
...
https://github.com/Semmle/ql/pull/1078#pullrequestreview-214401005
2019-03-14 09:49:02 -07:00
semmle-qlci
e648477d14
Merge pull request #1114 from xiemaisi/js/yield-import
...
Approved by asger-semmle
2019-03-14 16:48:04 +00:00
semmle-qlci
d549a0dcb8
Merge pull request #1111 from xiemaisi/js/performance-fiddling
...
Approved by esben-semmle
2019-03-14 14:56:26 +00:00
semmle-qlci
5d9d23ee71
Merge pull request #1110 from xiemaisi/js/yield-in-non-generator
...
Approved by asger-semmle
2019-03-14 11:59:43 +00:00
semmle-qlci
7513bcf7ec
Merge pull request #1095 from xiemaisi/js/base64
...
Approved by esben-semmle
2019-03-14 11:58:50 +00:00
Max Schaefer
8e52528219
JavaScript: Refactor reachableFromInput to improve join.
2019-03-14 11:53:46 +00:00
Max Schaefer
993345fb7b
JavaScript: Track Electron browser objects locally only.
2019-03-14 11:53:46 +00:00
Esben Sparre Andreasen
bd7eef08e8
JS: introduce CallToObjectDefineProperty::getAPropertyAttribute
2019-03-14 11:59:27 +01:00
Esben Sparre Andreasen
ff5b85067a
JS: add tests
2019-03-14 11:55:41 +01:00
Max Schaefer
69c63110c1
JavaScript: Teach Function.isGenerator to check for yield.
2019-03-14 10:48:44 +00:00
Max Schaefer
5d35626c58
JavaScript: Rename a test file to avoid case clash.
2019-03-14 08:55:30 +00:00
Max Schaefer
cc8d68082e
JavaScript: Show ZipSlip results by default.
2019-03-14 08:50:47 +00:00
Rebecca Valentine
f9012cb00e
improves tests
2019-03-13 10:48:02 -07:00
Rebecca Valentine
64f731c8aa
adds clarification in docs
2019-03-13 10:46:39 -07:00
Rebecca Valentine
688e7a9730
improves docs
2019-03-13 10:10:57 -07:00
Rebecca Valentine
7ef33de9d2
add tests to ignore generators and async functions per PR change request in description
...
https://github.com/Semmle/ql/pull/1078#discussion_r265010018
2019-03-13 10:04:23 -07:00