%60%20%D0%B2%D0%B5%D1%80%D0%BD%D0%B5%D1%82%200%2C%20%D1%84%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%20%D0%BD%D0%B5%20%D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D1%8F%D1%8F%20%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%BD%D1%8B%D0%B9%20%D0%B2%D1%8B%D0%B7%D0%BE%D0%B2%3F.png)
Я читал документацию по seccomp(2)
своей системе Debian и наткнулся на следующее предложение из приведенного ниже абзаца:
Такой вредоносный фильтр может, например, привести к тому, что попытка
setuid(2)
установить идентификаторы пользователя вызывающего абонента на ненулевые значения вместо этого вернет 0 без фактического выполнения системного вызова.
Как можно seccomp
злоупотреблять фильтрами, чтобы добиться описанного выше результата?
Если вредоносный фильтр запрещает setuid(2)
, то процесс, скорее всего, получит SIGSYS
сигнал и завершится, а системный вызов не будет выполнен.
Если вредоносный фильтр позволяет setuid(2)
, то execve(2)
программа корректно изменит UID пользователя.
Что я упускаю?
man seccomp
:
...
В противном случае операция SECCOMP_SET_MODE_FILTER завершится ошибкой и вернет EACCES в errno. Это требование гарантирует, что непривилегированный процесс не сможет применить вредоносный фильтр, а затем вызвать set-user-ID или другую привилегированную программу с помощью
execve(2)
, тем самым потенциально скомпрометировав эту программу. (Такой вредоносный фильтр может, например, привести к тому, что попытка использоватьsetuid(2)
для установки идентификаторов пользователей вызывающей стороны в ненулевые значения вместо этого вернет 0 без фактического выполнения системного вызова. Таким образом, программа может быть обманута и сохранена привилегиями суперпользователя в обстоятельствах, когда на нее можно повлиять, чтобы она сделала опасные вещи, поскольку она фактически не сбросила привилегии.)...