{"id":4571,"date":"2026-09-04T18:46:36","date_gmt":"2026-09-04T10:46:36","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-66902"},"modified":"2026-09-04T18:46:36","modified_gmt":"2026-09-04T10:46:36","slug":"cve-2026-66902","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-66902","title":{"rendered":"CVE-2026-66902 [CRITICAL] &#8211; Google::Auth versions before 0.06 for Perl run a command named in an external_account cred"},"content":{"rendered":"<p>Google::Auth versions before 0.06 for Perl run a command named in an external_account credentials JSON via an ungated system call.<\/p>\n<p>The Pluggable subclass reads credential_source.executable.command from the credentials JSON and runs it as `system($command)`, a single argument call that passes the whole string to \/bin\/sh -c. The executable&#8217;s environment_variables map from the same JSON is copied into %ENV first. No opt-in gate guards the call. make_creds selects the Pluggable subclass whenever credential_source.executable is present, so the path is reached from the standard Application Default Credentials flow, including a &#8220;type&#8221;: &#8220;external_account&#8221; configuration read from the file named by GOOGLE_APPLICATION_CREDENTIALS. Configurations without credential_source.executable do not select this subclass and do not reach the call.<\/p>\n<p>Any caller that builds credentials from a configuration it does not fully control runs the embedded command with the privileges of the application process.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Google::Auth versions before 0.06 for Perl run a command named in an external_account credentials JSON via an ungated system call.<\/p>\n<p>The Pluggable subclass reads credential_source.executable.command fr<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-4571","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/4571","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4571"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4571"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4571"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}