Skip to content

Commit 478878c

Browse files
authored
Merge pull request #22242 from MathiasVP/add-reg-flow-sources
C++: Add flow sources for `winreg.h`
2 parents 9d1a8a7 + 034a90b commit 478878c

5 files changed

Lines changed: 265 additions & 113 deletions

File tree

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
---
2+
category: minorAnalysis
3+
---
4+
* Added flow source models for `RegQueryValue` and related functions from the `winreg.h` Windows header.

cpp/ql/lib/ext/Windows.model.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,17 @@ extensions:
3434
- ["", "", False, "HttpReceiveHttpRequest", "", "", "Argument[*3]", "remote", "manual"]
3535
- ["", "", False, "HttpReceiveRequestEntityBody", "", "", "Argument[*3]", "remote", "manual"]
3636
- ["", "", False, "HttpReceiveClientCertificate", "", "", "Argument[*3]", "remote", "manual"]
37+
# winreg.h
38+
- ["", "", False, "RegQueryValueA", "", "", "Argument[*2]", "local", "manual"]
39+
- ["", "", False, "RegQueryValueExA", "", "", "Argument[*4]", "local", "manual"]
40+
- ["", "", False, "RegQueryValueW", "", "", "Argument[*2]", "local", "manual"]
41+
- ["", "", False, "RegQueryValueExW", "", "", "Argument[*4]", "local", "manual"]
42+
- ["", "", False, "RegGetValueA", "", "", "Argument[*5]", "local", "manual"]
43+
- ["", "", False, "RegGetValueW", "", "", "Argument[*5]", "local", "manual"]
44+
# TODO: Once we support access paths at sources we should also mark Argument[*1].Field[*ve_valueptr]
45+
- ["", "", False, "RegQueryMultipleValuesA", "", "", "Argument[*3]", "local", "manual"]
46+
# TODO: Once we support access paths at sources we should also mark Argument[*1].Field[*ve_valueptr]
47+
- ["", "", False, "RegQueryMultipleValuesW", "", "", "Argument[*3]", "local", "manual"]
3748
- addsTo:
3849
pack: codeql/cpp-all
3950
extensible: summaryModel

0 commit comments

Comments
 (0)