O administrador do servidor pode ver o que eu copio via SCP?

31

Digamos que estou conectando a um servidor via SCP e copiando alguns arquivos do servidor remoto para o meu computador doméstico. Os administradores do servidor podem dizer que copiei algo, ver o que foi copiado ou saber quem o copiou?

Kironide
fonte
2
use sftp. Pode estar registrado, mas não é claramente visível como o título do processo scp.
Jakuje
2
Provavelmente apenas uma questão de alterar o nível de log no servidor? Não checou.
jcaron
14
Eu sempre presumo que tudo é observado e registrado de perto se você não estiver no controle do servidor.
axx
3
Os administradores de servidor podem ver tudo o que você faz no servidor; isso é meio implícito no termo "admin". A única questão é se eles estão realmente prestando atenção ou cuidado.
Ajedi32

Respostas:

31

Uma pergunta ServerFault é quase idêntica a isso. Espero que você tenha verificado antes de postar sua pergunta, mas a sua é um pouco diferente, então eu responderei aqui.

A resposta curta é que, se ALGUÉM tiver acesso e permissões a um nó de extremidade (o sistema do qual você está scpindo ou vindo scp), poderá ver o que acontece. Se eles não tiverem acesso a nenhum dos pontos de extremidade, provavelmente não terão acesso ou poderão decifrar o que você está fazendo (além de conhecer o aplicativo pelos números de protocolo).

A resposta é, em última análise, muito dependente da sua infraestrutura. O mais provável é que, desde que não haja monitoramento intenso e o SCP não seja considerado uma ameaça na empresa (que exibirá sinais de alerta), seu tráfego passará despercebido. Isto é especialmente verdade para empresas menores.

Como o @SimonRichter mencionou : se alguém puder executar um comando no seu sistema (por exemplo, admin ou outros), poderá verificar sua lista de processos e ver a linha de comando scp -args /filepath/. No entanto, isso exige que eles estejam registrando todas as atividades do processo ou verificando-as no momento da transferência. Além disso, se você estiver fazendo isso do seu próprio sistema no trabalho para outro sistema (digamos em casa ou em outro local), eles não terão necessariamente essa visibilidade.

Além disso, como o @ alex.forencich mencionou: Também é possível registrar todas as chamadas do sistema (incluindo chamadas de abertura e leitura de arquivos), mesmo que seu programa de cópia (scp, sftp, etc.) não registre ou vaze nada (argumentos da linha de comando ), ainda é possível descobrir quais arquivos foram lidos ou gravados. Veja o sistema de auditoria linux. -

Abraxas
fonte
Também é possível registrar todas as chamadas do sistema (incluindo chamadas de abertura e leitura de arquivos), mesmo que o seu programa de cópia (scp, sftp, etc.) não registre ou vaze nada (argumentos da linha de comando), ainda é possível descobrir quais arquivos foram lidos ou gravados. Veja o sistema de auditoria linux.
21816 alex.forencich
Obrigado @ alex.forencich, estou adicionando seu comentário à resposta!
Abraxas
33

Não é apenas o administrador.

Para o teste, acabei de copiar /bindo meu servidor para um diretório temporário no meu laptop. psno servidor mostra

$ ps 24096
  PID TTY      STAT   TIME COMMAND
24096 ?        Ss     0:00 scp -r -f /bin

Esta informação é geralmente acessível a todos os usuários.

Simon Richter
fonte
6
Para kernel> = 3,2, (re) de montagem /proccom a opção hidepid=2desactiva esta ..
heemayl
"Esta informação é geralmente acessível a todos os usuários." Sério? Todos os usuários podem ver o que todos os outros usuários estão fazendo? Eu não tentei, mas isso parece improvável para mim. Mesmo no Windows, você pode ver apenas seus próprios processos (a menos que você seja um administrador e clique em um botão de administrador especial).
Lightness Races com Monica
@PreferenceBean, sim, mas essa é a configuração padrão. Dependendo de como o administrador definiu a configuração umask , os diretórios pessoais de outras pessoas também podem ser lidos por padrão.
Simon Richter
Mostrar informações como essa sobre outro usuário como esse parece um padrão extremamente burro.
CodesInChaos
O @CodesInChaos, que é uma decisão antiga, tomada por um tempo em que as pessoas tinham que compartilhar o computador de forma cooperativa, por isso era melhor se você pudesse facilmente dizer quem estava monopolizando a CPU e por quê, para poder conversar com eles. Atualmente, ninguém se incomoda em geral, porque poucas pessoas realmente fazem login em computadores compartilhados.
Simon Richter
12

scpfunciona com a ajuda do código em execução no servidor ( sshde scpele próprio). Em princípio, esse código de servidor está completamente sob o controle do administrador do servidor, e a versão da scpexecução no servidor para gravar o arquivo na conexão com você é separada da versão da scpexecução na sua máquina para emitir a solicitação.

Um administrador do servidor pode, por exemplo, substituir scpno servidor por uma versão que registre todas as solicitações, da mesma forma que um servidor Web pode gravar registros. Então eles podiam ver nesses logs exatamente o que você copiou.

Se eles têm a experiência e a motivação para realmente fazer isso é menos definitivo, mas se eles querem, em princípio, não há nada para detê-los.

Acho que essas perguntas são complementares às suas: https://security.stackexchange.com/questions/14782/is-there-an-easy-way-to-see-a-log-of-scp-activity-on-a -server-ala-var-log-secu , https://askubuntu.com/questions/659896/where-would-you-find-scp-logs

Embora eu não conheça todos os detalhes, parece que é imediato scpe sshd não tenho opções para registrar o que você está perguntando. Portanto, talvez seja necessário mais do que uma configuração simples, mas você não pode se afastar do fato de os administradores controlarem o servidor.

Steve Jessop
fonte
10

Qualquer coisa que passe sem criptografia pela memória de um computador pode ser lida ou alterada por um usuário com privilégios suficientes nessa máquina.

Os nomes dos processos em execução e a linha de comando usada para iniciá-los são acessíveis a qualquer usuário conectado no Linux. (Este não é o caso do Windows, para os curiosos.) Portanto, o administrador ou qualquer outra pessoa por perto pode ver quais arquivos você copiou. Além disso, é perfeitamente possível para o administrador configurar algum tipo de log de acesso a arquivos ou substituir / agitar o scpprograma em uma extremidade para fazer um log extra.

scpapenas protege você dos sniffers da rede. Obviamente, as duas extremidades precisam conhecer os dados descriptografados; portanto, há a oportunidade de um administrador sofisticado em um dos pontos de extremidade extrair os dados da scpmemória da memória. Outras soluções, mesmo aquelas que não envolvem linhas de comando, também estão abertas: ambas as extremidades sftpsabem o que está acontecendo, para que seja possível determinar por inspeção de memória o que sftpestá pensando / transferindo.

Ben N
fonte
6

Uma regra prática é que uma pessoa com acesso root pode saber tudo (se puder se dar ao trabalho de verificar). Provavelmente, a única coisa que está fora dos limites é um sistema de arquivos criptografado por certificado.

durante o ato, ele scpabre um processo no lado remoto, que pode ser visto por qualquer pessoa apenas invocando ps. Se você conseguir ocultar a linha de comando que aparece na lista de processos, lsof(lista de arquivos abertos) poderá mostrar quais arquivos estão sendo tocados. É tão fácil que, na verdade, estou fazendo isso para observar até onde está o processo de cópia que iniciei, se iniciei o processo em um terminal que não consigo visualizar no momento (onde a lista de arquivos está sendo impressa).

após o ato, uma verificação rápida findpode encontrar os arquivos mais recentes (se os carimbos de data e hora não foram preservados durante a cópia). Se os arquivos foram acessados ​​ou tocados de alguma forma durante uma sshsessão, você .bash_historymostra o que estava fazendo (mas você pode excluí-lo, se quiser).

Se a segurança for muito rigorosa, você sempre pode configurar um monitoramento adicional: você pode ouvir todas as modificações de arquivos com um daemon simples e registrar tudo sobre transações do sistema de arquivos, local e remoto, não importa. Não seria uma surpresa registrar todos os processos gerados pelo usuário . Se os backups estiverem sendo feitos, os arquivos ainda poderão ser armazenados em algum lugar depois que você os excluir.

orion
fonte
Quando você escreveu file, você quis dizer find?
a CVn
1

Os administradores do servidor são capazes de monitorar qualquer tráfego que entra ou sai de seu servidor, para que eles possam monitorar facilmente o tráfego SCP, se assim o desejarem, e verificar se você copiou os arquivos e quais arquivos foram copiados.

Micheal Johnson
fonte
"que você copiou arquivos" é muito diferente de "o que eu copio", conforme indicado pelo OP.
um CVn
eles podem ver isso também
Micheal Johnson