O xdotool possui um log?

1

Estou usando xdotool para digitar com segurança uma senha (em vez de usar a área de transferência) de um gerenciador de senhas ( pass ) e gostaria de saber se o xdotool tem um log em algum lugar, inseguro.

Existe um log ou qualquer outra insegurança potencial que alguém possa ver?

Para referência, é isso que estou usando:

#!/usr/bin/env python3
import subprocess
import sys
from time import sleep

if len(sys.argv) == 2:
    delay = int(sys.argv[1])
else:
    delay = 3

data = sys.stdin.readline().rstrip('\n')
sleep(delay)
subprocess.call(['xdotool', 'type', '--clearmodifiers', data])
    
por texasflood 21.10.2015 / 12:01

2 respostas

2

Portanto, não há xdotool log, tanto quanto sei, mas como apontou kasperd, correr xdotool com a senha como argumento é claramente inseguro. Mas podemos passar a senha através de um pipe para evitar que apareça na saída de ps aux .

echo -n "$pass" | xdotool type --clearmodifiers --file -

Por padrão (em bash ), é usada a versão integrada do echo, que não é executada como seu próprio processo, portanto, não aparece em ps . Você pode executar builtin echo se não tiver certeza de qual versão será usada.

    
por 22.10.2015 / 16:00
0

Em vez de chamar xdotool usando subprocess.call() do Python, você deve interagir diretamente com a biblioteca subjacente xdotool : libxdo .

As ligações para o Python estão disponíveis em python-libxdo e permite que você "digite" a senha de dentro do Python sem aparecer em ps aux , pois não há nenhum processo separado invocado.

    
por 06.09.2017 / 08:05