Un idle scan est une méthode de balayage de port TCP qui, grâce à des utilitaires tels que Nmap et Hping, utilise l'envoi de paquets possédant une adresse IP usurpée. Cet exploit complexe permet à la fois de balayer les ports d'une machine ainsi que de mettre en évidence les liaisons de confiance (s'appuyant sur les adresses IP) entre les machines. L'attaque consiste en l'envoi de paquets forgés vers une machine donnée – la cible – dans le but d'obtenir des informations à propos d'elle mais via une autre machine – le zombi. Découvert par Salvatore Sanfilippo (aussi connu sous le nom de « Antirez ») en 1998, l'idle scan a été utilisé par de nombreux pirates lors de la préparation d'une attaque afin d'identifier discrètement les ports ouverts sur une machine cible. Bien qu'il ait été nommé « dumb scan » à l'origine, le terme « idle scan » a été inventé en 1999, après la publication d'une preuve de concept nommée « idlescan », par Filipe Almeida (aussi connu sous le pseudonyme de « LiquidK »). Ce type de balayage de ports peut également être appelé « zombi scan ». Toutes les appellations sont dues à la nature de l'une des machines impliquées dans l'attaque. L'idle scan exploite le fait que l'on peut, sous certaines conditions, prédire les numéros d'identification IP (IPID). L'attaquant doit d'abord rechercher une machine avec une séquence d'IPID prévisible. Par exemple, le numéro d'identification sera incrémenté de 1 à chaque fois. Les dernières versions de Linux, Solaris et OpenBSD ne sont pas des cibles appropriées puisque les algorithmes de génération d'IPID ont été corrigés. Les machines choisies pour être utilisées à ce niveau sont parfois appelées « zombis ». Une fois qu'une machine zombi a été trouvée, la première étape est de déterminer le numéro IPID actuel de la machine : en envoyant un pacquet SYN/ACK au zombi, le pirate recevra un paquet RST portant le numéro de séquence. L'étape suivante consiste en l'envoi d'un paquet SYN à la machine cible, en usurpant l'adresse IP du zombi.