Yes and No. If you validate the upload properly, and have a hosting plan that isn't vulnerable you will be safe. When I say validate, I mean client side validation plus server side extension validation plus byte validation ( read a few byte and decide if a real image). Also disable server side script execution in the folder where you upload images. For bullet-proof security, use php to convert the file to image ( imagecreatefrompng etc) as you do not want to trust user input. In-fact, I would look for other ways of storing the image ( like as blob in db, or don't save the image inside your http docs.. etc ) too if I was too paranoid.