Como eu detecto um Trojan
Detectar Trojans é fácil, se você tiver um teste padrão de estática da busca a fazer a varredura para. o software do Anti-vírus detecta rotineiramente (alguns) usar-se de Trojans muito as mesmas técnicas teste-procurarando usadas detectando vírus. Entretanto, a identificação de um Trojan conhecido não é sempre a mais melhor defesa. A deteção de Trojans previamente desconhecido é também (conceptual) simples, desde que você manteve sempre as mais melhores práticas da segurança (literalmente sempre, ao menos tanto quanto o sistema protegido). A maioria de métodos de deteção em sistemas multiuser tradicionais derivam-se de um reconciliation às vezes chamado do objeto do princípio. O reconciliation do objeto é uma maneira extravagante de pedir, "são as coisas ainda justas a maneira I à esquerda eles?" É aqui como trabalha: Os objetos são áreas do sistema, tais como limas ou diretórios. O reconciliation é o processo de comparar aqueles objetos de encontro a um registro do instantâneo dos mesmos objetos feitos exame em alguma data precedente quando o objeto protegido foi sabido para estar em um trustworthy, "limpa" o estado. Nota Estritamente falar, lá não é nenhuma tal "hora do estado limpo". Mesmo do "uma instalação zero dia" do software de sistema em um sistema virgem supõe um suite do programa com nenhumas substituições e portas traseiras. Pode você colocar confiança ilimitada em um sistema você faz não a configuração totalmente do risco você mesmo? "nenhuma quantidade de verificação ou de scrutiny do fonte-nível protegê-lo-á de usar-se untrusted o código," diz Ken Thompson em suas reflexões em confiar na confiança. este meio que nós deve dar acima nesta aproximação? Naturalmente não, mas nós devemos ter que, uniforme se nós construirmos um tion do applica do código de fonte scrutinized, nós não pudemos poder confiar no compilador ou em cada snippet do microcódigo da ferragem no cartão-matriz do sistema. Mais geralmente, o processo descrito como o reconciliation do objeto é sabido como a deteção da mudança, verificar da integridade, ou a gerência da integridade. Entretanto, estes termos não são estritamente synonymous. A deteção da mudança descreve simplesmente toda a técnica que alertar o usuário ao fato que um objeto estêve mudado em algum respeito. Verificar da integridade tem o mesmo meaning do núcleo, mas é feito exame frequentemente para implicar uma aproximação mais sofisticada, não somente a detectar a mudança apesar das tentativas de escondê-la, mas a assegurar-se de que o software de relatório próprio não subverted. A gerência da integridade é um termo mais geral. Pode incluir não somente a deteção de mudanças desautorizadas, mas outros métodos de manter a integridade do sistema. Tais métodos podem incluir algum ou todo o seguinte, em nenhuma ordem particular:
Um método simples de testar a integridade da lima, é baseado em relatórios das mudanças na informação do estado da lima. Os testes diferentes da integridade da lima variam no sophistication. Para o exemplo, você pode crua testar a integridade de uma lima usando alguns dos seguintes índices:
Infelizmente, nenhuns destes três métodos constituem uma defesa realmente adequada de encontro a mais do que o ataque o mais cru. Cada vez que uma lima é alterada, seus valores mudam. Para o exemplo, cada vez que a lima é aberta, alterada, e conservada, uma data último-modificada nova emerge. Entretanto, esta data pode fàcilmente ser manipulada. Considere manipular este timestamp da lima. Como difícil é? Mude o tempo do sistema, aplique desejado edita, archive a lima, e restauram o tempo do sistema. Melhore ainda, comece e excepto a informação do date/time usando funções de biblioteca padrão de C (por exemplo), modificam ou substituem o objeto, e restauram a data da modificação da lima. Em um sistema single-user (como o MS-DOS) com nenhuns de acesso controles mínimos ou, o coding envolvido é trivial. Para este filho do rea, verificar a época da modificação é uma maneira unreliable detectar a mudança. Também, a última data da modificação não revela nada se a lima for unaltered (para o exemplo, se for copí somente, visto, ou enviado). Na outra mão, se houver um disparity entre a data da modificação retornada pelo sistema e a data da modificação gravada por um sistema que monitora a utilidade, há uma possibilidade distinta de ação maliciosa. Uma outra maneira verificar a integridade de uma lima é examinando seu tamanho. Entretanto, este valor pode muito fàcilmente ser manipulado, aparando ou acolchoando a lima própria, ou alterando o valor relatado pelo sistema operando-se. Há outros índices. Para o exemplo, as somas de controle básicas podiam ser usadas. Entretanto, embora as somas de controle sejam mais de confiança do que carimbar da hora e de data, podem ser alteradas, demasiado. Se você confiar em um sistema básico da soma de controle (ou use o software da deteção da mudança, que confia em checksumming simples), é particularmente importante que você mantem sua lista da soma de controle em um ambiente confiado. Isto pôde significar em um usuário separado ou mesmo um meio separado, uns acessíveis somente pela raiz ou por outra confiaram em usuários. As somas de controle trabalham eficientemente e apropriadamente verificando a integridade de uma lima transferida, para ver se há o exemplo, o ponto A ao ponto B, mas não são apropriadas para aplicações elevadas da segurança. Não são projetados simplesmente guardar de encontro a uma tentativa maliciosa de subvert os para retornar a informação falsa. Uma técnica mais menos fàcilmente subverted envolve calcular uma impressão digital digital mais sofisticada para cada lima usando vários algoritmos. Uma família dos algoritmos chamados a série de MD pode ser usada para esta finalidade. Uma das execuções as mais populares é um sistema chamado MD5. MD5MD5 pertence a uma família das funções de sentido único da mistura chamadas algoritmos do sumário da mensagem. O sistema MD5 é definido em RFC 1321 como segue: O algoritmo faz exame como a entrada de uma mensagem do comprimento arbitrário e produ-la como saída um 128-bit "impressão digital" ou da "sumário mensagem" da entrada. Conjectured que é computacionalmente infeasible produzir duas mensagens que têm o mesmo sumário da mensagem, ou para produzir toda a mensagem que tem um sumário pré-especificado dado da mensagem do alvo. O algoritmo MD5 é pretendido para as aplicações digitais da assinatura, onde uma lima grande deve ser "comprimida" em uma maneira segura antes de ser cifrada com uma chave (secreta) confidencial sob um cryptosystem da público-chave tal como RSA. Quando você funciona uma lima com MD5, a impressão digital emerge enquanto um valor 32-character. Olha como esta: 2d50b2bffb537cc4e637dd1f07a187f4 Muitos locais que distribuem o uso MD5 do software de UNIX gerar impressões digitais digitais para suas distribuições. Porque você browse seus diretórios, você pode examinar a impressão digital digital original de cada lima. Uma lista típica do diretório pôde olhar como esta: MD5 (wn-1.17.8.tar.gz) = 2f52aadd1defeda5bad91da8efc0f980 MD5 (wn-1.17.7.tar.gz) = b92916d83f377b143360f068df6d8116 MD5 (wn-1.17.6.tar.gz) = 18d02b9f24a49dee239a78ecfaf9c6fa MD5 (wn-1.17.5.tar.gz) = 0cf8f8d0145bb7678abcc518f0cb39e9 MD5 (wn-1.17.4.tar.gz) = 4afe7c522ebe0377269da0c7f26ef6b8 MD5 (wn-1.17.3.tar.gz) = aaf3c2b1c4eaa3ebb37e8227e3327856 MD5 (wn-1.17.2.tar.gz) = 9b29eaa366d4f4dc6de6489e1e844fb9 MD5 (wn-1.17.1.tar.gz) = 91759da54792f1cab743a034542107d0 MD5 (wn-1.17.0.tar.gz) = 32f6eb7f69b4bdc64a163bf744923b41 Se você download uma lima de tal usuário e encontrar que a impressão digital digital da lima downloaded é diferente, há uma possibilidade boa que algo seja amiss. Com ou sem o MD5, a gerência da integridade é um processo complexo. As várias utilidades foram projetadas ajudar com gerência da integridade em sistemas complexos e distribuídos. As seguintes utilidades UNIX-foram baseadas originalmente, mas os programas similares estão disponíveis para sistemas operando-se de Microsoft. TripwireTripwire (escrito em 1992) é uma ferramenta detalhada da integridade da lima. Tripwire é projetado bem, compreendido fàcilmente, e executado fàcilmente. Os valores originais (impressões digitais digitais) para que as limas sejam monitoradas são mantidos dentro de uma lima de base de dados. Que a lima de base de dados no formato simples do ASCII está alcançada sempre que uma assinatura necessita ser calculada ou verificado. Idealmente, uma ferramenta tal como Tripwire seria usada imediatamente depois (dia zero) de uma instalação fresca. Isto dá-lhe 100% a garantia da integridade do sistema de lima como um ponto começar (ou quase 100%—recorde o artigo de Ken Thompson). Uma vez que você gera a base de dados completa para seu sistema de lima, você pode introduzir outros usuários (quem encherão imediatamente seu sistema com a sucata que, opcionalmente, pode também fingerprinted e verificado em verificações subseqüentes). Estão aqui algumas de suas características mais úteis:
Tripwire é uma ferramenta popular e eficaz, mas há algumas edições de segurança comuns a a maioria ou a todas as ferramentas de gerência da integridade. Uma tal edição relaciona-se à base de dados dos valores que é gerada e mantida. Do começo, os autores de Tripwire estavam bem cientes deste: A base de dados usada pelo verificador da integridade deve ser protegida das modificações desautorizadas; um intruder que possa mudar a base de dados pode subvert a integridade inteira que verifica o esquema. Um método de proteger a base de dados deve armazená-la em meios de leitura apenas. Isto elimina toda a probabilidade de alterar. Kim e Spafford sugerem que a base de dados esteja protegida nesta maneira, embora indiquem que esta poderia apresentar alguns problemas práticos, processuais. Muito depende em cima de como frequentemente a base de dados será updated, e seu tamanho. Certamente, se você executasse Tripwire ou uma utilidade similar em uma escala larga (e usassem seus ajustes mais estritos), a manutenção de uma base de dados de leitura apenas poderia ser formidable. Como usual, isto quebra para baixo a um trade-off entre o nível do risco e a inconveniência de ajustar e de manter defeitos paranoid. TAMUO suite do tigre de TAMU (da universidade de Texas A&M) é uma coleção das ferramentas que extremamente hance do en a segurança de uma caixa de UNIX. Estas ferramentas foram criadas in-house, em resposta a um ataque extensivo de um grupo coordenado de biscoitos do Internet. O pacote foi promovido e rebatizou TARA (assistente de pesquisa analítico do tigre). Incorpora um número de certificados usados fazer a varredura de sistemas de UNIX para problemas. HobgoblinHobgoblin é uma execução interessante de verificar da lima e da sistema-integridade. É uma língua e um intérprete. A língua, de acordo com os autores, descreve as propriedades de um jogo das limas, e as verificações do intérprete se a descrição combina as limas reais, e embandeira todas as exceções. Em Outras PlataformasOs verificadores da integridade da lima existem para Windows, (no fato há uma execução de Tripwire para Windows NT). Os verificadores da integridade necessariamente não são projetados expressa verificar máquinas múltiplas e redes excedentes dos sistemas de lima. Algumas ferramentas mais velhas do DOS e do Windows usam o CRC simples que checksumming como um índice e pôde conseqüentemente ser mais fácil de subvert do que as ferramentas que empregam MD5 e algoritmos relacionados. A maioria é pretendida para o uso como um suplemento aos varredores do vírus (desde que as mudanças detectáveis a um objeto infectable puderam indicar a infecção do vírus). Isto não invalidate a utilidade potencial de verificadores da integridade porque meios de detectar substituições possíveis do código comprometido para limas de sistema. Entretanto, a deteção da mudança é mais menos conveniente em plataformas de Windows que as limas de sistema alcançadas por aplicações múltiplas podem ser substituídas por instalações e por melhoramentos legitimate. Há frequentemente um delineation mais afiado em outras plataformas entre as limas que pertencem ao sistema e as limas que pertencem a uma aplicação. Além disso, a deteção da mudança trabalha somente bem com determinados tipos de executables binários, uniformes no contexto da deteção do vírus. Muitos vírus e Trojans infect as limas cuja a finalidade principal é conter dados (spreadsheets, limas de processo de texto, e assim por diante). Entretanto, tais limas são pretendidas geralmente ser modificadas, como são as limas de registro usadas em muitos sistemas multiuser seguir a ação maliciosa possível. Claramente, a deteção da mudança baseada na presunção que as limas remanescem de estática não está indo trabalhar nestes exemplos. Em alguns exemplos, é possível especificar as mudanças que puderam significar uma ruptura (a adição do código macro a uma lima da palavra, por exemplo). Esta aproximação requer que o software de inspeção "sabe" mais sobre os internals da lima, melhor que apenas sua impressão digital digital. Isso envolveria dificuldades administrativas sérias, assim que a aproximação não é boa favorecida no presente. A defesa a mais segura, embora, deve obstruir proactively modificação desautorizada de limas de sistema assinar do código, por meios de leitura apenas, e por outras medidas pre-emptive. este é um artigo adicionado por Marcel Baldwin
|
|||
|