ImageMagick Security

Support HackTricks

Check further details in https://blog.doyensec.com/2023/01/10/imagemagick-security-policy-evaluator.html

ImageMagick, maktaba ya usindikaji picha yenye uwezo mwingi, inatoa changamoto katika kuunda sera zake za usalama kutokana na chaguzi zake nyingi na ukosefu wa nyaraka za mtandaoni za kina. Watumiaji mara nyingi huunda sera kulingana na vyanzo vya mtandaoni vilivyovunjika, na kusababisha uwezekano wa makosa ya usanidi. Maktaba inasaidia aina nyingi zaidi ya picha 100, kila moja ikichangia katika ugumu wake na wasifu wa udhaifu, kama inavyoonyeshwa na matukio ya usalama ya kihistoria.

Towards Safer Policies

Ili kushughulikia changamoto hizi, chombo kimeandaliwa kusaidia katika kubuni na kukagua sera za usalama za ImageMagick. Chombo hiki kina msingi katika utafiti wa kina na kinakusudia kuhakikisha sera sio tu thabiti bali pia hazina mapengo yanayoweza kutumiwa.

Allowlist vs Denylist Approach

Kihistoria, sera za ImageMagick zilitegemea mbinu ya denylist, ambapo waandishi maalum walikatazwa kupata ufikiaji. Hata hivyo, mabadiliko katika ImageMagick 6.9.7-7 yalihamisha mtindo huu, na kuwezesha mbinu ya allowlist. Mbinu hii kwanza inakataza waandishi wote kisha inatoa ufikiaji kwa wale walioaminika, ikiongeza usalama.

...
<policy domain="coder" rights="none" pattern="*" />
<policy domain="coder" rights="read | write" pattern="{GIF,JPEG,PNG,WEBP}" />
...

Case Sensitivity in Policies

Ni muhimu kutambua kwamba mifumo ya sera katika ImageMagick ina nyakati tofauti za herufi. Hivyo basi, kuhakikisha kwamba waandishi wa programu na moduli zimeandikwa kwa herufi kubwa katika sera ni muhimu ili kuzuia ruhusa zisizokusudiwa.

Resource Limits

ImageMagick inakabiliwa na mashambulizi ya kukatiza huduma ikiwa haijawekwa ipasavyo. Kuweka mipaka ya rasilimali wazi katika sera ni muhimu ili kuzuia udhaifu kama huo.

Policy Fragmentation

Sera zinaweza kuwa zimegawanyika katika usakinishaji tofauti wa ImageMagick, na kusababisha migongano au kuzidiana. Inapendekezwa kutafuta na kuthibitisha faili za sera zinazofanya kazi kwa kutumia amri kama:

$ find / -iname policy.xml

Sera ya Mwanzo, Inayopunguza

Kigezo cha sera inayopunguza kimependekezwa, kikilenga mipaka ya rasilimali kali na udhibiti wa ufikiaji. Kigezo hiki kinatumika kama msingi wa kuunda sera zilizobinafsishwa zinazolingana na mahitaji maalum ya programu.

Ufanisi wa sera ya usalama unaweza kuthibitishwa kwa kutumia amri ya identify -list policy katika ImageMagick. Zaidi ya hayo, zana ya evaluator tool iliyotajwa hapo awali inaweza kutumika kuboresha sera kulingana na mahitaji ya mtu binafsi.

Marejeo

Support HackTricks

Last updated