gsd-2017-16790
Vulnerability from gsd
Modified
2023-12-13 01:21
Details
An issue was discovered in Symfony before 2.7.38, 2.8.31, 3.2.14, 3.3.13, 3.4-BETA5, and 4.0-BETA5. When a form is submitted by the user, the request handler classes of the Form component merge POST data and uploaded files data into one array. This big array forms the data that are then bound to the form. At this stage there is no difference anymore between submitted POST data and uploaded files. A user can send a crafted HTTP request where the value of a "FileType" is sent as normal POST data that could be interpreted as a local file path on the server-side (for example, "file:///etc/passwd"). If the application did not perform any additional checks about the value submitted to the "FileType", the contents of the given file on the server could have been exposed to the attacker.
Aliases
Aliases



{
  "GSD": {
    "alias": "CVE-2017-16790",
    "description": "An issue was discovered in Symfony before 2.7.38, 2.8.31, 3.2.14, 3.3.13, 3.4-BETA5, and 4.0-BETA5. When a form is submitted by the user, the request handler classes of the Form component merge POST data and uploaded files data into one array. This big array forms the data that are then bound to the form. At this stage there is no difference anymore between submitted POST data and uploaded files. A user can send a crafted HTTP request where the value of a \"FileType\" is sent as normal POST data that could be interpreted as a local file path on the server-side (for example, \"file:///etc/passwd\"). If the application did not perform any additional checks about the value submitted to the \"FileType\", the contents of the given file on the server could have been exposed to the attacker.",
    "id": "GSD-2017-16790",
    "references": [
      "https://www.debian.org/security/2018/dsa-4262"
    ]
  },
  "gsd": {
    "metadata": {
      "exploitCode": "unknown",
      "remediation": "unknown",
      "reportConfidence": "confirmed",
      "type": "vulnerability"
    },
    "osvSchema": {
      "aliases": [
        "CVE-2017-16790"
      ],
      "details": "An issue was discovered in Symfony before 2.7.38, 2.8.31, 3.2.14, 3.3.13, 3.4-BETA5, and 4.0-BETA5. When a form is submitted by the user, the request handler classes of the Form component merge POST data and uploaded files data into one array. This big array forms the data that are then bound to the form. At this stage there is no difference anymore between submitted POST data and uploaded files. A user can send a crafted HTTP request where the value of a \"FileType\" is sent as normal POST data that could be interpreted as a local file path on the server-side (for example, \"file:///etc/passwd\"). If the application did not perform any additional checks about the value submitted to the \"FileType\", the contents of the given file on the server could have been exposed to the attacker.",
      "id": "GSD-2017-16790",
      "modified": "2023-12-13T01:21:00.473733Z",
      "schema_version": "1.4.0"
    }
  },
  "namespaces": {
    "cve.org": {
      "CVE_data_meta": {
        "ASSIGNER": "cve@mitre.org",
        "ID": "CVE-2017-16790",
        "STATE": "PUBLIC"
      },
      "affects": {
        "vendor": {
          "vendor_data": [
            {
              "product": {
                "product_data": [
                  {
                    "product_name": "n/a",
                    "version": {
                      "version_data": [
                        {
                          "version_value": "n/a"
                        }
                      ]
                    }
                  }
                ]
              },
              "vendor_name": "n/a"
            }
          ]
        }
      },
      "data_format": "MITRE",
      "data_type": "CVE",
      "data_version": "4.0",
      "description": {
        "description_data": [
          {
            "lang": "eng",
            "value": "An issue was discovered in Symfony before 2.7.38, 2.8.31, 3.2.14, 3.3.13, 3.4-BETA5, and 4.0-BETA5. When a form is submitted by the user, the request handler classes of the Form component merge POST data and uploaded files data into one array. This big array forms the data that are then bound to the form. At this stage there is no difference anymore between submitted POST data and uploaded files. A user can send a crafted HTTP request where the value of a \"FileType\" is sent as normal POST data that could be interpreted as a local file path on the server-side (for example, \"file:///etc/passwd\"). If the application did not perform any additional checks about the value submitted to the \"FileType\", the contents of the given file on the server could have been exposed to the attacker."
          }
        ]
      },
      "problemtype": {
        "problemtype_data": [
          {
            "description": [
              {
                "lang": "eng",
                "value": "n/a"
              }
            ]
          }
        ]
      },
      "references": {
        "reference_data": [
          {
            "name": "https://symfony.com/blog/cve-2017-16790-ensure-that-submitted-data-are-uploaded-files",
            "refsource": "CONFIRM",
            "url": "https://symfony.com/blog/cve-2017-16790-ensure-that-submitted-data-are-uploaded-files"
          },
          {
            "name": "DSA-4262",
            "refsource": "DEBIAN",
            "url": "https://www.debian.org/security/2018/dsa-4262"
          }
        ]
      }
    },
    "gitlab.com": {
      "advisories": [
        {
          "affected_range": "\u003e=v2.7.0-alpha0,\u003c=v2.7.37||\u003e=v2.8.0-alpha0,\u003c=v2.8.30 ||\u003e=v3.2.0-alpha0,\u003c=v3.2.13||\u003e=v3.3.0-alpha0,\u003c=v3.3.12",
          "affected_versions": "All versions starting from v2.7.0-alpha0 up to v2.7.37, all versions starting from v2.8.0-alpha0 up to v2.8.30, all versions starting from v3.2.0-alpha0 up to v3.2.13, all versions starting from v3.3.0-alpha0 up to v3.3.12",
          "credit": "Ondrej Exner",
          "cvss_v2": "AV:N/AC:L/Au:S/C:P/I:N/A:N",
          "cvss_v3": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
          "cwe_ids": [
            "CWE-1035",
            "CWE-20",
            "CWE-937"
          ],
          "date": "2018-10-11",
          "description": "When a form is submitted by the user, the request handler classes of the Form component merge POST data (known as the `$_POST` array in plain PHP) and uploaded files data (known as the `$_FILES` array in plain PHP) into one array. This big array forms the data that are then bound to the form. At this stage there is no difference anymore between submitted POST data and uploaded files. A user can send a crafted HTTP request where the value of a `FileType` is sent as normal `POST` data that could be interpreted as a locale file path on the server-side (for example, `file:///etc/passwd`). If the application did not perform any additional checks about the value submitted to the `FileType`, the contents of the given file on the server could have been exposed to the attacker.",
          "fixed_versions": [
            "v2.7.38",
            "v2.8.31",
            "v3.2.14",
            "v3.3.13",
            "v3.4-BETA5",
            "v4.0-BETA5"
          ],
          "identifier": "CVE-2017-16790",
          "identifiers": [
            "CVE-2017-16790"
          ],
          "not_impacted": "All versions before v2.7.0-alpha0, all versions after v2.7.37 before v2.8.0-alpha0, all versions after v2.8.30 before v3.2.0-alpha0, all versions after v3.2.13 before v3.3.0-alpha0, all versions after v3.3.12",
          "package_slug": "packagist/symfony/form",
          "pubdate": "2018-08-06",
          "solution": "Upgrade to versions v2.7.38, v2.8.31, v3.2.14, v3.3.13, v3.4-BETA5, v4.0-BETA5 or above.",
          "title": "Attacker can read all files content on the server",
          "urls": [
            "http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-16790",
            "http://symfony.com/blog/cve-2017-16790-ensure-that-submitted-data-are-uploaded-files",
            "https://github.com/symfony/symfony/pull/24993"
          ],
          "uuid": "e3034e95-5a59-4c92-8895-76470d3ca74d"
        },
        {
          "affected_range": "\u003e=v2.7.0-alpha0,\u003c=v2.7.37||\u003e=v2.8.0-alpha0,\u003c=v2.8.30 ||\u003e=v3.2.0-alpha0,\u003c=v3.2.13||\u003e=v3.3.0-alpha0,\u003c=v3.3.12",
          "affected_versions": "All versions starting from v2.7.0-alpha0 up to v2.7.37, all versions starting from v2.8.0-alpha0 up to v2.8.30, all versions starting from v3.2.0-alpha0 up to v3.2.13, all versions starting from v3.3.0-alpha0 up to v3.3.12",
          "credit": "Ondrej Exner",
          "cvss_v2": "AV:N/AC:L/Au:S/C:P/I:N/A:N",
          "cvss_v3": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
          "cwe_ids": [
            "CWE-1035",
            "CWE-20",
            "CWE-937"
          ],
          "date": "2018-10-11",
          "description": "When a form is submitted by the user, the request handler classes of the Form component merge POST data (known as the `$_POST` array in plain PHP) and uploaded files data (known as the `$_FILES` array in plain PHP) into one array. This big array forms the data that are then bound to the form. At this stage there is no difference anymore between submitted POST data and uploaded files. A user can send a crafted HTTP request where the value of a `FileType` is sent as normal `POST` data that could be interpreted as a locale file path on the server-side (for example, `file:///etc/passwd`). If the application did not perform any additional checks about the value submitted to the `FileType`, the contents of the given file on the server could have been exposed to the attacker.",
          "fixed_versions": [
            "v2.7.38",
            "v2.8.31",
            "v3.2.14",
            "v3.3.13",
            "v3.4-BETA5",
            "v4.0-BETA5"
          ],
          "identifier": "CVE-2017-16790",
          "identifiers": [
            "CVE-2017-16790"
          ],
          "not_impacted": "All versions before v2.7.0-alpha0, all versions after v2.7.37 before v2.8.0-alpha0, all versions after v2.8.30 before v3.2.0-alpha0, all versions after v3.2.13 before v3.3.0-alpha0, all versions after v3.3.12",
          "package_slug": "packagist/symfony/symfony",
          "pubdate": "2018-08-06",
          "solution": "Upgrade to versions v2.7.38, v2.8.31, v3.2.14, v3.3.13, v3.4-BETA5, v4.0-BETA5 or above.",
          "title": "Attacker can read all files content on the server",
          "urls": [
            "http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-16790",
            "http://symfony.com/blog/cve-2017-16790-ensure-that-submitted-data-are-uploaded-files",
            "https://github.com/symfony/symfony/pull/24993"
          ],
          "uuid": "01f4462f-5e27-47d9-8f89-f38fefe1406b"
        }
      ]
    },
    "nvd.nist.gov": {
      "configurations": {
        "CVE_data_version": "4.0",
        "nodes": [
          {
            "children": [],
            "cpe_match": [
              {
                "cpe23Uri": "cpe:2.3:a:sensiolabs:symfony:*:*:*:*:*:*:*:*",
                "cpe_name": [],
                "versionEndIncluding": "2.8.30",
                "versionStartIncluding": "2.8.0",
                "vulnerable": true
              },
              {
                "cpe23Uri": "cpe:2.3:a:sensiolabs:symfony:*:*:*:*:*:*:*:*",
                "cpe_name": [],
                "versionEndIncluding": "3.2.13",
                "versionStartIncluding": "3.2.0",
                "vulnerable": true
              },
              {
                "cpe23Uri": "cpe:2.3:a:sensiolabs:symfony:*:*:*:*:*:*:*:*",
                "cpe_name": [],
                "versionEndIncluding": "3.3.12",
                "versionStartIncluding": "3.3.0",
                "vulnerable": true
              },
              {
                "cpe23Uri": "cpe:2.3:a:sensiolabs:symfony:*:*:*:*:*:*:*:*",
                "cpe_name": [],
                "versionEndIncluding": "2.7.37",
                "versionStartIncluding": "2.7.0",
                "vulnerable": true
              }
            ],
            "operator": "OR"
          },
          {
            "children": [],
            "cpe_match": [
              {
                "cpe23Uri": "cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*",
                "cpe_name": [],
                "vulnerable": true
              }
            ],
            "operator": "OR"
          }
        ]
      },
      "cve": {
        "CVE_data_meta": {
          "ASSIGNER": "cve@mitre.org",
          "ID": "CVE-2017-16790"
        },
        "data_format": "MITRE",
        "data_type": "CVE",
        "data_version": "4.0",
        "description": {
          "description_data": [
            {
              "lang": "en",
              "value": "An issue was discovered in Symfony before 2.7.38, 2.8.31, 3.2.14, 3.3.13, 3.4-BETA5, and 4.0-BETA5. When a form is submitted by the user, the request handler classes of the Form component merge POST data and uploaded files data into one array. This big array forms the data that are then bound to the form. At this stage there is no difference anymore between submitted POST data and uploaded files. A user can send a crafted HTTP request where the value of a \"FileType\" is sent as normal POST data that could be interpreted as a local file path on the server-side (for example, \"file:///etc/passwd\"). If the application did not perform any additional checks about the value submitted to the \"FileType\", the contents of the given file on the server could have been exposed to the attacker."
            }
          ]
        },
        "problemtype": {
          "problemtype_data": [
            {
              "description": [
                {
                  "lang": "en",
                  "value": "CWE-20"
                }
              ]
            }
          ]
        },
        "references": {
          "reference_data": [
            {
              "name": "DSA-4262",
              "refsource": "DEBIAN",
              "tags": [
                "Third Party Advisory"
              ],
              "url": "https://www.debian.org/security/2018/dsa-4262"
            },
            {
              "name": "https://symfony.com/blog/cve-2017-16790-ensure-that-submitted-data-are-uploaded-files",
              "refsource": "CONFIRM",
              "tags": [
                "Issue Tracking",
                "Patch",
                "Vendor Advisory"
              ],
              "url": "https://symfony.com/blog/cve-2017-16790-ensure-that-submitted-data-are-uploaded-files"
            }
          ]
        }
      },
      "impact": {
        "baseMetricV2": {
          "cvssV2": {
            "accessComplexity": "LOW",
            "accessVector": "NETWORK",
            "authentication": "SINGLE",
            "availabilityImpact": "NONE",
            "baseScore": 4.0,
            "confidentialityImpact": "PARTIAL",
            "integrityImpact": "NONE",
            "vectorString": "AV:N/AC:L/Au:S/C:P/I:N/A:N",
            "version": "2.0"
          },
          "exploitabilityScore": 8.0,
          "impactScore": 2.9,
          "obtainAllPrivilege": false,
          "obtainOtherPrivilege": false,
          "obtainUserPrivilege": false,
          "severity": "MEDIUM",
          "userInteractionRequired": false
        },
        "baseMetricV3": {
          "cvssV3": {
            "attackComplexity": "LOW",
            "attackVector": "NETWORK",
            "availabilityImpact": "NONE",
            "baseScore": 6.5,
            "baseSeverity": "MEDIUM",
            "confidentialityImpact": "HIGH",
            "integrityImpact": "NONE",
            "privilegesRequired": "LOW",
            "scope": "UNCHANGED",
            "userInteraction": "NONE",
            "vectorString": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
            "version": "3.0"
          },
          "exploitabilityScore": 2.8,
          "impactScore": 3.6
        }
      },
      "lastModifiedDate": "2018-10-11T16:11Z",
      "publishedDate": "2018-08-06T21:29Z"
    }
  }
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…