-1

Formulários mais seguros com synchonizer token (ficha sincronizadora)

criado por Rogério Bragil em 22/09/2005 1:57pm
Os benefícios são inúmeros, pois esta é uma forma simples e eficiente de aumentar a segurança de um site. Sem muitos malabarismos, sem pesar no processamento...

Depois de criar um formulário de teste usando ficha sincronizadora, experimente fazer um teste salvando a página com o formulário no seu computador e tentando postar.

<h4>Bibliografia</h4>

DEEPAK, A. ; CRUPI, J. ; MALKS, D. Core J2ee Patterns : As melhores práticas e estratégias de design 1 ed. Rio de Janeiro: Campus, 2002. 406 p.

Comentários:

Mostrando 1 - 10 de 33 comentários
Humberto Cruz disse:
Pois é Adir, eu concordo com você. Mas tem casos que o token deve ser utilizado. Quando os domínios da aplicação e do sistema de login são diferentes por exemplo.
16/04/2013 12:02pm (~11 anos atrás)

Thiago Rocha disse:
E aí Bragil!
Foi uma excelente dica essa sua, gostei muito e vou começar a usar.
Usava outras tecnicas, mas achei essa mais interessante.
Tb vale ressaltar que o comentário do "Alexandre" foi muito positivo tb.
É bom ver a galera contribuindo e ajudando uns aos outros.
Vlw!
25/08/2006 6:44am (~17 anos atrás)

Luiz Junior disse:
Não entendi muito bem os metodos que utilizam MYSQL, poderia dar uma clareada?
11/05/2006 1:48am (~18 anos atrás)

Luiz Junior disse:
Ao invéz de utilizar tokens, não se podem também checar o HTTP_REFERER? Se o formulário tiver sido POSTado por um FORM em seu dominio, o HTTP_REFERER possuirá um valor valido.
10/05/2006 12:49pm (~18 anos atrás)

Olá Herbert!

Você tem razão, os dados passarão sim... Foi um pequeno erro meu... De qualquer forma, a sessão só valerá nesse caso, se você salvar a página e já postar os dados. Entretanto, se você salvar a página para mais tarde tentar postar, com certeza não será possível... Além disso, essa técnica evita a postagem repetida se o usuário clicar no botão submit por duas vezes.

Bom, como eu já falei, é uma técnica que aumenta a segurança e a coesão do sistema, porém você pode e deve usar outras técnicas em conjunto...

Falow!

bragil
13/03/2006 9:08am (~18 anos atrás)

Rogério, esse lance de token é ótimo e estou querendo usar, porém eu ainda não consegui ver segurança nele;

se eu gerar o formulário, salvar a página no micro e enviar os dados (sem fechar a janela do site), os dados irão passar, pois a SESSION atual ainda existe (pois a janela do formulário do site não foi fechada). O esquema de segurança só funciona se a SESSION do servidor for destruída! Tem idéia de como isso pode ser resolvido?
13/03/2006 8:28am (~18 anos atrás)

César disse:
não seria interessante utilizar cookies + sessions?
digo.. sendo os cookies gravados no cliente e sessions no servidor, ao carregar a pagina, seria feita uma gravação dos cookies e sessions, e depois disso, verificamos estes dados.

podemos pegar o dado da ficha, aplicar um md5 (para maior segurança) e aplicar ele como hidden nos formulásrio e endereços, fazendo uma posterior verificação com os com os dados de cookies e sessions (após aplicar o md5 também)

Acredito que assim fica mais um pouco seguro.. hehe

até..
06/01/2006 11:09am (~18 anos atrás)

Sim, david07... você pode fazer esse esquema em qualquer formulário... Além disso, incremente o seu form com aquelas imagens contendo um código que o cara tem que digitar em um campo de texto... No pear.php.net tem um classe para gerar essas imagens, se não me engano chama-se Text_captcha


Falow!

bragil
07/12/2005 10:22am (~18 anos atrás)

david07 disse:
Essa dica vale para um formulário simples de um pagina de contatos? Estou sofrendo com esses lammers
07/12/2005 10:17am (~18 anos atrás)

Taober, dessa forma qualquer mané pode acessar nosso formulário... Sim, é necessário uma "cópia" da session, pois sem ela sempre vai ser OK, visto que o código que recebe os dados do form vai verificar a presença da sessão e sempre vai dar sinal verde. Uma ótima alternativa ao hidden é manter a cópia no banco de dados.

Falow!
21/11/2005 5:41am (~18 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)