Como automatizar com segurança logins de sites periódicos

2

Estou escrevendo um programa de monitoramento de páginas da Web que, a cada hora, efetua login em um site usando o Selenium e me avisa se a página foi alterada de uma maneira específica. Por exemplo, este programa pode monitorar o uso de dados do meu celular e avisar se meu uso está aumentando. No entanto, estou preocupado em ter minha senha em texto simples apenas em uma máquina que está permanentemente conectada à Internet.

P: Qual é a maneira responsável de automatizar logins periódicos de sites?

Eu considerei as seguintes precauções, em ordem de aumentar a paranóia:

  1. "Protege" a distribuição do Linux - desative as respostas de ping, CUPS, Java, SSH, Samba e outros serviços não utilizados.

  2. Criptografe a senha no disco e codifique a chave no programa (por exemplo, use o XOR para ofuscar um pouco a senha).

  3. Armazene a senha somente na RAM; isto é, insira a senha quando eu iniciar o programa. (Portanto, o programa está sempre em execução; não é possível usar cron )

  4. Desligue a rede da máquina quando o programa não estiver em execução usando ifdown e ifup .

  5. Use uma tomada elétrica temporizada para - uma vez por hora - ligue a máquina fisicamente, deixe-a funcionar por alguns minutos e desligue-a (por exemplo, usando esta Placa de relés do Controlador de Arte ).

(BTW, eu tenho o programa básico trabalhando em um Raspberry Pi usando Python e pyvirtualdisplay como descrito aqui , e estou usando o Selenium porque alguns sites de interesse exigem JavaScript.

    
por ConvexMartian 18.08.2016 / 18:30

1 resposta

3

Segurança é uma troca. Como um exemplo extremo, um sistema desligado, desconectado e encaixado em um bloco de concreto é muito seguro, mas completamente inútil. Você decide em quais medidas de segurança você está disposto a pagar (usabilidade reduzida, dólares reais gastos, etc.) analisando a probabilidade de ocorrer uma violação e quanto ela custará.

Como aparentemente esta é uma máquina dedicada à tarefa, eu simplesmente a colocaria em um arquivo de texto (ou, armazenada apenas na memória, eram senhas mais valiosas, como contas bancárias) e faria o seu passo 1 quase sempre deveria; desligar serviços não utilizados é basicamente gratuito].

Se for possível direcionar um navegador da Web em execução como um usuário diferente, eu faria isso - os navegadores da web têm uma superfície de ataque enorme . E, claro, certifique-se de que as atualizações de segurança do seu navegador sejam aplicadas.

BTW: você perdeu alguns passos de proteção, como iptables . Além disso, desativar o eco do ICMP no IMO não oferece segurança, mas torna a solução de problemas de rede irritante. (Qualquer coisa por trás do seu firewall capaz de executar o ping também pode fazer um ping ARP, ao qual ele precisa responder para que o Ethernet funcione. Ou qualquer outro número de pings de protocolo para ver se está funcionando.)

    
por 18.08.2016 / 18:58