Handling the Kubernetes symbolic link vulnerability
Handling the Kubernetes symbolic link vulnerability
Posted Dec 21, 2018 2:52 UTC (Fri) by dvdeug (guest, #10998)In reply to: Handling the Kubernetes symbolic link vulnerability by rweikusat2
Parent article: Handling the Kubernetes symbolic link vulnerability
Posted Dec 21, 2018 23:09 UTC (Fri)
by rweikusat2 (subscriber, #117920)
[Link] (3 responses)
BTW, the actual Kubernetes problem was even sillier than a TOCTOU race as the faulty code didn't even attempt to verify that the untrustworthy input it acted upon was valid.
[*] Assuming the whole system was locked while it ran, the information would still only be approximate as it could (and likely would) change as soon as the system was again unlocked. Hence, there's no point in even trying as the result is unreliable either way.
Posted Dec 22, 2018 6:32 UTC (Sat)
by dvdeug (guest, #10998)
[Link] (2 responses)
If one doesn't act on provided information, it was useless to provide it. If one does act on it, in any way, there's a potential for a race condition. You said "And I would indeed "demand" complete avoidance of that if I was in the position to demand anything here, as there's nothing particularly difficult about understanding that this approach is broken." If the approach is broken and should be completely avoided, show me how to avoid it here, or argue that du, as well as virtually every other file tool* for any multiprocessing system, is inherently broken. Otherwise you've got to accept that complete avoidance is impractical.
* For example, rm; an attacker could potentially watch for rm to be run, move the file out of the way, and move it back after rm ran. The timing would be hard, but it's at least theoretically possible. Should rm be avoided?
Posted Dec 27, 2018 19:41 UTC (Thu)
by rweikusat2 (subscriber, #117920)
[Link] (1 responses)
Posted Dec 27, 2018 23:32 UTC (Thu)
by dvdeug (guest, #10998)
[Link]
Operators are often programs, frequently written in shell. If they use rm or du, they are subject to these types of attack. Even when operators are human, the fact that they literally can not operate these programs without getting into these race conditions is a concern if this approach is clearly broken.
Handling the Kubernetes symbolic link vulnerability
Handling the Kubernetes symbolic link vulnerability
Handling the Kubernetes symbolic link vulnerability
(aka "a red herring"). Dito for rm.
Handling the Kubernetes symbolic link vulnerability
