Protection CSRF hébergement drupal

J'ai quelques scripts PHP POST que je dois protéger contre les attaques CSRF et ont de multiples questions:

1) Si je soumets les requêtes POST à ​​PHP en utilisant jquery sans formulaire HTML, juste être directement à partir des valeurs reçois les éléments HTML et les soumettre en utilisant jquery, je suis toujours à risque de CSRF?

2) Lorsqu'un utilisateur se connecte sur le site, je conserver leur jeton unique dans une variable de session. Dans le script PHP POST-je vérifier si cette variable de session est définie et a la même valeur que je mets devant. Est-ce assez? pourquoi est-il nécessaire pour le jeton à inclure dans le formulaire HTML ainsi?

protection CSRF hébergement qui correspond à la drupal celui

a demandé le 15 novembre '14 à 23h43

  1. Oui. Peu importe la façon dont vous construisez la demande, l'attaquant peut construire un de la même manière. (En théorie, vous pourriez faire des caractéristiques d'une demande complexe (qui déclencheraient obligatoire, une demande de contrôle en amont CORS) de sorte qu'un autre site n'a pas pu obtenir le navigateur de l'utilisateur pour dupliquer la demande tout, mais je ne voudrais pas compter sur cela) .
  2. Non

Le point du jeton est de vérifier que la page qui contient le code chargé de décider ce qui se passe dans la demande (à savoir la forme ou le JavaScript) est une page sur votre site.

Si la forme (ou JavaScript) peut lire un jeton (qui correspond à celui de la session) du HTML de la page et le mettre dans la demande, alors vous connaissez le code qui a construit la demande est venue de votre site.

Si vous cochez juste qu'il est à la session, tout ce que vous vérifiez est que l'utilisateur a fait un jeton à générer (qui habituellement signifie simplement visiter une page sur votre site ... qui pourrait être dans un cadre caché).

D'accord. Qu'en est-il si l'attaquant a un JS qui peut inclure le formulaire HTML réel de mon site dans un iframe caché. Je l'ai vu dans un autre exemple, est-ce pas le jeton inclus dans le formulaire si l'utilisateur visite le site Web de l'attaquant lorsque vous êtes connecté? Dans ce cas, la demande serait authentique que le jeton est là sous la forme et dans la session ou suis-je manque quelque chose? - Michael Samuel 15 novembre '14 à 23h58

Non. Si vous mettez un cadre à l'intérieur d'un formulaire, les champs dans la page chargée par le cadre ne seront pas inclus dans les données de formulaire. Vous ne pouvez pas lire les données à travers des domaines à travers un cadre avec JavaScript (à moins que le site coopérées avec postMessage, que vous ne seriez pas). - Quentin le 16 novembre '14 à 00h02

Oui, il est toujours dangereux

Un jeton CSRF doit être un jeton fraîchement généré pour chaque fois que vous générez un formulaire. Il doit être unique et imprévisible pour chaque demande. Un jeton de session de connexion est mis seulement unique pour toute la session enregistrée.

Et si vous ne publiez pas le jeton généré pour vérifier où vous le vérifier? Vous correspondez le jeton de session avec. La raison pour laquelle est parce que vous pouvez toujours donner aux gens la possibilité de faire un faux demande, si le jeton est pas envoyé à la demande elle-même, mais tous les contrôles sont effectués par session / cookies. Si vous cochez seulement la session il ne fait rien contre CSRF. Il doit être envoyé dans la requête elle-même et vérifié si elle correspond à votre session. Lorsque vous générez un jeton unique pour chaque demande, les méchants ne peuvent pas aller de la demande de quelqu'un.

protection CSRF navigateur hébergement à drupal

a répondu le 15 novembre '14 à 23:55

Regarde cette video!

Articles Liés

Drupal hébergement avec sslHTTPS est un protocole qui crypte les requêtes HTTP et leurs réponses. Cela garantit que si quelqu'un en mesure de compromettre le réseau entre votre ordinateur et le serveur que vous demandez ...
Aegir services d'hébergement drupalChoisir l'hébergement Drupal peut être une tâche ardue si vous n'êtes pas sûr ce qui est à votre disposition. Dans certains cas, vous pourriez être très bien avec quelque chose comme un environnement d'hébergement partagé Hostgator ou ...
Modifier le préfixe tableau hébergement drupalJ'ai un site en cours d'exécution sur Drupal 7 un serveur web, il utilise actuellement une base de données qui a été créé avec un préfixe. Je tente de restaurer cette base de données à une nouvelle instance d'un ... drupal
Miglior hébergement thèmes DrupalQu'est-ce que Drupal? Drupal est une plateforme de gestion de contenu open source qui peut être téléchargé et utilisé gratuitement. Il se compose d'un groupe de base de fichiers qui sont standard sur toutes les installations, ...
Combell hébergement uk drupalDrupal facile Si vous avez décidé que c'est le système de gestion de contenu que vous souhaitez utiliser pour créer votre site, pourquoi ne pas utiliser aussi votre propre adresse web parfaite avec elle? Obtenir votre site web ...