3 ms·
What's going on here is that Python is a powerful program, called a "deputy" in security parlance, which has some power that it can choose to delegate based on
by DonbunEf7 9y ago
What's going on here is that Python is a powerful program, called a "deputy" in security parlance, which has some power that it can choose to delegate based on some policy. These sorts of attacks are called "confused deputy" attacks because they rely on tricking the deputy into misbehaving.
Admittedly, in the given examples, the attacks are not especially interesting, but that is because it is totally unsurprising that a Python interpreter might have this kind of power.
There are distros like NixOS where there is not a system Python preinstalled, this is due to NixOS following the Principle of Least Authority (POLA) and not putting powerful tools into standard paths automatically.
- deleted 9y ago[deleted]
- tyingq 9y agoI do get the premise, it just seems like it adds little value. Even with POLA, I'm sure I could find some powerful tool on NixOS to use, or a way to bootstrap one.
- gizmo686 9y agoPython is not (typically) a "powerful" program in the sense of a confused deputy; in runs with exactly the same powers as the user who runs it. If you want security, you need well defined security boundaries, not removing arbitrary programs that "seem" powerful.
- benchaney 9y agoAlthough this obviously isn't what GP meant, I had fun imagining what sort of ridiculous abuses of a system would result in python actually being a confused deputy. Making a python interpreter that is also a setuid binary for example.