Time | Item | Who | Notes |
---|
0 min | Issue tagging idea | Jens Heinrich | Idea: Have a Tag security-preparedness or similar for the preventative upgrade issues so we can regularly remind the teams to upgrade their dependencies. Let's talk about this next week - Seems like a good idea, and can help increase visibility of these issues.
- May also help the Security team streamline weekly meetings
- Once we have the label in place and it's being used, we should update our filters/boards accordingly...
- Exclude these by default
- Add a quick filter?
- etc.
- Jens Heinrich will try to update the filters
- Do we need other tags as well? e.g. "EOL"?
|
0 min | Jira Group and Security Level review | Team | From Craig in slack: I've been in communication with David Crossley, Wayne Schneider, John Malconian and Peter Murray about the issue above. They apparently didn't have access to these embargoed issues (SysOps and Core Team). Peter shared this screenshot with me, which doesn't look right. I'd like to review this at one of our meetings and come up with a list of changes/improvements for Peter to make. A few ideas off the top of my head: - Add descriptions to each of the security groups, like we have for "FOLIO Security Group"
- Maybe add a new security group and level for FOLIO devops
- Review membership of each of these groups and remove users no longer on the project
- Review the Security Level -> Group mappings. Some of these don't look quite right to me.
- If it makes this easier, we could invite Peter to a meeting so we can see the groups/levels interactively and makes adjustments as we go
- Not exactly this, but related...
- Issues submitted to the SECURITY JIRA project should automatically be embargoed (Security Level = Folio Security Group)
- The submitter of issues to the SECURITY JIRA project should be able to view issues they submit, regardless of their Security Level
- Email notification sent to the Folio Security Group when an issue is created in the SECURITY Jira project.
- Action: Craig McNally to setup a meeting with Peter and representatives from the Security Team to work through these things after WOLFcon?
- We need to look into how security level configuration works to gain a better understanding of why it behaves the way it does.
- Why do we have All Folio Developers in the "Sys Ops and Core Team" security level?
Today: - (Craig) no progress due to lack of time to spend on this. Does someone else have time to work through this with Peter?
|
0 min |
SECURITY-177
-
Getting issue details...
STATUS
SECURITY-182
-
Getting issue details...
STATUS
SECURITY-189
-
Getting issue details...
STATUS
| Team | Do we need to backport these fixes to Q? If so, it will need to go into CSP6 - It seems clear that we DON'T need this for Poppy, but probably do need it for Quesnelia
- (Craig) will clarify if the fix in mod-data-export-spring needs to be backported (See SECURITY-189 / MODDEXPSP-270 (sp?)
Today: |
5 min | Policy for deprecating and eventulaly removing unsupported code | Team | The idea is to draft a proposal policy for this and run it by the TC for approval... "mod-foo has known security vulnerabilities which are high/critical and have not been addressed in N months. If these aren't addressed within N months the repository will be archived" Something like that... - Communication will be key here... Need to sort out the details.
Today: Jens Heinrich created a draft and Julian Ladisch gave inputs on better handling of edge cases
Proposal for a Deprecation Policy for FOLIO Modules outside of the official supported set with a Severe Security Vulnerability
Introduction
This proposal outlines a policy for the deprecation of FOLIO modules outside of the official supported set (i.e. flower releases) that are identified to have severe security vulnerabilities and have not been updated in the last three months despite being informed by the Security Team. The purpose of this policy is to maintain the overall security and integrity of the FOLIO ecosystem by deprecating and archiving unmaintained/abandoned software.
1. Objectives
Enhance Security: To mitigate risks associated with unaddressed vulnerabilities, ensuring the safety of the FOLIO project.
Encourage Maintenance: To promote regular updates and maintenance of existing modules.
Inform Stakeholders: To provide clear communication regarding the status of FOLIO modules and associated risks.
2. Pre-deprecation steps
To ensure developers have a reasonable amount of time to fix the vulnerability a three month period is started after the developers have been privately notified by the Security Team. If the notification is not acknowledged within one month, the deprecation process starts immediately.
3. Deprecation Steps after the grace time has expired
Notification:
Inform relevant stakeholders (developers, users, libraries, etc.) about the identified vulnerability and the impending deprecation of the affected module.
Provide guidance on the risks and advise on possible alternatives.
Deprecation Announcement:
Officially announce the deprecation of the module on the FOLIO community platforms (e.g., comments in README in GitHub).
Set a clear timeline for the deprecation phase, providing stakeholders with a timeline for migration. This timeline should usually be one month for modules outside of the official supported set which are not planned for the next release.
Module Removal:
Archive the GitHub repositories and update documentation to reflect the changes and indicate alternative solutions.
4. Exceptions
Modules that are part of a larger, ongoing development project with a clear and communicated timeline for resolution may be exempt from immediate deprecation.
Modules that have an active and engaged community working toward updates or patches may be considered for extended timelines.
5. Conclusion
The proposed deprecation policy aims to create a safer ecosystem for all FOLIO users by addressing severe security vulnerabilities in a timely and organized manner. By implementing this policy, we can ensure that the FOLIO platform remains robust, secure, and adaptable to the evolving security landscape.
A dedicated page has been created at https://folio-org.atlassian.net/wiki/x/KAAHJw - Awareness has been raised with the TC. Some comments have been left.
- Let's discuss in the new year when Jens is around.
|
* | Anything Urgent? Review Mike's Kanban board? Review Security board? Review labels=security?
Under Review Filter:
Getting issues...
| Team | - Snyk review - the go modules (mod-reporting, eureka-setup) have 5 criticals, but they are false positives, Snyk is wrong. Other vulnerability tools for go don't report them.
- These have been "ignored" in snyk. We may want to report these false positives to Snyk.
-
SECURITY-218
-
Getting issue details...
STATUS
was discussed. Eureka team should provide details. Craig McNally will coordinate.
- Spring based modules (e.g. mod-data-export-worker, mod-workflow, etc.) have a new critical (https://www.cve.org/CVERecord?id=CVE-2024-50379). Jira:
SECURITY-248
-
Getting issue details...
STATUS
- 66 high severity issues for perf-testing... Probably don't have JIRAs for these, but if we can get them created, it's possible that PTF can make some progress on resolving some of these.
- Discussed vulnerabilities raised against ui-users where the yarn.lock file specifies a vulnerable version of jspdf → dompurify. Ryan Berger will look into how this yarn.lock file is maintained.
|
Topic Backlog |
Time permitting | Advice for handling of sensitive banking information | Team | From slack conversation, I think I've gathered the following: - In this case (bank account and transit numbers), the information is highly sensitive.
- Highly sensitive information should:
- Be stored in it's own table
- Accessed via a dedicated API
- Protected by a dedicated permission
- Encrypted in the database, not only on disk.
Let's review and discuss before providing this feedback to Raman. Axel Dörrer also suggested that defining classes of sensitivity could help teams determine which techniques are applicable in various situations. I agree having some general guidelines on this would be helpful. - regular data
- low sensitive - permission based on same API
- high sensitive - permission based on dedicated API
It would probably help to provide concrete examples of data in each class. This can be a longer term effort, we don't need to sort out all the details today. - Next Steps:
- Clearly define/formalize the various classes
- Come up with concrete examples of each class
- Build out guidance
- Come up with concrete examples of how to protect each class of data.
- Consider storing some classes of data outside of postgres altogether - e.g. in secret storage.
- What would be the guidance we provide to teams for this so we don't end up with each team doing things differently?
- SecretStore interface and existing implementations are currently only read-only. They would need to be extended to allow for creation/mgmt of this information.
- Craig to start a conversation in slack about this.
- Seeking a volunteer to generate a draft document for us to review at a later meeting.
Today: Axel Dörrer to do a first draft as a base for further discussions |
| Status on pentesting works within Network traffic control group | | Due to some absences on different reasons the group stalled. Axel will try to reactivate the group. |
| Okapi Debian Package
FOLIO-3896
-
Getting issue details...
STATUS
|
| - We're officially dropping support for this going forward - no new debian packages will be created.
- Once the last version of the debian packages is out of the support window we can call this done.
- Revisit this around Ramsons GA
|