Netgear uses openssl 1.0.2h for everything, of which I found 27 libraries and programs. One is libcurl, version 7.70.0, which is used by 4 additional programs.Have you tried to replace the two older ones with the new one (with a symlink to the new one)?
Maybe the old ones are required for some compatibility?
Actually, that's wrong. The fbwifi program is linked against 0.9.8, which isn't present as a file in the image. So it probably doesn't work. But I think sometimes Netgear hides libraries inside archives or downloads them, so it could be in there somewhere.
One of these is "fbwifi". Don't know what it does. It's statically linked to an old libcurl 7.32.0. Netgear didn't provide the source to this program.
In Voxel's firmware, fbwifi uses the old OpenSSL 0.9.8p that is also only provided as a binary library. In Netgear's firmware, it uses the same OpenSSL as everything else (1.0.2h).
Voxel's firmware uses a fbwifi that was compiled with gcc 3.3.2. Netgear's newest firmware uses one compiled by gcc 4.6.
So my theory is Voxel has used an version of fbwifi from an old Netgear firmware and has not updated it. He's keeping the old OpenSSL version around just for this program. OpenSSL is not ABI compatible across major releases, so you can not take a program built for OpenSSL 0.9 and swap in a OpenSSL 1.0 or 1.1 library at run time and expect it to work.
The OpenSSL 0.9.8p Voxel has used has more vulnerabilities, including a 9.3, than the 1.0.2h vulnerabilities in Netgear's firmware.
Now for the other OpenSSL versions. Voxel's firmware has 25 libraries and programs using OpenSSL 1.0.2u, including those using it via libcurl. 14 are binary only from Netgear. 11 are compiled from source. There is probably not a good reason the opens source ones are still using OpenSSL 1.0.2. One of these is the transmission bittorrent program, which does support OpenSSL 1.1.0+, and being effectively a server that gets connections from random people out on the internet, is one of the things you really don't want vulnerabilities in.
Now for OpenSSL 1.1.1o. Virtually nothing uses it. There's `wget-ssl`, `openvpn` and `stubby`. That's it.
Last edited: