Common Papercut Security Questions
Does PaperCut have a print security best practice checklist?
Absolutely! We have pooled our knowledge and created a comprehensive Print Security whitepaper that will help you not only make the most of PaperCut’s security features, but also help you secure your entire print infrastructure. Take a look at: PaperCut Security white paper
Does PaperCut store any passwords?
User authentication is performed by the operating system - usually via a directory service such as Active Directory or LDAP. PaperCut does not store any user passwords and instead interrogates the directory service in real-time. Caching or storing passwords is regarded as a security risk. The only exceptions to this rule are the built-in admin user account and PaperCut internal accounts.
The built-in admin password is stored in a one-way salted hashed format in the server.properties file. This account is kept separate from the directory user accounts ensuring that administrator level login is still possible even during a directory outage.
Internal user passwords are stored in the PaperCut database as a one-way hash in line with security best practice - a BCrypt sum factored from a combination of username + password + a salt. This use of a secure one-way hash ensures that users’ passwords are kept private even if someone has access to the PaperCut database.
In addition PaperCut also encrypts all user’s Personal Identification Numbers used to secure card numbers.
How does PaperCut authenticate with Active Directory?
Communication between the PaperCut server and Active Directory (AD) is provided and secured by the Windows operating system. PaperCut calls the AD API on the local Windows system, and the PaperCut software does not collect passwords over the network to any remote server, as this is handled by AD itself.
PaperCut does not store any user passwords and instead interrogates the directory service in real-time, as caching or storing passwords is regarded as a security risk. The only exceptions to this rule are the built-in admin user account and PaperCut internal accounts which is covered above.
What level of encryption does PaperCut use?
Client-server communication of sensitive data is conducted over an TLS link - this is an equivalent level of encryption to that used by a web browser connected on an https:// website.
I am going to use Popup Authentication. What should I consider?
Popup-authentication is an auxiliary authentication method and in general should not be used in preference to a protocol-level authentication system. Popup authentication (IP session based authentication) and it’s security considerations are discussed in detail in the article Considerations When Using Popup Authentication.
Does PaperCut use Secure and HttpOnly secured cookies?
Yes. As of PaperCut NG and PaperCut MF 17.1, all session cookies generated for access attempts over secure connections are marked as both Secure and HtmlOnly in order to help mitigate a number of potential risks, such as certain styles of XSS attack, as well as the interception of secure session data improperly transmitted in cleartext.
Can I open port 9191/9192 to the world?
Best practice suggests not exposing any services to the Internet unless required. Having said that, we have designed PaperCut to be secure and with the intention of our users opening the HTTPS port 9192 to the Internet to facilitate services such as:
- Remote administration
- Allowing end-users to login from home to check balances and add credit/quota to their accounts
We have a number of large University/College sites that have opened up PaperCut’s port to the Internet since 2005. It is recommended to open port 9192 (the TLS port) rather than the plain text port 9191.
Is PaperCut and associated executable given minimum permission needed for operation? Is the concept of least privilege upheld?
Yes. On Windows, Mac, Novell and Linux PaperCut has been designed to run under non-privilege accounts. Key security processes on Linux that need to be run with elevated privileges such as those used for user authentication are run “out of process” so this higher privileges rights are isolated at the process level. On Windows, PaperCut’s runs it’s main process as the SYSTEM account with local access only (no network resource access).
How can I restrict access to the XML Web Service APIs?
Two levels of access control is provided for the web services APIs. The first is that any call needs to pass a valid authentication token (usually the built-in admin user’s password). All calls not passing this will be rejected. The 2nd level of security is IP address level filtering. By default PaperCut will only allow calls from localhost (127.0.0.1), and optionally this can be extended to other servers by manually granting that server’s IP address. Valid IP addresses/ranges are defined under the Options section.
Are administrator activities audited?
Yes. As a general rule most major operations such as editing printer details, creating/deleting/modifying user accounts are audited. These audit records appear in the App. Log with a date, details and the user who performed the operation. Having said that, a full level system administrator with read/write file access could in theory edit data files directory to modify the audit trail. Standard limited-rights PaperCut-only administrators access via the web interface can not modify these records.
What about the security of any 3rd party libraries and components used by PaperCut?
PaperCut makes use of a number of third party libraries and components. The security of components is actively monitored by our development team and if any are raised, we assess the impact this may have. We take the topic of security for any 3rd component as serious as we do for our own code base. In some situations we have worked with the 3rd party vendors to address security issues. Another example of active 3rd party security management is the Ghost Trap project. This initiative was started by PaperCut and aims to bring best of breed security to the Ghostscript PDL interpreters.
Do PaperCut NG and PaperCut MF support the use of digital signatures for printed documents?
Our document watermarking functionality can be easily leveraged to inject a digital signature into every printed page. This signature is generated by combining key print job attributes (e.g. time of print, username, printer name, document name) with a secret key, using a cryptographic algorithm to create an encoded string which is unique for each document. Both the MD5 and SHA1 message digest algorithms are available to transform these elements into unique signature strings, allowing the degree of cryptographic security to be configured. The resulting signatures can be used to trace printed pages back to their users of origin, allowing you to follow-up undesired or unlawful transmission of classified content.
As of version 17.1 of PaperCut NG and PaperCut MF, watermarks can be applied across the full page, such that signatures are visible over the entire printed document. This renders the removal of a signature from the printed page impossible.
Some areas of the user interface suggest that the software occasionally contacts PaperCut servers to retrieve information; for example, when I click to Check for updates on the About tab in the Admin web interface. Is this outbound communication performed securely?
In the past, contact to PaperCut servers to check for updates, send error reports on user command, or download news content was performed over regular HTTP. From version 17.2.3 forwards of PaperCut NG and PaperCut MF, all outbound contact is made using HTTPS, minimizing the risk of these communications being intercepted.
I’ve noticed that system error pages contain some diagnostic information. Is this anything to be concerned about?
Prior to version 17.3 of PaperCut NG and PaperCut MF, HTML error pages would provide some technical context for the error, in order to aid diagnosis of the cause. Amongst the context provided was basic system information, which for highly secure environments could be considered to be unnecessary exposure. From 17.3 onwards, PaperCut NG and PaperCut MF will default to only outputting stack trace data when generating these error pages, eliding any information which could be considered identifying.
Configuring the Web Print feature to support Microsoft Office documents involves installing Office on my Web Print Server/s. Does the submission of documents that contain embedded macros present a security risk?
To establish support for Office documents, we recommend that Web Print be configured in “Sandbox Mode”. This partitions the running of the Web Print service off to one or more Web Print Servers; machines distinct from the key components of the PaperCut MF or PaperCut NG solution architecture, which are minimally configured and wholly dedicated to their task. By doing so, the opening and rendering of Office documents is contained to only these standalone servers, and if one of these machines is then compromised, only transient document data is potentially exposed. The afflicted Web Print Server can then be torn down and restored from a basic system image, removing the threat in the process.
Furthermore, Web Print Servers running version 17.4.2 or later of PaperCut MF and PaperCut NG can disallow the execution of any embedded document macros. This is controlled with the web-print.disable-macros configuration key, accessible via the Config Editor. This should minimise the possibility of document-borne attacks impacting your Web Print setup.
Tell me about your security development practices?
More information here: Tell me about PaperCut’s security
Security Standards and Frameworks
Is PaperCut certified under security standard XYZ?
PaperCut is developed in line with leading security guidelines and practices (see Tell me about PaperCut’s security). We currently do not hold a formal security certification such as ISO 27001.
With the well justified increased industry focus on security PaperCut Software is continuously working to formalise our security practices:
- Our Security Response Team (SRT) led by our Head of Development provides personalised and timely responses by our security specialists to any reported issues.
- We work with external security consultants to audit our security policies and practices in general, as well as the specific technologies and architectures used to protect customer information in PaperCut NG and MF.
- PaperCut customers and prospects are regularly PEN testing and auditing our software and we give high priority to fixing any vulnerabilities found.
Is PaperCut PCI Certified?
PaperCut itself does not handle any credit card transactions directly and hence PCI certification is not required/not appropriate for PaperCut itself. PaperCut interfaces with 3rd party payment gateways to handle credit card transactions (e.g. PayPal, CyberSource, Authorize.Net, etc.) and all credit card gateways/providers supported by PaperCut are PCI DSS certified. When a user makes a payment they are directed through to the providers “hosted pay page” and credit card details are entered on their website directly. Please follow this link for more detail on PaperCut and PCI DSS v3.
PaperCut NG and PaperCut MF stores information about my printing users… can the application be compliant with the EU General Data Protection Regulation (GDPR)?
The EU General Data Protection Regulation (GDPR) mandates that users have a Right to Access all stored data associated with them, as well as the Right to be Forgotten; to have all identifiable data related to them which is stored by an organisation permanently removed upon request. This is a significant seachange, reflecting the ever-increasing emphasis placed on securing and protecting personal data within information systems.
As of version 17.2, we have implemented methods which empower an organisation to meet these requirements with respect to their print system. Understanding that total compliance with GDPR is of critical importance to organisations operating within the EU, we’ve also sought to ease the burden of transition by authoring a GDPR Compliance Guide to help you along the way!
For further information, check out our Knowledge Base article on GDPR.
Specific Vulnerabilities
I’ve run a security scanner across PaperCut and it’s raised a warning. What does this mean?
PaperCut is in use in tens-of-thousands of organizations and many of them use various security analysis and scanning tools. If the issue raised is marked as “high”, please raise these with our support team. Many of these systems raise issues not pertinent to PaperCut and it’s print management application, however we like to assess all on a case-by-case basis and will let you know if our developers think they require action.
Is PaperCut susceptible to SQL Injection attacks?
Our coding standard and design policies are designed to limit this type of attack. All database queries in PaperCut are developed using parameterized SQL. This means that PaperCut never directly builds the SQL statement using data provided by the user (e.g. search terms entered in fields). All SQL parameters are handled by the underlying database library which means that PaperCut is not susceptible to SQL injection attacks.
Does the application have protections against CSRF (Cross-Site Request Forgery) attacks?
A number of preventative measures against common CSRF attack vectors are implemented in PaperCut NG and PaperCut MF, seeking to ensure that an individual cannot modify HTTP request content in such a way that grants elevated access to system information or configuration. For example, as of version 17.3, header-based checks are enabled by default, validating the request origin by cross-checking the supplied origin and destination headers, and denying requests with unknown origin.
A security analysis tool (e.g. a PCI Compliance Scan) is reporting that PaperCut is configured to accept weak ciphers. How can I address this?
This topic is addressed in detail in the knowledge base article: SSL Cipher Configuration - removing weak ciphers.
Is PaperCut impacted by the Shellshock vulnerability (CVE-2014–6271) and (CVE-2014–7169)?
The vulnerability known as Shellshock can allow attackers to remotely access and control systems using Bash (and programs that call Bash) as an attack vector. The bug affects many GNU/Linux users, as well as those using Bash on proprietary operating systems like OS X and Windows.
Most software vendors affected by this vulnerability have already issued patches. PaperCut itself does not bundle GNU bash, however we recommend all Bash users audit their services that may be affected. More information about these issues can be found at CVE-2014-6271 and CVE-2014-7169.
We believe PaperCut is not impacted by the ShellShock vulnerability but it is possible for systems hosting PaperCut to be vulnerable.
The majority of PaperCut runs in Java code in the JVM (Java Virtual Machine). There are points at which PaperCut does execute other processes, but the commands invoked are hard-coded and there is no way for an external source to set environment variables before execution. Because of this, PaperCut is not vulnerable to this attack.
Is PaperCut affected by the SSL/TLS “FREAK” attack (CVE-2015–0204)?
The “FREAK” attack allows a malicious man-in-the-middle to downgrade the strength of encryption used. This vulnerability applies to some SSL/TLS implementations. PaperCut uses recent versions of the Java platform which is not vulnerable to the FREAK attack.
Customers running versions prior to version 14 should upgrade their servers as these later versions contain a more recent version of Java.
Is PaperCut affected by the SSL 3.0 “Poodle” vulnerability (otherwise known as CVE-2014–3566)?
This vulnerability, nicknamed “Poodle” can provide a way for attackers to eavesdrop on HTTPS connections running over SSL 3.0. The typical scenario cited involves an attacker running a fake Wi-Fi hot-spot which injects javascript into a non-secure web page. This javascript proceeds to compromise a secure site running SSL 3.0 for which the browser holds a cookie. Unlike the recent HeartBleed vulnerability, Poodle does not expose the server to a standalone attack.
SSL 3.0 is an older protocol, now superseded by TLS. It will generally only be used when both the web server and the client cannot use a more recent TLS protocol. These days, this scenario is becoming less and less common. For example, users would need to be on a browser no more recent than Internet Explorer 6. It is possible, however that a man-in the middle attacker could intercept the protocol negotiation and force a downgrade to SSL 3.0.
In the case of HTTPS connections to the the PaperCut server, TLS is always used if the client permits, however SSL 3.0 will be negotiated if TLS is not supported by the client.
Some customers may prefer to prevent the PaperCut server from accepting SSL 3.0 incoming connections altogether. This may be achieved using any build above PaperCut NG & MF 14.3 build (29819). Instructions on how to customize which ciphers and protocols are used by PaperCut can be found here: https://www.papercut.com/kb/Main/SSLCipherConfiguration.
More information on Poodle, can be found here: http://security.stackexchange.com/questions/70719/ssl3-poodle-vulnerability
Is PaperCut affected by the OpenSSL “Heartbleed” vulnerability (otherwise known as CVE-2014–0160)?
Neither PaperCut MF nor PaperCut NG is affected by the Heartbleed issue, as neither product uses OpenSSL libraries. The PaperCut.com website is also not impacted as it uses a version of OpenSSL that does not contain the vulnerability.
We do suggest using a standalone OpenSSL utility in some cases for key and certificate generation. This utility is not impacted by the Heartbleed vulnerability.
There is more general information about Heartbleed here: http://heartbleed.com/