CVSS 5.9 CVE-2019-6111

CVSS 5.9 CCVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N

An issue was discovered in OpenSSH 7.9. Due to the scp implementation being derived from 1983 rcp, the server chooses which files/directories are sent to the client. However, the scp client only performs cursory validation of the object name returned (only directory traversal attacks are prevented). A malicious scp server (or Man-in-The-Middle attacker) can overwrite arbitrary files in the scp client target directory. If recursive operation (-r) is performed, the server can manipulate subdirectories as well (for example, to overwrite the .ssh/authorized_keys file).

Test with SSH-MITM

A proof of concept exploit is integrated in ssh-mitm.

To inject files during a file transfer from the server to the client you have to start ssh-mitm with following arguments:

$ ssh-mitm server --scp-interface inject_file --scp-inject /path/to/additional/file

The file transfer for the injected file will be hidden because of the described vulnerabilities described in CVE-2019-6109 and CVE-2019-6110.

References