-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Insecure Dependencies #9
Comments
Happy to accept PRs updating any of this stuff! I think the OpenSSL library
is probably the highest priority.
If I remember right, I think we build against these old versions because we
support Ubuntu 16 and everything has to link. I can’t remember to what
extent it’s possible to link against the new libs, and then run on Ubuntu
16. I remember it was a lot more nuanced than on macOS and I was surprised
at the time how hard it was to get a build-once-run-everywhere Linux
binary…
Maybe we just compromise and drop Ubuntu 16 support… it is awfully ancient
at this point.
…On Wed, Nov 15, 2023 at 9:07 PM Reilly Brogan ***@***.***> wrote:
This project apparently depends on some incredibly old versions of various
dependencies. Most of them do not seem to have seen any updates since their
initial inclusion:
- Openssl 1.1.0f, released in *May of 2017*. The entire 1.1.0 series
has been EOL for four years now, this is especially concerning since it's
compiled in as a static library which means that ALL encrypted email
traffic goes over this fundamentally insecure library.
- libcurl 7.70.0, released in April of 2020
- nlohman 3.7.0, July 2019.
- icalendarlib didn't have any commits between 2012 and 2022, but the
commits in 2022 are not in the local copy so it too clearly hasn't been
updated
- sqlitecpp 2.0.0, July *2016*. Notably also using the ancient sqlite
3.13.
- stanfordcpplib, circa 2019 as far as I can tell
Moreover, the build system builds with Ubuntu Xenial 16.04 images, and
builds with static libs from that distribution. Ubuntu Xenial has been
end-of-life since 2021, and those dependencies have been completely
unmaintained since then. Example, the shipped version of libxml2 is version
2.9.4 which has had numerous reported vulnerabilities since 2021.
—
Reply to this email directly, view it on GitHub
<#9>, or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAH5HHFAZU7EQCR3KJHDKDLYEV7PFAVCNFSM6AAAAAA7NOWJN2VHI2DSMVQWIX3LMV43ASLTON2WKOZRHE4TKOJWGI2TMMI>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
As of the Ubuntu lifecycle, I suggest to drop anything older than Ubuntu 20.04: https://ubuntu.com/about/release-cycle |
Yes, Ubuntu 20.04 is a good baseline. Users still using EOL distro versions are accustomed to not having their applications be supported in the first place and there's little point in supporting what is likely a very small population of users. Really, how this project should be build from a Linux perspective is the following:
My main concern with updating these dependencies now is that all it does is kick this can further down the road and doesn't address the core problem of poor dependency management. I'd rather see the latter fixed and then continuously updated and secure dependencies is the natural outcome. CC @prateekmedia who appears to be the maintainer of the Flatpak. I don't have any visibility into how the Snap is built or I'd link that maintainer as well. |
This project apparently depends on some incredibly old versions of various dependencies. Most of them do not seem to have seen any updates since their initial inclusion:
Moreover, the build system builds with Ubuntu Xenial 16.04 images, and builds with static libs from that distribution. Ubuntu Xenial has been end-of-life since 2021, and those dependencies have been completely unmaintained since then. Example, the shipped version of libxml2 is version 2.9.4 which has had numerous reported vulnerabilities since 2021.
The text was updated successfully, but these errors were encountered: