es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Rango de CIDR de dirección IP con operación de unión o en KQL.

Tenemos una lista de rangos de IP en formato CIDR en una de las tablas personalizadas de Azure Sentinel. Necesitamos mapear los registros de inicio de sesión de Azure AD con esos rangos de IP. ¿Existe alguna forma de mapear la dirección IP con el rango de IP CIDR utilizando operadores como in, join, etc.?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Sí, es posible mapear los registros de inicio de sesión de Azure AD con rangos de IP en formato CIDR usando operadores KQL como in, join y contains. Aquí están los pasos que puedes seguir:

    1. Obtener la dirección IP de la tabla Azure AD SigninLogs.
    SigninLogs
    | where IPAddress != ''
    | project IPAddress
    
    1. Convertir la dirección IP al formato largo usando la función ip_to_long().
    SigninLogs
    | where IPAddress != ''
    | project IPAddress, ip_to_long(IPAddress) as IP
    
    1. Unir la tabla anterior con la tabla que contiene los rangos de IP en formato CIDR.
    let IPRangeTable = datatable(IPRange:string) ['192.168.0.0/24', '10.0.0.0/8', '172.16.0.0/12'];
    SigninLogs
    | where IPAddress != ''
    | project IPAddress, ip_to_long(IPAddress) as IP
    | join kind=inner (
        IPRangeTable
        | extend IPRangeStart = tolong(iprange_split(IPRange, 2))
        | extend IPRangeEnd = tolong(iprange_split(IPRange, 3))
        | project IPRangeStart, IPRangeEnd, IPRange
    ) on IP between(IPRangeStart .. IPRangeEnd)
    
    1. La consulta anterior te dará todos los inicios de sesión que se originaron desde cualquiera de los rangos de IP especificados en la tabla IPRangeTable.

    Nota: Reemplazar IPRangeTable con la tabla personalizada que contiene tus rangos de IP en formato CIDR.

Comments are closed.