Protect yourself against future threats.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 =========================================================================== AUSCERT External Security Bulletin Redistribution ESB-2019.3134 Apache Commons Beanutils addresses off-by-default security fix 16 August 2019 =========================================================================== AusCERT Security Bulletin Summary --------------------------------- Product: Apache Commons Beanutils Publisher: Apache Operating System: UNIX variants (UNIX, Linux, OSX) Windows Impact/Access: Execute Arbitrary Code/Commands -- Remote/Unauthenticated Resolution: Patch/Upgrade CVE Names: CVE-2019-10086 CVE-2014-0114 Reference: ASB-2014.0077 ESB-2014.0684 Original Bulletin: https://www.mail-archive.com/announce@apache.org/msg05413.html https://issues.apache.org/jira/browse/BEANUTILS-520 Comment: To be clear, the fix for CVE-2014-0114 was not enabled by default, so CVE-2019-10086 was defined to classify this. With version 1.9.4 the fix is enabled by default. - --------------------------BEGIN INCLUDED TEXT-------------------- CVE-2019-10086. Apache Commons Beanutils does not suppresses the class property in PropertyUtilsBean by default. Severity: Medium Vendor: The Apache Software Foundation Versions Affected: commons-beanutils-1.9.3 and earlier Description: A special BeanIntrospector class was added in version 1.9.2. This can be used to stop attackers from using the class property of Java objects to get access to the classloader. However this protection was not enabled by default. PropertyUtilsBean (and consequently BeanUtilsBean) now disallows class level property access by default, thus protecting against CVE-2014-0114. Mitigation: 1.X users should migrate to 1.9.4. Credit: This was discovered by Melloware (https://melloware.com/). Example: /** * Example displaying the new default behaviour such that * it is not possible to access class level properties utilizing the * BeanUtilsBean, which in turn utilizes the PropertyUtilsBean. */ public void testSuppressClassPropertyByDefault() throws Exception { final BeanUtilsBean bubD = new BeanUtilsBean(); final AlphaBean bean = new AlphaBean(); try { bub.getProperty(bean, "class"); fail("Could access class property!"); } catch (final NoSuchMethodException ex) { // ok } } /** * Example showing how by which one would use to revert to the * behaviour prior to the 1.9.4 release where class level properties were accessible by * the BeanUtilsBean and the PropertyUtilsBean. */ public void testAllowAccessToClassProperty() throws Exception { final BeanUtilsBean bubD new BeanUtilsBean(); bub.getPropertyUtils().removeBeanIntrospector(SuppressPropertiesBeanIntros= pector.SUPPRESS_CLASS); final AlphaBean bean = new AlphaBean(); String result = bub.getProperty(bean, "class"); assertEquals("Class property should have been accessed", "class org.apache.commons.beanutils2.AlphaBean", result); } References. [1] https://issues.apache.org/jira/browse/BEANUTILS-520 [2] http://commons.apache.org/proper/commons-beanutils/ - --------------------------END INCLUDED TEXT-------------------- You have received this e-mail bulletin as a result of your organisation's registration with AusCERT. The mailing list you are subscribed to is maintained within your organisation, so if you do not wish to continue receiving these bulletins you should contact your local IT manager. If you do not know who that is, please send an email to auscert@auscert.org.au and we will forward your request to the appropriate person. NOTE: Third Party Rights This security bulletin is provided as a service to AusCERT's members. As AusCERT did not write the document quoted above, AusCERT has had no control over its content. The decision to follow or act on information or advice contained in this security bulletin is the responsibility of each user or organisation, and should be considered in accordance with your organisation's site policies and procedures. AusCERT takes no responsibility for consequences which may arise from following or acting on information or advice contained in this security bulletin. NOTE: This is only the original release of the security bulletin. It may not be updated when updates to the original are made. If downloading at a later date, it is recommended that the bulletin is retrieved directly from the author's website to ensure that the information is still current. Contact information for the authors of the original document is included in the Security Bulletin above. If you have any questions or need further information, please contact them directly. Previous advisories and external security bulletins can be retrieved from: https://www.auscert.org.au/bulletins/ =========================================================================== Australian Computer Emergency Response Team The University of Queensland Brisbane Qld 4072 Internet Email: auscert@auscert.org.au Facsimile: (07) 3365 7031 Telephone: (07) 3365 4417 (International: +61 7 3365 4417) AusCERT personnel answer during Queensland business hours which are GMT+10:00 (AEST). On call after hours for member emergencies only. =========================================================================== -----BEGIN PGP SIGNATURE----- Comment: http://www.auscert.org.au/render.html?it=1967 iQIVAwUBXVX3k2aOgq3Tt24GAQhPxg/6AxO/+lh56DtWen7VaufJWqoVPRz5m4v3 PRAeoOJYObzJAkQmRqlwbFGVYSZRWrHE4enEv1xjuXdi1NgC4XsbqWY21kCafH51 UAS2T3cjWbqRfGET3tbi0H8rHXNkqewEmxkfAFjKVDFKLTt1RASj09NN+WFjWuWG rIO3D7x+aKWXqpDHIZnRC/SehxRX05pYpklVL2OmGGwSFugTXJwYPP1PKAHU+r0C iHS8KCBBlAp10H7vk7zwAVIJ+RMMfGCAMKgp17AA90qDRq+B+AfMrSrgwMTprLEF WmOWRddV8xZTo/KRcpkihaTh1Ocx7qBjU/Va6ZizHH0v6LkNKNjKv7q4eGedO437 LQhZwtlLsLPIrE21bVQEIkYA9EklmgYPE0uasQvCtgpwNTMivW1ZioU7QdHncFEL wkDzz9L7cbt4vns1vjlZL3L4y+wOHRgzDkAt8FFNrO5GHOSRPOxnsgmtFHuT+syu WQj9jq7nRBseTlRLiSTrjnrp24BJugRxYbMkhVnE0Nm8fdqEpJYbwfoFKm8aV4P4 9wZr3Ylqq2jEdcG9teNzWGFdzdtWVwpHKeTQm/BC7RrXCbCHQvNI8FgFFX8gzcGz dDnFWijTZad85qOy744JGUywb4WSdoN2+Cqi+IoxUGVzZ1aVfF6+hn89P6AdmUE4 ZRPDHYCG8G8= =JCMd -----END PGP SIGNATURE-----