CVE-2012-3546 Authentication Bypass in Apache Tomcat

Medium 4.3 Published Updated

Remote attackers can bypass security constraints in Apache Tomcat when FORM authentication is enabled by manipulating the URI.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2012-3546?

CVE-2012-3546 is a medium-severity authentication bypass vulnerability in Apache Tomcat, published on 19 Dec 2012. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

org/apache/catalina/realm/RealmBase.java in Apache Tomcat 6.x before 6.0.36 and 7.x before 7.0.30, when FORM authentication is used, allows remote attackers to bypass security-constraint checks by leveraging a previous setUserPrincipal call and then placing /j_security_check at the end of a URI.

Weakness: CWE-264

Which versions are affected by CVE-2012-3546?

4 open source packages ship an affected version, including org.apache.tomcat:tomcat. It affects 1 product.

PackageAffectedFixed in
org.apache.tomcat:tomcat MavenFrom 6.0.06.0.36
org.apache.tomcat:tomcat MavenFrom 6.0.06.0.36
org.apache.tomcat:tomcat MavenFrom 7.0.07.0.30
org.apache.tomcat:tomcat MavenFrom 7.0.07.0.30
Linux distribution packages (36)
jbossas Red Hat:jboss_enterprise_application_platform:4.3.0::el4All versions0:4.3.0-11.GA_CP10_patch_02.1.ep1.el4
jbossas-client Red Hat:jboss_enterprise_application_platform:4.3.0::el4All versions0:4.3.0-11.GA_CP10_patch_02.1.ep1.el4
jbossas Red Hat:jboss_enterprise_application_platform:4.3.0::el5All versions0:4.3.0-11.GA_CP10_patch_02.2.ep1.el5
jbossas-client Red Hat:jboss_enterprise_application_platform:4.3.0::el5All versions0:4.3.0-11.GA_CP10_patch_02.2.ep1.el5
jbossweb Red Hat:jboss_enterprise_application_platform:6::el5All versions0:7.0.17-3.Final_redhat_2.ep6.el5
jbossweb-lib Red Hat:jboss_enterprise_application_platform:6::el5All versions0:7.0.17-3.Final_redhat_2.ep6.el5
jbossweb Red Hat:jboss_enterprise_application_platform:6::el6All versions0:7.0.17-3.Final_redhat_2.ep6.el6
jbossweb-lib Red Hat:jboss_enterprise_application_platform:6::el6All versions0:7.0.17-3.Final_redhat_2.ep6.el6
tomcat5 Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-admin-webapps Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-common-lib Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-jasper Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-jasper-eclipse Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-jasper-javadoc Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-jsp-2.0-api Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-jsp-2.0-api-javadoc Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-parent Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-server-lib Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-servlet-2.4-api Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-servlet-2.4-api-javadoc Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat5-webapps Red Hat:jboss_enterprise_web_server:1::el5All versions0:5.5.33-31_patch_08.ep5.el5
tomcat6 Red Hat:jboss_enterprise_web_server:1::el5All versions0:6.0.32-28_patch_08.ep5.el5
tomcat6-admin-webapps Red Hat:jboss_enterprise_web_server:1::el5All versions0:6.0.32-28_patch_08.ep5.el5
tomcat6-docs-webapp Red Hat:jboss_enterprise_web_server:1::el5All versions0:6.0.32-28_patch_08.ep5.el5
tomcat6-el-1.0-api Red Hat:jboss_enterprise_web_server:1::el5All versions0:6.0.32-28_patch_08.ep5.el5
tomcat6-javadoc Red Hat:jboss_enterprise_web_server:1::el5All versions0:6.0.32-28_patch_08.ep5.el5
tomcat6-jsp-2.1-api Red Hat:jboss_enterprise_web_server:1::el5All versions0:6.0.32-28_patch_08.ep5.el5
tomcat6-lib Red Hat:jboss_enterprise_web_server:1::el5All versions0:6.0.32-28_patch_08.ep5.el5
tomcat6-log4j Red Hat:jboss_enterprise_web_server:1::el5All versions0:6.0.32-28_patch_08.ep5.el5
tomcat6-servlet-2.5-api Red Hat:jboss_enterprise_web_server:1::el5All versions0:6.0.32-28_patch_08.ep5.el5
tomcat6-webapps Red Hat:jboss_enterprise_web_server:1::el5All versions0:6.0.32-28_patch_08.ep5.el5
tomcat5 Red Hat:jboss_enterprise_web_server:1::el6All versions0:5.5.33-34_patch_08.ep5.el6
tomcat5-admin-webapps Red Hat:jboss_enterprise_web_server:1::el6All versions0:5.5.33-34_patch_08.ep5.el6
tomcat5-common-lib Red Hat:jboss_enterprise_web_server:1::el6All versions0:5.5.33-34_patch_08.ep5.el6
tomcat5-jasper Red Hat:jboss_enterprise_web_server:1::el6All versions0:5.5.33-34_patch_08.ep5.el6
tomcat5-jasper-eclipse Red Hat:jboss_enterprise_web_server:1::el6All versions0:5.5.33-34_patch_08.ep5.el6

Products include Apache Tomcat.

How do I fix CVE-2012-3546?

Upgrade org.apache.tomcat:tomcat to a fixed version for your release line: 6.0.36 or 7.0.30.

Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.

Is CVE-2012-3546 being exploited?

There is no known exploitation of CVE-2012-3546 in the wild and no public exploit code.

All Apache Tomcat vulnerabilities

Sources

Also known as GHSA-jgm2-m5cg-f66g, RHSA-2013:0005, RHSA-2013:0147, RHSA-2013:0158, RHSA-2013:0164, RHSA-2013:0641.

Is CVE-2012-3546 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free