Py2Play: Remote execution of arbitrary Python code
Gentoo Linux Security Advisory
||GLSA 200509-09 / py2play
||September 17, 2005
||September 05, 2006: 02
All supported architectures
A design error in Py2Play allows attackers to execute arbitrary code.
Py2Play is a peer-to-peer network game engine written in Python.
Pickling is a Python feature allowing to serialize Python objects into
string representations (called pickles) that can be sent over the
Arc Riley discovered that Py2Play uses Python pickles to send objects
over a peer-to-peer game network, and that clients accept without
restriction the objects and code sent by peers.
A remote attacker participating in a Py2Play-powered game can send
malicious Python pickles, resulting in the execution of arbitrary
Python code on the targeted game client.
There is no known workaround at this time.
All py2play users should upgrade to the latest version:
Code Listing 3.1: Resolution
# emerge --sync
# emerge --ask --oneshot --verbose ">=dev-python/py2play-0.1.8"