En los tres primeros capítulos de esta serie dedicada a los eventos SMB / CIFS – NETBIOS, hemos visto los mensajes del tipo Name query NB, Name query response NB y los pasos previos a Negotiate protocol Request y Negotiate protocol Response. Estos pasos, recordad, eran:
- Echo ping request
- Echo ping response
- Session request, to….
- Positive session response
En esta cuarta parte vamos a estudiar:
- Negotiate protocol Request y
- Negotiate protocol Response
En el anterior artículo nos quedamos en session request y possitive session response. De esta forma se enviaba una petición de sesión y la confirmación «positiva» en caso de que todo esté correcto.
Es el momento entonces de comenzar, una vez establecida la conexión, el diálogo. Este comienza enviando un paquete del tipo Negotiate protocol request (0x72), en el cual envía una lista de dialectos Requested Dialects que entiende, con los que establecer diálogo con la otra parte (para nosotros, CLIENTE).
NOTA: Vamos a ver de forma rápida este paso previo a la autentificación con el servidor del recurso y resto de pasos más importantes.
Vemos en la captura que envia una lista con 6 dialectos:
- PC NETWORK PROGRAM 1.0
- LANMAN1.0
- Windows for Workgroups 3.1a
- LM1.2X002
- LANMAN2.1
- NT LM 0.12
Observamos la captura correspondiente. Paquete 26, que, aunque no se corresponde a la captura de los anteriores capitulos, es exactamente el mismo proceso.
El host identificado como SISTEMAS (192.168.1.5) envía a 192.168.1.30 CLIENTE un paquete, en la captura el 26.
Vemos que, como en casos anteriores, se le asigna un número de proceso en Process ID (65279) y dos campos más que son:
- Tree ID que está a 0 puesto que aín no se a establecido la conexión al requros compartido.
- User ID también a 0 por la misma razón
Resto de campos a 0.
En el siguiente paquete (27) vamos a ver como la otra parte, el servidor del recurso compartido (CLIENTE), responde con un paquete del tipo Negotiate Protocol (0x72) en este caso Response, en el cual responde a la petición anterior (paquete 26 Negotiate protocol request) de que el dialecto seleccionado es el número 5: NT LM 0.12
Observad que en el paquete 26 del Request, el dialecto NT LM 0.12, estaba en la posición 6. En la respuesta se ordena y asigna el número 5.
Vemos también que el campo Process ID ó identificador del proceso, es el mismo (65279) que el anterior.
En Capabilities, se envia información sobre el servidor del recurso compartido.
Security mode, nos informa sobre subprotocolos de autentificación que espera el servidor del recurso compartido.
—————————————————————–
Para la siguiente entrega estudiaremos la negociación de autentificación con el servidor del recurso.
Pingback: Wireshark. Analizando eventos SMB / CIFS – NetBIOS. Parte 6. Comandos Tans2. | Seguridad y Redes
Pingback: Wireshark. Analizando eventos SMB / CIFS – NetBIOS. Parte 5. | Seguridad y Redes