Commit Graph

291 Commits

Author SHA1 Message Date
Mathias Vorreiter Pedersen
b2cf155ff5 PS: Define pre-return node and implicit-wrapping nodes using the script block instead of the individual elements. 2025-03-28 19:35:41 +00:00
Mathias Vorreiter Pedersen
ee8c586200 PS: Use the new library to calculate returned expressions. 2025-03-28 19:34:50 +00:00
Mathias Vorreiter Pedersen
a9861e13e9 PS: Add a library that calculated escaping values much more efficiently using the forward/reverse pruning technique. 2025-03-28 19:33:23 +00:00
Mathias Vorreiter Pedersen
f85767f47e PS: add a super class for all loop-related CFG nodes. 2025-03-28 19:32:36 +00:00
Mathias Vorreiter Pedersen
19454a50e9 PS: Small additions to the CFG classes and a small bugfix. 2025-03-28 19:32:07 +00:00
Mathias Vorreiter Pedersen
18d94f2078 PS: Don't include the variable in the IPA definition for variable accesses. 2025-03-28 19:31:15 +00:00
Mathias Vorreiter Pedersen
2da8da0777 PS: Add helper predicates for if statements. 2025-03-28 19:30:16 +00:00
Mathias Vorreiter Pedersen
ee0a21e67f PS: Make child mapping classes private. 2025-03-28 19:29:45 +00:00
Mathias Vorreiter Pedersen
7b9a41aa92 PS: Handle this parameters in a few more places. 2025-03-27 18:03:06 +00:00
Mathias Vorreiter Pedersen
dcb98ab5a1 PS: Don't include the this parameter in getParameter. 2025-03-27 18:01:28 +00:00
Mathias Vorreiter Pedersen
0fc57789bf PS: Accept dataflow/taint-tracking/type-tracking regressions. 2025-03-27 16:01:42 +00:00
Mathias Vorreiter Pedersen
c840f86707 PS: Accept CFG test changes. 2025-03-27 16:01:41 +00:00
Mathias Vorreiter Pedersen
655d80ee7b PS: Repair tests and accept test changes in syntax tests. 2025-03-27 16:01:39 +00:00
Mathias Vorreiter Pedersen
7551cce537 PS: Make API graphs compile again. There is still some TODOs here, but at least it compiles. 2025-03-27 16:01:38 +00:00
Mathias Vorreiter Pedersen
8092345fee PS: Make type-tracking and taint-tracking compile again. 2025-03-27 16:01:36 +00:00
Mathias Vorreiter Pedersen
8f9bc1e4b2 PS: Make SSA compile again. 2025-03-27 16:01:35 +00:00
Mathias Vorreiter Pedersen
c2e24ea3a4 PS: Make CFG construction compile again. 2025-03-27 16:01:33 +00:00
Mathias Vorreiter Pedersen
9efc3ec380 PS: Make dataflow compile again. 2025-03-27 16:01:30 +00:00
Mathias Vorreiter Pedersen
cc13922206 PS: Make the experimental query compile again. 2025-03-27 16:01:28 +00:00
Mathias Vorreiter Pedersen
171f5ca698 PS: Inside a process block the name of a pipeline parameter actually refers to the individual elements in the pipeline. Add a synthesized variable access that represents this. 2025-03-27 16:01:26 +00:00
Mathias Vorreiter Pedersen
9f4d1c624d PS: PowerShell doesn't have a notion of true, false, null, etc. In the extracted AST these are just variables with special names. We insert synthesized AST elements that represent these special variables. 2025-03-27 16:01:24 +00:00
Mathias Vorreiter Pedersen
7adb020977 PS: Remove arguments that are just names for a named argument. 2025-03-27 16:01:23 +00:00
Mathias Vorreiter Pedersen
3bb6021cb2 PS: Remove the CmdExpr AST elements and synthesize StmtExpr instead where needed. 2025-03-27 16:01:21 +00:00
Mathias Vorreiter Pedersen
8eb5e65ac4 PS: Synthesize Function and Type classes instead of relying on the statement that defines them. 2025-03-27 16:01:20 +00:00
Mathias Vorreiter Pedersen
17661342f8 PS: expr-to-stmt conversions. 2025-03-27 16:01:18 +00:00
Mathias Vorreiter Pedersen
0b4a7f9436 PS: Synthesize a simpler notion of parameters. 2025-03-27 16:01:17 +00:00
Mathias Vorreiter Pedersen
5bc0a263ec PS: A call to set-variable is an explicit assignment. 2025-03-27 16:01:15 +00:00
Mathias Vorreiter Pedersen
faa94735bf PS: Add an implicit this parameter to all methods. 2025-03-27 16:01:14 +00:00
Mathias Vorreiter Pedersen
31f14ba99a PS: Add synthesis framework for cleaning up the AST. 2025-03-27 16:01:11 +00:00
Mathias Vorreiter Pedersen
0dd756d72d PS: Add support for variables. 2025-03-27 16:01:10 +00:00
Mathias Vorreiter Pedersen
11c84ccaf4 PS: Add the IPA type representing the AST. 2025-03-27 16:01:09 +00:00
Mathias Vorreiter Pedersen
b52c6ea4ba PS: Add control-flow node version of all the user-facing ast classes. 2025-03-27 16:01:07 +00:00
Mathias Vorreiter Pedersen
a207c8008b PS: Add 'raw' AST classes coming directly from the extractor. 2025-03-27 16:01:06 +00:00
Mathias Vorreiter Pedersen
665202195c PS: Add user-facing AST classes. 2025-03-27 16:01:04 +00:00
Mathias Vorreiter Pedersen
d79eb013c8 PS: Delete the old AST. 2025-03-26 18:00:10 +00:00
Mathias Vorreiter Pedersen
44e4e3eb54 PS: Extract more powershell files and fix off-by-one error in locations. 2025-03-25 16:59:28 +00:00
Gabe Stocco
b018fb9c8f Add gitignore for build artifacts from powershell extractor 2025-02-26 12:40:27 -08:00
Gabe Stocco
43cdff9725 Update dependencies.
Update projects to use NET 9.0 (required by System.Management 7.5 and later)
2025-02-26 12:36:35 -08:00
Gabe Stocco
ee2688fbcb Update project to net 8. 2025-02-26 12:30:05 -08:00
Mathias Vorreiter Pedersen
abc23e038a Merge branch 'main' into revert-ps-module-extraction 2025-02-26 12:26:17 +00:00
Mathias Vorreiter Pedersen
29c11a4a5e PS: Add upgrade and downgrade scripts. 2025-02-24 14:23:49 +00:00
Mathias Vorreiter Pedersen
4bfd6fd345 PS: Revert psmodule path file extraction. 2025-02-24 14:23:46 +00:00
Mathias Vorreiter Pedersen
1978e10c05 PS: Remove extractor option to skip psmodule extraction. 2025-02-24 14:23:35 +00:00
Mathias Vorreiter Pedersen
6909792627 PS: Also get rid of an easy-to-fix SSA warning. 2025-02-21 12:22:06 +00:00
Mathias Vorreiter Pedersen
efb43bca3e PS: Match the changes from #18696. 2025-02-21 12:16:00 +00:00
Mathias Vorreiter Pedersen
3dbe7f4fa6 PS: Add the type model generation script and add a short readme. 2025-02-19 14:10:28 +00:00
Mathias Vorreiter Pedersen
6ef09412a9 PS: Add .NET and PowerShell SDK type models. 2025-02-19 00:05:51 +00:00
Dilan Bhalla
414feffcaa microsoft-public -> public 2025-02-07 10:09:34 -08:00
Dilan Bhalla
ba97b92148 microsoft public namespace edit 2025-02-06 23:41:09 -08:00
dilanbhalla
c749c19db4 Update CommandInjection.ql 2025-02-06 12:04:51 -08:00