Ero sivun ”Shellshock” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
Ei muokkausyhteenvetoa
(Uusia haavoittuvuuksia, uudet paremmat testit)
Rivi 2: Rivi 2:


==Testaus==
==Testaus==
Alkuperäinen haavoittuva versio antaa tulosteen:
{{Oikeudet}}
<pre>$ env x='() { :;}; echo haavoittuva' bash -c 'echo testi'
haavoittuva
testi</pre>


Paikattu versio antaa tulosteen:
===CVE-2014-6271===
<pre>$ env x='() { :;}; echo haavoittuva' bash -c 'echo testi'
Mikäli sana "haavoittuva" tulostuu, on bash haavoittuva.
bash: varoitus: x: ignoring function definition attempt
<pre>
bash: virhe tuotaessa ”x”:n funktiomääritystä
$ env x='() { :;}; echo haavoittuva' bash -c "echo testi"
testi</pre>
</pre>


Paikkauksen jälkeenkin bash kärsii toisesta haavoittuvuudesta, jonka voi testata esimerkiksi näin:
===CVE-2014-7169===
<pre>$ env X='() { (a)=>\' bash -c "echo echo vuln"; [[ "$(cat echo)" == "vuln" ]] && echo "haavoittuva"
Mikäli päiväys tulostuu, on bash haavoittuva.
bash: X: rivi 1: lauseoppivirhe lähellä odottamatonta avainsanaa ”=
<pre>
bash: X: rivi 1: `'
$ env X='() { (linux.fi)=>\' bash -c "echo date"; cat echo ; rm -f echo
bash: virhe tuotaessa ”X”:n funktiomääritystä
</pre>
haavoittuva</pre>
 
===CVE-???===
Mikäli sana "haavoittuva" tulostuu, on bash haavoittuva.
<pre>
$ env -i X=' () { }; echo haavoittuva' bash -c 'date'
</pre>
 
===CVE-2014-7186===
Mikäli sana "haavoittuva" tulostuu, on bash haavoittuva.
<pre>
bash -c 'true <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF' ||
echo "CVE-2014-7186 haavoittuva, redir_stack"
</pre>
 
===CVE-2014-7187===
Mikäli sana "haavoittuva" tulostuu, on bash haavoittuva.
<pre>
$ (for x in {1..200} ; do echo "for x$x in ; do :"; done; for x in {1..200} ; do echo done ; done) | bash ||
echo "CVE-2014-7187 haavoittuva, word_lineno"
</pre>


==Aiheesta muualla==
==Aiheesta muualla==
Rivi 24: Rivi 40:
* [https://www.viestintavirasto.fi/tietoturva/tietoturvanyt/2014/09/ttn201409251726.html viestintavirasto.fi -Shellshock-haavoittuvuutta hyödynnetään aktiivisesti]
* [https://www.viestintavirasto.fi/tietoturva/tietoturvanyt/2014/09/ttn201409251726.html viestintavirasto.fi -Shellshock-haavoittuvuutta hyödynnetään aktiivisesti]
* [https://www.fsf.org/news/free-software-foundation-statement-on-the-gnu-bash-shellshock-vulnerability FSF.org - Free Software Foundation statement on the GNU Bash "shellshock" vulnerability]
* [https://www.fsf.org/news/free-software-foundation-statement-on-the-gnu-bash-shellshock-vulnerability FSF.org - Free Software Foundation statement on the GNU Bash "shellshock" vulnerability]
* [https://shellshocker.net/ shellshocker.net]


[[Luokka:Tietoturva]]
[[Luokka:Tietoturva]]

Versio 28. syyskuuta 2014 kello 16.36

Shellshock tai Bashdoor (CVE-2014-6271 ja CVE-2014-7169) on haavoittuvuus bash-komentotulkissa. Bugi on ollut olemassa bashin versiosta 1.13 lähtien eli jo vuodesta 1992.

Testaus

Komennot, jotka alkavat $-merkillä suoritetaan tavallisena käyttäjänä ja komennot, jotka alkavat #-merkillä suoritetaan pääkäyttäjänä. Katso myös su, sudo ja doas.

CVE-2014-6271

Mikäli sana "haavoittuva" tulostuu, on bash haavoittuva.

$ env x='() { :;}; echo haavoittuva' bash -c "echo testi"

CVE-2014-7169

Mikäli päiväys tulostuu, on bash haavoittuva.

$ env X='() { (linux.fi)=>\' bash -c "echo date"; cat echo ; rm -f echo

CVE-???

Mikäli sana "haavoittuva" tulostuu, on bash haavoittuva.

$ env -i X=' () { }; echo haavoittuva' bash -c 'date'

CVE-2014-7186

Mikäli sana "haavoittuva" tulostuu, on bash haavoittuva.

bash -c 'true <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF <<EOF' ||
echo "CVE-2014-7186 haavoittuva, redir_stack"

CVE-2014-7187

Mikäli sana "haavoittuva" tulostuu, on bash haavoittuva.

$ (for x in {1..200} ; do echo "for x$x in ; do :"; done; for x in {1..200} ; do echo done ; done) | bash ||
echo "CVE-2014-7187 haavoittuva, word_lineno"

Aiheesta muualla