spekulatius / silverstripe-composer-security-checker
Provides information if your SilverStripe application uses dependencies with known vulnerabilities.
Installs: 1 895
Dependents: 0
Suggesters: 0
Security: 0
Stars: 9
Watchers: 3
Forks: 6
Open Issues: 2
Type:silverstripe-vendormodule
Requires
- php: >=5.6.0
- sensiolabs/security-checker: ^5 || ^6
- silverstripe/framework: ^4
- symbiote/silverstripe-queuedjobs: ^4
Requires (Dev)
- phpunit/phpunit: ^5.7
- squizlabs/php_codesniffer: ^3
Suggests
- bringyourownideas/silverstripe-maintenance: Display advisory information via Site Summary Report
- roave/security-advisories: Raises a conflict on attempt to install a vulnerable module
Replaces
README
WARNING: As of January 2021, this module no longer works because the underlying service has been shut down (see announcement and discussion).
NOTE: This module is no longer commercially supported in Silverstripe CMS 5 and it does not provide a CMS5-compatible version.
Adds a task which runs a check if any of the dependencies has known security vulnerabilities. It uses the SensioLabs Security Check Web service and the Security Advisories Database.
BSD 3-clause License
Requirements
- SilverStripe Framework ^4
- SilverStripe QueuedJobs ^4
Suggested Module
This module will automatically amend the SiteSummary report provided by the SilverStripe Maintenance module, adding alerts if security updates are present for installed modules.
Installation
The following installation commands includes schedulding a queuedjob to populate the data. Run the following command to install this package as a development dependency:
composer require bringyourownideas/silverstripe-composer-security-checker 2.x-dev
vendor/bin/sake dev/build
vendor/bin/sake dev/tasks/ProcessJobQueueTask
Usage
The information gets updated via a BuildTask, which in turn can be run via a queuedjob.
You will need to set up a scheduled process (e.g. cron
) to run either the buildtask directly, or the task to process the queuedjobs queue in order to refresh the information.
Use the information is stored in the SecurityAlert
object, and can be consumed as needed. Please be careful how you expose this information. If the SilverStripe Maintenance module is present, a relationship will be connected between Package
and SecurityAlert
.
Documentation
Please see the user guide section of the SilverStripe Maintenance module.