WARNING: Got redirects in assignment: %s [(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)] WARNING: Got redirects in assignment: %s [(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)] WARNING: Got redirects in assignment: %s [(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)] (List (AndOr OP_OR_IF (Com {[LIT_OTHER "["]} {[LIT_CHARS -x]} {[LIT_CHARS /proc/self/exe]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "This script cannot be run on your system"]]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), > ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (If (Com {[LIT_OTHER "["]} {[VarSub #]} {[LIT_CHARS -eq]} {[LIT_CHARS 0]} {[LIT_OTHER "]"]}) (= scope= flags=0 words=[] bindings=[('pid', {[ComSub (Pipeline (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS ls]} {[LIT_CHARS -l]} {[LIT_CHARS /proc/] [LIT_OTHER "*"] [LIT_CHARS /exe]}) (Com {[LIT_CHARS sed]} {[SQ ]}) (While (Com {[LIT_CHARS read]} {[LIT_CHARS p]}) (List (AndOr OP_AND_IF (Pipeline (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /proc/] [VarSub p] [LIT_CHARS /cmdline]} 0) (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS xargs]} {[LIT_CHARS -0]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS -q]} {[LIT_CHARS --]} {[LIT_CHARS --type] [LIT_OTHER "="]}) ) (Com {[LIT_CHARS continue]}) ) (Com {[LIT_CHARS echo]} {[DQ [VarSub p]]}) (Com {[LIT_CHARS break]}) ) ) )]})]) (ElseTrue) (= scope= flags=0 words=[] bindings=[('pid', {[DQ [VarSub 1]]})]) ) (AndOr OP_OR_IF (Pipeline (Com {[LIT_CHARS ls]} {[LIT_CHARS -l]} {[DQ [LIT_CHARS /proc/][VarSub pid][LIT_CHARS /exe]]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) (Com {[LIT_CHARS egrep]} {[LIT_CHARS -q]} {[SQ ]}) ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Cannot find any running instance of Chrome"]]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), > ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (While (Com {[LIT_OTHER ":"]}) (List (= scope= flags=0 words=[] bindings=[('ppid', {[DQ [ComSub (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS ps]} {[LIT_CHARS h]} {[LIT_CHARS --format]} {[LIT_CHARS ppid]} {[LIT_CHARS --pid]} {[DQ [VarSub pid]]})]]})]) (AndOr OP_OR_IF (Com {[LIT_OTHER "["]} {[LIT_CHARS -n]} {[DQ [VarSub ppid]]} {[LIT_OTHER "]"]}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Cannot find any running instance of Chrome"]]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), > ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (AndOr OP_AND_IF (Pipeline (Com {[LIT_CHARS ls]} {[LIT_CHARS -l]} {[DQ [LIT_CHARS /proc/][VarSub ppid][LIT_CHARS /exe]]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) (Com {[LIT_CHARS egrep]} {[LIT_CHARS -q]} {[SQ ]}) ) (AndOr OP_OR_IF (= scope= flags=0 words=[] bindings=[('pid', {[DQ [VarSub ppid]]})]) (Com {[LIT_CHARS break]}) ) ) ) ) (AndOr OP_AND_IF (Pipeline (Com {[LIT_CHARS xargs]} {[LIT_CHARS -0]} < (FilenameRedirectNode filename={[LIT_CHARS /proc/] [VarSub p] [LIT_CHARS /cmdline]} 0), (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) (Com {[LIT_CHARS grep]} {[LIT_CHARS -q]} {[LIT_CHARS --]} {[LIT_CHARS --type] [LIT_OTHER "="]}) ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Cannot find any running instance of Chrome"]]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), > ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (FunctionDef identify [] (List (= scope= flags=0 words=[{[LIT_CHARS child]}, {[LIT_CHARS cmd]}, {[LIT_CHARS foundzygote]}, {[LIT_CHARS plugin]}, {[LIT_CHARS seccomp]}, {[LIT_CHARS type]}] bindings=[]) (= scope= flags=0 words=[] bindings=[('foundzygote', {[LIT_CHARS 0]})]) (For child [{[ComSub (Com {[LIT_CHARS ps]} {[LIT_CHARS h]} {[LIT_CHARS --format]} {[LIT_CHARS pid]} {[LIT_CHARS --ppid]} {[VarSub 1]})]}]) (List (= scope= flags=0 words=[] bindings=[('cmd', {[DQ [ComSub (Pipeline (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /proc/] [VarSub child] [LIT_CHARS /cmdline]} 0)]{[LIT_CHARS xargs]} {[LIT_CHARS -0]}) (Com {[LIT_CHARS sed]} {[SQ ]}) )]]})]) (= scope= flags=0 words=[] bindings=[('type', {[DQ [ComSub (Pipeline (Com {[LIT_CHARS echo]} {[DQ [VarSub cmd]]}) (Com {[LIT_CHARS sed]} {[SQ ]}) )]]})]) (Case to_match={[VarSub type]}, pat_word_list=[[{[SQ ]}], [{[LIT_CHARS extension]}], [{[LIT_CHARS plugin]}], [{[LIT_CHARS renderer]}, {[LIT_CHARS worker]}, {[LIT_CHARS gpu-process]}], [{[LIT_CHARS zygote]}], [{[LIT_OTHER "*"]}]] (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Process "][VarSub child][LIT_CHARS " is part of the browser"]]}) (Com {[LIT_CHARS identify]} {[DQ [VarSub child]]}) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Process "][VarSub child][LIT_CHARS " is an extension"]]}) (List (= scope= flags=0 words=[] bindings=[('plugin', {[DQ [ComSub (Pipeline (Com {[LIT_CHARS echo]} {[DQ [VarSub cmd]]}) (Com {[LIT_CHARS sed]} {[SQ ]}) )]]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Process "][VarSub child][LIT_CHARS " is a "][\ LIT_ESCAPED_CHAR "\\\""][VarSub plugin][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS " plugin"]]}) (Com {[LIT_CHARS identify]} {[DQ [VarSub child]]}) ) (List (= scope= flags=0 words=[] bindings=[('seccomp', {[DQ [ComSub (Pipeline (Com {[LIT_CHARS ps]} {[LIT_CHARS h]} {[LIT_CHARS --format]} {[LIT_CHARS pid]} {[LIT_CHARS --ppid]} {[VarSub child]}) (Com {[LIT_CHARS xargs]}) )]]})]) (If (Com {[LIT_OTHER "["]} {[LIT_CHARS -d]} {[LIT_CHARS /proc/] [VarSub child] [LIT_CHARS /cwd/.]} {[LIT_OTHER "]"]}) (If (AndOr OP_AND_IF (Com {[LIT_OTHER "["]} {[ComSub (Pipeline (Com {[LIT_CHARS echo]} {[DQ [VarSub seccomp]]}) (Com {[LIT_CHARS wc]} {[LIT_CHARS -w]}) )]} {[LIT_CHARS -eq]} {[LIT_CHARS 1]} {[LIT_OTHER "]"]}) (AndOr OP_AND_IF (Com {[LIT_OTHER "["]} {[ComSub (Pipeline (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS ls]} {[LIT_CHARS /proc/] [VarSub seccomp] [LIT_CHARS /task]}) (Com {[LIT_CHARS wc]} {[LIT_CHARS -w]}) )]} {[LIT_CHARS -eq]} {[LIT_CHARS 1]} {[LIT_OTHER "]"]}) (Pipeline (Com {[LIT_CHARS ls]} {[LIT_CHARS -l]} {[LIT_CHARS /proc/] [VarSub seccomp] [LIT_CHARS /exe]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) (Com {[LIT_CHARS egrep]} {[LIT_CHARS -q]} {[SQ ]}) ) ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Process "][VarSub child][LIT_CHARS " is a sandboxed "][VarSub type][LIT_CHARS " (seccomp helper:"]]} {[DQ [VarSub seccomp][LIT_CHARS ")"]]}) (ElseTrue) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Process "][VarSub child][LIT_CHARS " is a "][VarSub type]]}) (Com {[LIT_CHARS identify]} {[DQ [VarSub child]]}) ) ) (ElseTrue) (If (Com {[LIT_OTHER "["]} {[ComSub (Pipeline (Com {[LIT_CHARS echo]} {[DQ [VarSub seccomp]]}) (Com {[LIT_CHARS wc]} {[LIT_CHARS -w]}) )]} {[LIT_CHARS -eq]} {[LIT_CHARS 1]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Process "][VarSub child][LIT_CHARS " is a setuid sandboxed "][VarSub type][LIT_CHARS " (seccomp"]]} {[DQ [LIT_CHARS "helper: "][VarSub seccomp][LIT_CHARS ")"]]}) (ElseTrue) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Process "][VarSub child][LIT_CHARS " is a "][VarSub type][LIT_CHARS "; setuid sandbox is active"]]}) (Com {[LIT_CHARS identify]} {[DQ [VarSub child]]}) ) ) ) ) (List (= scope= flags=0 words=[] bindings=[('foundzygote', {[LIT_CHARS 1]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Process "][VarSub child][LIT_CHARS " is the zygote"]]}) (Com {[LIT_CHARS identify]} {[DQ [VarSub child]]}) ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Process "][VarSub child][LIT_CHARS " is of unknown type "][\ LIT_ESCAPED_CHAR "\\\""][VarSub type][\ LIT_ESCAPED_CHAR "\\\""]]}) (Com {[LIT_CHARS identify]} {[DQ [VarSub child]]}) ) ) ) ) (Com {[LIT_CHARS return]} {[VarSub foundzygote]}) ) ) (FunctionDef cmpcmdline [] (List (= scope= flags=0 words=[] bindings=[('pida', {[DQ [VarSub 1]]})]) (= scope= flags=0 words=[] bindings=[('pidb', {[DQ [VarSub 2]]})]) (Com {[LIT_CHARS shift]}) (Com {[LIT_CHARS shift]}) (= scope= flags=0 words=[] bindings=[('super', {[Array {[DQ [VarSub @]]} {[ComSub (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /proc/] [DQ [VarSub pida]] [LIT_CHARS /cmdline]} 0)]{[LIT_CHARS xargs]} {[LIT_CHARS -0]})]}]})]) (= scope= flags=0 words=[] bindings=[('sub', {[Array {[ComSub (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /proc/] [DQ [VarSub pidb]] [LIT_CHARS /cmdline]} 0)]{[LIT_CHARS xargs]} {[LIT_CHARS -0]})]}]})]) (= scope= flags=0 words=[{[LIT_CHARS i]}, {[LIT_CHARS j]}] bindings=[]) (AndOr OP_AND_IF (Com {[LIT_OTHER "["]} {[VarSub sub bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_STAR "*"}}) transform_ops=[(#len)]]} {[LIT_CHARS -eq]} {[LIT_CHARS 0]} {[LIT_CHARS -o]} {[VarSub super bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_STAR "*"}}) transform_ops=[(#len)]]} {[LIT_CHARS -eq]} {[LIT_CHARS 0]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]}) ) (For i [{[ComSub (Com {[LIT_CHARS seq]} {[LIT_CHARS 0]} {[ArithSub {A2 AS_OP_MINUS {A Atom NODE_ARITH_WORD {[VarSub sub bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_STAR "*"}}) transform_ops=[(#len)]]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}}}]})]}]) (List (For j [{[ComSub (Com {[LIT_CHARS seq]} {[LIT_CHARS 0]} {[ArithSub {A2 AS_OP_MINUS {A Atom NODE_ARITH_WORD {[VarSub super bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_STAR "*"}}) transform_ops=[(#len)]]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}}}]})]}]) (AndOr OP_AND_IF (Com {[LIT_OTHER "["]} {[DQ [LIT_CHARS x][VarSub sub bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub i]}})]]} {[LIT_OTHER "="]} {[DQ [LIT_CHARS x][VarSub super bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub j]}})]]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS continue]} {[LIT_CHARS 2]}) ) ) (Com {[LIT_CHARS return]} {[LIT_CHARS 1]}) ) ) (Com {[LIT_CHARS return]} {[LIT_CHARS 0]}) ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "The browser's main pid is: "][VarSub pid]]}) (If (Com {[LIT_CHARS identify]} {[DQ [VarSub pid]]}) (For i [{[ComSub (Com {[LIT_CHARS ps]} {[LIT_CHARS h]} {[LIT_CHARS --format]} {[LIT_CHARS pid]} {[LIT_CHARS --ppid]} {[LIT_CHARS 1]})]}]) (If (Com {[LIT_CHARS cmpcmdline]} {[DQ [VarSub pid]]} {[DQ [VarSub i]]} {[DQ [LIT_CHARS "--type=zygote"]]}) (List (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} {[DQ [LIT_CHARS "Process "][VarSub i][LIT_CHARS " is the zygote"]]}) (AndOr OP_OR_IF (Com {[LIT_OTHER "["]} {[LIT_CHARS -d]} {[LIT_CHARS /proc/] [VarSub i] [LIT_CHARS /cwd/.]} {[LIT_OTHER "]"]}) (Com {[LIT_CHARS echo]} {[LIT_CHARS -n]} {[DQ [LIT_CHARS "; setuid sandbox is active"]]}) ) (Com {[LIT_CHARS echo]}) (Com {[LIT_CHARS identify]} {[DQ [VarSub i]]}) ) ) ) ) )