====================================================================== Secunia Research 25/08/2008 - Novell iPrint Client ActiveX Control Multiple Buffer Overflows - ====================================================================== Table of Contents Affected Software....................................................1 Severity.............................................................2 Vendor's Description of Software.....................................3 Description of Vulnerability.........................................4 Solution.............................................................5 Time Table...........................................................6 Credits..............................................................7 References...........................................................8 About Secunia........................................................9 Verification........................................................10 ====================================================================== 1) Affected Software * Novell iPrint Client 4.36 NOTE: Other versions may also be affected. ====================================================================== 2) Severity Rating: Highly critical Impact: System compromise Where: Remote ====================================================================== 3) Vendor's Description of Software "Neither you nor your users have time to devote to a complex printing environment. That's why Novell iPrint extends print services securely across multiple networks and operating systems. Using proven Internet technologies, iPrint transforms your Novell Distributed Print Services™ (NDPS®) printers into Net-enabled printers, making all your printing resources instantly accessible with a Web browser and a few mouse clicks". Product Link: http://www.novell.com/products/openenterpriseserver/iprint.html ====================================================================== 4) Description of Vulnerability Secunia Research has discovered multiple vulnerabilities in Novell iPrint Client, which can be exploited by malicious people to compromise a user's system. 1) A boundary error in the Novell iPrint ActiveX control (ienipp.ocx) when handling the "GetDriverFile()" method can be exploited to cause a stack-based buffer overflow by passing an overly long string as the third argument. 2) Two boundary errors in the Novell iPrint ActiveX control (ienipp.ocx) when constructing a URI based on input to the "GetPrinterURLList()" and "GetPrinterURLList2()" methods can be exploited to cause limited stack-based buffer overflows via an overly long string passed as the 1st argument. 3) A boundary error in the Novell iPrint ActiveX control (ienipp.ocx) when handling the "GetFileList()" method can be exploited to cause a heap-based buffer overflow via an overly long argument. 4) Various boundary errors in nipplib.dll when e.g. creating a server reference or interpreting a URI can be exploited to cause stack-based and heap-based buffer overflows by e.g. passing an overly long string as argument to the "GetServerVersion()", "GetResourceList()", or "DeleteResource()" methods provided by the Novell iPrint ActiveX control (ienipp.ocx). 5) Boundary errors in the Novell iPrint ActiveX control (ienipp.ocx) when constructing a URI based on input to the "UploadPrinterDriver()" and "UploadResource()" methods can be exploited to cause a heap-based buffer overflow and limited stack-based buffer overflow via an overly long, specially crafted "uploadPath" argument. 6) A boundary error in the Novell iPrint ActiveX control (ienipp.ocx) when copying "target-frame" option values passed to the "ExecuteRequest()" method can be exploited to cause a limited stack-based buffer overflow via an overly long "target-frame" option value. 7) A boundary error in the Novell iPrint ActiveX control (ienipp.ocx) when handling the "UploadResource()" method can be exploited to cause a stack-based buffer overflow by passing an overly long string as the 7th argument. 8) Three boundary errors in nipplib.dll within the "IppGetDriverSettings()" function can be exploited to cause stack-based buffer overflows by passing an overly long string as the 2nd, 3rd, or 4th argument of the "GetDriverSettings()" method provided by Novell iPrint ActiveX control (ienipp.ocx). 9) A boundary error in the Novell iPrint ActiveX control (ienipp.ocx) when handling the "UploadResourceToRMS" method can be exploited to cause a stack-based buffer overflow by passing an overly long string as the 8th argument. ====================================================================== 5) Solution The vulnerabilities are fixed in version 5.06. ====================================================================== 6) Time Table 18/06/2008 - Vendor notified (1st batch of vulnerabilities) 18/06/2008 - Vendor response. 23/06/2008 - Vendor notified (2nd batch of vulnerabilities) 23/06/2008 - Vendor response. 27/06/2008 - Vendor notified (3rd batch of vulnerabilities) 27/06/2008 - Vendor response. 07/07/2008 - Vendor reports that vulnerabilities have been addressed. 08/07/2008 - Vendor provides new version for testing. 08/07/2008 - Vendor informed that all vulnerabilities are fixed. 22/08/2008 - Vendor issues fixed version for Vista. 25/08/2008 - Public disclosure. ====================================================================== 7) Credits Discovered by Carsten Eiram, Secunia Research. ====================================================================== 8) References The Common Vulnerabilities and Exposures (CVE) project has assigned CVE-2008-2431 for the vulnerabilities. ====================================================================== 9) About Secunia Secunia offers vulnerability management solutions to corporate customers with verified and reliable vulnerability intelligence relevant to their specific system configuration: http://corporate.secunia.com/ Secunia also provides a publicly accessible and comprehensive advisory database as a service to the security community and private individuals, who are interested in or concerned about IT-security. http://secunia.com/ Secunia believes that it is important to support the community and to do active vulnerability research in order to aid improving the security and reliability of software in general: http://corporate.secunia.com/secunia_research/33/ Secunia regularly hires new skilled team members. Check the URL below to see currently vacant positions: http://secunia.com/secunia_vacancies/ Secunia offers a FREE mailing list called Secunia Security Advisories: http://secunia.com/secunia_security_advisories/ ====================================================================== 10) Verification Please verify this advisory by visiting the Secunia website: http://secunia.com/secunia_research/2008-27/ Complete list of vulnerability reports published by Secunia Research: http://secunia.com/secunia_research/ ======================================================================