Erik Krogh Kristensen
9f08acab7e
Merge pull request #7170 from erik-krogh/qldocStyle
...
Ruby: use A/An/The to start qlDoc for classes
2021-11-19 17:34:35 +01:00
Harry Maclean
06000781e9
Ruby: Document PairCfgNode::getKey/getValue
2021-11-19 14:54:06 +00:00
Nick Rolfe
f63c768d9f
Ruby: parse \G, \b, and \B anchors as special characters, not escapes
2021-11-19 14:20:51 +00:00
Tom Hvitved
47fd64fc44
Merge pull request #7130 from hvitved/cfg/dead-end-consistency
...
Shared CFG: Add "dead end" consistency query
2021-11-19 13:49:53 +01:00
Tom Hvitved
2b2ff7717e
Merge pull request #7179 from hvitved/ruby/shared-ssa-consistency
...
Ruby: Move SSA consistency queries into shared SSA library
2021-11-19 13:49:25 +01:00
Erik Krogh Kristensen
75586b0cf6
Apply suggestions from code review
...
Co-authored-by: Nick Rolfe <nickrolfe@github.com >
2021-11-19 13:23:01 +01:00
Harry Maclean
90a9688310
Ruby: update CFG fixture
2021-11-19 11:31:14 +00:00
Harry Maclean
8fc7e4be43
Ruby: Increase precision of SSRF query
2021-11-19 11:28:09 +00:00
Harry Maclean
c297a68acf
Model more of the RestClient API
...
We now handle this form:
RestClient::Request.execute(url: "http://example.com ")
2021-11-19 11:28:09 +00:00
Harry Maclean
e2ef780c55
Add base_uri note to HTTParty modelling
2021-11-19 11:28:09 +00:00
Harry Maclean
38ff584307
Model more Faraday behaviour
...
You can instantiate a Faraday connection by passing a URL as an keyword
argument:
conn = Faraday.new(url: "http://example.com ")
2021-11-19 11:28:09 +00:00
Harry Maclean
f933d24031
Fix comment
2021-11-19 11:28:09 +00:00
Harry Maclean
70efadac77
Add change note for Ruby SSRF query
2021-11-19 11:28:09 +00:00
Harry Maclean
e87a4531d8
Remove redundant imports
2021-11-19 11:28:08 +00:00
Harry Maclean
ac20eafecc
Add qhelp for Ruby SSRF
2021-11-19 11:28:08 +00:00
Harry Maclean
2bba31eb02
Update metadata of Ruby SSRF query
2021-11-19 11:28:08 +00:00
Harry Maclean
dc464879a2
Add a query for server-side request forgery
2021-11-19 11:28:08 +00:00
Harry Maclean
cd33e4d394
Make string interpolation sanitizer reusable
2021-11-19 11:28:08 +00:00
Harry Maclean
b6ce37b241
Add getURL to HTTP::Client::Request
...
This member predicate gets dataflow nodes which contribute to the URL of
the request.
Also consolidate the identical tests for each HTTP client.
2021-11-19 11:28:08 +00:00
Harry Maclean
8fd8c9b04d
Fix CallExprCfgNode.getKeywordArgument
...
This predicate now produces results.
2021-11-19 11:28:08 +00:00
Harry Maclean
0caea17118
Add a test for CallCfgNodes
...
This test shows that `CallCfgNode.getKeywordArgument(string keyword)`
doesn't return any results.
2021-11-19 11:28:07 +00:00
Anders Schack-Mulligen
1f3f7e9ccc
Merge pull request #7169 from erik-krogh/useMatches
...
use matches instead of regexpMatch/prefix/suffix
2021-11-19 11:42:47 +01:00
Tom Hvitved
bc80c9b013
Ruby: Move SSA consistency queries into shared SSA library
2021-11-19 11:31:28 +01:00
Tom Hvitved
923ca134e8
Shared CFG: Add "dead end" consistency query
2021-11-19 09:14:38 +01:00
Tom Hvitved
a4538de3a3
Shared CFG: Rename TNode to TCfgNode
...
This is in order to avoid name clash with the often so-named IPA type for data-
flow nodes. The name clash is not problematic because they are both in scope,
but because (cached) IPA types with overlapping names are known to sometimes
result in re-evaluation of cached stages, when one of the IPA types gets an
internal `#2` suffix in one query run, and the other IPA type gets the suffix
in another run.
2021-11-18 19:15:36 +01:00
Erik Krogh Kristensen
ee858d840e
get ReDoSUtil in sync for ruby
2021-11-18 16:49:34 +01:00
Tom Hvitved
2218516685
Ruby: Remove CP in EnsureSplitImpl::exit/3
2021-11-18 16:05:09 +01:00
Erik Krogh Kristensen
af55f172ae
use A/An/The to start qlDoc for classes
2021-11-18 15:42:45 +01:00
Erik Krogh Kristensen
011fc20963
use matches instead of regexpMatch
2021-11-18 15:41:25 +01:00
Alex Ford
1ec935dee6
Ruby: make documentation of IOReader and FileReader less ambiguous
2021-11-18 14:35:44 +00:00
Anders Schack-Mulligen
6815a13a00
Merge pull request #6931 from hvitved/dataflow/restrict-derived-summaries
...
Data flow: Restrict derived flow summaries
2021-11-18 15:31:55 +01:00
Alex Ford
bd940712de
Update ruby/ql/lib/codeql/ruby/frameworks/Files.qll
...
Co-authored-by: Harry Maclean <hmac@github.com >
2021-11-18 14:18:39 +00:00
Erik Krogh Kristensen
1cca377e7d
Merge pull request #6561 from erik-krogh/htmlReg
...
JS/Py/Ruby: add a bad-tag-filter query
2021-11-18 09:39:13 +01:00
Alex Ford
9a74f18ac5
Ruby: take File::try_convert as a potential file instance instantiation
2021-11-17 23:19:13 +00:00
Alex Ford
ce004e9c1e
Ruby: don't interpret File#try_convert as a method that reads from a file/IO
2021-11-17 23:01:19 +00:00
Alex Ford
12a3251649
Ruby: extend FileSystemReadAccess and restructure some Files.qll classes
2021-11-17 23:01:18 +00:00
Alex Ford
08b6a17097
Merge pull request #7151 from github/ruby/methodcallnode
...
Ruby: add `getMethodName` predicate to `DataFlow::CallNode` class
2021-11-17 14:40:07 +00:00
Tom Hvitved
de72a765e0
Ruby: Update expected CFG test output (reordering)
2021-11-17 13:44:55 +01:00
Tom Hvitved
9ff63b00d6
Ruby: Remove CFG dependency from AST stage
...
Commit 028ef6f27f had the unintended side-effect
that the AST and CFG stages got merged, because the AST stage's `isCapturedAccess`
now depends on `getCfgScopeImpl`, which belongs to the CFG stage.
The fix is to remove `getCfgScopeImpl` from the CFG stage, and instead let it
be part of the AST stage.
2021-11-17 13:15:55 +01:00
Arthur Baars
5ddfb37f29
Merge pull request #7155 from aibaars/ruby-qualified-import
...
Ruby: QL generator: use qualified imports
2021-11-17 12:40:14 +01:00
Arthur Baars
fbb3e8d780
Fix scripts/prepare-db-upgrade.sh
2021-11-17 12:11:20 +01:00
Tom Hvitved
4eacbd1cbe
Ruby: Sync files
2021-11-17 10:49:51 +01:00
Arthur Baars
7c2841f058
Ruby: QL generator: use qualified imports
2021-11-17 10:37:44 +01:00
Tom Hvitved
08c778241d
Ruby: Adopt to changes after rebase
2021-11-17 09:17:32 +01:00
Tom Hvitved
413375992d
Ruby: Flatten nested statements inside desugared for loops
2021-11-17 09:05:37 +01:00
Tom Hvitved
9125b85ff0
Ruby: Add missing QL doc
2021-11-17 09:05:37 +01:00
Tom Hvitved
92453bd2c5
Ruby: Rewrite break_ensure.rb CFG test to use while loops instead of for loops
2021-11-17 09:05:37 +01:00
Tom Hvitved
945bb7459a
Ruby: Update expected test output
2021-11-17 09:05:37 +01:00
Tom Hvitved
a62ad5000b
Ruby: Make isCapturedAccess work with synthesized scopes
2021-11-17 09:05:37 +01:00
Tom Hvitved
135ee0d0c1
Ruby: Add implicit writes for synthesized parameters
2021-11-17 09:05:37 +01:00