Mostrando postagens com marcador Notícias. Mostrar todas as postagens
Mostrando postagens com marcador Notícias. Mostrar todas as postagens

21 de ago. de 2009

Multiple Upload IE8 (fakepath)

Bom estou escrevendo este artigo para detalhar um novo requisito da ferramenta Internet Explorer 8, mesmo por que eu procurei sobre o assunto, mas não encotrei muitas respostas, então acabei descobrindo um problema.

O IE 8 possui agora um item de segurança também existente no Opera Browser:A substituição do caminho do arquivo por um caminho falso.

Imagine que antes quando você selecionava um arquivo o caminho poderia ser capturado e enviado a um servidor, e via código seria possível acessar quaisquer arquivos existentes na sua máquina, até de maneira oculta, com isso o acesso a arquivo de senha gravadas para auto autenticação em sites e contas de e-mail, etc. Também é possível acessar cockies, entre outras informações. Lógico, quando se sabe o caminho em que estes arquivos estão gravados. Porém quando se tem a estrutura de pastas do sistema operacional(C:\ ou D:\) estes arquivos podem ser acessados, pois os locais de gravação seguem determinado padrão do próprio sistema operacional(e o SO pode ser identificado via javascript).

Mas como posso desenvolver um componente que funcione, sem que o usuário tenha que seguir procedimentos de adicionar o site como seguro, e etc? Tem como fazer isto?

Bom, o problema dos componente de Multi Arquivos da Web, é que eles criam os objetos de inputFile em tempo de execução, porém somente quando os arquivos devem ser realmente enviados. E geralmente a seleção dos arquivos é feita por apenas um componente input, e após isto o CAMINHO é gravado em uma lista, para que quando o arquivo for enviado um novo input seja criado e acessado pelo servidor.

O problema esta quando o componente tenta capturar o caminho do inputFile, agora quando o javascript tenta acessar o atributo "value" do inputFile o mesmo retorna o caminho falso, para que a segurança e integridade dos arquivos e senhas dos usuários seja garantida.


A solução é sempre que um arquivo tiver que ser selecionado, um novo objeto do tipo inputFile deve ser criado, pois com isso não iremos necessitar de nenhuma iteração com o caminho do arquivo, apresentando no máximo o nome do arquivo em uma lista.

Espero que as informações ajudem.

Multiple Upload IE8 (fakepath) (inglês)

(Translation done by Google Tradutor)
Well I am writing this article to detail a new requirement of the tool Internet Explorer 8, I even tried on the subject but not Choose from many responses, then I discovered a problem.

IE 8 now has a safety feature, also present in the Opera Browser: Replacing the file path for a false path.

Imagine that before when you select a file path could be captured and sent to a server, and via code would be able to access any existing files on your machine, even covertly, thus access to the password file written to auto authentication sites and email accounts, email, etc.. You can also access cockies, among other information. Sure, if you know the path where these files are saved. But when you have the folder structure of the operating system (C: \ or D: \), these files can be accessed, because the shooting locations follow certain standard operating system itself (and the OS can be identified via javascript).

But how can I develop a component that works without the User has to follow procedures to add the site as safe, etc? It aims to do this?

Well, the problem of component Multi Web Archive, is that they create inputFile objects at runtime, but only when the files should be actually sent. And usually the selection of files is done by only one component input, and after that the PATH is recorded in a list, so that when the file is sent a new input is created and accessed by the server.

The problem is when the component attempts to capture the path of inputFile, now when the javascript tries to access the attribute "value" of inputFile it returns the false path, so that the security and integrity of files and passwords of users is guaranteed.

The solution is whenever a file is to be selected, a new object of type inputFile should be created, because with this we will not require any interaction with the file path, with a maximum file name in a list.

I hope the information will help.

21 de ago. de 2008

Bug no Sistema da Anatel

Hoje falando com meu amigo Diego Plentz descobri que ele havia achado um Bug muito básico, porém extremamente perigoso no site da Anatel.
Esse bug é o seguinte eu consigo entrar no sistema de Ordem de Serviço deles, pegar informações pessoais de usuários como telefones, e-mails, dentre outras informações, assim como abrir nova ordem de serviço, como fazer isso? Muito simples bastava pegar o CPF e o e-mail do usuário que solicitou o chamado para a Anatel... mas como fazer isso? Bastava pegar essa URL: http://sistemas.anatel.gov.br/focus/FaleConosco/MostrarDetalheSolicitacao.asp?idtSolicitacao=7094111 sendo que o idSolicitacao é sequencial, ou seja, se eu continuar colocando outros números, vou pegar ordem de serviços de outras pessoas...
Uma falha grave, aparentemente a Anatel colocou em manutenção este sistema.

Caso queira visualizar a reclamação, leia o blog do Diego ou veja no GUJ a notícia.

Como nosso amigo Kumpera disse em seu blog sobre esse Bug:

Segurança como essa é inadmissivel para um órgão governamental. Isso é ridículo, é um afronte a nossa privacidade. Os amadores que fizeram esse sistema ignoraram todas regras básicas de segurança que qualquer desenvolvedor safo tem a obrigação de saber. Anatel, corrija isso com urgência e tome as devidas medidas administrativas para esse tipo de desastre não ocorra novamente. Por favor, a todos que lerem este texto, liguem já para a Anatel no 0800 33 2001, registrem uma reclamação formal e divulguem esse problema para o quanto antes ser solucionado.


Vejam: Java Anywhere e Blog do Diego Plentz e do Rodrigo Kumpera