Revisit Update Illuminate Database library for GHSA-3p32-j457-pg5x (#6632) #6718
Labels
Bug:1:Minor
A bug found in uncommon paths, with low consequences, limited users or has an easy workaround
Bug:3:Critical
A bug that prevents a substantial majority of users from using the software.
Milestone
Issue Description
OJS, OMP, and OPS use the 3rd-party Illuminate/Database package for database interactions. Recently a potential vulnerability in this package was published: GHSA-3p32-j457-pg5x.
The original fix for this issue was applied in #6632 and released in OJS/OMP/OPS 3.2.1-3 and 3.3.0-2. However, apparently the previous fix was not complete -- see laravel/framework#35865 (comment). This has led to another release of illuminate/database with an additional fix applied.
Affected releases
PKP has not definitively confirmed whether its software can be attacked using this mechanism, but out of an abundance of caution recommends resolving it.
Resolution
The best way to resolve this issue is to use the latest releases of OJS, OMP, or OPS. This issue is resolved in 3.3.0-3 and 3.2.1-4. For older releases, the issue can be corrected following the instructions below.
Check your OJS/OMP/OPS code version by looking in
dbscrits/xml/version.xml
.OJS/OMP/OPS 3.3.0-0 (RC1), 3.3.0-1 (RC2), 3.3.0-2 (3.3.0)
To resolve this issue, use Composer:
cd lib/pkp composer require laravel/framework:7.30.4
You should see the following confirmation that 7.30.4 has been installed and patched:
If you see this, the issue is resolved!
Affected versions of OJS/OMP/OPS 3.2.1 or older
If you are using OJS/OMP/OPS 3.2.1-3, then only the steps below are necessary. Otherwise, you must apply the changes documented in #6632 before following the instructions below.
When applying patches, it is always recommended to use the --dry-run option first to ensure that the patch will apply cleanly.
Correction Using Composer (recommended)
Depending on your version of OJS, OMP, or OPS, use one of the following patch URLs in the instructions below in place of
PATCH URL HERE
:To apply the fix:
Patch the Composer configuration file:
You should see the following output:
Run Composer to apply the patch:
You should see the following output:
This indicates that two patches were successfully applied. If you see this, the issue is resolved.
Correction By Patching Illuminate/Database Directly
This method involves modifying a dependency, and re-running Composer may cause the changes to be reverted. For this reason it's preferable to use the Composer-based update method documented above.
Depending on your version of OJS, OMP, or OPS, use one of the following patch URLs in the instructions below in place of
PATCH URL HERE
:(use
-p2
instead of-p4
when running thepatch
commands)(use
-p2
instead of-p4
when running thepatch
commands)To directly patch the issue:
You should see the following output:
This indicates that the patch was successfully applied. If you see this, the issue is resolved.
The text was updated successfully, but these errors were encountered: