Linux: administradores de sistema produtivos sem raiz (protegendo a propriedade intelectual)?


66

Existe alguma maneira de tornar produtivo um administrador de sistemas Linux experiente sem fornecer a ele acesso root completo?

Esta questão vem de uma perspectiva de proteção à propriedade intelectual (IP), que no meu caso, é inteiramente código e / ou arquivos de configuração (ou seja, pequenos arquivos digitais que são facilmente copiados). Nosso molho secreto nos tornou mais bem-sucedidos do que o tamanho pequeno sugere. Da mesma forma, somos uma vez mordidos, duas vezes tímidos de alguns ex-funcionários inescrupulosos (não administradores de sistemas) que tentaram roubar IP. A posição da alta gerência é basicamente "Confiamos nas pessoas, mas por interesse próprio, não podemos arcar com o risco de conceder a qualquer pessoa mais acesso do que o necessário para realizar seu trabalho".

No lado do desenvolvedor , é relativamente fácil particionar fluxos de trabalho e níveis de acesso para que as pessoas possam ser produtivas, mas apenas ver o que precisam. Somente as principais pessoas (proprietários reais da empresa) têm a capacidade de combinar todos os ingredientes e criar o molho especial.

Mas não consegui encontrar uma boa maneira de manter esse sigilo de IP no lado do administrador do Linux. Fazemos uso extensivo do GPG para código e arquivos de texto confidenciais ... mas o que impede um administrador de (por exemplo) processar um usuário e saltar na sessão tmux ou GNU Screen e ver o que está fazendo?

(Também temos o acesso à Internet desabilitado em qualquer lugar que possa entrar em contato com informações confidenciais. Mas nada é perfeito e pode haver buracos abertos para administradores de sistema ou erros inteligentes no lado do administrador da rede. Ou até para o bom e velho USB. várias outras medidas em vigor, mas essas estão além do escopo desta questão.)

O melhor que posso apresentar é basicamente usando contas personalizadas com sudo , semelhante ao descrito em Vários administradores de sistemas Linux que trabalham como raiz . Especificamente: ninguém, exceto os proprietários da empresa, teria acesso root direto. Outros administradores teriam uma conta personalizada e a capacidade de fazer o sudo na raiz. Além disso, o log remoto seria instituído e os logs iriam para um servidor que somente os proprietários da empresa poderiam acessar. Ver o log desativado provocaria algum tipo de alerta.

Um administrador de sistema inteligente provavelmente ainda pode encontrar alguns buracos nesse esquema. E, além disso, ainda é reativo, e não proativo . O problema com nosso IP é tal que os concorrentes podem utilizá-lo muito rapidamente e causar muitos danos em pouco tempo.

Ainda melhor seria um mecanismo que limita o que o administrador pode fazer. Mas reconheço que esse é um equilíbrio delicado (principalmente à luz da solução de problemas e da correção de problemas de produção que precisam ser resolvidos no momento ).

Não posso deixar de me perguntar como outras organizações com dados muito sensíveis gerenciam esse problema? Por exemplo, administradores de sistemas militares: como eles gerenciam servidores e dados sem poder ver informações confidenciais?

Editar: Na postagem inicial, pretendia abordar preventivamente os comentários sobre "práticas de contratação" que estão começando a aparecer. Primeiro, essa deveria ser uma questão técnica , e as práticas de contratação da OMI tendem mais a questões sociais . Mas, segundo, direi o seguinte: acredito que fazemos tudo o que é razoável para contratar pessoas: entrevista com váriospessoas na empresa; verificação de antecedentes e de referência; todos os funcionários assinam vários documentos legais, incluindo um que diz que leu e entendeu nosso manual, que detalha detalhadamente as preocupações com PI. Agora, está fora do escopo desta pergunta / site, mas se alguém puder propor práticas de contratação "perfeitas" que filtrem 100% dos maus atores, sou todo ouvidos. Os fatos são: (1) não acredito que exista um processo de contratação tão perfeito; (2) as pessoas mudam - o anjo de hoje pode ser o diabo de amanhã; (3) tentativa de roubo de código parece ser algo rotineiro neste setor.


15
primeira coisa que veio à mente ao ler sua pergunta final ... Snowden.
Hrvoje Špoljar

33
Você pode ir longe com as políticas apropriadas do SELinux, mas isso será muito caro de implementar. No final do dia, os administradores de sistema devem ter algum acesso ao sistema e aos arquivos nele, para realizar seus trabalhos. Seu problema não é técnico, está no processo de contratação.
Michael Hampton

6
As forças armadas usam autorizações de segurança e integridade para duas pessoas . Mesmo assim, às vezes há violações. As chances de ambas as pessoas terem planos nefastos são muito menores.
314 Steve Steve

14
A razão pela qual isso cheira a um problema de pessoas é porque é um problema de pessoas.
Sirex 02/02

6
É para isso que servem as NDAs.
Michael Martinez

Respostas:


19

O que você está falando é conhecido como risco "Evil Sysadmin". O longo e curto disso é:

  • Um administrador de sistema é alguém que possui privilégios elevados
  • Tecnicamente adequado, a um nível que os tornaria um bom 'hacker'.
  • Interagindo com sistemas em cenários anômalos.

A combinação dessas coisas torna praticamente impossível interromper ações maliciosas. Até a auditoria se torna difícil, porque você não tem 'normal' para comparar. (E, francamente - um sistema quebrado também pode ter uma auditoria interrompida).

Existem várias etapas atenuantes:

  • Separação de privilégios - você não pode impedir que um cara com root faça nada no sistema. Mas você pode tornar uma equipe responsável pela rede e outra responsável por 'sistemas operacionais' (ou Unix / Windows separadamente).
  • Limite o acesso físico ao kit a uma equipe diferente, que não recebe contas de administrador ... mas cuida de todo o trabalho 'manual'.
  • Separe as responsabilidades de 'área de trabalho' e 'servidor'. Configure a área de trabalho para inibir a remoção de dados. Os administradores da área de trabalho não têm capacidade de acessar os sensíveis, os administradores do servidor podem roubá-lo, mas precisam passar por obstáculos para tirá-lo do prédio.
  • Auditoria para um sistema de acesso restrito - sysloge auditoria em nível de evento, para um sistema relativamente resistente a violações ao qual eles não têm acesso privilegiado. Mas coletar não é suficiente, é preciso monitorá-lo - e, francamente, existem várias maneiras de "roubar" informações que podem não aparecer no radar de auditoria. (Caçador contra guardiões do jogo)
  • aplique a criptografia "em repouso", para que os dados não sejam armazenados "de maneira clara" e exija um sistema ativo para acessar. Isso significa que as pessoas com acesso físico não podem acessar um sistema que não está sendo monitorado ativamente e que, em um cenário 'anômalo' em que um administrador de sistemas está trabalhando nele, os dados são menos expostos. (por exemplo, se o banco de dados não estiver funcionando, os dados provavelmente não serão legíveis)
  • Regra de dois homens - se você estiver bem com sua produtividade prejudicada e seu moral da mesma forma. (Sério - eu já vi isso, e o estado persistente de trabalhar e ser observado torna as condições de trabalho extremamente difíceis).
  • Controle seus administradores de sistema - podem existir várias verificações de registros, dependendo do país. (Verificação de registros criminais, você pode até achar que pode solicitar uma habilitação de segurança em alguns casos, o que acionará a verificação)
  • Cuide de seus administradores de sistema - a última coisa absoluta que você deseja fazer é dizer a uma pessoa "confiável" que você não confia nela. E você certamente não quer prejudicar o moral, porque isso aumenta a chance de comportamento malicioso (ou 'não é negligência, mas um deslize na vigilância'). Mas pague de acordo com a responsabilidade e o conjunto de habilidades. E considere 'regalias' - que são mais baratas que o salário, mas provavelmente valorizam mais. Como café grátis ou pizza uma vez por semana.
  • e você também pode tentar aplicar condições contratuais para inibi-lo, mas tenha cuidado com o exposto acima.

Mas, basicamente, você precisa aceitar que isso é uma coisa de confiança, não uma coisa técnica. Seus administradores de sistema sempre serão potencialmente muito perigosos para você, como resultado dessa tempestade perfeita.


2
Ocasionalmente uso o chapéu sysadmin. Eu achei necessário manter ferramentas poderosas espalhadas por onde eu possa chegar até elas, algumas das quais têm como objetivo específico burlar os controles de acesso ao sistema (no caso de alguém conseguir bloquear todos de uma estação de trabalho, é claro). Como a própria natureza de sua operação, a auditoria é enfraquecida ou ineficaz.
joshudson

3
Sim. Por todas as razões pelas quais os serralheiros podem invadir sua casa legitimamente, os administradores de sistemas podem precisar entrar na rede.
Sobrique

@Sobrique: há algo que eu ainda não entendo: por que ouvimos falar sobre administradores de sistemas desonestos roubando muitos dados e não sobre empregadas desonestas fazendo o mesmo (eles podiam fazer isso durante o tempo em que tudo estava no papel) .
user2284570

Volume - terabytes de cópia impressa são grandes. E danos. Sabotar um sistema de TI pode literalmente destruir uma empresa.
Sobrique

51

Tudo o que foi dito até aqui aqui é bom, mas existe uma maneira não técnica 'fácil' que ajuda a negar um administrador de sistema desonesto - o princípio dos quatro olhos que basicamente exige que dois administradores de sistema estejam presentes para qualquer acesso elevado.

Edição: Os dois maiores itens que eu já vi nos comentários estão discutindo o custo e a possibilidade de conluio. Uma das maiores maneiras que considerei evitar esses dois problemas é com o uso de uma empresa de serviços gerenciados usada apenas para verificar as ações tomadas. Feito corretamente, os técnicos não se conheceriam. Assumindo as proezas técnicas que um MSP deveria ter, seria fácil o suficiente para concluir as ações executadas .. talvez até tão simples quanto um sim / não para algo nefasto.


17
@ Sirex: Sim, esse é o problema da segurança - sempre tem um custo.
Sleske #

10
Não, trabalhei em organizações bastante pequenas (100 a 1000 pessoas) que fizeram exatamente isso. Eles apenas aceitaram que seus procedimentos custariam toda a atividade do administrador de sistema entre quatro e dez vezes mais dinheiro do que seria, e pagaram.
MadHatter 02/02

10
Esta é a única resposta real. Nosso kit fica em alguns locais seguros do governo e (entre outras etapas) usamos essa abordagem para garantir que ninguém possa acessar um terminal elevado. Uma solicitação detalhada é solicitada para que o trabalho seja realizado, muitas pessoas assinam (50+, suspiro ) e dois administradores se reúnem e fazem a alteração. Minimiza riscos (e também erros tolos). É caro e monumental para fazer qualquer coisa, mas esse é o preço da segurança. Re: 50 + signatários, que inclui equipe de rede, a equipe DC, gerentes de projeto, segurança, armazenamento, pen tester, fornecedor de software, etc.
Básico

4
Você provavelmente lutaria para contratar, sim. Seria uma parada instantânea para mim, pois eu realmente gosto de fazer as coisas e prejudicaria minha satisfação no trabalho.
Sirex 02/02

3
Observe que o aumento de custos não se aplica a todas as ações do administrador de sistemas. No entanto, aplica-se tanto às ações elevadas em si quanto à sua preparação. Não se pode dizer: "o sysadmin trabalha 40 horas por semana, 4 delas elevadas, portanto o aumento de custos seria de apenas 10%". No lado positivo, o esquema também pega erros normais e honestos. Isso economiza dinheiro.
MSalters 02/02

27

Se as pessoas realmente precisam de acesso de administrador a um sistema, há pouco que você pode fazer para restringir suas atividades nessa caixa.

O que a maioria das organizações faz é confiar, mas verifique - você pode dar às pessoas acesso a partes do sistema, mas usa contas de administrador nomeadas (por exemplo, você não lhes dá acesso direto ao root ) e depois audita suas atividades em um log que elas não pode interferir.

Há um ato de equilíbrio aqui; pode ser necessário proteger seus sistemas, mas você também precisa confiar nas pessoas para fazerem o trabalho delas. Se a empresa foi anteriormente "mordida" por um funcionário inescrupuloso, isso pode sugerir que as práticas de contratação das empresas são ruins de alguma forma, e essas práticas foram presumivelmente criadas pelos "principais gerentes". A confiança começa em casa; o que eles estão fazendo para corrigir suas escolhas de contratação?


3
Essa é uma ótima observação - uma boa auditoria permite que as pessoas realizem seu trabalho e continuem sendo responsáveis ​​por suas ações.
Steve Bonds

11
O uso adequado de auditd e syslog também pode percorrer um longo caminho. Esses dados podem ser monitorados por uma infinidade de ferramentas de segurança para procurar comportamentos estranhos ou claramente ruins.
Aaron

3
O verdadeiro problema com a auditoria é que há muito barulho. Depois de alguns meses, ninguém examinará os logs, exceto quando algo aconteceu.
TomTom

11
Concordo com a TomTom, acertar a relação sinal / ruído nos logs de segurança é um problema, mas você ainda precisa fazer o log. @Sobrique Eu diria, no entanto, que 'administradores de sistemas malignos' são predominantemente um problema de contratação e não de tecnologia; você precisa fechar os dois lados da lacuna, para que eu exija as 'melhores práticas' do dia-a-dia e melhore os processos de contratação, considere '4 olhos' para o verdadeiro molho secreto, como Tim mencionou, e também peneire logs
Rob Moir

11
Um pouco, mas lembre-se de um 'ciclo de trabalho' que um ator de boa-fé anterior pode transformar em um malicioso. Isso significa mais privação de direitos e moral do que práticas de contratação propriamente ditas. As coisas que tornam alguém um bom administrador de sistemas também o tornariam um bom hacker. Então, talvez nesse ponto - contratar administradores de sistemas medíocres é o caminho a seguir?
Sobrique

18

Sem se colocar em uma loucura mental mental insana para tentar encontrar uma maneira de fornecer um poder de administrador de sistema sem dar a ele poder (é provável que seja possível, mas acabaria sendo defeituoso de alguma forma).

Do ponto de vista da prática de negócios, há um conjunto de soluções simples. Solução não barata, mas simples.

Você mencionou que as partes do IP que você está preocupado estão divididas e apenas as pessoas no topo têm o poder de vê-las. Esta é essencialmente a sua resposta. Você deve ter vários administradores e NENHUM deles deve ser um administrador em sistemas suficientes para reunir a imagem completa. É claro que você precisaria de pelo menos 2 ou 3 administradores para cada peça, caso um administrador esteja doente ou em um acidente de carro ou algo assim. Talvez até os cambaleie. digamos que você tenha 4 administradores e 8 informações. o administrador 1 pode acessar sistemas com as partes 1 e 2, o administrador 2 pode acessar as partes 2 e 3, o administrador 3 pode acessar os 3 e 4 e o administrador 4 pode acessar os 4 e 1. Cada sistema possui um administrador de backup, mas não admin é capaz de comprometer a imagem completa.

Uma técnica que os militares também usam é a limitação da movimentação de dados. Em uma área sensível, pode haver apenas um sistema capaz de gravar um disco ou usar uma unidade flash USB, todos os outros sistemas são restritos. E a capacidade de usar esse sistema é extremamente limitada e requer aprovação documentada específica de altos executivos antes que alguém possa colocar dados sobre qualquer coisa que possa levar ao derramamento de informações. Da mesma forma, você garante que o tráfego de rede entre sistemas diferentes seja limitado por firewalls de hardware. Seus administradores de rede que controlam as paredes de incêndio não têm acesso aos sistemas para os quais estão roteando; portanto, eles não podem ter acesso específico às informações e os administradores de servidor / estação de trabalho garantem que todos os dados de e para um sistema estejam configurados para serem criptografados,

Todos os laptops / estações de trabalho devem ter discos rígidos criptografados e cada funcionário deve ter um cacifo pessoal, necessário para bloquear as unidades / laptops no final da noite para garantir que ninguém chegue cedo / saia tarde e tenha acesso a algo eles não deveriam.

Cada servidor deve, no mínimo, estar em seu próprio rack bloqueado, se não em sua própria sala bloqueada, para que apenas os administradores responsáveis ​​por cada servidor tenham acesso a ele, pois no final do dia o acesso físico supera tudo.

Em seguida, há uma prática que pode prejudicar / ajudar. Contratos limitados. Se você acha que pode pagar o suficiente para continuar atraindo novos talentos, a opção de manter apenas um administrador por um período de tempo predeterminado (IE 6 meses, 1 ano, 2 anos) permitiria limitar o tempo que alguém teria para tentar reunir todas as partes do seu IP.

Meu design pessoal seria algo como ... Divida seus dados em várias partes, digamos, para ter um número 8, você tem 8 servidores git, cada um com seu próprio conjunto de hardware redundante, cada um administrado por um conjunto diferente de administradores.

Unidades de disco rígido criptografadas para todas as estações de trabalho que tocam no IP. com um diretório "projeto" específico na unidade, que é o único diretório que os usuários podem colocar em seus projetos. No final de cada noite, eles são obrigados a sanar seus diretórios de projeto com uma ferramenta de exclusão segura, e os discos rígidos são removidos e trancado (apenas por segurança).

Cada bit do projeto tem um administrador diferente atribuído a ele, para que um usuário interaja apenas com o administrador da estação de trabalho ao qual está designado; se a atribuição do projeto for alterada, os dados forem limpos, eles receberão um novo administrador. Seus sistemas não devem ter recursos de gravação e devem usar um programa de segurança para impedir o uso de unidades flash USB para transferir dados sem autorização.

tire disso o que quiser.


2
Obrigado, muitas coisas boas por aí, e muitas que estamos fazendo. Embora eu goste da ideia de vários administradores, não somos grandes o suficiente para precisar disso. Eu realmente só preciso de um administrador, por isso, se eu tivesse quatro, eles geralmente ficariam entediados. Como encontramos o talento de primeira linha que queremos, mas apenas proporcionamos a eles uma carga de trabalho minúscula? Receio que as pessoas inteligentes fiquem entediadas rapidamente e passem para pastos mais verdes.
Matt

2
Sim, isso é um grande problema e, na verdade, o campo do governo sofre muito. O local em que comecei como administrador era frequentemente referido como "a porta giratória". A coisa toda é um problema difícil de lidar. A garantia da informação em geral é um osso duro de roer: \
Gravy

@Matt How do we find the top-tier talent we want, but only give them a teeny-tiny workload?Até certo ponto, você pode atenuar isso, oferecendo a eles um amplo ambiente de teste / pesquisa e desenvolvimento, acesso a novos brinquedos legais e incentivando-os a gastar partes significativas de sua jornada de trabalho no desenvolvimento de suas habilidades técnicas. Uma carga de trabalho efetiva de 25% provavelmente está levando isso muito longe, mas eu ficaria exagerado sobre um trabalho que é 50% trabalho real e 50% desenvolvimento técnico / P&D (supondo que o salário esteja no mesmo nível que ~ 100% normal " trabalho real "trabalho).
23716 HopelessN00b

11

Seria semelhante ao desafio de contratar um zelador para um edifício. O zelador tem todas as chaves, pode abrir qualquer porta, mas a razão é que o zelador precisa delas para fazer o trabalho. O mesmo acontece com os administradores do sistema. Simetricamente, pode-se pensar neste problema antigo e ver como a confiança é concedida historicamente.

Embora não exista uma solução técnica limpa, o fato de não haver uma razão para não tentarmos, uma agregação de soluções imperfeitas pode gerar ótimos resultados.

Um modelo em que a confiança é conquistada :

  • Dê menos permissões para começar
  • Aumentar gradualmente as permissões
  • Coloque um honeypot e monitore o que acontece nos próximos dias
  • Se o administrador do sistema relatar isso em vez de tentar abusar, é um bom começo

Implementar vários níveis de poderes administrativos :

  • Nível 1: pode modificar a camada inferior dos arquivos de configuração
  • Nível 2: pode modificar um pouco mais alto nível de arquivos de configuração
  • Nível 3: pode modificar um pouco mais alto nível de arquivos de configuração e configurações do sistema operacional

Sempre crie um ambiente em que o acesso total de uma pessoa não seja possível :

  • Sistemas divididos em clusters
  • Conceder poderes de administração de cluster a diferentes grupos
  • Mínimo 2 grupos

Use a regra de dois homens ao fazer alterações principais de alto nível :

Confie e verifique :

  • Registrar tudo
  • Monitoramento e alerta de logs
  • Garantir que todas as ações sejam distinguíveis

Papelada :

  • Peça que eles assinem a papelada para que o sistema legal possa ajudá-lo, processando-os se eles o machucarem, dando mais incentivo para não fazê-lo

Não apenas registra tudo, mas algo precisa monitorar e alertar sobre esses registros, idealmente de uma maneira que seja fácil para os humanos consumirem.
Aaron

9

É muito, muito difícil proteger hosts contra aqueles com acesso administrativo. Enquanto ferramentas como o PowerBroker tentam fazer isso, o custo está adicionando algo mais que pode quebrar E adicionando barreiras às tentativas de corrigi-lo. Sua disponibilidade do sistema vai cair quando você implementar algo parecido com isso para definir essa expectativa cedo quanto o custo de proteger as coisas.

Outra possibilidade é verificar se o aplicativo pode ser executado em hosts descartáveis ​​por meio de um provedor de nuvem ou em uma nuvem privada hospedada localmente. Quando um quebra, em vez de enviar um administrador para corrigi-lo, você o joga fora e cria automaticamente uma substituição. Isso exigirá muito trabalho do lado do aplicativo para executá-los neste modelo, mas pode resolver muitos problemas operacionais e de segurança. Se mal realizado, pode criar alguns problemas significativos de segurança, portanto, obtenha ajuda experiente se você seguir esse caminho.


4

Esta é sua discussão de linha de base: https://security.stackexchange.com/questions/7801/keeping-secrets-from-root-on-linux

Você divide sua responsabilidade com engenheiros de segurança cujo trabalho é fazer configurações e instalações do sistema, mas eles não obtêm credenciais ou acessam máquinas em produção. Eles também executam sua infraestrutura de auditoria.

Você tem administradores de produção que recebem os sistemas, mas não têm as chaves para inicializar a máquina sem que as políticas do SELinux estejam ativas. A segurança não obtém as chaves para descriptografar dados confidenciais armazenados em repouso no disco para quando eles recebem uma máquina quebrada de serviço.

Faça uso de um sistema de autenticação centralizado com auditoria forte como o Vault e faça uso de suas operações de criptografia. Distribua dispositivos Yubikey para tornar as chaves absolutamente privadas e ilegíveis.

As máquinas são limpas na quebra ou são manuseadas por operações e segurança juntas, e se você sentir a necessidade de supervisão executiva.


2

Os administradores pela natureza do trabalho têm acesso a tudo. Eles podem ver todos os arquivos no sistema de arquivos com suas credenciais de administrador. Portanto, você precisará de uma maneira de criptografar os arquivos para que os administradores não possam vê-lo, mas os arquivos ainda poderão ser utilizados pelas equipes que o verão. Veja a criptografia transparente Vormetric ( http://www.vormetric.com/products/transparent-encryption )

A maneira como funcionaria é que fica entre o sistema de arquivos e os aplicativos que acessam. O gerenciamento pode criar a política que diz "Somente o usuário httpd, executando o daemon do servidor da web, pode ver os arquivos não criptografados". Em seguida, um administrador com suas credenciais raiz pode tentar ler os arquivos e obter apenas a versão criptografada. Mas o servidor da web e as ferramentas necessárias precisa vê-los não criptografados. Pode até somar o binário para dificultar a administração do administrador.

Obviamente, você deve habilitar a auditoria para que, no caso de um administrador tentar acessar os arquivos, uma mensagem seja sinalizada e as pessoas saibam disso.


11
Quem, então, pode atualizar os arquivos? Como eles fazem isso?
Michael Hampton

3
Além disso ... Se eu sou root nessa caixa, é provável que eu possa subverter o daemon do servidor da web. Mesmo se estiver verificando hashes binários para garantir que não substitui o daemon, haverá uma maneira de enganar o servidor da Web para fazer uma solicitação aparentemente legítima dos dados.
Básico

11
Na verdade, os SysAdmins podem não ter acesso a todos os arquivos - C2 e sistemas mais seguros podem bloquear os administradores. Eles podem FORÇAR o acesso, mas isso é irrevogável (configurá-los como usuário) e deixa rastros (log, que eles podem excluir, mas não podem mudar facilmente).
TomTom

Isso não ajudaria, pois um administrador pode 'se tornar' httpd ... Os administradores também podem ler / dev / mem e, portanto, todas as chaves.
John Keates 02/02

2
@ TomTom: A possibilidade de um sistema operacional satisfazer C2 é um mito. O Windows NT4 passou na certificação, mas acabou sendo um passe fraudulento. A capacidade de recuperar o acesso forçado sempre existiu, e eu o usei, e temos um procedimento que depende do funcionamento, porque algum programa tenta usá-lo para verificar se seus arquivos não foram violados, mas precisamos mudar eles.
joshudson

2

A única maneira prática é restringir quem pode fazer o que com o sudo. Você também pode fazer o que quiser com o selinux, mas provavelmente levaria uma eternidade para descobrir a configuração correta, o que pode torná-lo impraticável.

Acordos de não divulgação. Contrate um administrador de sistemas, eles precisam assinar um NDA; se quebrar sua promessa, levá-lo ao tribunal. Isso pode não impedi- los de roubar segredos, mas qualquer dano que eles causem ao fazê-lo é recuperável em tribunal.

Os administradores do sistema militar e do governo precisam obter autorizações de segurança de diferentes graus, dependendo da sensibilidade do material. A idéia é que alguém que pode obter uma autorização tem menos probabilidade de roubar ou trapacear.


A ideia é que 1) obter e manter essa autorização limita sua capacidade de fazer negócios obscuros; 2) os trabalhos que exigem maiores folgas de segurança pagam melhor, o que significa um forte incentivo para manter essa folga, independentemente de você gostar do seu atual empregador.
Shadur 02/02

Dito isto, novamente, o OP disse especificamente que está pedindo medidas preventivas - com certeza, você pode processá-las por violação da NDA posteriormente, mas um administrador de sistemas o acerta com a probabilidade de ganhar dinheiro suficiente para recuperar o tipo de dano que está implicando?
Shadur 02/02

você não está apenas recuperando as perdas do administrador de sistemas, mas de quem ou qualquer outra empresa que esteja lucrando com esses segredos.
22816 Michael Martinez

Este é um ambiente muito secreto para começar. Então, digamos que o administrador do sistema rouba molho secreto, rastrear quem ele vendeu é basicamente impossível. E se ele roubar algum código, sair em boas condições, vender código para um concorrente? De repente, nossos lucros estão diminuindo, mas não sabemos como (isso é finanças, um mercado anônimo).
Matt

@ Matt Isso representa um risco tanto para os responsáveis ​​quanto para aqueles que não o são. Pessoas com molho secreto se preocupando com alguém roubando quando é provável que um deles o faça.
Michael Martinez

1

Outra maneira de diminuir o risco (use ao lado dos mencionados anteriormente, e não em vez de) é pagar um bom dinheiro aos administradores do sistema. Pague-os tão bem que eles não querem roubar seu IP e deixar você.


2
Vejo de onde você vem, mas acho que a maioria de nós tem mais ética profissional do que isso. Eu não roubo os segredos dos meus clientes, mas não é porque eles me pagam o suficiente que eu não sinto a necessidade, é porque seria errado fazer isso; Eu suspeito que não sou a única pessoa aqui que se sente assim.
MadHatter 02/02

11
Sim, como Ben Franklin escreveu uma vez: "Nunca cobrar a alguém mais do que custa para matar você". Mas ao contrário.
Bruce Ediger 02/02

Você não pode subornar alguém para a integridade. Isso simplesmente não vai funcionar. Como um homem sábio disse uma vez: estabelecemos que tipo de pessoa você é, agora estamos apenas discutindo sobre o preço. Mas você pode ganhar a lealdade de alguém fazendo o que é certo por ela. O pagamento faz parte disso, mas o mesmo acontece com muitas coisas. Autonomia e domínio - dê liberdade, treinamento e desenvolvimento. O problema é que a tentação pode ser oprimi-los para que não se desviem e depois suborná-los para "consertar" isso. Mas, como todos os relacionamentos abusivos, isso vai sair pela culatra.
Sobrique

2
Eu acabei de escrever que é de outra maneira, não é boa. Eu acho que quando alguém está contratando um novo administrador de sistema, deve haver confiança. Porque o sysadmin é - próximo ao CEO e CFO - alguém que pode destruir a empresa em minutos. Um bom administrador não funcionará com pouco dinheiro (ou alguém de vocês funcionará?) E o administrador de sistemas que trabalhará com pouco dinheiro é mais perigoso.
Ondra Sniper Flidr

1

Eu estou pensando que esta pergunta pode não ser possível responder completamente sem mais alguns detalhes, como:

Quantos administradores de sistema você espera manter "restrito"?

Para que as pessoas precisam de acesso "sysadmin"?

Antes de tudo, esteja ciente do que você pode fazer com o sudo. Com o sudo, você pode permitir permissões elevadas para executar apenas um único comando (ou variações, como comandos que começam com "mount -r", mas outros comandos não são permitidos). Com chaves SSH, você pode atribuir credenciais que permitem a uma pessoa executar apenas um determinado comando (como "sudo mount -r / dev / sdd0 / media / backup"). Portanto, existe uma maneira relativamente fácil de permitir que praticamente qualquer pessoa (que possua uma chave SSH) possa executar algumas operações específicas sem permitir que façam absolutamente tudo o resto.

As coisas ficam um pouco mais desafiadoras se você quiser que os técnicos executem correções do que está quebrado. Isso normalmente pode exigir uma quantidade maior de permissões e, talvez, acesso para executar uma ampla variedade de comandos e / ou gravar em uma variedade de arquivos.

Sugiro considerar a abordagem de sistemas baseados na Web, como o CPanel (que é usado por vários ISPs) ou sistemas baseados na nuvem. Geralmente, eles podem fazer com que os problemas de uma máquina desapareçam, fazendo com que a máquina inteira desapareça. Portanto, uma pessoa pode executar um comando que substitui a máquina (ou restaura a máquina para uma imagem em bom estado), sem necessariamente dar à pessoa acesso para ler muitos dados ou fazer pequenas alterações (como combinar uma correção menor) com a introdução de uma porta traseira não autorizada). Então, você precisa confiar nas pessoas que fazem as imagens, mas está reduzindo quantas pessoas você precisa para fazer coisas menores.

Por fim, porém, é necessário fornecer uma certa quantidade de confiança a um número diferente de zero de pessoas que ajudam a projetar o sistema e que operam no nível mais alto.

Uma coisa que as grandes empresas fazem é confiar em coisas como servidores SQL, que armazenam dados que podem ser acessados ​​remotamente por um número maior de máquinas. Em seguida, um número maior de técnicos pode ter acesso root completo em algumas máquinas, embora não tenha acesso root aos servidores SQL.

Outra abordagem é ser grande demais para falir. Não pense que grandes forças armadas ou corporações gigantescas nunca têm incidentes de segurança. No entanto, eles sabem como:

  • recuperar,
  • limitar o dano (separando coisas valiosas)
  • contra-medidas, incluindo ameaças de litígios
  • tenha processos para ajudar a limitar a exposição indesejável à imprensa e planeje como influenciar o giro de quaisquer histórias negativas que se desenvolvam

A suposição básica é que os danos que ocorrem são simplesmente um risco e um custo para os negócios. Eles esperam continuar operando, e os desenvolvimentos e melhorias em andamento ao longo dos anos limitarão a quantidade de danos que um único incidente provavelmente afetará seu valor de longo prazo por um período de tempo.



0

Coloque a máquina de administração raiz na sala bloqueada com duas chaves e dê apenas uma para cada um dos dois administradores. Os administradores sempre trabalharão juntos, observando as atividades um do outro. Deve ser a única máquina que contém a chave privada para efetuar login como root.

Algumas atividades podem não precisar de direitos de root; portanto, apenas parte do trabalho exigiria ir para essa sala para "programação em pares"

Você também pode gravar atividades de vídeo nessa sala principalmente para garantir que ninguém trabalhe sozinho (isso é facilmente visível). Além disso, verifique se o local de trabalho é tal que a tela seja facilmente visível para as duas pessoas (talvez uma tela de TV grande com fontes grandes).

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.