mailing list archives
PlRPC Perl module: pre-auth remote code execution, weak crypto
From: Florian Weimer <fweimer () redhat com>
Date: Thu, 09 Jan 2014 12:06:18 +0100
PlRPC is a Perl module that implements IDL-free RPCs. It is intended
for cross-domain applications, but it fails to achieve that goal because
it uses Storable, which is known to be insecure when deserializing
(thawing) untrusted data. User name and password are transmitted using
Storable, so code execution can happen before authentication.
The cryptographic hook built into PlRPC is limited: there is no MAC, no
reply protection, and there's just a symmetric group key shared by all
users. It's not really PlRPC's fault, considering its age.
PlRPC mainly lives on because it is a dependency of DBD::Proxy, which is
carried around by the DBI module.
This might warrant two CVE assignments (one for the Storable-based code
execution), and one for the weak crypto. This was first reported in
2013. The patches that exist just document the issues and are not real
fixes (for Storable itself, there is only a documentation fix, so this
Florian Weimer / Red Hat Product Security Team
- PlRPC Perl module: pre-auth remote code execution, weak crypto Florian Weimer (Jan 09)