Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - j0lama

#1
Buenas a todos, hace ya un tiempo que no me pasaba por aquí con algún tema nuevo xD.
He encontrado un fallo, que considero bastante grande, en algunos routers que proporciona Movistar de la marca MitraStar. El fallo permite ejecutar una shell con permisos de root, evadiendo la shell por defecto que el fabricante nos obliga a usar al conectarnos por ssh.
Link con toda la descripción de la vulnerabilidad: http://jolama.es/temas/router-attack/index.php
La vulnerabilidad ha sido solucionada en los últimos modelos, pero aun así, muchos de los router domésticos siguen estando afectados.
Saludos
#2
Electrónica / Como clonar la llave de un coche
19 Febrero 2017, 20:26 PM
Este tutorial únicamente tiene fines educativos y de investigación.
Cualquier uso que le deis a esta información esta bajo vuestra responsabilidad y no me hago cargo de cualquier problema que el mal uso de esto os de.

La motivación que me trajo hacer este tutorial fue el reto de a ver por cuanto dinero era posible hacer un sistema que me permitiese clonar la llave del coche de mi madre sin tener acceso a la misma.
Con solamente 15€ puedes comprar todo el material que necesario para realizarlo.
Tutorial: http://jolama.es/temas/clone-keycar/index.php
#3
Scripting / Re: Ayuda con script PYTHON
8 Octubre 2015, 23:33 PM
Cita de: explorer en  8 Octubre 2015, 02:15 AM
La responsabilidad del arranque de la terminal es del usuario hacia el kernel usando el entorno de ventanas o el shell como intermediarios.

Entonces... no se puede evitar el arranque de la terminal si no te pones en medio de esa conversación.

Se puede hacer que no lo arranque desde el entorno gráfico si se quitan todas las referencias (iconos, menús) donde aparece el atajo para el arranque de la terminal.

Y en el shell... se podría crear un alias que se llame de la misma manera que el ejecutable, y así el usuario, si no se da cuenta, verá que no aparece nada en pantalla.

Pero un programa en ejecución como el que tú planteas, no impedirá el arranque del terminal. Si puede matarlo una vez detectado (con el kill, como tienes puesto). Entonces, lo que te queda hacer es un bucle infinito, pero en lugar de leer líneas desde un stdout abierto, debes ejecutar el 'ps ...' (por ejemplo, cada un segundo o cada 3 segundos, para que no cargue la CPU), y encauzar los pid encontrados al kill.

Por ejemplo:
Código (python) [Seleccionar]
#!/usr/bin/python
import time, sys, subprocess,os

while True:
   time.sleep(1)                       # esperamos un poco
   comando = "ps -eo pid,cmd | fgrep konsole | fgrep -v fgrep | awk {'print $1;'}"            
   proceso = subprocess.Popen(comando , shell=True,stdin=subprocess.PIPE,stdout=subprocess.PIPE)
   next_line = proceso.stdout.readline()    
   if next_line != '':
     comando = "kill -9 " + next_line;
     proceso = subprocess.Popen(comando , shell=True,stdin=subprocess.PIPE,stdout=subprocess.PIPE)

(He cambiado gnome-terminal por Konsole, ya que es el terminal en mi entorno KDE). (Nota la presencia de un fgrep -v fgrep para evitar que hagamos un kill del primer fgrep).

No estoy muy ducho en Python, pero seguro que la ejecución de comandos externos en Python debería requerir menos texto.

La versión de Perl es más liviana:
Código (perl) [Seleccionar]
#!/usr/bin/env perl
do {
    if ($terminal = qx(/bin/ps -eo pid,cmd | fgrep konsole | fgrep -v fgrep | awk '{print \$1}')) {
        chomp $terminal;
        system('kill', '-9', $terminal);
    }
   
    sleep 1;
   
} while ("forever");


Gracias por la ayuda, pero hay un problema, al ejecutar el archivo .py/.perl si es cierto que me cierra el terminal/terminales los cuales estan abiertos en ese momento, pero luego me sigue dejando abrirlos si hago por ejemplo Ctrl+Alt+T. Mi intencion es que mientras ese script se este ejecutando al abrir el terminal detecte el proceso y lo mate
A ver si logras echarme una mano ;)
Un saludo
#4
Scripting / Re: Ayuda con script PYTHON
7 Octubre 2015, 23:46 PM
Cita de: engel lex en  7 Octubre 2015, 02:42 AM
y que has hecho? no esperas que te lo hagan no?

ESto es lo que he logrado hacer, y en efecto cierra el terminal. Pero me gustaria que en el momento de activar el .py comenzara un bucle infinito y que no te dejase abrir el terminal

#!/usr/bin/python
import time, sys, subprocess,os
comando = "kill -9 $(ps -eo pid,cmd | grep gnome-terminal | awk {'print $1;'})"
proceso = subprocess.Popen(comando , shell=True,stdin=subprocess.PIPE,stdout=subprocess.PIPE)
while True:
    next_line = proceso.stdout.readline()
    if next_line == '' and proceso.poll() != None:
        break
    sys.stdout.write(next_line)
    sys.stdout.flush()
#5
Scripting / Re: Ayuda con script PYTHON
7 Octubre 2015, 23:44 PM
Cita de: explorer en  7 Octubre 2015, 15:35 PM
¿En qué sistema operativo estás trabajando?
Estoy en Ubuntu
#6
Scripting / Ayuda con script PYTHON
6 Octubre 2015, 23:05 PM
Hola buenas, queria hacer un scrip en python el cual al ejecutarse impida el uso del terminal, es decir que cuando se inicie el terminal, detecte el problema que es y le haga kill
Un saludo
#7
Programación General / Re: Ayuda con autorun
22 Septiembre 2015, 22:41 PM
No entiendo muy bien como eso me ayuda a crear un autorun que cuando introduzca el usb en el pc se ejecute el .exe que hay dentro del usb
Cita de: MCKSys Argentina en 22 Septiembre 2015, 22:27 PM
Hola!

Revisa esta info.

Saludos!
#8
Programación General / Ayuda con autorun
22 Septiembre 2015, 22:11 PM
Hola muy buenas, no se como hacer para que si tengo en una memoria usb un archivo .exe cuando conecto esa memoria a mi windows 7 se ejecute el .exe automaticamente.
Alguna solucion?
#9
.NET (C#, VB.NET, ASP) / Re: Ayuda ListBox
29 Julio 2015, 15:50 PM
Cita de: Eleкtro en 29 Julio 2015, 13:45 PM
Buenas

Es algo muy sencillo, mira:
ListBox.ObjectCollection.Count Property - MSDN

Ejemplos:
Código (vbnet) [Seleccionar]
Dim itemsCount As Integer = ListBox1.Items.Count
Código (csharp) [Seleccionar]
int itemsCount = ListBox1.Items.Count;

EDITO: Espera, ¿cómo que el número máximo?, ya no estoy seguro de si es eso lo que quieres determinar, ¿puedes ser más específico?.

Si lo que quieres es determinar el número máximo posible de elementos que puedes insertar en un ListBox, entonces el valor teórico es la constante Integer.MaxValue en VB.Net o Int.MaxValue en C# (o Int32.MaxValue en ambos lenguajes), es teórico por que la precisión depende de varios factores.

Saludos

A lo que me refiero es que tengo 2 ListBox con diferentes numeros de items, y quiero que el ListBox1 tenga los mismos que el ListBox2
#10
.NET (C#, VB.NET, ASP) / Ayuda ListBox
29 Julio 2015, 13:02 PM
Hola muy buenas, quería saber como determinar el numero máximo de items de un listbox, para decir que el ListBox1 tenga el mismo numero de elementos que el ListBox2 si pueden explicármelo en c# mucho mejor que en vb  :D
Muchas gracias