¿Cómo hace BeEF un escaneo de puertos y un ping?

6

Me pregunto cómo puede BeEF hacer una solicitud de ping, escaneo de puertos u otras cosas que dependen en gran medida de la interacción con los niveles más bajos del sistema operativo (SO).

Solía pensar que JavaScript no puede acceder a las funciones y API del sistema operativo. Entonces, ¿cómo hace eso BeEF?

P.S: Ya he leído otras preguntas pero no estoy satisfecho con las respuestas:

pregunta Jeremy Mc 08.10.2016 - 16:07
fuente

1 respuesta

3

En BeEF, un ping no es una solicitud de ping ICMP, y un escaneo de puerto no significa un escaneo SYN (o cualquiera de los otros métodos comunes de escaneo de puertos que encontrará en nmap, por ejemplo). En su lugar, BeEF utiliza API web estándar que realizan solicitudes de red de capa 7 (HTTP / FTP / WS) y mide el momento de estas llamadas a la API para determinar si un host estaba activo o un puerto abierto.

Hay tres técnicas diferentes que utiliza BeEF para este propósito:

  • Solicitudes XMLHttp de origen cruzado
  • Elementos de imagen HTML con oyentes de eventos onerror / onload
  • WebSockets

El módulo de ping solo utiliza las Solicitudes XMLHttp de Origen Cruzado, mientras que el módulo de escaneo de puertos usa las tres. BeEF nunca accede a la funcionalidad de red a nivel del sistema operativo y no puede enviar solicitudes de ping ICMP ni realizar una exploración TCP SYN.

    
respondido por el jupenur 02.12.2016 - 19:47
fuente

Lea otras preguntas en las etiquetas