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.