A design error in Py2Play allows attackers to execute arbitrary code.
|Package||dev-python/py2play on all architectures|
|Affected versions||<= 0.1.7|
|Unaffected versions||>= 0.1.8|
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 network.
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:
# emerge --sync # emerge --ask --oneshot --verbose ">=dev-python/py2play-0.1.8"
September 17, 2005
September 05, 2006: 02