Skip to content
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

[Urgent security issue] FreeImage arbitrary code execution vulnerability #4537

Open
MissLavender-LQ opened this issue Mar 31, 2024 · 9 comments

Comments

@MissLavender-LQ
Copy link

main 2 I think is the most important to point out

both of these can run arbitrary code one of them being from the BMP plugin
so I am assuming a person could get a user to load a malicious BMP or a file with a malicious bpm inside of it

Free Image should either be forked and fixed asap or abandoned for a different library

active project i could find that use freeimage
https://github.com/sirjuddington/SLADE
https://github.com/TrenchBroom/TrenchBroom
https://github.com/RetroPie/EmulationStation
https://github.com/MonoGame/MonoGame
https://github.com/meganz/MEGAsync
https://github.com/OGRECave/ogre
https://github.com/OGRECave/ogre-next
https://github.com/Open-Cascade-SAS/OCCT
https://github.com/arrayfire/forge
https://git.sr.ht/~exec64/imv
https://github.com/arrayfire/arrayfire

Free Image v3.18.0

Free Image before v1.18.0

@kduske
Copy link
Collaborator

kduske commented Apr 1, 2024

On Mac and Windows, we build freeimage and link it via vcpkg, and it hasn‘t been fixed there. I will update the library when they have updated or patched it. If you feel that this is very urgent, you might be able to find patches on freeimage‘s forum and integrate them into vcpkg.

On Linux, we use the library of the host system, so we can‘t do anything about it.

@eGax
Copy link
Contributor

eGax commented Apr 1, 2024

I am sure most of the rolling distributions like Arch will patch this themselves or use public patches. Eventually the other's would back port fixes as well. They will need to.

On Linux, we use the library of the host system, so we can‘t do anything about it.

@MissLavender-LQ
Copy link
Author

the issue is freeimage doesnt seem to be geting updated any more

@eGax
Copy link
Contributor

eGax commented Apr 1, 2024

the issue is freeimage doesnt seem to be geting updated any more

Can you please point to a post that details this on their website, https://sourceforge.net/projects/freeimage/ ? I can't seem to find it. Their last update was last year, The last freeimage update was 2023-05-20, which isn't out of the ordinary.

@MissLavender-LQ
Copy link
Author

nothing dirrect but i was assuming that since they havnt mentioned the vulnerability on their site any where

in another git issue i made someone mentioned that there is now a fork/continuation of free image ill link that here in a sec

@MissLavender-LQ
Copy link
Author

@MissLavender-LQ
Copy link
Author

so this likely means i should make issues on distros about replacing freeimage FreeimageRe

might be some time before i do that since i havnt been feeling well

@eGax
Copy link
Contributor

eGax commented Apr 3, 2024

Yup, upstream issues to the distributions themselves would be best. I would not worry about it too much just yet. Many distros use it, they will need to fix it, whether through another fork or what have you.

@topazus
Copy link

topazus commented Apr 11, 2024

https://github.com/danoli3/FreeImage is also a fork repo.

Btw, not long ago, I received an email about the plan of orphaning freeimage package on Fedora from its package maintainer:

I intend to orphan freeimage. Probably, the package should rather just
be retired. Upstream is effectively dead, and there is a constant stream
of CVEs getting filed against the package which are not addressed
upstream. Over the past two years I've fixed many of those CVEs
downstream, but the most recent batch of 15 CVEs is leading me to
capitulate. Currently, the following packages require freeimage:

PerceptualDiff
allegro5
cegui06
deepin-image-viewer
gazebo
imv
ogre
photoqt

A minimal impact check:

PerceptualDiff: freeimage is a hard dependency. PerceptualDiff itself
has seen its last commit 4 years ago, last release 8 years ago
allegro5: freeimage is an optional dependency
cegui06: freeimage is an optional dependency
deepin-image-viewer: freeimage is a hard dependency
gazebo: freeimage is a hard dependency. (The fedora package is for
"gazebo-classic" https://github.com/gazebosim/gazebo-classic, which
points to https://github.com/gazebosim/gz-sim as the "latest version",
which does not appear to require freeimage)
imv: freeimage is an optional dependency
ogre: freeimage is an optional dependency
photoqt: freeimage is an optional dependency

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants