Re: [Python-es] matriz de matrices irregulares en longitud
Hola a todos, Hace tiempo escribí esto, igual te sirve aunque falta pulirlo. Saludos. #!/usr/bin/env python # -*- coding: utf-8 -*- class Vector(list): '''Vector de tamaño fijo con/sin comprobación de tipo''' def __new__(cls, *args, **kwargs): # Internamente los elementos del vector se almacenan en una lista. return list.__new__(cls, *args, **kwargs) def __init__(self, length, default_value=None, initial_values=None, typed=True): # El vector tendrá el tamaño indicado por length. # Los elementos del vector se inicializan con los elementos de initial_values. # Si len(initial_values) length el vector se rellena con default_value # hasta alcanzar la longitud requerida. # Si len(initial_values) length se descartan los elementos de initial_values # con indice mayor a length. # Si todos los elementos de initial_values y default_value tienen el mismo # tipo el vector será de dicho tipo y solo podra almacenar valores de # ese tipo. En caso contrario el vector no tendra tipo y podra almacenar # elementos de cualquier tipo. # Si typed == False no se tendra en cuenta el tipo de los elementos. try: same_type = True l = len(initial_values) for i in range(length): if i l: self.append(initial_values[i]) same_type = same_type and (type(default_value) == type(initial_values[i])) else: self.append(default_value) except: self.extend([default_value]* length) finally: self.__length = length self.__type = type(default_value) if (same_type and typed) else type(None) def __setitem__(self, index, value): # Comprobamos el tipo antes de insertar un elemento. if self.__type == type(value) or self.__type == type(None): super(Vector, self).__setitem__(index, value) else: # Elemento de tipo incorrecto, no se inserta. raise ValueError def __setslice__(self, i, j, sequence): # Impedimos este método para que altere el tamaño del vector. # TODO: hacer lo mismo con el resto de métodos de la clase list que # pueden cambiar el tamaño del vector. raise ValueError # FIXME: poner la excepción correcta. def __count__(self): return self.__length @property def type(self): return self.__type @property def length(self): return self.__length class Matrix(Vector): '''Matriz bidimensional de tamaño fijo con/sin comprobación de tipo''' def __init__(self, cols, rows, default_value=None, initial_values=None, typed=True): # Indicamos el número de columnas y filas de la matriz. self.__cols = cols self.__rows = rows super(Matrix, self).__init__(cols * rows, default_value, initial_values, typed) def __setitem__(self, index, value): # FIXME: interceptar índices no válidos. col, row = index index = self.__cols * row + col super(Matrix, self).__setitem__(index, value) def __getitem__(self, index): # FIXME: interceptar índices no válidos. col, row = index index = self.__cols * row + col return super(Matrix, self).__getitem__(index) def __repr__(self): result = for i in range(0, self.length, self.cols): result += [%s] % , .join([str(s) for s in self[i: i + self.cols]]) return [%s] % result def __str__(self): result = for i in range(0, self.length, self.cols): result += %s\n % .join([str(s) for s in self[i: i + self.cols]]) return result @property def cols(self): return self.__cols @property def rows(self): return self.__rows def row(self, index): '''Devuelve la fila con índice index''' # FIXME: comprobar limites i = index * self.__cols return self[i:i + self.__cols] def col(self, index): '''Devuelve la columna con índice index''' # FIXME: comprobar limites return [self[index, i] for i in range(self.__cols)] def submatrix(self, ix, iy, jx, jy): '''Devuleve una submatrix de la matrix''' m = [] for y in range(iy, jy + 1): k = y * self.__cols m.append(self[k + ix:k + jx + 1]) # OJO!! el valor devuelto es un lista y no de la clase matrix return m def list(self): '''Devuleve los elementos de la matrix como una lista''' return list(self) def sublist(self, ix, iy, jx, jy): '''Devuleve una submatrix de la matrix en forma de lista''' l = [] for y in range(iy, jy + 1): k = y * self.__cols l.extend(self[k + ix:k + jx + 1]) # OJO!! el valor
[Python-es] Analizar trafico
Saludos a todos en la lista: Tengo una lista de direcciones IP como la siguiente: [['10.0.0.1', '172.16.0.2'], ['10.0.0.2', '172.16.0.4'], ['10.0.2.1', '172.16.0.6'], ['10.0.0.1', '172.16.0.2']] pero con muchas mas direcciones, cada lista representa fuente y destino de una conexión tc, esta información fue extraída de un log, quisiera solicitarles cordialmente orientación, ya que quisiera analizar esta información en busqueda de algun tipo de actividad sospechosa. Encontré el proyecto NetGrok[1] que hace lo que necesito pero con archivos pcap, y la información que tengo es en texto. Me pregunto si sería posible hacer un gráfico esta información para visualizar esto de forma más fácil, claro esta que cualquier otra sugerencia de la lista esta más que bienvenida [1] http://www.cs.umd.edu/projects/netgrok/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Analizar trafico
qué considerarias sospechoso? muchas conexiones a un mismo sitio? desde un mismo sitio? una secuencia? 2012/4/27 César García cel...@gmail.com: Saludos a todos en la lista: Tengo una lista de direcciones IP como la siguiente: [['10.0.0.1', '172.16.0.2'], ['10.0.0.2', '172.16.0.4'], ['10.0.2.1', '172.16.0.6'], ['10.0.0.1', '172.16.0.2']] pero con muchas mas direcciones, cada lista representa fuente y destino de una conexión tc, esta información fue extraída de un log, quisiera solicitarles cordialmente orientación, ya que quisiera analizar esta información en busqueda de algun tipo de actividad sospechosa. Encontré el proyecto NetGrok[1] que hace lo que necesito pero con archivos pcap, y la información que tengo es en texto. Me pregunto si sería posible hacer un gráfico esta información para visualizar esto de forma más fácil, claro esta que cualquier otra sugerencia de la lista esta más que bienvenida [1] http://www.cs.umd.edu/projects/netgrok/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Analizar trafico
Hola, Las capturas de red en esta caso .pcap son precisamente para esto, que con el uso de una herramienta (wireshark) puedes determinar mediante tu análisis y el apoyo en la herramientas las actividades realizadas por dichas maquina. O enfocarte en una herramienta que te parseado de la info que tienes en ese archivo. Saludos... 2012/4/27 G V nada...@gmail.com qué considerarias sospechoso? muchas conexiones a un mismo sitio? desde un mismo sitio? una secuencia? 2012/4/27 César García cel...@gmail.com: Saludos a todos en la lista: Tengo una lista de direcciones IP como la siguiente: [['10.0.0.1', '172.16.0.2'], ['10.0.0.2', '172.16.0.4'], ['10.0.2.1', '172.16.0.6'], ['10.0.0.1', '172.16.0.2']] pero con muchas mas direcciones, cada lista representa fuente y destino de una conexión tc, esta información fue extraída de un log, quisiera solicitarles cordialmente orientación, ya que quisiera analizar esta información en busqueda de algun tipo de actividad sospechosa. Encontré el proyecto NetGrok[1] que hace lo que necesito pero con archivos pcap, y la información que tengo es en texto. Me pregunto si sería posible hacer un gráfico esta información para visualizar esto de forma más fácil, claro esta que cualquier otra sugerencia de la lista esta más que bienvenida [1] http://www.cs.umd.edu/projects/netgrok/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Analizar trafico
G V, en este caso en específico considero sospechoso muchas conexiones desde y hacia un sitio. Jeyson, en este caso en particular no tengo el pcap, el cual como acertadamente mencionas me aligeraría mucha la carga. El 27 de abril de 2012 11:22, Jeyson Henao jahena...@gmail.com escribió: Hola, Las capturas de red en esta caso .pcap son precisamente para esto, que con el uso de una herramienta (wireshark) puedes determinar mediante tu análisis y el apoyo en la herramientas las actividades realizadas por dichas maquina. O enfocarte en una herramienta que te parseado de la info que tienes en ese archivo. Saludos... 2012/4/27 G V nada...@gmail.com qué considerarias sospechoso? muchas conexiones a un mismo sitio? desde un mismo sitio? una secuencia? 2012/4/27 César García cel...@gmail.com: Saludos a todos en la lista: Tengo una lista de direcciones IP como la siguiente: [['10.0.0.1', '172.16.0.2'], ['10.0.0.2', '172.16.0.4'], ['10.0.2.1', '172.16.0.6'], ['10.0.0.1', '172.16.0.2']] pero con muchas mas direcciones, cada lista representa fuente y destino de una conexión tc, esta información fue extraída de un log, quisiera solicitarles cordialmente orientación, ya que quisiera analizar esta información en busqueda de algun tipo de actividad sospechosa. Encontré el proyecto NetGrok[1] que hace lo que necesito pero con archivos pcap, y la información que tengo es en texto. Me pregunto si sería posible hacer un gráfico esta información para visualizar esto de forma más fácil, claro esta que cualquier otra sugerencia de la lista esta más que bienvenida [1] http://www.cs.umd.edu/projects/netgrok/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Analizar trafico
Coincido con Cesar. Seria interesante alguna herramiente que pueda tomar las variables que mencionas y mostrar el trafico graficamente. Mi caso imagino es similar al tuyo Cesar, tengo un firewall Juniper que envia por syslog el trafico de red, con un script en python que hice convierto esos registros en valores que inserto en una base de datos Mysql ya con los resumenes de trafico x usuario, pero eso es todo y no ayuda demasiado... Si se pudiera utilizar algo para volcar esa informacion a graficas seria genial El 27/04/12, César García cel...@gmail.com escribió: G V, en este caso en específico considero sospechoso muchas conexiones desde y hacia un sitio. Jeyson, en este caso en particular no tengo el pcap, el cual como acertadamente mencionas me aligeraría mucha la carga. El 27 de abril de 2012 11:22, Jeyson Henao jahena...@gmail.com escribió: Hola, Las capturas de red en esta caso .pcap son precisamente para esto, que con el uso de una herramienta (wireshark) puedes determinar mediante tu análisis y el apoyo en la herramientas las actividades realizadas por dichas maquina. O enfocarte en una herramienta que te parseado de la info que tienes en ese archivo. Saludos... 2012/4/27 G V nada...@gmail.com qué considerarias sospechoso? muchas conexiones a un mismo sitio? desde un mismo sitio? una secuencia? 2012/4/27 César García cel...@gmail.com: Saludos a todos en la lista: Tengo una lista de direcciones IP como la siguiente: [['10.0.0.1', '172.16.0.2'], ['10.0.0.2', '172.16.0.4'], ['10.0.2.1', '172.16.0.6'], ['10.0.0.1', '172.16.0.2']] pero con muchas mas direcciones, cada lista representa fuente y destino de una conexión tc, esta información fue extraída de un log, quisiera solicitarles cordialmente orientación, ya que quisiera analizar esta información en busqueda de algun tipo de actividad sospechosa. Encontré el proyecto NetGrok[1] que hace lo que necesito pero con archivos pcap, y la información que tengo es en texto. Me pregunto si sería posible hacer un gráfico esta información para visualizar esto de forma más fácil, claro esta que cualquier otra sugerencia de la lista esta más que bienvenida [1] http://www.cs.umd.edu/projects/netgrok/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- Enviado desde mi dispositivo móvil ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Analizar trafico
El día 27 de abril de 2012 15:14, Carlos Herrera Polo carlos.herrerap...@gmail.com escribió: Coincido con Cesar. Seria interesante alguna herramiente que pueda tomar las variables que mencionas y mostrar el trafico graficamente. Mi caso imagino es similar al tuyo Cesar, tengo un firewall Juniper que envia por syslog el trafico de red, con un script en python que hice convierto esos registros en valores que inserto en una base de datos Mysql ya con los resumenes de trafico x usuario, pero eso es todo y no ayuda demasiado... Si se pudiera utilizar algo para volcar esa informacion a graficas seria genial Bueno, graficar el tráfico ni idea, pero para armar el grafo puedes utilizar digraph[1]; y puedes localizar a donde pertenecen a través de un whois o utilizar la información de RIR[2]. [1] http://networkx.lanl.gov/reference/classes.digraph.html [2] http://www-public.it-sudparis.eu/~maigron/RIR_Stats/RIR_Delegations/LACNIC/IPv4-ByNb.html El 27/04/12, César García cel...@gmail.com escribió: G V, en este caso en específico considero sospechoso muchas conexiones desde y hacia un sitio. Jeyson, en este caso en particular no tengo el pcap, el cual como acertadamente mencionas me aligeraría mucha la carga. El 27 de abril de 2012 11:22, Jeyson Henao jahena...@gmail.com escribió: Hola, Las capturas de red en esta caso .pcap son precisamente para esto, que con el uso de una herramienta (wireshark) puedes determinar mediante tu análisis y el apoyo en la herramientas las actividades realizadas por dichas maquina. O enfocarte en una herramienta que te parseado de la info que tienes en ese archivo. Saludos... 2012/4/27 G V nada...@gmail.com qué considerarias sospechoso? muchas conexiones a un mismo sitio? desde un mismo sitio? una secuencia? 2012/4/27 César García cel...@gmail.com: Saludos a todos en la lista: Tengo una lista de direcciones IP como la siguiente: [['10.0.0.1', '172.16.0.2'], ['10.0.0.2', '172.16.0.4'], ['10.0.2.1', '172.16.0.6'], ['10.0.0.1', '172.16.0.2']] pero con muchas mas direcciones, cada lista representa fuente y destino de una conexión tc, esta información fue extraída de un log, quisiera solicitarles cordialmente orientación, ya que quisiera analizar esta información en busqueda de algun tipo de actividad sospechosa. Encontré el proyecto NetGrok[1] que hace lo que necesito pero con archivos pcap, y la información que tengo es en texto. Me pregunto si sería posible hacer un gráfico esta información para visualizar esto de forma más fácil, claro esta que cualquier otra sugerencia de la lista esta más que bienvenida [1] http://www.cs.umd.edu/projects/netgrok/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- Enviado desde mi dispositivo móvil ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- Luis M. Ibarra ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Analizar trafico
Acabo de encontrar esto, no es python, pero podría ayudar a solucionar el problema, talvez se podría automatizar con las librerias para graphviz en python. El 27 de abril de 2012 14:27, #Mike - michael.iba...@gmail.com escribió: El día 27 de abril de 2012 15:14, Carlos Herrera Polo carlos.herrerap...@gmail.com escribió: Coincido con Cesar. Seria interesante alguna herramiente que pueda tomar las variables que mencionas y mostrar el trafico graficamente. Mi caso imagino es similar al tuyo Cesar, tengo un firewall Juniper que envia por syslog el trafico de red, con un script en python que hice convierto esos registros en valores que inserto en una base de datos Mysql ya con los resumenes de trafico x usuario, pero eso es todo y no ayuda demasiado... Si se pudiera utilizar algo para volcar esa informacion a graficas seria genial Bueno, graficar el tráfico ni idea, pero para armar el grafo puedes utilizar digraph[1]; y puedes localizar a donde pertenecen a través de un whois o utilizar la información de RIR[2]. [1] http://networkx.lanl.gov/reference/classes.digraph.html [2] http://www-public.it-sudparis.eu/~maigron/RIR_Stats/RIR_Delegations/LACNIC/IPv4-ByNb.html El 27/04/12, César García cel...@gmail.com escribió: G V, en este caso en específico considero sospechoso muchas conexiones desde y hacia un sitio. Jeyson, en este caso en particular no tengo el pcap, el cual como acertadamente mencionas me aligeraría mucha la carga. El 27 de abril de 2012 11:22, Jeyson Henao jahena...@gmail.com escribió: Hola, Las capturas de red en esta caso .pcap son precisamente para esto, que con el uso de una herramienta (wireshark) puedes determinar mediante tu análisis y el apoyo en la herramientas las actividades realizadas por dichas maquina. O enfocarte en una herramienta que te parseado de la info que tienes en ese archivo. Saludos... 2012/4/27 G V nada...@gmail.com qué considerarias sospechoso? muchas conexiones a un mismo sitio? desde un mismo sitio? una secuencia? 2012/4/27 César García cel...@gmail.com: Saludos a todos en la lista: Tengo una lista de direcciones IP como la siguiente: [['10.0.0.1', '172.16.0.2'], ['10.0.0.2', '172.16.0.4'], ['10.0.2.1', '172.16.0.6'], ['10.0.0.1', '172.16.0.2']] pero con muchas mas direcciones, cada lista representa fuente y destino de una conexión tc, esta información fue extraída de un log, quisiera solicitarles cordialmente orientación, ya que quisiera analizar esta información en busqueda de algun tipo de actividad sospechosa. Encontré el proyecto NetGrok[1] que hace lo que necesito pero con archivos pcap, y la información que tengo es en texto. Me pregunto si sería posible hacer un gráfico esta información para visualizar esto de forma más fácil, claro esta que cualquier otra sugerencia de la lista esta más que bienvenida [1] http://www.cs.umd.edu/projects/netgrok/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- Enviado desde mi dispositivo móvil ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ -- Luis M. Ibarra ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Analizar trafico
2012/4/27 #Mike - michael.iba...@gmail.com: para armar el grafo puedes utilizar digraph[1] Networkx permite hacer gráficos de las redes. Algunos ejemplos: http://networkx.lanl.gov/examples/drawing/weighted_graph.html http://networkx.lanl.gov/examples/drawing/random_geometric_graph.html Un aviso sobre el tamaño de la red: la clave en estos gráficos está en el cálculo de la modularidad de la red, para colocar los nodos muy interconectados cerca. Networkx tiene integrado el algoritmo espectral de Newman (draw_spectral), que funciona bien en redes no muy grandes. Del artículo de Newman: For the largest of the networks studied here, [...] which has 27,000 vertices, the algorithm takes 20 min to run on a standard personal computer (circa 2006). Blondel et al. tienen otro algoritmo más rápido, que en mi máquina (similar), tarda 27 segundos. http://perso.crans.org/aynaud/communities/ David. ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/