Convert: not allowed `aaaa` @ error / make up .c / ReadImage / 453

I want to create a picture from a picture using convert

from ImageMagick.

And I follow that , but there are some problems.

Input In my Linux shell:

convert -background white -fill black -font FreeSerif-Bold -pointsize 36 label:'adfgh' ./test.png



convert: not authorized adfgh

@ error / constitute.c / ReadImage / 453. convert: image file name is missing ./test.png

@ error / convert.c / ConvertImageCommand / 3015

My ImageMagick: version: 6.7.2-7, I install it with yum install ImageMagick


I am ignorant. Any advice please?


source to share

8 answers

I am using ImageMagick in php (v.7.1) to slice a PDF into images.

At first I got errors like:

Exception type: ImagickException

Exception message: not authorized ..... @ error / constitute.c / ReadImage / 412

After some changes in /etc/ImageMagick-6/policy.xml

I am starting to get error messages:

Exception type: ImagickException

Exception message: Unable to create temporary file ..... Permission denied @ error / pdf.c / ReadPDFImage / 465

My fix :

In file /etc/ImageMagick-6/policy.xml

(or /etc/ImageMagick/policy.xml


  1. comment line

    <!-- <policy domain="coder" rights="none" pattern="MVG" /> -->

  2. change line

    <policy domain="coder" rights="none" pattern="PDF" />


    <policy domain="coder" rights="read|write" pattern="PDF" />

  3. add line

    <policy domain="coder" rights="read|write" pattern="LABEL" />

Then restart your web server (nginx, apache).



I use ImageMagic convert

command many times to convert *.tif

file *.pdf


I don't know why, but today I started getting the following error:

convert: not authorized 'a.pdf' @ error/constitute.c/WriteImage/1028.


After issuing the command:

convert a.tif a.pdf


After reading the above answers, I edited the file /etc/ImageMagick-6/policy.xml

and changed the line:

policy domain="coder" rights="none" pattern="PDF" 



policy domain="coder" rights="read|write" pattern="PDF"


and everything works fine now.

I have "ImageMagick 6.8.9-9 Q16 x86_64 2018-09-28" on "Ubuntu 16.04.5 LTS".



There is a file /etc/ImageMagick/policy.xml

that yum installs. It disallows almost everything (for security purposes and to protect your system from being overwhelmed by ImageMagick calls).

If you get an error ReadImage

like above, you can change the line to:

<policy domain="coder" rights="read" pattern="LABEL" />


which should solve the problem.

The file contains a bunch of documentation, so you should read this. For example, if you need additional permissions, you can combine them like this:

<policy domain="coder" rights="read|write" pattern="LABEL" />


... which is preferable to removing all permissions checks (i.e. deleting or commenting out a line).



The answer with the most votes (I don't have enough reputation to add a comment) suggests commenting out the MVG line, but keep this in mind:


ImageMagick supports ".svg / .mvg" files, which means that attackers can write code in a scripting language like MSL (Magick Scripting Language) and MVG (Magick Vector Graphics), upload it to a server disguised as an image file, and force software to run malicious commands on the server side as described above. For example, adding the following commands to a file and uploading it to a web server that uses a vulnerable version of ImageMagick will execute the "ls -la" command on the server.


push graphical browsing context 0 0 640 480 pop 'url ( "| ls" -la)' pop graphical context


Any version below 7.0.1-2 or 6.9.4-0 is potentially vulnerable and interested parties should update to the latest version of ImageMagick as soon as possible.




If anyone needs to do it with one command after installation, run this!

sed -i 's/<policy domain="coder" rights="none" pattern="PDF" \/>/<policy domain="coder" rights="read|write" pattern="PDF" \/>/g' /etc/ImageMagick-6/policy.xml




After a recent update on my Ubuntu 16.04 system, I also started getting this error when trying to run converting .ps files to convert them to pdfs.

This fix worked for me:

Run in terminal:

sudo gedit /etc/ImageMagick-6/policy.xml


This should open the policy.xml file in a gedit text editor. If it doesn't, your image magic might be set elsewhere. Then change




rights="read | write" 


for PDF, EPS and PS lines at the bottom of the file. Save and exit and the image should work again.



Just delete the /etc/ImageMagick/policy.xml file.



I also had an error error/constitute.c/ReadImage/453

while trying to convert eps to gif with image magic. I tried the solution suggested by sNICkerssss but still had errors (albeit different from the first one) e error/constitute.c/ReadImage/412

What solved the problem was error/constitute.c/ReadImage/412

to put read

in other entries

 <policy domain="coder" rights="read" pattern="PS" />
 <policy domain="coder" rights="read" pattern="EPS" />
 <policy domain="coder" rights="read" pattern="PDF" />
 <policy domain="coder" rights="read" pattern="XPS" />
 <policy domain="coder" rights="read|write" pattern="LABEL" />




All Articles