Dwa dni temu pojawił się dość niemiły błąd w Imagemagick ( CVE-2016–3714 ) pozwalający na wykonanie dowolnego kodu w systemie przez prosty upload obrazka, a raczej spreparowanego pliku na stronę WWW.
Pojawiły się dość szybko publicznie exploity i nawet sytuacja została opisana pod wdzięczną nazwą „Imagetragick”.
W chwili dodawania wpisu nie było dostępnej poprawki, a jedynie sposób na częściowe wyjście z opresji. Co zrobić by zabezpieczyć się przed wydaniem stosownych poprawek ? To dość proste wystarczy dodać do pliku policy.xml kilka linijek. Standardowo znajduje się on pod ścieżką: /etc/ImageMagick/policy.xml
<policymap>
<policy domain=”coder” rights=”none” pattern=”EPHEMERAL” />
<policy domain=”coder” rights=”none” pattern=”URL” />
<policy domain=”coder” rights=”none” pattern=”HTTPS” />
<policy domain=”coder” rights=”none” pattern=”MVG” />
<policy domain=”coder” rights=”none” pattern=”MSL” />
</policymap>
Czy działa poprawnie możemy sprawdzić wykonując polecenie:
root@testv5:~# convert -list policy
Path: [built-in] Policy: Undefined
rights: NonePath: /etc/ImageMagick/policy.xml
Policy: Coder
rights: None
pattern: EPHEMERAL
Policy: Coder
rights: None
pattern: HTTPS
Policy: Coder
rights: None
pattern: URL
Policy: Coder
rights: None
pattern: MVG
Policy: Coder
rights: None
pattern: MSL
enjoy 😉