Este es el comando doscan que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
doscan: auditoría de redes con capacidad de denegación de servicio
SINOPSIS
doscan opciones prefijo...
DESCRIPCIÓN
doscan es una herramienta para descubrir los servicios TCP en nuestra red. Está diseñado para escanear un
puertos únicos en una red grande. (Existen mejores herramientas para escanear muchos puertos en un
pequeño conjunto de hosts, por ejemplo nmap(8).)
El sistema prefijo el parámetro instruye doscan para escanear todas las direcciones en este prefijo. Prefijo
la notación es, como de costumbre, ABCD / L, donde el A B C D es una dirección IP en notación de cuatro puntos,
y L es una longitud de prefijo de 1 a 32. Si el /L parte se omite, / 32 se asume (y un
se escanea un solo host).
doscan utiliza una tecnología de dispersión aleatoria para distribuir la carga a través de la red. Dentro de
un prefijo dado, los hosts no se escanean secuencialmente, sino de forma aleatoria, pero
orden reproducible. Como resultado, doscan no pondrá a prueba el borde de la red (solo el
siguiente salto). (Los prefijos se escanean en orden).
OPCIONES
El sistema --Puerto La opción es obligatoria, todas las demás opciones son opcionales.
-a tiempo de espera, --añadir-tiempo de espera tiempo de espera
-A contar, --añadir-ráfaga contar
Estas opciones especifican el tiempo de espera (en milisegundos) antes de que se realicen nuevas conexiones.
agregado, y el número de nuevas conexiones o hosts para agregar en una ráfaga. Cada
tiempo de espera milisegundo, contar se contactan nuevos hosts. (El tiempo de espera por host
controlado por el --se acabó el tiempo La opción es independiente. Especifica el tiempo de espera una vez
se ha enviado el primer paquete.)
-b contar, --bandera contar
doscan lee como máximo contar bytes del host remoto. El efecto exacto de esto
La opción varía entre los módulos de protocolo, consulte la PROTOCOLO MÓDULOS para más detalles.
-c contar, --conexiones contar
A lo sumo contar las conexiones se establecen en paralelo. Ver AVISOS abajo para
problemas resultantes de los límites del descriptor de archivos del sistema e instrucciones para
eligiendo este parámetro. Por defecto, como máximo 50 conexiones paralelas son
establecido.
-MI, --no-epoll
No use el encuesta interfaz del kernel incluso si está disponible (útil para
depuración).
-F, --expediente nombre
doscan lee prefijos del archivo nombre , además de la línea de comando. El
El archivo debe contener un prefijo por línea. Ver el DESCRIPCIÓN sección anterior para el
formato de prefijo. Para distribuir mejor el escaneo de listas largas de prefijos, todos los prefijos
se reordenan aleatoriamente si el --expediente se utiliza la opción.
-I, --indicador
Muestra un indicador de progreso. Si doscan se invoca con esta opción, el número de
conexiones que se han establecido hasta ahora, el número total de direcciones a ser
escaneado, el número de conexiones activas actualmente y el número de hosts para
que se ha generado una entrada de informe se muestran periódicamente.
-norte, --net-errores
Instruye doscan para informar errores de red incluso si impiden una conexión.
Normalmente, estos errores se eliminan.
-o formato, --producción formato
Esta opción cambia el formato que doscan utiliza para informar sus hallazgos. Ver el
SALIDA FORMATO la sección a continuación para más detalles.
-p Puerto, --Puerto Puerto
El sistema --Puerto la opción controla a qué puerto TCP doscan se conecta al escanear un host.
--protocolo cadena, -P Icadena
Elige el módulo de protocolo cadena. Consulte las PROTOCOLO MÓDULOS sección para
información sobre los módulos de protocolo disponibles.
--enviar cadena, -s cadena
--recibir regexp, -r regexp
Los efectos de estas opciones dependen del módulo de protocolo. Ver el PROTOCOLO
MÓDULOS para más detalles.
--estilo style, -S style
Esta opción controla el estilo de salida. Ver el SALIDA FORMATO para más detalles.
-t tiempo de espera, --se acabó el tiempo tiempo de espera
Esta opción establece el tiempo de espera de conexión en tiempo de espera milisegundos. Si este tiempo pasa
sin una conexión establecida con éxito, doscan omite los hosts.
-v, --verboso
Active los informes adicionales al error estándar.
-h, --ayuda
Mostrar mensaje de ayuda y salir.
-V, --versión
Salida de información de versión y salida.
PROTOCOLO MÓDULOS
doscan admite varios módulos de protocolo. Por defecto, el genérico tcp se utiliza el módulo, pero
puedes elegir otro módulo usando el --protocolo opción. El efecto de la --bandera,
--enviar y --recibir las opciones dependen del módulo de protocolo. Los módulos disponibles incluyen:
http Este módulo provoca doscan para conectarse a servidores HTTP, enviar una solicitud y recopilar
la identificación del servidor de la respuesta.
El sistema --bandera La opción especifica el tamaño máximo del búfer de recepción. Su valor predeterminado es 4000
bytes
El sistema --enviar La opción especifica la solicitud que se envía al servidor. La cuerda puede
incluir secuencias de escape C para enviar caracteres de control. Por defecto, la solicitud
/ HTTP / 1.0 \ r \ n \ r \ n (es decir, / HTTP / 1.0 seguido de los cuatro caracteres CR, LF,
CR, LF) se envía.
El sistema --recibir La opción no es compatible con este módulo de protocolo.
http_proxy
Este módulo de protocolo prueba los hosts en busca de proxies HTTP abiertos. los --Puerto opción
controla el puerto que se prueba. Lo requerido --recibir la opción debe ser un número entero
en el rango de 1 a 65534, el número especifica el puerto en el que doscan escucha
para las conexiones de proxies abiertos. Lo requerido --enviar opción especifica la
Método de solicitud HTTP, ya sea "GET" o "CONNECT".
El sistema --bandera La opción no es compatible con este módulo de protocolo.
Advertencia: En el peor de los casos, la cantidad de descriptores de archivo es un poco más de
dos veces el número de conexiones paralelas dado por el --conexiones opciones. los
descriptores de archivo adicionales son utilizados por doscancomponente del servidor HTTP para procesar
las conexiones obtenidos de proxies abiertos.
Consulte las EJEMPLOS sección para algunas combinaciones convenientes de esas opciones.
verificación_identificación
Este módulo de protocolo informa hosts que tienen servicio TCP escuchando en el
puerto especificado que es no un demonio IDENT / AUTH adecuado. Es más útil con un
--Puerto 113 argumento de línea de comando. Ninguno de los --bandera, --recibir y --enviar
las opciones son compatibles.
tcp Este módulo está diseñado para el sondeo y la toma de huellas digitales de servicios TCP genéricos.
El sistema --bandera La opción controla la longitud máxima de las cadenas de banner que se
recogido. Si su argumento es cero o si no se especifica la opción, no hay banner
Se recogen cadenas. En este caso, doscan cierra las conexiones inmediatamente después
se han establecido (lo que da como resultado una mayor velocidad de exploración).
Después de establecer una conexión, doscanos envía la cadena especificada por el --enviar
opción al host remoto. La cadena puede contener las secuencias de escape habituales de C
disponibles (Incluyendo \ 000), para enviar caracteres no imprimibles.
El sistema --recibir La opción especifica una expresión regular compatible con Perl (PCRE), y
doscan lo utiliza para analizar los datos devueltos por un host remoto. El regular
expresión puede contener al menos un subpatrón de captura, siempre está anclado en
el comienzo de los datos recibidos. El personaje . (punto) coincide con todos
caracteres (incluida la nueva línea). $ (signo de dólar) coincide con el final del
datos recibidos (que, sin embargo, aún pueden estar incompletos). Ver patrón(3) para
detalles sobre la sintaxis de la expresión regular compatible con Perl.
El sistema --recibir la expresión regular es utilizada por doscan para varios propósitos. Si los datos
se recibe de un host remoto, y si la expresión regular termina con $, doscan
cierra inmediatamente la conexión si todos los datos recibidos hasta ahora de este host
coincide con la expresión regular. (doscan asume que la respuesta está completa;
El resultado es una mayor velocidad de escaneo.) Cuando se termina una conexión para cualquier
razón, doscan comprueba si la expresión regular coincide con los datos recopilados. Si se
no, un no partido se registra el error (si no se produjo ningún otro error). Si lo hace, y
la expresión regular contiene un subpatrón de captura, ese subpatrón es
grabado. De lo contrario, se registran todos los datos.
Para usar el --recibir opción, debe especificar la --bandera opción como
bien.
udp Este módulo es un escáner UDP genérico, en la medida de lo posible. Envía hacia arriba
a cinco paquetes UDP (cuya carga útil está controlada por el --enviar opción) a
el puerto especificado. Se recogen las respuestas. El --bandera La opción es implícita y
establecido en el tamaño máximo de carga útil. La retransmisión se detiene cuando se recibe la primera respuesta.
recibido.
En modo detallado (con ambos --verboso y --net-errores opciones), una advertencia como
"paquete UDP perdido de 192.0.2.4:7" se imprime como error estándar cuando se produce un error inesperado
Se reciben paquetes UDP. Se activan los paquetes para enviar a la red o las direcciones de difusión
tales paquetes, y servicios UDP mal implementados en máquinas multi-homed responden
con una dirección IP de origen diferente.
SALIDA FORMATO
doscan imprime todos los datos recopilados sobre los prefijos escaneados en la salida estándar, justo antes de la
el programa termina. El formato de salida se puede cambiar con el --producción opción. La
formato El argumento de esta opción es una cadena que incluye % sustituciones, similares a
Printf(3). Se admiten las siguientes sustituciones
%% Un carácter de porcentaje literal.
%a La dirección del host remoto.
%b La bandera regresa por parte del anfitrión.
%e El código de error como una cadena, vacío si no ocurrió ningún error al escanear el host.
Esta es una constante de error del sistema (como ECONNREFUSED) o la cadena
desconocido (código de error desconocido). Si el --recibir La opción está activa y la recibida
Los datos no coinciden con la expresión regular especificada y no se ha producido ningún otro error.
ocurrido, la columna contiene no partido.
%E El código de error numérico correspondiente al %e mensaje de error, o cero si no hay error
ocurrió. Los números de error negativos se devuelven para errores internos (como un error
partido contra el --recibir expresión regular).
%n El nombre de host correspondiente a la dirección IP escaneada (según una búsqueda de DNS).
Tenga en cuenta que esto ralentiza mucho los informes, en general. Por esta razón, no es
recomendado para usar %n Junto con --estilo sin clasificar.
%N Un carácter ASCII LF (nueva línea) textual.
%r El tiempo en que se recopiló la información, medido en segundos desde el escaneo.
comenzado.
%t La hora en que se recopiló la información, en hora local.
%T Igual que %t, pero en UTC (también conocido como GMT).
%% Un signo de porcentaje literal (%).
El valor predeterminado para el --producción opción es % T \ t% a \ t% e \ t% b, donde el \t denota un ASCII
Carácter HTAB.
El sistema --estilo or -S La opción admite los siguientes argumentos:
ordenar por host
La salida está ordenada por la dirección IP del host escaneado. (Este es el valor predeterminado).
sin clasificar
La salida no está ordenada y aparece en el orden en que respondieron los hosts.
Precaución: No utilice este estilo junto con un --producción argumento que incluye
%n, y no canalice la salida de doscan a un proceso que no puede leer su
entrada estándar rápidamente. La salida se realiza de forma síncrona y, si se retrasa,
esto podría afectar la actividad de escaneo.
En todos los casos excepto sin clasificar, la salida se retrasa justo antes de la terminación del
.
EJEMPLOS
doscan --bandera 100 --Puerto 13 192.0.2.1
Imprime la hora en el host 192.0.2.1 (si ejecuta un servidor diurno).
doscan --bandera 100 --recibir '(. *) \ n $' --Puerto 22 192.0.2.0/24
Busque servidores SSH y registre los anuncios (que generalmente contienen información de versión sobre
el servidor SSH).
doscan --bandera 200 --recibir '(. *?) \ r? \ n $' --Puerto 25 192.0.2.0/24
Busque servidores SMTP y grabe sus mensajes de bienvenida. También funciona para FTP, con
--Puerto 21 en lugar de --Puerto 25.
doscan --bandera 2000 --enviar 'OBTENER / HTTP / 1.0 \ r \ n \ r \ n ' \
--recibir '. *? \ nServidor: * ([^ \ r \ n] *) * \ r? \ n. * $ ' \
--Puerto 80 192.0.2.0/24
Busque servidores HTTP y registre sus cadenas de versión.
doscan --protocolo http_proxy --Puerto 3128 \
--enviar --recibir 80 192.0.2.0/24
Busque proxies abiertos en el puerto TCP 3128, utilizando el método de solicitud GET HTTP. Intenta conectarte
volver al puerto 80 en el host de escaneo.
Se recomienda que use el puerto 80 para el puerto de escucha si escanea usando GET
peticiones. Para solicitudes CONNECT, se debe usar el puerto 443 (ver más abajo). Algunos administradores
podría restringir CONNECT al puerto TCP 443 (o filtrarlo para el método de solicitud GET), por lo que
las opciones dan mejores resultados.
doscan --protocolo http_proxy --Puerto 8080 \
--enviar CONECTARSE --recibir 443 192.0.2.0/24
Busque proxies abiertos en el puerto TCP 8080, utilizando el método de solicitud CONNECT HTTP. Intentar
conéctese de nuevo al puerto 443 en el host de escaneo.
AVISOS
La opción más importante para la puesta a punto es --conexiones. Incrementar esta opción puede
aumentar el rendimiento del escaneo. Sin embargo, hay dos advertencias: muchas conexiones requieren
muchos sockets, y es posible que su sistema no admita tantos de ellos. Además, una gran
número de conexiones paralelas genera un número significativo de paquetes y una alta CPU
carga, que pueden conducir a fallos de conexión espurios (falsos negativos).
Para aumentar la cantidad de conexiones que su sistema puede procesar, generalmente debe aumentar
el correspondiente ulimit valor en su caparazón, que requiere raíz privilegios. Para
ejemplo, en golpear(1), puede invocar
ulimit -n 10030
para aumentar el límite del descriptor a 10030. A continuación, puede pasar --conexiones 10000 a doscan.
(Algunos descriptores de archivo no se utilizan para escanear, pero deben estar abiertos de todos modos, y
contar para el ulimit -n límite.)
En los sistemas basados en Linux, es posible que deba ajustar algunos sysctl valores que controlan el sistema-
límites de descriptores amplios. Referirse a sysctl.conf(5), el Documentación directorio en el Linux
árbol fuente, o el propio código fuente para obtener más detalles.
Sin embargo, tenga en cuenta que si aumenta el número de conexiones paralelas más allá de un cierto
valor, lo harás lose algunos hosts, es decir, no se informarán aunque estén
ejecutar un servicio en el puerto escaneado. Por lo tanto, debe vigilar tanto la red como la CPU.
utilización para detectar cuellos de botella. Aunque la técnica de dispersión aleatoria empleada por
doscan intenta dividir la carga en toda su red, esto obviamente falla si el próximo
hop no puede soportar el tráfico.
Utilice doscan en línea utilizando los servicios de onworks.net