Instrumentação de programas binários legados para compatibilização com Intel CET

  • Éverton C. Araújo CEFET-MG
  • Mateus Tymburibá CEFET-MG
  • Andrei Rimsa CEFET-MG

Resumo


Mecanismos de proteção contra ataques que alteram o fluxo de execução de programas têm sido desenvolvidos por fabricantes de semicondutores. A tecnologia CET (Control-flow Enforcement Technology), criada recentemente pela Intel, é um exemplo promissor desse tipo de proteção. Para usá-la, programas devem incorporar uma nova instrução adicionada à arquitetura x86. Portanto, essa solução não se aplica a programas que não podem ser recompilados. Este trabalho propõe a utilização de técnicas de instrumentação para identificar as posições de um binário onde essa nova instrução deve ser adicionada. Posteriormente, ela é embutida nesses pontos identificados, utilizando uma técnica de remendo que garanta a integridade do executável.

Referências

Bletsch, T. K., Jiang, X., Freeh, V. W., and Liang, Z. (2011). Jump-oriented programming: a new class of code-reuse attack. In Cheung, B. S. N., Hui, L. C. K., Sandhu, R. S., and Wong, D. S., editors, Proceedings of the 6th ACM Symposium on Information, Computer and Communications Security, ASIACCS 2011, Hong Kong, China, March 22-24, 2011, pages 30–40. ACM.

Botacin, M., de Geus, P. L., and Grégio, A. (2016). Detecção de ataques por rop em tempo real assistida por hardware. In Anais do XVI Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais, pages 324–337. SBC.

Carlini, N. and Wagner, D. (2014). {ROP} is still dangerous: Breaking modern defenses. In 23rd USENIX Security Symposium, pages 385–399.

Duck, G. J., Gao, X., and Roychoudhury, A. (2020). Binary rewriting without control flow recovery. In Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2020, page 151–163, New York, NY, USA. Association for Computing Machinery.

Emílio, R., Tymburibá, M., and Pereira, F. M. Q. (2015). Inferência estática da frequência máxima de instruções de retorno para detecção de ataques rop. In Anais do XV Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais, pages 2–15. SBC.

Ferreira, M., Rocha, T., Martins, G., Feitosa, E., and Souto, E. (2012). Análise de vulnerabilidades em sistemas computacionais modernos: Conceitos, exploits e proteções.

Ferreira, M. T., Santos Filho, A., and Feitosa, E. (2014). Controlando a frequência de desvios indiretos para bloquear ataques rop. In Anais do XIV Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais, pages 223–236. SBC.

Intel (2019). Control-flow enforcement technology specification. [link].

Moreira, J., Rigo, S., Polychronakis, M., and Kemerlis, V. P. (2017). Drop the rop fine-grained control-flow integrity for the linux kernel. Black Hat Asia, 2017.

Rimsa, A., Nelson Amaral, J., and Pereira, F. M. Q. (2021). Practical dynamic reconstruction of control flow graphs. Software: Practice and Experience, 51(2):353–384.

Shanbhogue, V., Gupta, D., and Sahita, R. (2019). Security analysis of processor instruction set architecture for enforcing control-flow integrity. In Proceedings of the 8th International Workshop on Hardware and Architectural Support for Security and Privacy, HASP ’19, New York, NY, USA. ACM.

Tymburibá, M., de Sousa, H. A., and Pereira, F. M. Q. (2019). Multilayer rop protection via microarchitectural units available in commodity hardware. In 2019 49th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), pages 315–327. IEEE.
Publicado
18/09/2023
ARAÚJO, Éverton C.; TYMBURIBÁ, Mateus; RIMSA, Andrei. Instrumentação de programas binários legados para compatibilização com Intel CET. In: WORKSHOP DE TRABALHOS DE INICIAÇÃO CIENTÍFICA E DE GRADUAÇÃO - SIMPÓSIO BRASILEIRO DE SEGURANÇA DA INFORMAÇÃO E DE SISTEMAS COMPUTACIONAIS (SBSEG), 23. , 2023, Juiz de Fora/MG. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2023 . p. 201-212. DOI: https://doi.org/10.5753/sbseg_estendido.2023.235074.