¿Por qué esta ejecución de código de shell se considera un exploit?

1

Encontré el siguiente "exploit" en Twitter: enlace

Blogpost al respecto: enlace

Esto está envolviendo assemblercode / bytes en la memoria y ejecuta un shell.

En mi humilde opinión sería un exploit si permitiera una escalada de privilegios, por ejemplo. non-root puede compilar y ejecutar esto y tener una raíz de ámbito o algo así.

Esto no es un exploit, porque no rompe ninguna barrera de seguridad o estoy equivocado?

/*
global _start
section .text
_start:
    push 59
    pop rax
    cdq
    push rdx
    mov rbx,0x68732f6e69622f2f
    push rbx
    push rsp
    pop rdi
    push rdx
    push rdi
    push rsp
    pop rsi
    syscall
*/

#include <stdio.h>
#include <string.h>
char code[] = "\x6a\x3b\x58\x99\x52\x48\xbb\x2f\x2f\x62\x69\x6e\x2f\x73\x68\x53\x54\x5f\x52\x57\x54\x5e\x0f\x05";
// char code[] = "\x31\xc0\x48\xbb\xd1\x9d\x96\x91\xd0\x8c\x97\xff\x48\xf7\xdb\x53\x54\x5f\x99\x52\x57\x54\x5e\xb0\x3b\x0f\x05";
int main()
{
    printf("len:%d bytes\n", strlen(code));
    (*(void(*)()) code)();
    return 0;
}
    
pregunta DanFromGermany 12.01.2018 - 18:21
fuente

2 respuestas

1

Estoy de acuerdo en que esto no es un exploit, pero es Shellcode para ser utilizado cuando se inyecta en una aplicación explotada por otros medios. La publicación del blog también se refiere a ella como código de shell, no como un exploit.

    
respondido por el David 12.01.2018 - 19:14
fuente
-1

Este tipo de explotación se encuentra en una categoría similar a las vulnerabilidades de desbordamiento de búfer y de formato de cadena. Por sí solos causan poco o ningún daño, pero pueden ser aprovechados por un atacante para obtener acceso no autorizado a datos importantes o, en general, un desastre.

Esta vulnerabilidad puede ser desde mínima hasta muy poderosa, dependiendo de qué tan bien estén configurados todos los privilegios en el servidor. Si no se sigue el último principio de privilegio requerido, el atacante puede aprovechar esta vulnerabilidad para poder acceder a información confidencial en archivos con privilegios abiertos. Alternativamente, si su servidor está bien configurado para el potencial de que un atacante obtenga acceso remoto, esta vulnerabilidad podría ofrecer al atacante poco o nada.

De cualquier manera, este tipo de vulnerabilidad de ejecución de código suele ser el primer paso para un ataque real.

    
respondido por el dFrancisco 12.01.2018 - 19:03
fuente

Lea otras preguntas en las etiquetas