elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 [16] 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 ... 445
151  Seguridad Informática / Hacking Ético / Re: Se puede hackear una camara de seguridad? en: 28 Julio 2020, 04:29 am
Pues claro que se puede, pero hackear es un término demasiado ámplio, todo depende de que quieras hacer exactamente. Una cámara de seguridad puede estar construida de muchas maneras, algunas mas hackeables que otras, todo dependerá del caso, es como decir que si puedes hackear un movil, el tema es que version de movil es, que sistema tiene, que quieres hacer con el movil, etc.

Las camaras pueden ser análogas o digitales, pueden ser solo transportadora de datos o integrar software como las camaras wifi, si por ejemplo quieres saber si un video puede ser interceptado o poder ver lo que la cámara ve, dependerá del modelo, del software, etc etc. Por ejemplo:

Si es análogo necesitarás cortar los cables, decodificar la señal con algún PCB y conectarlo a algún sistema de video análogo.

Si es digital tendrías que interceptar el cable de red y hacer un switch a modo de repetidor e intentar capturar paquetes tcp y decodificar, ver que protocolo usa, saber si es plano o usa ssl, etc.

Si es remoto tendrías que llegar a su red, conectarte a su red con su clave y luego intentar acceder al software, pero para eso necesitas encontrar alguna vulnerabilidad en su sistema de red y no todas las camaras usan el mismo sistema.

Si está dentro de una red al igual que tu entonces es mas facil porque ya puedes llegar directamente al software, pero es dificil que logres llegar a un mismo segmento de red que una camara, normalmente están separadas o protegidas por zonas. Para llegar tendrias que vulnerar la red primero.

Hay otras cámaras que están expuestas directamente a internet y puedes llegar a ellas simplemente escribiendo su dirección ip, pero esto ya es un problema de instalación del usuario. Sitios que recopilan esto hay por montones: http://www.insecam.org/

La gran pregunta es... que quieres hacer realmente con estas cámaras, que buscas o cual es tu finalidad, si solo quieres entretención viendo videos de camaras entonces hay muchos sitios por internet para ello.

Saludos.
152  Programación / Java / Re: Iniciandome en Java en: 28 Julio 2020, 03:58 am
Intentar leer un .jar es como intentar leer un binario compilado de c, puedes hacerle reversing y todo pero nunca tendrás el código original.

Los archivos .jar son semicompilados, igual que un paquete semicompilado de .net, realmente no es una compilación a bajo nivel donde puedas inyectar todo a la memoria o hacer que la CPU lo interprete desde el kernel, los .jar son distintos, necesitan de una máquina virtual que los cargue, los interprete y los ejecute.

Asi que, no podrás leer y modificar el archivo jar a menos que lo descompiles e intentes crear un compilado nuevo. Debes buscar los fuentes .java, los .class realmente son objetos binarios semicompilados, como los archivos .a cuando compilas en c.

Dale un vistazo a esto:

http://java-decompiler.github.io/
https://github.com/linchanggui/dex2jar-2.0

Saludos.
153  Programación / Desarrollo Web / Re: [Pregunta]: agregar un elemento span donde se use dicha función.. en: 28 Julio 2020, 03:52 am
Pues facil,

Código:
document.write('<span>' + payload + '</span>');

Cuando llames a esa función el DOM escribirá en la misma posición desde donde es llamado, asi que si lo escribes dentro de una división entonces verás su contenido ahi mismo.

Si necesitas escribir la etiqueta de manera dinámica después de toda la carga del DOM (lo cual es lo más recomendado) debes utilizar los selectores https://developer.mozilla.org/es/docs/Web/API/Document/querySelector .

Debes recordar que agregar elementos llamando desde javascript antes de la finalización de la carga del DOM es una mala práctica debido a que el HTML debe ser totalmente independiente a la aplicación de javascript, asi que tu código debiera realmente ir a buscar cada nodo por su id y luego manipularlo a conveniencia. Si no usas ningún framework client side como ReactJS puedes usar jQuery.

Saludos.
154  Programación / Desarrollo Web / Re: [Pregunta]: ¿Como puedo hacer esto equivalente con javascript? en: 3 Julio 2020, 07:47 am
Mira, hice una función, aver que opinas:

Código
  1. <?php
  2.  
  3. function parse($string){
  4.  
  5.    // Listado de etiquetas y propiedades permitidas
  6.    $availables = array(
  7.        // [etiqueta], [propiedades,]
  8.        'p'     => array('style', 'class', 'id'),
  9.        'a'     => array('href',  'style', 'class', 'id', 'title'),
  10.        'span'  => array('style', 'class'),
  11.        'b'     => array('style', 'class'),
  12.        'i'     => array('style', 'class'),
  13.        's'     => array('style', 'class'),
  14.        'table' => array('style', 'class', 'id', 'rows', 'cols', 'width'),
  15.        'thead' => array(),
  16.        'tbody' => array(),
  17.        'tr'    => array(),
  18.        'td'    => array(),
  19.        'div'   => array('style', 'class', 'id'),
  20.        'ul'    => array('style', 'class', 'id'),
  21.        'li'    => array('style', 'class')
  22.    );
  23.  
  24.    try
  25.    {
  26.        $dom = new DOMDocument();
  27.        @$dom->loadHTML('
  28.            <html>
  29.                <body>
  30.                    <div>'.$string.'</div>
  31.                </body>
  32.            </html>
  33.        ');
  34.        $string = null; // Libera la memoria
  35.    }
  36.    catch(Exception $e)
  37.    {
  38.        // Contenido corrupto, etiquetas sin cerrar,
  39.        // intento de XSS, etc.
  40.        return '';
  41.    }
  42.  
  43.    $id = 0;
  44.    foreach($dom->getElementsByTagNameNS('', '*') as $tag)
  45.    {
  46.        $id++;
  47.        if($id < 4)
  48.        {
  49.            continue;
  50.        }
  51.  
  52.        if(!in_array($tag->nodeName, array_keys($availables)))
  53.        {
  54.            // Etiqueta no permitida
  55.            $escaped = $dom->createTextNode(htmlspecialchars(
  56.                $dom->saveHTML($tag),
  57.                ENT_QUOTES
  58.            ));
  59.            $tag->parentNode->replaceChild($escaped, $tag);
  60.        }
  61.        else
  62.        {
  63.            // Etiqueta permitida
  64.  
  65.            // Busca todos los atributos de la etiqueta
  66.            foreach($tag->attributes as $attribute)
  67.            {
  68.                // Propiedad no permitida?
  69.                if(!in_array(
  70.                    strtolower($attribute->name),
  71.                    $availables[strtolower($tag->nodeName)]
  72.                ))
  73.                {
  74.                    // Elimina el atributo no permitido
  75.                    $tag->removeAttribute($attribute->name);
  76.                }
  77.            }
  78.        }
  79.    }
  80.  
  81.    return trim(substr($dom->saveHTML(
  82.        $dom->getElementsByTagName('body')[0]->childNodes[1]
  83.    ), 5, -6));
  84. }
  85.  
  86. echo parse('
  87.    <ul>
  88.        <li><a onclick="alert(0)" style="color:red;"
  89.               href="http://google.com/">http://google.com/</a></li>
  90.        <li>http://google.com/</li>
  91.        <li><script>alert(0)//http://google.com/</script></li>
  92.        <li><b>http://google.com/</b></li>
  93.    </ul>
  94. ');

Código:
   <ul>
        <li><a style="color:red;" href="http://google.com/">http://google.com/</a></li>
        <li>http://google.com/</li>
        <li>&amp;lt;script&amp;gt;alert(0)//http://google.com/&amp;lt;/script&amp;gt;</li>
        <li><b>http://google.com/</b></li>
    </ul>

Si el usuario ingresa caracteres no permitidos o etiquetas falsas o etiquetas mal formadas o sin cerrar, etc arrojará una excepción y retornará un contendo en blanco, asi que desde el código final dices que si el input está en blanco entonces el usuario debe volver a ingresar el texto.

Claramente esto funciona para habilitar etiquetas HTML y sólo sirve si el navegador ya envía el contenido en este formato, quiere decir que el usuario tendrá que ingresar su mensaje en un editor thml reducido así como wordpress, por ejemplo usando ckeditor. Así ya no necesitarás transformar las urls a enlaces, simplemente haces que el sitio web desde el lado del input ya integre formato html, o si no, también sirve para sanitizar tus conversiones de enlace con expresión regular y habilitar únicamente a los enlaces, pero sería un tanto redundante, en ves de eso es mejor que el input ya venga con los enlaces construidos por el mismo usuario o creados por javascript.

Saludos.
155  Programación / Desarrollo Web / Re: [Pregunta]: ¿Como puedo hacer esto equivalente con javascript? en: 3 Julio 2020, 06:31 am
Citar
¿Y si el enlace va entre paréntesis sin espaciado?

De eso se encarga el RFC y la expresión regular, una url no puede comenzar con parentesis pero si terminar en el, por eso en github, wikipedia, wordpress y demás cuando pones una url en parentesis suelen incluir el cierre de parentesis unicamente y eso es normal.

Citar
Supongo se podria arreglar añadiendo una lista de dominios

Da igual si el dominio está repetido, terminarás pisando uno sobre el otro porque el string que vas a procesar siempre será el mismo y este ya contendrá encierre de etiquetas <a>.

Citar
Pero tendrías el mismo problema

No porque haces una pila y procesas palabra por palabra, nunca vuelves a procesar la misma palabra dos veces.
156  Programación / Desarrollo Web / Re: [Pregunta]: ¿Como puedo hacer esto equivalente con javascript? en: 2 Julio 2020, 00:12 am
#!drvy , intenta convertir esto con tu función en php:

Citar

Citar
Test. <a href="<a href="http://google.com/" target="_blank">http://google.com/</a>" target="_blank"><a href="http://google.com/" target="_blank">http://google.com/</a></a> y <a href="<a href="http://google.com/" target="_blank">http://google.com/</a>" target="_blank"><a href="http://google.com/" target="_blank">http://google.com/</a></a> test.

Tu función es recursiva y no respeta las posiciones de cada match, reemplaza los enlaces según el valor de la expresión encontrada independiente si hay más de una o no.

Hay maneras mas eficientes como por ejemplo la de https://stackoverflow.com/questions/1960461/convert-plain-text-urls-into-html-hyperlinks-in-php

Código
  1. $url = '@(http(s)?)?(://)?(([a-zA-Z])([-\w]+\.)+([^\s\.]+[^\s]*)+[^,.\s])@';
  2. $string = preg_replace($url, '<a href="http$2://$4" target="_blank" title="$0">$0</a>', $string);
  3. echo $string;

Pero en mi caso para estar totalmente seguro y evitar el uso excesivo de memoria al intentar parsear textos muy grandes sobre el motor de expresión regular y evitar vulnerabilidades (porque el ejemplo que puse de stackoverlow tiene xss) lo que haría sería ir en busca de todos los espacios en blanco, ponerle coordenadas en bytes y luego procesar cada texto completo y validar si es un enlace, y si lo es entonces reemplazar, para ello utilizaría un buffer principal donde se vaya acumulando el resultado y eliminando el original, como una pila pero de bytes. No usaría explode() porque eso podría generar arrays demasiado grandes.

De todas maneras el xss se puede evitar si escapas todo el string antes de crear los enlaces con htmlspecialchars y ENT_QUOTES.
157  Sistemas Operativos / GNU/Linux / Re: ubuntu 20.4 todo eliminado. en: 1 Julio 2020, 08:45 am
Citar
cosa que nunca me hizo antes

Que cosa nunca había hecho antes? el mensaje de actualización se ve normal, se ven tus repositorios mas el de google para los paquetes de google, no entiendo bien a que te refieres.

Citar
elimine el programa y todo los repositorios

Todos los repositorios? incluyendo los repositorios de paquetes de ubuntu?

Si has perdido todo es porque talves cuando le diste desinstalar también te desinstaló alguna dependencia rota y terminaste eliminando gnome o algo por el estilo. Igual es extraño porque en ese caso te hubieras quedado sin interfaz gráfica.

Has intentado acceder a tus documentos desde el terminal?, cual es el estado actual de tu sistema? se borraron las carpetas del home? solo los archivos?, no puedes verlo desde el gestor de archivos o tampoco desde el terminal?, que fue lo que borraste exactamente?

Puedes compartir el contenido del archivo /home/usuario/.bash_history para saber exactamente que fue lo que ejecutaste o eliminaste?, sólo las líneas que incluyen desde la instalación hasta la desinstalación. Con eso sabremos mejor que fue lo que pasó.

Saludos.
158  Foros Generales / Sugerencias y dudas sobre el Foro / Re: Grupo OFICIAL de Telegram Elhacker.NET en: 9 Mayo 2020, 04:33 am
Hola, hace unos dias atrás traspasé la propiedad del grupo a el-brujo, no se si habrá afectado en algo o no.

Saludos.
159  Programación / Programación C/C++ / Re: Problema al usar while en: 23 Abril 2020, 22:13 pm
Citar
if(opcion == 'y') {}

No puedes hacer una comparación de un char de 1 dimension con un std::string, y cómo sabrías si el valor contiene otra letra y deba ser procesado para multiplicar o no?.
160  Programación / Programación C/C++ / Re: Problema al usar while en: 23 Abril 2020, 21:45 pm
Porque 0 para factorización si es un número válido, solo te quisiste ahorrar la validación numérica.

saludos.
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 [16] 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 ... 445
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines