logo

Database

Php Csrf Protection Disabled

Description

Detects when CSRF protection is explicitly disabled in PHP Symfony applications. Cross-Site Request Forgery (CSRF) protection is a critical security feature that prevents unauthorized commands from being transmitted from a user that the website trusts, so disabling it exposes the application to CSRF attacks.

Weakness:

007 - Cross-site request forgery

Category: Access Subversion

Detection Strategy

    • Looks for Symfony framework imports including OptionsResolver, DependencyInjection components, or AbstractController

    • Checks configuration settings in form definitions where csrf_protection is set to false

    • Examines container builder configurations where csrf protection features are disabled

    • Reports vulnerability when CSRF protection is explicitly turned off in either forms or global configurations

Vulnerable code example

<?php
use Symfony\Component\Form\AbstractType;
use Symfony\Component\OptionsResolver\OptionsResolver;

class TaskType extends AbstractType
{
    public function configureOptions(OptionsResolver $resolver)
    {...

✅ Secure code example

<?php
use Symfony\Component\Form\AbstractType;
use Symfony\Component\OptionsResolver\OptionsResolver;

class TaskType extends AbstractType
{
    public function configureOptions(OptionsResolver $resolver)
    {...