Intel proporciona un subconjunto de la versión estándar de Binutils 2.35 que incluye mitigaciones de inyección de valor de carga.
- La Guía de instalación de Intel® Software Guard Extensions (Intel® SGX) para Linux* recomienda descargar herramientas de mitigación, denominadas as.ld.objdump.gold.r2.tar.gz, del repositorio binario Intel SGX Linux.
- No se puede validar en qué se diferencian los Binutils proporcionados por Intel de los Binutils estándar actualizados.
Intel proporciona un subconjunto del estándar GNU Binutils 2.35, sin modificaciones, debido a que muchos de los repositorios de las distribuciones de Linux no se han actualizado ni a 2.35 ni a 2.36. Intel continuará ofreciendo el subconjunto Bunutils 2.35 hasta que los repositorios de la mayoría de las distribuciones de Linux tengan Binutils 2.35 o posterior.
Intel recomienda vincular Intel SGX aplicaciones con ld.gold en lugar de ld porque ld.gold aplica segmentos ejecutables de solo lectura al vincular código. Los segmentos de memoria no ejecutable de solo lectura ayudan a reforzar los enclaves porque ayudan a prevenir el desbordamiento del búfer y otros ataques a la memoria. Los atacantes no pueden escribir ni ejecutar código en estos segmentos de memoria. También se ha informado que ld.gold es un vinculador más rápido que ld.
Enlace con:
ld.gold --rosegment
o
-Wl,-fuse-ld=gold –Wl,--rosegment
La Guía de instalación de Intel SGX para Linux se encuentra en la carpeta Documentation de la última versión del SDK de Intel® Software Guard Extensions para Linux*.