Een kwetsbaarheid laat aanvallers code injecteren in de Bash-shell, die door OS X en vrijwel alle Linux-distributies wordt gebruikt. Daardoor zou een aanvaller bijvoorbeeld via een kwetsbaar cgi-script zijn eigen code op een systeem kunnen uitvoeren.
De kwetsbaarheid kan worden misbruikt door een aantal tekens, gevolgd door code, toe te voegen aan een environment-variabele, schrijft Red Hat op zijn beveiligingsblog. Zodra vervolgens een bash-sessie wordt geopend, blijkt die code te worden uitgevoerd.
De bash-shell is in OS X en vrijwel alle Linux-distributies aanwezig en laat de gebruiker via de command-line instructies uitvoeren. Ook software kan de shell gebruiken om instructies uit te voeren. Het op Linux gebaseerde Android is standaard niet kwetsbaar, tenzij een gebruiker zelf bash heeft geïnstalleerd, bijvoorbeeld via een custom rom. Een patch voor de Linux-versie van bash is beschikbaar; voor OS X nog niet. Diverse distrubuties zoals Debian en Ubuntu hebben al een update klaar staan die gebruikers kunnen installeren.
De kwetsbaarheid is op verschillende manieren te misbruiken; bash-shells kunnen bijvoorbeeld worden geopend door een cgi-script. Wanneer een website een cgi-script met een bash-shell gebruikt, is die website dus in potentie kwetsbaar voor het uitvoeren van code.
Beveiligingsonderzoeker Robert Graham noemt de bug in bash 'net zo groot als Heartbleed', een beveiligingsprobleem in OpenSSL waarbij een deel van de inhoud van het interne geheugen van een server kon worden uitgelezen. Dat komt volgens Graham doordat er zoveel verschillende manieren zijn waarop Linux-software interactie vertoont met bash. "We zullen nooit alle software kunnen uitfaseren die kwetsbaar is voor de bash-bug", schrijft hij.
Php-scripts die shell gebruiken zijn niet kwetsbaar, mits de php-scripts via mod_php worden aangeroepen. Dhcp-clients zijn wel kwetsbaar: dhcp-servers zouden in potentie code kunnen injecteren op een systeem, waarbij commando's worden uitgevoerd als root. Dat is bijvoorbeeld een gevaar op openbare wifi-hotspots, mits de gebruiker dus een Linux-distributie met bash gebruikt. Ook de web-interfaces van routers die de mogelijkheid bieden om pings en traceroutes uit te voeren, zijn waarschijnlijk kwetsbaar.
Onderzoeker Graham stelt dat ook apparaten met een eigen webserver aan boord, zoals webcams, kwetsbaar zijn, omdat die vaak leunen op bash-scripts die worden bestuurd via een website. Bovendien is de bug niet alleen aanwezig in recente versies van bash: de bug is al lange tijd aanwezig. "Het aantal systemen dat moet worden gepatcht is daarom vele groter dan bij de Heartbleed-bug", schrijft Graham.
Gebruikers die willen weten of hun systeem kwetsbaar is, kunnen een simpele test uitvoeren door de code env x='() { :;}; echo kwetsbaar' bash -c "echo dit is een test" uit te voeren in een shell. Wordt 'kwetsbaar' getoond, dan is het systeem in kwestie kwetsbaar.