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

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


  Mostrar Temas
Páginas: [1] 2
1  Programación / Java / Calculate a hash in Java by konarr en: 8 Octubre 2012, 02:11 am
Buenas, simple tool que convierte a diferentes hash



tiene la clase principal "Cifrados", una clase "ventana" y otra de nombre "prueba"

clase Cifrados
Código
  1. package cifrados;
  2. import cifrados.prueba;
  3. public class Cifrados {
  4.  
  5.    public static void main(String[] args) {
  6.  
  7.        ventana instancia = new ventana(); // instancia clase ventana
  8.        instancia.setVisible(true);
  9.    }
  10. }
  11.  

clase ventana http://pastebin.com/Ahh5V6WL

clase prueba, que es la que hace el trabajo de convertir y que a partir de esta se crean instancias en la clase ventana.
http://pastebin.com/bND4CWpB
para los hash me he basado en el siguiente códigohttp://www.codigofantasma.com/blog/implementar-encriptacion-md5-y-sha-en-java/
2  Programación / Java / Manejo eventos en Java. en: 6 Octubre 2012, 20:27 pm
Buenas, quiero realizar un programa que cifre el texto ingresado a MD5, esto en un entorno gráfico utilizando Netbeans, el "modelo" ya lo tengo, en la siguiente imagen queda todo mas claro.
http://ompldr.org/vZnMxZQ
Hasta el momento solo puedo hacer que lo que se ingresa pase a donde debiera estar el texto cifrado en MD5, esto lo hago creando el evento en el jButton "convertir" con el siguiente código
Código
  1. md5Text.setText(ingresoTexto.getText());
.
El problema es que no se como ni donde poner el código para cifrar de texto a MD5, si hacerlo a continuación de
Código
  1. md5Text.setText(ingresoTexto.getText());
. o en una clase aparte y crear instancias y llamarlas dentro de la clase "ventana".

como se puede ver tengo 3 clases,
- "Cifrados" que es la main, y que solo tengo el siguiente código
Código
  1. package cifrados;
  2. public class Cifrados {
  3.  
  4.    public static void main(String[] args) {
  5.  
  6.        ventana instancia = new ventana();
  7.        instancia.setVisible(true);
  8.    }
  9. }
.
- "Prueba" que es donde tengo el código que hace el trabajo de convertir a MD5, que lo dejo acá
Código
  1. package cifrados;
  2. import java.security.MessageDigest;
  3. import java.security.NoSuchAlgorithmException;
  4.  
  5. public class prueba {
  6.    public static String md5 = "MD5";
  7.  
  8.    private static String toHexadecimal(byte[] digest){ //array digest == digerir
  9.        String hash = "";
  10.        /*":", no es usado como operador,
  11.         que se utilizará para iteración a través de la matriz de la matriz denominada "digest"
  12.         #se conserva la variable aux e itera el array digest
  13.     * Convierte un arreglo de bytes a String usando valores hexadecimales
  14.     * @param digest arreglo de bytes a convertir
  15.     * @return String creado a partir de digest
  16.     */
  17.        for(byte aux : digest){
  18.            int b = aux & 0xff;
  19.            if(Integer.toHexString(b).length() == 1) hash += "0";
  20.            hash += Integer.toHexString(b);
  21.        }
  22.        return hash;
  23.    }
  24.    /***
  25.     * cifra un mensaje de texto mediante algoritmo de resumen de mensaje.
  26.     * @param message texto a cifrar
  27.     * @param algorithm algoritmo de encriptacion, MD5
  28.     * @return mensaje cifrado
  29.     */
  30.    public static String getStringMessageDigest(String message, String algorithm){
  31.        byte[] digest = null;
  32.        byte[] buffer = message.getBytes();
  33.        try{
  34.            MessageDigest messageDigest = MessageDigest.getInstance(algorithm);
  35.            messageDigest.reset();
  36.            messageDigest.update(buffer);
  37.            digest = messageDigest.digest();
  38.        }catch(NoSuchAlgorithmException ex){
  39.            System.out.println("Error creando Digest");
  40.        }
  41.        return toHexadecimal(digest);
  42.    }
  43.    public static void main(String[] args) {
  44.  
  45.        String mensaje = "Esto no es una prueba de MD5";
  46.        System.out.println("Mensaje = " + mensaje);
  47.        System.out.println("MD5 = " + prueba.getStringMessageDigest(mensaje, prueba.md5));
  48. }

- "ventana" que es donde tengo el entorno gráfico, con el siguiente código.
Código
  1. package cifrados;
  2. import java.security.MessageDigest;
  3. import java.security.NoSuchAlgorithmException;
  4. import javax.swing.JOptionPane;
  5. import cifrados.prueba;
  6.  
  7. public class ventana extends javax.swing.JFrame {
  8.    public ventana() {
  9.        initComponents();
  10.    }                      
  11.    private void initComponents() {
  12.  
  13.        jLabel1 = new javax.swing.JLabel();
  14.        ingresoTexto = new javax.swing.JTextField();
  15.        convertir = new javax.swing.JButton();
  16.        jLabel2 = new javax.swing.JLabel();
  17.        md5Text = new javax.swing.JTextField();
  18.  
  19.        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  20.  
  21.        jLabel1.setText("Ingrese Texto");
  22.  
  23.        ingresoTexto.setText("jTextField1");
  24.  
  25.        convertir.setText("Convertir");
  26.        convertir.addActionListener(new java.awt.event.ActionListener() {
  27.            public void actionPerformed(java.awt.event.ActionEvent evt) {
  28.                convertirActionPerformed(evt);
  29.            }
  30.        });
  31.  
  32.        jLabel2.setText("MD5");
  33.  
  34.        md5Text.setText("jTextField2");
  35.  
  36.        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  37.        getContentPane().setLayout(layout);
  38.        layout.setHorizontalGroup(
  39.            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  40.            .addGroup(layout.createSequentialGroup()
  41.                .addGap(57, 57, 57)
  42.                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  43.                    .addComponent(jLabel2)
  44.                    .addComponent(jLabel1))
  45.                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  46.                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
  47.                    .addComponent(ingresoTexto, javax.swing.GroupLayout.DEFAULT_SIZE, 434, Short.MAX_VALUE)
  48.                    .addComponent(md5Text))
  49.                .addContainerGap(34, Short.MAX_VALUE))
  50.            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  51.                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
  52.                .addComponent(convertir)
  53.                .addGap(211, 211, 211))
  54.        );
  55.        layout.setVerticalGroup(
  56.            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  57.            .addGroup(layout.createSequentialGroup()
  58.                .addGap(25, 25, 25)
  59.                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  60.                    .addComponent(ingresoTexto, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  61.                    .addComponent(jLabel1))
  62.                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
  63.                .addComponent(convertir)
  64.                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
  65.                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  66.                    .addComponent(md5Text, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
  67.                    .addComponent(jLabel2))
  68.                .addContainerGap(168, Short.MAX_VALUE))
  69.        );
  70.  
  71.        pack();
  72.    }
  73.    private void convertirActionPerformed(java.awt.event.ActionEvent evt) {                                          
  74.    /*creo el evento, lo que esta en "ingresoTexto" pase a "md5Text"*/
  75.        md5Text.setText(ingresoTexto.getText());    
  76. /*aca deberia ingresar el codigo de la clase "prueba" ??
  77.  o solo deberia crear una instancia de la clase "prueba" pidiendo el ingreso de datos y otra para convertir a MD5 ??*/
  78.    }                                        
  79.    public static void main(String args[]) {
  80.        try {
  81.            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
  82.                if ("Nimbus".equals(info.getName())) {
  83.                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
  84.                    break;
  85.                }
  86.            }
  87.        } catch (ClassNotFoundException ex) {
  88.            java.util.logging.Logger.getLogger(ventana.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  89.        } catch (InstantiationException ex) {
  90.            java.util.logging.Logger.getLogger(ventana.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  91.        } catch (IllegalAccessException ex) {
  92.            java.util.logging.Logger.getLogger(ventana.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  93.        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
  94.            java.util.logging.Logger.getLogger(ventana.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
  95.        }
  96.        java.awt.EventQueue.invokeLater(new Runnable() {
  97.  
  98.            public void run() {
  99.                new ventana().setVisible(true);
  100.            }
  101.        });
  102.    }                
  103.    private javax.swing.JButton convertir;
  104.    private javax.swing.JTextField ingresoTexto;
  105.    private javax.swing.JLabel jLabel1;
  106.    private javax.swing.JLabel jLabel2;
  107.    private javax.swing.JTextField md5Text;                
  108. }
  109.  
3  Comunicaciones / Redes / Evadir Firewall Window$ XP SP3 en: 23 Septiembre 2012, 19:02 pm
Buenas.
El escenario es el siguiente:
Tengo Fedora como equipo raíz y  Window$ XP SP3 en VirtualBox, realizo el scann desde Fedora como "atacante" hacia XP como "victima"
he probado con "nmap -sSV -f -source-port 88 -O 192.168.1.4"
explico un poco porque pienso que debiese funcionar:
-sSV  es una mezcla de sS + sV, sS para hacer el scann de forma silenciosa y sV es verbose, osea detalles.
-f  es para que los paquetes de dividan, supongo que de este modo seria mas difícil de detectar para el firewall
-source-port  indica el puerto de origen, he leído que Win podrían confiar en ese puerto (88) y permitir que los paquetes pasen, también he probado con los puertos 80(HTTP), 67(DHCP) y 53(DNS).
-O para la versión del SO.

El resultado es:
Citar
[root@localhost xxx]# nmap -sSV -f -source-port 88 -O 192.168.1.4

Starting Nmap 6.01 ( http://nmap.org ) at 2012-09-23 13:50 CLST
Nmap scan report for winxp3-vm.lan (192.168.1.4)
Host is up (0.0056s latency).
All 1000 scanned ports on winxp3-vm.lan (192.168.1.4) are filtered
MAC Address: 08:00:27:A9:C9:23 (Cadmus Computer Systems)
Too many fingerprints match this host to give specific OS details
Network Distance: 1 hop

OS and Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 26.14 seconds

con el Firewall desactivado:
Código:
[root@localhost xxx]# nmap -sSV -source-port 88 -f -O 192.168.1.4

Starting Nmap 6.01 ( http://nmap.org ) at 2012-09-23 13:54 CLST
Nmap scan report for winxp3-vm.lan (192.168.1.4)
Host is up (0.0020s latency).
Not shown: 997 closed ports
PORT    STATE SERVICE      VERSION
135/tcp open  msrpc        Microsoft Windows RPC
139/tcp open  netbios-ssn
445/tcp open  microsoft-ds Microsoft Windows XP microsoft-ds
MAC Address: 08:00:27:A9:C9:23 (Cadmus Computer Systems)
Device type: general purpose
Running: Microsoft Windows XP
OS CPE: cpe:/o:microsoft:windows_xp::sp2 cpe:/o:microsoft:windows_xp::sp3
OS details: Microsoft Windows XP SP2 or SP3
Network Distance: 1 hop
Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows

OS and Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 9.23 seconds

que sucede, porque no puedo evadir el Firewall ?
es posible que esto se encuentre obsoleto, de ser así que lo que se ocupa ahora ?
he estado viendo Scapy, podría evadir el Firewall creando paquetes con scapy ?
4  Programación / Java / Cuenta shell free con Java ? en: 31 Agosto 2012, 04:24 am
Pasa que quiero meter un bot irc en un canal pero el problema esta que en las cuentas shell free que he encontrado, una que no permiten bot o la otra que no tienen java, solo la necesito para ejecutar un .jar de un par de lineas, saben de alguna ?
5  Comunicaciones / Redes / Tunnel SSH en IRC. en: 13 Agosto 2012, 05:22 am
Mi duda es como tunnelizar por SSH para conectarme al IRC, por ejemplo no tengo problema para crear el tunnel y conectarme al navegador, pero no se como hacerlo para el IRC, tengo una cuenta en shellmix.com y esa es la que ocupo, como cliente ocupo Xchat, estuve intentando pero no dio resultado, les agradeceria me pudieran echar una mano.
6  Programación / Scripting / Comandos "caseros" en GNULinux. en: 9 Agosto 2012, 23:08 pm
Buenas, este es mi primer Post, espero les guste :P
En ocasiones suele pasar que se nos olvidan algunos comandos y tenemos que ejecutar "history" para ver si lo encontramos, o en caso contrario googlear.

En este Post veremos como hacer comandos 'caseros', que nos sirven como recordatorios y/o para reducir algunos.

En este caso veremos como crear un comando de ayuda.
ejecutamos: $nano
y escribimos esos comandos que siempre se nos olvidan, a mi me suele pasar con los siguientes, por nombrar algunos.
Código:
#!/bin/bash
echo "curl ifconfig.me    // IP publica, tienes que tener instalado curl."
echo "acpi -t       // Temperatura de la CPU"
echo "mysqldump -h ip_servidor -u usuario_bd -p basededatos>archivo.sql   //Exportar una DB"
Presionamos "ctrl + o", para guardar y le damos el nombre de localhelp, esto me lo he inventado, puede ser el nombre que ustedes quieran, después "ctrl + x", para salir.
No es necesario que lo hagan por nano, yo lo hago porque se me hace mas cómodo, pero se puede hacer perfectamente con gedit, o cualquier otro editor de texto.
Ok, ahora le damos los permisos chmod 775, "$chmod 775 localhelp"
Ok, copiamos localhep a /usr/local/bin/, "#cp localhelp /usr/local/bin/". Ya lo tenemos listo. ahora al ejecutar localhelp nos imprimirá por consola los comandos.

Lo otro que se puede hacer es "cortar" un comando, en mi caso lo haré con SSH, que me resulta tedioso tener que escribir todo.
En este caso sera para crear un tunnel SSH hacia shellmix.com(tienes que estar registrado), para navegar.
$nano
Citar
#!/bin/bash
echo ssh -D localhost:7766 puntociego@tunnel.shellmix.com   // un echo para no olvidar la sintaxis del todo jejej
ssh -D localhost:7766 puntociego@tunnel.shellmix.com
para guardar "ctrl + o", le damos de nombre sshme(nombre opcional), y salimos "ctrl + x"
paso siguiente ejecutamos "#cp sshme /usr/local/bin/".
de este modo ahora me evito escribir "ssh -D localhost:7766 puntociego@tunnel.shellmix.com", ya que solo basta como ejecutar "sshme" y hará lo mismo.

7  Foros Generales / Foro Libre / ¿Que opinas de Bitcoins? en: 4 Agosto 2012, 23:24 pm
Buenas, la idea de este post es la misma que se plantea en el titulo, rescatar las opiones y/o experiencias de Bitoins, estoy viendo la idea de invertir en una idea y Bitcoins resulta innovador, pero ¿es realmente conveniente?, les agradecería me pudiesen orientar un poco, ahora bien si tiene experiencias en el negocio de Bitcoins seria genial.
8  Programación / Java / BufferOverflow in Java ? en: 3 Agosto 2012, 07:06 am
Buenas, desde que comenze en la informática(hace muy poco), me ha llamado la atención las vulnerabilidades y/o manipulación a nivel de código, tales como los exploit, bufferoverflow, shellcodes, etc. Se que los lenguajes mas adecuados para esto son los de bajo-medio nivel, como ASM, C/C++, pero no he tenido la oportunidad de aprenderlos, en donde estudio no están pasando Java y es mi primer lenguaje, mi duda es si lo que acabo de mencionar(exploit, bufferoverlow, shellcodes, etc) es posible en Java, viendo información al respecto no me queda del todo claro, solo he visto que si se puede con las shellcode, pero los demás nose, les agradecería me pudieran orientan un poco.
9  Seguridad Informática / Hacking / Error] Entar/Importar remotamente a DB en: 21 Julio 2012, 01:22 am
Buenas.
El escenario es el siguiente:
Se sabe la información de una db's (mysql), user, password, con varias cuentas.
pasa que al entrar remotamente a la base de datos arroja lo siguiente:
Código
  1. [root@xxx]# mysql -h x.x.x.x -u userEjemplo -p
  2. Enter password:
  3. ERROR 1045 (28000): Access denied for user 'userEjemplo'@'x.x.x.x(Mi IP)' (using password: YES)
  4.  
Si se decea importar la DB directamente arroja lo mismo.

Supongo que a esa DB solo puedes acceder desde localhost, de ser así, como podría validarme para poder tener acceso ? no encuentro phpmyadmin, si estuviese phpmyadmin en ese sitio, podría entrar ?

El sitio tiene wordpress, no se que versión,  al hacer un www.ejemplo.com/readme.php o www.ejemplo.com/robots.txt no arroja nada, solo error. Deduzco que utiliza wordpress porque tiene directorios como /wp-x/, (si puedo acceder a varios directorios), desde www.ejemplo.com/admin/* (todos en adelante), lo curioso que puedo acceder sin validarme como admin, ya que si vuelvo un directorio y quedo en www.ejemplo.com/admin, pide que me logee

de que manera podría seguir ?
10  Comunicaciones / Redes / [Duda] Tor de forma segura y eficiente. en: 19 Julio 2012, 20:26 pm
Buenos días señores.

Pienso implementar Tor + Privoxy + Torbutton  + Foxyproxy (¿¿ Vidalia + Proxychains ??) , pero me surgen algunas dudas. . .
He leído que para instalar Privoxy se recomienda la creación de un usuario en especial para esos fines,  supongo porque podrian entrar a tu equipo de alguna manera por medio de Tor, entonces no tienen privilegios de root, pero de ser asi, como podrian entrar ?

Debería crear un usuario solo para Privoxy o tmb para Tor (¿Vidalia, Proxyxchains ?).

Cuales serian las ventajas/desventajas de implementar vidalia y proxychains ?
Páginas: [1] 2
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines