
TP Seguridad Informática UTN FRBA 2021
Para explorar a vulnerabilidade, é necessário levantar um contêiner docker com um ambiente preparado para executar Tensorflow com uma versão 2.2.3 que ainda possui a vulnerabilidade. Consiste em:
Verificar se a máquina possui docker executando:
docker -v
Uma vez que nosso sistema operacional tenha docker instalado, execute os seguintes comandos na pasta raiz deste repositório para construir e executar a aplicação:
docker-compose build
docker-compose up
Ou, para executar sem docker compose:
docker build -t docker-exploit-tensorflow-vulnerability:1.0 . # para construir a imagem
docker run --add-host=host.docker.internal:host-gateway --name exploit-tensorflow-vulnerability docker-exploit-tensorflow-vulnerability:1.0 # para criar e iniciar o processo pela primeira vez
docker start -a exploit-tensorflow-vulnerability # para iniciar o processo novamente
Para que o reverse shell funcione, é necessário ter netcat instalado na máquina atacante, e levantar uma porta de escuta para uma sessão ssh. Ex:
nc -lvp 10000
Em seguida, a vulnerabilidade será explorada através de um modelo de IA malicioso, onde lançaremos a conexão com o atacante. É necessário configurar o IP e porta de escuta do atacante no arquivo reverseShell.yaml