@@ -126,47 +126,14 @@ private class ShellLike extends DataFlow::Node {
126126}
127127
128128private string getASudoCommand ( ) {
129- result = "sudo" or
130- result = "sudo_root" or
131- result = "su" or
132- result = "sudoedit" or
133- result = "doas" or
134- result = "access" or
135- result = "vsys" or
136- result = "userv" or
137- result = "sus" or
138- result = "super" or
139- result = "priv" or
140- result = "calife" or
141- result = "ssu" or
142- result = "su1" or
143- result = "op" or
144- result = "sudowin" or
145- result = "sudown" or
146- result = "chroot" or
147- result = "fakeroot" or
148- result = "fakeroot-sysv" or
149- result = "fakeroot-tcp" or
150- result = "fstab-decode" or
151- result = "jrunscript" or
152- result = "nohup" or
153- result = "parallel" or
154- result = "find" or
155- result = "pkexec" or
156- result = "sg" or
157- result = "sem" or
158- result = "runcon" or
159- result = "runuser" or
160- result = "stdbuf" or
161- result = "system" or
162- result = "timeout" or
163- result = "xargs" or
164- result = "time" or
165- result = "awk" or
166- result = "gawk" or
167- result = "mawk" or
168- result = "nawk" or
169- result = "git"
129+ result =
130+ [
131+ "sudo" , "sudo_root" , "priv" , "calife" , "ssu" , "su1" , "op" , "sudowin" , "sudown" , "chroot" ,
132+ "fakeroot" , "fakeroot-sysv" , "su" , "fakeroot-tcp" , "fstab-decode" , "jrunscript" , "nohup" ,
133+ "parallel" , "find" , "pkexec" , "sg" , "sem" , "runcon" , "sudoedit" , "runuser" , "stdbuf" ,
134+ "system" , "timeout" , "xargs" , "time" , "awk" , "gawk" , "mawk" , "nawk" , "doas" , "git" , "access" ,
135+ "vsys" , "userv" , "sus" , "super"
136+ ]
170137}
171138
172139/**
@@ -213,31 +180,12 @@ private predicate isSudoOrSimilar(DataFlow::Node node) {
213180}
214181
215182private string getAShellCommand ( ) {
216- result = "bash" or
217- result = "sh" or
218- result = "sh.distrib" or
219- result = "rbash" or
220- result = "dash" or
221- result = "zsh" or
222- result = "csh" or
223- result = "tcsh" or
224- result = "fish" or
225- result = "pwsh" or
226- result = "elvish" or
227- result = "oh" or
228- result = "ion" or
229- result = "ksh" or
230- result = "rksh" or
231- result = "tksh" or
232- result = "mksh" or
233- result = "nu" or
234- result = "oksh" or
235- result = "osh" or
236- result = "shpp" or
237- result = "xiki" or
238- result = "xonsh" or
239- result = "yash" or
240- result = "env"
183+ result =
184+ [
185+ "bash" , "sh" , "elvish" , "oh" , "ion" , "ksh" , "rksh" , "tksh" , "mksh" , "nu" , "oksh" , "osh" ,
186+ "sh.distrib" , "shpp" , "xiki" , "xonsh" , "yash" , "env" , "rbash" , "dash" , "zsh" , "csh" , "tcsh" ,
187+ "fish" , "pwsh"
188+ ]
241189}
242190
243191/**
@@ -252,12 +200,7 @@ private predicate isShell(DataFlow::Node node) {
252200}
253201
254202private string getAnInterpreterName ( ) {
255- result = "python" or
256- result = "php" or
257- result = "ruby" or
258- result = "perl" or
259- result = "node" or
260- result = "nodejs"
203+ result = [ "python" , "php" , "ruby" , "perl" , "node" , "nodejs" ]
261204}
262205
263206/**
0 commit comments