OWASP AppSec Brasil

A segunda edição da versão brasileira principal conferência mundial de segurança de software vai acontecer em 2010. Será nos dias 16 a 19 de novembro em Campinas e terá como keynotes:

Para mais detalhes, veja o site da OWASP AppSec Brasil 2010.

70 dias para
AppSec Brasil 2010

Links

Outros sites de interesse:
   OWASP
   Build Security In

Acesse também:
    www.sapao.net

Termos de uso

O conteúdo deste site está sujeito à licença Creative Commons.

Creative Commons License

Atividade recente no site

Início‎ > ‎

Proteger os arquivos criados

Embora seja possível usar comandos Java para alterar as permissões de arquivos presentes no sistema de arquivos, as primitivas de criação de arquivos (dentre elas a java.io.File.createNewFile()) não permitem que sejam especificadas as permissões com as quais o arquivo deve ser criado. Ao criar um arquivo por meio de um programa Java, este será criado com as permissões padrão do sistema operacional. Para que a criação de arquivos seja feita de forma segura, a aplicação deve estar configurada para que os arquivos que crie tenham as permissões mais restritivas possível. Esta é uma configuração do sistema operacional e deve ser levada em conta quando da instalação da aplicação. Após a criação dos arquivos, deve-se verificar se as suas permissões estão de acordo com o esperado usando as APIs Java de manipulação de arquivos.

Outra opção é utilizar os métodos setExecutable(), setReadable() e setWritable() da classe File. Se possível, o arquivo deve ser configurado com acesso apenas para o proprietário através do parâmetro ownerOnly .

A política ideal para a criação de arquivos é configurar a aplicação (e o sistema operacional, se necessário) de forma que todos os arquivos criados estejam inacessíveis. Depois de criado o arquivo, a aplicação deverá então manipular suas permissões para adequar as configurações. Em aplicações web que executem sempre sob o mesmo usuário, é importante que apenas este usuário tenha acesso aos arquivos criados.

No caso de aplicações que troquem informações via arquivos, é importante que as permissões de acesso sejam:

  1. A aplicação que escreve o arquivo deve ter apenas permissão de escrita no diretório e/ou arquivo. Não há necessidade de permissão de leitura para esta aplicação na maioria dos casos.
  2. A aplicação que lê o arquivo deve ter permissão apenas de leitura no diretório e/ou arquivo. Deve-se evitar o uso de arquivos ondem possam escrever várias aplicações, cada aplicação deve escrever um arquivo independente.
Quando houver a transmissão de arquivos numa rede, estes devem ser criptografados. O uso de protocolos seguros como SSL ou SSH permite garantir o sigilo e a integridade dos dados transmitidos. Se houver a necessidade de proteção dos dados enquanto armazenados em disco (ou outras mídias), é importante que a própria aplicação se encarregue de criptografá-los para garantir que os dados nunca sejam armazenados em claro. Isto poderia ocorrer caso houvesse um outro processo/aplicação encarregado da criptografia dos dados: os dados ficam desprotegidos no intervalo entre a gravação do arquivo e o fim do processo de criptografia. Além disto, o processo de criptografia terá também de se preocupar em eliminar os dados em claro que ficam no disco mesmo depois do arquivo ter sido apagado.

  Sign in   Recent Site Activity   Terms   Report Abuse   Print page  |  Powered by Google Sites