Npcap es la actualización de la popular librería WinPcap, WinPcap sirve para realizar sniffing de paquetes en Windows con cualquier software analizador de paquetes tipo Wireshark, pero hay una gran cantidad de programas que necesitan de WinPcap para funcionar adecuadamente. Npcap soporta NDIS 6 con la técnica Light-Weight Filter, además es compatible con los nuevos sistemas operativos de Microsoft como Windows Vista, 7, 8 y Windows 10.
El proyecto Npcap está patrocinado por el conocido proyecto Nmap, y desarrollado por Yang Luo bajo el concurso Google Summer of Code, además ha recibido una gran ayuda por parte del equipo de desarrollo de Wireshark y también de NetScanTools.
Las principales características de esta nueva librería es que es compatible con NDIS 6, la nueva API que utilizan de forma nativa Windows Vista y siguientes, que es mucho más rápido que NDIS 5 y que en cualquier momento Microsoft podría retirar. En la página web oficial de Microsoft encontramos las principales características de este NDIS 6 y cómo funciona internamente.
Npcap incorpora una seguridad adicional, y es que puede restringir el acceso a únicamente los administradores para realizar el sniff de los paquetes. Si un usuario que no es administrador intenta utilizar Npcap a través de softwares como Nmap o Wireshark, saltará el UAC (User Account Control) de Windows para introducir los credenciales del administrador y poder utilizar el driver. Esto es parecido a Linux donde solo el usuario root (ya sea el propio root o con sudo) puede realizar captura de paquetes.
WinPcap está ampliamente extendido, por eso han trabajado en proporcionar un modo de compatibilidad de WinPcap a la hora de instalarlo. Npcap podrá usar los directorios y las DLL que usa WinPcap para que si un software utiliza WinPcap, se utiliza de manera totalmente transparente y no haya problemas. Si no seleccionamos el modo de compatibilidad, Npcap se instalará en una localización diferente con un nombre de servicio diferente, de esta forma, ambos drivers podrán coexistir sin problemas en el mismo sistema. Si una aplicación solo soporta WinPcap, utilizará dicha librería, y si un software soporta WinPcap y Npcap se le preguntará al administrador qué librería utilizar, es recomendable usar Npcap ya que es más rápido.
Otra característica es que se permite capturar paquetes de la interfaz de loopback, es decir, del tráfico que se intercambia entre los servicios del mismo ordenador, esto podremos hacerlo gracias a que usa Windows Filtering Platform. Después de la instalación Npcap creará un adaptador virtual llamado Npcap Loopback Adapter para poder realizar capturas de la loopback, por supuesto es compatible con Wireshark. Relacionada con esta característica tenemos también Loopback Packet Injection, que nos permitirá enviar paquetes a la loopback utilizando Winsock Kernel, ideal para utilizar Nping e inyectar paquetes. Por último, también tenemos la posibilidad de capturar paquetes 802.11, es decir, los paquetes que se intercambian a través de los adaptadores Wi-Fi.
Os recomendamos acceder a la página web de Npcap en GitHub donde encontraréis toda la información sobre esta librería y también su descarga.