Problema de segurança ao acessar a imagem remota com dompdf

Estou usando dompdf para gerar arquivo PDF que está obtendo algumas imagens (charts dynamics) da biblioteca de exportação highcharts.js. Agora eu tenho que alterar a configuração padrão de DOMPDF_ENABLE_REMOTE de “falso” para “verdadeiro” para permitir dompdf a inclusão de imagens de sites remotos. Acabei de notar que habilitar esse recurso pode causar problemas de segurança para o meu servidor, agora minha pergunta é o quão ruim esse problema pode ser e como eu posso impedir isso? Existe alguma outra configuração extra que eu possa usar para interromper o risco de segurança, além de ter access a resources remotos (neste caso, imagens)? obrigado

Habilitar o access remoto é principalmente um problema de segurança quando você está usando dompdf.php para renderizar seus documentos. Se você não estiver usando esse arquivo, você deve removê-lo ou torná-lo inacessível da web. A equipe dompdf geralmente recomenda que você não use esse arquivo e, em vez disso, escreva seu próprio script de geração de PDF usando a class dompdf diretamente. Uma vez que você está usando a class diretamente, você pode se proteger, colocando todo o diretório dompdf em um local não acessível através da web.

A principal preocupação ao habilitar o access de resources remotos e ao usar dompdf.php para renderizar documentos é que alguém pode usar o dompdf.php para carregar um documento de fora do seu domínio que aparece por algo produzido e servido pelo seu domínio. No entanto, há uma preocupação adicional se você também tiver habilitado o PHP (para scripts em linha). Com a análise de PHP habilitada, o documento remoto pode ser usado para comprometer sua máquina através da execução remota de código (o script em linha não está limitado à interação de PDF).

Uma opção é usar dados de imagem Base64

$html = '

IMAGE

': require_once('dompdf/dompdf_config.inc.php'); $dompdf = new DOMPDF (); $dompdf->load_html ($html); $dompdf->render (); $dompdf->stream ("Test.pdf", array ("Attachment" => false));

Obter a imagem de php na base64:

 //getIMG.php?data=1&id=123 if ($data == 1) { echo "data:image/".$adj->type.";base64," .str_replace ("\n", "", base64_encode ($adj->imageBinary)); }