This is the release notes of the version 1.6 of OpenPaaS, codenamed Etamin. The team has worked a lot on infrastructure and deployment, thus there is not a big batch of features. However, the team fixed numerous bugs in response to users feedback.
To install and test this version, you need git as well as docker on a Linux system. The:
git clone https://github.com/linagora/openpaas-esn.git cd openpaas-esn git checkout 1.6.1 PROVISION=true docker-compose up
The three Docker artefacts composing the release are:
james-project:openpaas-1.6.0 – https://hub.docker.com/layers/linagora/james-project/openpaas-1.6.0/images/sha256-33bb00e10631023355f56680e4d57f924f00104275054113e4071e7e433cd83c
esn-sabre:1.6.1 – https://hub.docker.com/layers/linagora/esn-sabre/1.6.1/images/sha256-16ee5e653831a6dfd84cb85b195b4e324f4d59ebe95c30b9002b556119ca30cd
The OpenPaaS components now relies on RaabitMQ version 3.8.
The Summer libraries update ran this year again, and OpenPaaS Node server has updated dependencies, like for example Socket.io.
The members of an OpenPaaS domain are now exposed as a CardDAV addressbook. This allows the users to have the list of members synchronized on their mobile devices and desktop clients.
There is now a clean and efficient Rest API to search for everything related to People objects: users, contacts, resources and groups. This API is used in the OpenPaaS web frontend.
The platform administrator can manage the email aliases of its domain.
The email search has been improved by a better indexing of email and attachments inside the ElasticSearch server.
We ran the software against the OWASP Zap Zed Attack Proxy software. You can find here the attack report. Below are the development team comments regarding the High and Medium vulnerabilities.
High (Medium) – SQL Injection
This is a false positive. Our calendaring and addressbook engine does not use an SQL backend. However, this test highlighted a lack of type validation in user input, having the side effect of the server answering a 500 error instead of a 400 error in case of malicious forged queries. We opened an issue on our internal issue tracker to enforce type check on incoming parameters.
High (Medium) – Path Traversal
This is a false positive. Our Calendar and ADdressbook engine respects the WebDAV based protocol, which is a filesystem representation. User navigation inside is filesystem is enforced by ACLs.
Medium (High) – Session ID in URL Rewrite
This is a false positive. Our frontend uses Socket.io to ensure websocket communication with the server. Socket.io has its implementation of session for progressive enhancement of the connection, from short polling to websocket. There is not, to our knowledge, a vulnerability opened on Socket.io website regarding a vulnerability linked to its token system. Moreover, we upgraded our Socket.io version durint the summer libraries updates sprint.
Medium (Medium) – X-Frame-Options Header Not Set
This is a positive alert. We opened an issue in our internal issue tracker to add this header in our deployment manifests.
Medium (Medium) – CSP Scanner: Wildcard Directive
This is a positive alert. We opened an issue in our internal issue tracker to add the correct Content-Security-Policy header in our deployment manifests.
Medium (Medium) – Format String Error
This is a false positive. However, this test highlighted a lack of type validation in user input, having the side effect of the server answering a 500 error instead of a 400 error in case of malicious forged queries. We opened an issue on our internal issue tracker to enforce type check on incoming parameters.
Medium (Low) – Directory Browsing
This is a false positive. All the data below the “/generated” path is generated by code and does not reflect of any filesystem on the underlying server. This is how the system sends concatenated JavaScript files to the frontend.
To install and test OpenPaaS, you need git as well as docker on a Linux system. The:
git clone https://github.com/linagora/openpaas-esn.git cd openpaas-esn git checkout 1.6.0 PROVISION=true docker-compose up
The three Docker artefacts composing the release are:
Accessibility
visibility_offDisable flashes
titleMark headings
settingsBackground Color
zoom_outZoom out
zoom_inZoom in
remove_circle_outlineDecrease font
add_circle_outlineIncrease font
spellcheckReadable font
brightness_highBright contrast
brightness_lowDark contrast
format_underlinedUnderline links
font_downloadMark links