Skip to content

Persisting credentials on boolean GitHub expressions #411

Answered by woodruffw
nicholasjng asked this question in Q&A
Discussion options

You must be logged in to vote

This is a great question, thank you!

Yeah, this points to a basic (but significant) limitation in the expressivity of zizmor's analyses: we often run into states where a value is T | expression, where expression is something potentially non-trivial.

Some of the audits specialize this a bit (in template-injection for example, we walk the expression's AST to figure out if it's "safe" to expand), but other audits (like artipacked) simply give up and either ignore or blindly flag something depending on the context:

match with.get("persist-credentials") {
Some(EnvValue::Boolean(false)) => continue,
Some(EnvValue::Bo…

Replies: 1 comment 1 reply

Comment options

You must be logged in to vote
1 reply
@nicholasjng
Comment options

Answer selected by nicholasjng
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
2 participants