Magento Backups suffer from a cross site request forgery vulnerability. Versions affected include Magento Open Source prior to 1.9.3.8, Magento Commerce prior to 1.14.3.8, Magento 2.0 prior to 2.0.18, Magento 2.1 prior to 2.1.12, and Magento 2.2 prior to 2.2.3.
6d870f518782a4d674caa1e656efd73fa25831cbd1426facfd575d0b2defcd72
DefenseCode Security Advisory
Magento Backups Cross-Site Request Forgery
Advisory ID: DC-2018-03-001
Advisory Title: Magento Backups Cross-Site Request Forgery
Advisory URL: http://www.defensecode.com/advisories.php
Software: Magento
Version: Magento Open Source prior to 1.9.3.8,
Magento Commerce prior to 1.14.3.8,
Magento 2.0 prior to 2.0.18, Magento 2.1 prior
to 2.1.12, Magento 2.2 prior to 2.2.3
Vendor Status: Vendor contacted, vulnerability fixed
Release Date: 06/03/2018
Risk: MEDIUM
1. General Overview
===================
During the security audit of Magento Open Source 1 and 2 a
vulnerability was discovered that could allow an attacker to force
an authenticated admin to perform backups and put the store into
maintenance mode during backups, which could serve as a denial of
service attack vector.
2. Software Overview
====================
Magento is an ecommerce platform built on open source technology
which provides online merchants with a flexible shopping cart system,
as well as control over the look, content and functionality of their
online store. Magento offers powerful marketing, search engine
optimization, and catalog-management tools. It is a leading
enterprise-class eCommerce platform, empowering over 200,000
online retailers.
Homepage:
http://www.magento.com
3. Vulnerability Description
============================
During the security analysis of Magento 2 and 1 Cross-Site Request
Forgery (CSRF) vulnerability was discovered that could allow an
attacker to force an authenticated admin to perform backups and put
the store into maintenance mode during backups, which could
potentially serve as a denial of service attack vector.
When a backup HTTP request is changed from POST to GET, the lack of
form_key parameter which serves as a CSRF token is completely ignored
and thus allows the request to be abused for CSRF attacks. The
following URL is used in the attacks:
Magento 2:
http://website.com/admin/backup/index/create/?isAjax=true&type=db&maintenance_mode=0&backup_name=test-DefenseCode&exclude_media=0
Magento 1:
http://website.com/index.php/admin/system_backup/create/?isAjax=true&type=db&maintenance_mode=0&backup_name=test3&exclude_media=0
The prerequisite for this attack is that the Add Secret Key to URLs
option is disabled. Secret keys are an additional anti-CSRF measure
in Magento, with form keys being the primary measure (that can not
be disabled). In a team setting this option is often disabled in
order to be able to to pass admin links to coleagues, tickets, chat,
etc.
4. Solution
===========
Vendor fixed the reported security issues and released a new version.
All users are strongly advised to update to the latest available
version.
5. Credits
==========
Discovered by Bosko Stankovic (bosko@defensecode.com).
6. Disclosure Timeline
======================
05/11/2017 Vendor contacted through Bugcrowd platform
17/11/2017 Vendor responded
28/02/2018 Vulnerability fixed
06/03/2018 Advisory released
7. About DefenseCode
====================
DefenseCode L.L.C. delivers products and services designed to analyze
and test web, desktop and mobile applications for security
vulnerabilities.
DefenseCode ThunderScan is a SAST (Static Application Security
Testing, WhiteBox Testing) solution for performing extensive security
audits of application source code. ThunderScan SAST performs fast and
accurate analyses of large and complex source code projects delivering
precise results and low false positive rate.
DefenseCode WebScanner is a DAST (Dynamic Application Security
Testing, BlackBox Testing) solution for comprehensive security audits
of active web applications. WebScanner will test a website's security
by carrying out a large number of attacks using the most advanced
techniques, just as a real attacker would.
Subscribe for free software trial on our website
http://www.defensecode.com/ .
E-mail: defensecode[at]defensecode.com
Website: http://www.defensecode.com
Twitter: https://twitter.com/DefenseCode/