piglop a écrit 1 commentaire

  • # Précision

    Posté par  . En réponse à la dépêche Injection SQL sur toutes les versions de Ruby on Rails. Évalué à 4.

    Dans l'explication complémentaire (dans les liens), il est précisé qu'un simple Post.find_by_id(params[:id]) ne suffit pas à déclencher la faille. Il faut passer un Hash qui a des symboles comme clés, alors que params utilise des chaines comme clés.

    Ça limite énormément la portée de la faille, car les find_by_* sont la plupart du temps justement utilisés avec params.

    Là où c'est plus problématique, c'est que la gem authlogic passe justement un Hash avec des symboles lors de l'authentification. Mais même dans ce cas, pour exploiter le bug il faut connaitre la clé secrète du site web pour forger ses propres cookies.