php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #68023 Segfault authenticating to servers that do not support authentication
Submitted: 2014-09-16 00:41 UTC Modified: 2015-07-15 07:36 UTC
Votes:1
Avg. Score:2.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:1 (100.0%)
Same OS:1 (100.0%)
From: felipe at weckx dot net Assigned: langemeijer (profile)
Status: Closed Package: ssh2 (PECL)
PHP Version: 5.6.0 OS: Linux 3.16.2-1
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: felipe at weckx dot net
New email:
PHP Version: OS:

 

 [2014-09-16 00:41 UTC] felipe at weckx dot net
Description:
------------
Some simpler devices (e.g. older Cisco Devices, Dell SonicWall firewalls, Motorola RFS 7000 switches) implement the SSH service without any authentication (they show a prompt after the connection is established). If a ssh2_auth_password or ssh2_auth_agent is called on a connection to one of these devices a segfault occurs because libssh2_userauth_list returns NULL.

The problem can be prevented by calling ssh2_auth_none and checking if the return value is TRUE, but I believe the ssh2_auth_password should fail gracefully.

Test script:
---------------
$host = '95.215.46.98';
$port = 2200;
$conn = ssh2_connect($host, $port);
if (!$conn) {
        echo "Error connecting to '{$host}:{$port}'\n";
        die(1);
}
echo "Connected to '{$host}:{$port}'. Trying password authentication\n";
ssh2_auth_password($conn, 'test', 'test');
echo "OK\n";


Expected result:
----------------
Connected to '95.215.46.98:2200'. Trying password authentication
Segmentation fault (core dumped)



Patches

ssh2-auth-none-segfault-fix (last revision 2014-09-16 00:41 UTC by felipe at weckx dot net)

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2015-07-15 07:36 UTC] langemeijer@php.net
-Status: Open +Status: Closed -Assigned To: +Assigned To: langemeijer
 [2015-07-15 07:36 UTC] langemeijer@php.net
Patch is merged into git.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sun Dec 22 02:01:28 2024 UTC