0

Classe de proteção CSRF

criado por Jefrey em 21/01/2014 8:21pm
Classe para proteger contra Cross Site Request Forgery.

Modo de uso
No início de todas as páginas a serem protegidas (ou um include em comum, antes de qualquer echo ou header()), insira:
<?php
session_start(); // necessário
include 'classes/csrf.class.php'; // nossa classe

Feito isso, no código de login, após verificar que o login está correto, junto com a criação do cookie/session de administrador, faça:
csrf::gen();

E, nos formulários, adicione:
<input type="hidden" name="csrf" value="<?php echo csrf::get(); ?>" />

Finalmente, no código que recupera e trata os valores inseridos no formulário, antes de qualquer coisa, faça:
if(!csrf::check($_POST['csrf'])) {
  echo 'Faça login novamente.';
  exit;
}

Recomenda-se destruir a session/cookie de administrador caso o token não seja válido.
Data Autor Changelog Download
21/01/2014 8:21pm Jefrey - Versão 1.0

Comentários:

Nenhum comentário foi enviado ainda.

Novo Comentário:

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