Bufferoverloopkwetsbaarheid in libssh

Er is een kwetsbaarheid (CVE-2-2) geïdentificeerd in de libssh-bibliotheek (niet te verwarren met libssh2021), ontworpen om client- en serverondersteuning voor het SSHv3634-protocol toe te voegen aan C-programma's, wat leidt tot een bufferoverloop bij het initiëren van het rekey-proces met behulp van de sleuteluitwisseling die een ander hash-algoritme gebruikt. Het probleem is opgelost in release 0.9.6.

De essentie van het probleem is dat de sleutelwijzigingsoperatie het gebruik van cryptografische hashes mogelijk maakt met een castgrootte die afwijkt van het oorspronkelijk gebruikte algoritme. Tegelijkertijd werd geheugen voor de hash in libssh toegewezen op basis van de oorspronkelijke hashgrootte, en het gebruik van een grotere hashgrootte leidt ertoe dat gegevens buiten de toegewezen buffergrens worden overschreven. Als fallback-beveiligingsmethode kunt u de lijst met ondersteunde sleuteluitwisselingsmethoden beperken tot alleen algoritmen met dezelfde hashgrootte. Om bijvoorbeeld aan SHA256 te binden, kunt u aan de code toevoegen: rc = ssh_options_set(s->ssh.session, SSH_OPTIONS_KEY_EXCHANGE, "diffie-hellman-group14-sha256,curve25519-sha256,ecdh-sha2-nistp256");

Bron: opennet.ru

Voeg een reactie