{
  "affected": [
    {
      "ranges": [
        {
          "database_specific": {
            "cpe": "cpe:2.3:a:testlink:testlink:1.9.20:*:*:*:*:*:*:*",
            "extracted_events": [
              {
                "introduced": "1.9.20"
              },
              {
                "last_affected": "1.9.20"
              }
            ],
            "source": [
              "CPE_STRING",
              "REFERENCES"
            ]
          },
          "events": [
            {
              "introduced": "2f6a6f4dd0cd500258f0f4ddf0eeb3fd93714433"
            },
            {
              "last_affected": "2f6a6f4dd0cd500258f0f4ddf0eeb3fd93714433"
            },
            {
              "fixed": "57d81ae350d569c5c95087997fe051c49e14516d"
            }
          ],
          "repo": "https://github.com/testlinkopensourcetrms/testlink-code",
          "type": "GIT"
        }
      ],
      "versions": [
        "1.9.20"
      ]
    }
  ],
  "database_specific": {},
  "details": "An unrestricted file upload vulnerability in keywordsImport.php in TestLink 1.9.20 allows remote attackers to execute arbitrary code by uploading a file with an executable extension. This allows an authenticated attacker to upload a malicious file (containing PHP code to execute operating system commands) to a publicly accessible directory of the application.",
  "id": "CVE-2020-8639",
  "modified": "2026-07-08T05:38:32.299663621Z",
  "published": "2020-04-03T19:15:13.593Z",
  "references": [
    {
      "type": "FIX",
      "url": "https://ackcent.com/blog/testlink-1.9.20-unrestricted-file-upload-and-sql-injection/"
    },
    {
      "type": "FIX",
      "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code/commit/57d81ae350d569c5c95087997fe051c49e14516d"
    },
    {
      "type": "EVIDENCE",
      "url": "http://packetstormsecurity.com/files/161401/TestLink-1.9.20-Shell-Upload.html"
    }
  ],
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ]
}