Sårbarhet för buffertspill i libssh

En sårbarhet (CVE-2-2) har identifierats i libssh-biblioteket (inte att förväxla med libssh2021), utformad för att lägga till klient- och serverstöd för SSHv3634-protokollet till C-program, vilket leder till ett buffertspill när omnyckelprocessen initieras använder nyckelutbytet som använder en annan hashalgoritm. Problemet är åtgärdat i version 0.9.6.

Kärnan i problemet är att nyckeländringsoperationen tillåter användning av kryptografiska hash med en caststorlek som skiljer sig från den ursprungligen använda algoritmen. I det här fallet tilldelades minnet för hashen i libssh baserat på den ursprungliga hashstorleken, och användning av en större hashstorlek leder till att data skrivs över utanför den allokerade buffertgränsen. Som en reservsäkerhetsmetod kan du begränsa listan över stödda nyckelutbytesmetoder till endast algoritmer med samma hashstorlek. Till exempel, för att binda till SHA256, kan du lägga till i koden: rc = ssh_options_set(s->ssh.session, SSH_OPTIONS_KEY_EXCHANGE, "diffie-hellman-group14-sha256,curve25519-sha256,ecdh-sha2-nistp256");

Källa: opennet.ru

Lägg en kommentar