On 06-01-16 13:38, Peter wrote:
Your security analysis is too narrow, your thinking like a user, not an 
attacker.

An attacker is not going to send you a proxy to load into a standalone 
Classloader.  She has the choice of the entire classpath, not you and not 
River, that's right it's the senders choice, not the receivers.

She's looking for vulnerable classes on your classpath.  ObjectInputStream will 
load the attackers instructions. There's no protection domain on the  stack 
representing the attacker, the attacker is looking to deserialize into 
privileged context, the attacker wants AllPermission.  This all occurs before 
your remote method call even returns.  Once the the attacker has privileges, 
she can create her own URLClassLoader grant AllPermission to her downloaded 
code, install her own security manager.

https://cwe.mitre.org/data/definitions/502.html


--
QCG, Software development, 071-5890970, http://www.qcg.nl
Quality Consultancy Group b.v., Leiderdorp, Kvk Den Haag: 28088397

Reply via email to