Краткий ответ: да.
В «старые времена» можно было эффективно запретить любому другому приложению X читать конкретный ввод, захватывая его. Хотя это все еще можно сделать и по сей день, спецификация протокола XI2, по- видимому, предполагает, что это больше не может быть сделано (см. Описание необработанных событий в строке 2220). Таким образом, под одним только X вы больше не в безопасности - по крайней мере, в обычных простых установках. См. Также обсуждение под моим ответом на Как разрешить демону запрашивать пароль (в Xsession, keyloggersafe)? и вопросы и ответы AskUbuntu там, Излишне говорить, что на самом деле ни один терминал не делает этого - вот почему такие приложения, как OpenSSH или GnuPG, имеют своих собственных помощников пользовательского интерфейса, эту клавиатуру для захвата (хотя, как упоминалось выше, в наши дни это не особо помогает).
Однако вы могли бы запустить приложение на другом X-сервере, например, на вложенном X-сервере, подобном Xephyr
или Xnest
, или на VNC-подобном Xvnc
. Вэйлендский протокол также должен обеспечивать некоторую защиту от прослушивания.
Помимо вышесказанного, приложение могло бы также попытаться использовать незащищенную дыру в безопасности вашей системы и, таким образом, получить повышенные привилегии. Или сделайте что-нибудь попроще, например, добавьте обертки su
и sudo
обертки на свой путь перед системными и, таким образом, перехватите пароли (спасибо @Joshua за комментарий).