• Earn real money by being active: Hello Guest, earn real money by simply being active on the forum — post quality content, get reactions, and help the community. Once you reach the minimum credit amount, you’ll be able to withdraw your balance directly. Learn how it works.

Java [Java] Class DH Tools 0.2

Status
Not open for further replies.

Doddy

Leech
User
Joined
Apr 1, 2012
Messages
169
Reputation
0
Reaction score
406
Points
63
Credits
0
‎13 Years of Service‎
57%
Mi primer clase en Java , se llama DH Tools y tiene las siguientes opciones :

[+] Realizar una peticion GET y guardar el contenido

[+] Realizar una peticion POST y guardar el contenido

[+] Crear o escribir archivos

[+] Leer archivos

[+] Ejecutar comandos y leer su respuesta

[+] HTTP FingerPrinting

[+] Leer el codigo de respuesta de una URL

[+] Borrar repetidos en un ArrayList

[+] Cortar las URL en un ArrayList a partir del query

[+] Split casero xD

[+] Descargar archivos

[+] Capturar el archivo de una URL

[+] URI Split

[+] MD5 Encode

[+] MD5 File

[+] Get IP

El codigo de la clase :

Code:
>
// Class : DH Tools
// Version : 0.2
// (C) Doddy Hackman 2015
// Functions : 
//
//public String toma(String link) 
//public String tomar(String pagina, String data) 
//public void savefile(String ruta, String texto) 
//public String read_file(String ruta) 
//public String console(String command) 
//public String httpfinger(String target) 
//public Integer response_code(String page) 
//public ArrayList repes(ArrayList array) 
//public ArrayList cortar(ArrayList array) 
//public String regex(String code, String deaca, String hastaaca) 
//public Boolean download(String url, File savefile) 
//public String extract_file_by_url(String url) 
//public String uri_split(String link, String opcion) 
//public String md5_encode(String text) 
//public String md5_file(String file) 
//public String get_ip(String hostname) 
//
package dhtools;

import java.io.*;
import java.net.*;
import java.nio.channels.Channels;
import java.nio.channels.ReadableByteChannel;
import java.util.ArrayList;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.security.*;

public class DH_Tools {

   public String toma(String link) {
       String re;
       StringBuffer conte = new StringBuffer(40);
       try {
           URL url = new URL(link);
           URLConnection nave = url.openConnection();
           nave.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0");
           BufferedReader leyendo = new BufferedReader(
                   new InputStreamReader(nave.getInputStream()));
           while ((re = leyendo.readLine()) != null) {
               conte.append(re);
           }
           leyendo.close();
       } catch (Exception e) {
           //
       }
       return conte.toString();
   }

   public String tomar(String pagina, String data) {
       // Credits : Function based in http://www.mkyong.com/java/how-to-send-http-request-getpost-in-java/
       String respuesta = "";

       try {
           URL url_now = new URL(pagina);
           HttpURLConnection nave = (HttpURLConnection) url_now.openConnection();

           nave.setRequestMethod("POST");
           nave.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0");

           nave.setDoOutput(true);
           DataOutputStream send = new DataOutputStream(nave.getOutputStream());
           send.writeBytes(data);
           send.flush();
           send.close();

           BufferedReader leyendo = new BufferedReader(new InputStreamReader(nave.getInputStream()));
           StringBuffer code = new StringBuffer();
           String linea;

           while ((linea = leyendo.readLine()) != null) {
               code.append(linea);
           }
           leyendo.close();
           respuesta = code.toString();
       } catch (Exception e) {
           //
       }
       return respuesta;
   }

   public void savefile(String ruta, String texto) {

       FileWriter escribir = null;
       File archivo = null;

       try {

           archivo = new File(ruta);

           if (!archivo.exists()) {
               archivo.createNewFile();
           }

           escribir = new FileWriter(archivo, true);
           escribir.write(texto);
           escribir.flush();
           escribir.close();

       } catch (Exception e) {
           //
       }
   }

   public String read_file(String ruta) {
       String contenido = null;
       try {
           Scanner leyendo = new Scanner(new FileReader(ruta));
           contenido = leyendo.next();
       } catch (Exception e) {
           //
       }
       return contenido;
   }

   public String console(String command) {
       String contenido = null;
       try {
           Process proceso = Runtime.getRuntime().exec("cmd /c " + command);
           proceso.waitFor();
           BufferedReader leyendo = new BufferedReader(
                   new InputStreamReader(proceso.getInputStream()));
           String linea;
           StringBuffer code = new StringBuffer();
           while ((linea = leyendo.readLine()) != null) {
               code.append(linea);
           }
           contenido = code.toString();
       } catch (Exception e) {
           //
       }
       return contenido;
   }

   public String httpfinger(String target) {

       String resultado = "";

       //http://www.mkyong.com/java/how-to-get-http-response-header-in-java/
       try {

           URL page = new URL(target);
           URLConnection nave = page.openConnection();

           String server = nave.getHeaderField("Server");
           String etag = nave.getHeaderField("ETag");
           String content_length = nave.getHeaderField("Content-Length");
           String expires = nave.getHeaderField("Expires");
           String last_modified = nave.getHeaderField("Last-Modified");
           String connection = nave.getHeaderField("Connection");
           String powered = nave.getHeaderField("X-Powered-By");
           String pragma = nave.getHeaderField("Pragma");
           String cache_control = nave.getHeaderField("Cache-Control");
           String date = nave.getHeaderField("Date");
           String vary = nave.getHeaderField("Vary");
           String content_type = nave.getHeaderField("Content-Type");
           String accept_ranges = nave.getHeaderField("Accept-Ranges");

           if (server != null) {
               resultado += "[+] Server : " + server + "\n";
           }
           if (etag != null) {
               resultado += "[+] E-tag : " + etag + "\n";
           }
           if (content_length != null) {
               resultado += "[+] Content-Length : " + content_length + "\n";
           }

           if (expires != null) {
               resultado += "[+] Expires : " + expires + "\n";
           }

           if (last_modified != null) {
               resultado += "[+] Last Modified : " + last_modified + "\n";
           }

           if (connection != null) {
               resultado += "[+] Connection : " + connection + "\n";
           }

           if (powered != null) {
               resultado += "[+] Powered : " + powered + "\n";
           }

           if (pragma != null) {
               resultado += "[+] Pragma : " + pragma + "\n";
           }

           if (cache_control != null) {
               resultado += "[+] Cache control : " + cache_control + "\n";
           }

           if (date != null) {
               resultado += "[+] Date : " + date + "\n";
           }
           if (vary != null) {
               resultado += "[+] Vary : " + vary + "\n";
           }
           if (content_type != null) {
               resultado += "[+] Content-Type : " + content_type + "\n";
           }
           if (accept_ranges != null) {
               resultado += "[+] Accept Ranges : " + accept_ranges + "\n";
           }

       } catch (Exception e) {
           //
       }

       return resultado;

   }

   public Integer response_code(String page) {
       Integer response = 0;
       try {
           URL url = new URL(page);
           URLConnection nave1 = url.openConnection();
           HttpURLConnection nave2 = (HttpURLConnection) nave1;
           nave2.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0");
           response = nave2.getResponseCode();
       } catch (Exception e) {
           response = 404;
       }
       return response;
   }

   public ArrayList repes(ArrayList array) {
       Object[] listando = array.toArray();
       for (Object item : listando) {
           if (array.indexOf(item) != array.lastIndexOf(item)) {
               array.remove(array.lastIndexOf(item));
           }
       }
       return array;
   }

   public ArrayList cortar(ArrayList array) {
       ArrayList array2 = new ArrayList();
       for (int i = 0; i < array.size(); i++) {
           String code = (String) array.get(i);
           Pattern regex1 = null;
           Matcher regex2 = null;
           regex1 = Pattern.compile("(.*?)=(.*?)");
           regex2 = regex1.matcher(code);
           if (regex2.find()) {
               array2.add(regex2.group(1) + "=");
           }
       }
       return array2;
   }

   public String regex(String code, String deaca, String hastaaca) {
       String resultado = "";
       Pattern regex1 = null;
       Matcher regex2 = null;
       regex1 = Pattern.compile(deaca + "(.*?)" + hastaaca);
       regex2 = regex1.matcher(code);
       if (regex2.find()) {
           resultado = regex2.group(1);
       }
       return resultado;
   }

   public Boolean download(String url, File savefile) {
       // Credits : Based on http://stackoverflow.com/questions/921262/how-to-download-and-save-a-file-from-internet-using-java
       // Thanks to Brian Risk
       try {
           URL download_page = new URL(url);
           ReadableByteChannel down1 = Channels.newChannel(download_page.openStream());
           FileOutputStream down2 = new FileOutputStream(savefile);
           down2.getChannel().transferFrom(down1, 0, Long.MAX_VALUE);
           down1.close();
           down2.close();
           return true;
       } catch (IOException e) {
           return false;
       }
   }

   public String extract_file_by_url(String url) {
       return url.substring(url.lastIndexOf('/') + 1);
   }

   public String uri_split(String link, String opcion) {
       String resultado = "";
       try {
           URL url = new URL(link);
           if (opcion == "protocol") {
               resultado = url.getProtocol();
           } else if (opcion == "authority") {
               resultado = url.getAuthority();
           } else if (opcion == "host") {
               resultado = url.getHost();
           } else if (opcion == "port") {
               resultado = String.valueOf(url.getPort());
           } else if (opcion == "path") {
               resultado = url.getPath();
           } else if (opcion == "query") {
               resultado = url.getQuery();
           } else if (opcion == "filename") {
               resultado = url.getFile();
           } else if (opcion == "ref") {
               resultado = url.getRef();
           } else {
               resultado = "Error";
           }

       } catch (Exception e) {
           // 
       }
       return resultado;
   }

   public String md5_encode(String text) {
       // Credits : Based on http://www.avajava.com/tutorials/lessons/how-do-i-generate-an-md5-digest-for-a-string.html
       StringBuffer string_now = null;
       try {
           MessageDigest generate = MessageDigest.getInstance("MD5");
           generate.update(text.getBytes());
           byte[] result = generate.digest();
           string_now = new StringBuffer();
           for (byte line : result) {
               string_now.append(String.format("%02x", line & 0xff));
           }
       } catch (Exception e) {
           //
       }
       return string_now.toString();
   }

   public String md5_file(String file) {
       //Credits : Based on http://stackoverflow.com/questions/304268/getting-a-files-md5-checksum-in-java
       // Thanks to 
       String resultado = "";
       try {
           MessageDigest convert = MessageDigest.getInstance("MD5");
           FileInputStream file_now = new FileInputStream(file);

           byte[] bytes_now = new byte[1024];

           int now_now = 0;
           while ((now_now = file_now.read(bytes_now)) != -1) {
               convert.update(bytes_now, 0, now_now);
           };
           byte[] converting = convert.digest();
           StringBuffer result = new StringBuffer();
           for (int i = 0; i < converting.length; i++) {
               result.append(Integer.toString((converting[i] & 0xff) + 0x100, 16).substring(1));
           }
           resultado = result.toString();
       } catch (Exception e) {
           //
       }
       return resultado;
   }

   public String get_ip(String hostname) {
       String resultado = "";
       try {
           InetAddress getting_ip = InetAddress.getByName(hostname);
           resultado = getting_ip.getHostAddress();
       } catch (Exception e) {
           //
       }
       return resultado;
   }
}

// The End ?
Ejemplos de uso :

Code:
>
package dhtools;

import java.util.ArrayList;
import java.util.Collections;

public class Main {

   public static void main(String[] args) {
       DH_Tools tools = new DH_Tools();
       //String codigo = tools.toma("http://localhost/");
       //String codigo = tools.tomar("http://localhost/login.php", "usuario=test&password=dsdsads&control=Login");
       //tools.savefile("c:/xampp/texto.txt","texto");
       //String codigo = tools.read_file("c:/xampp/texto.txt");
       //String codigo = tools.console("ver");
       //String codigo = tools.httpfinger("http://www.petardas.com");
       /*
        ArrayList array = new ArrayList();
        Collections.addAll(array, "http://localhost/sql.php?id=dsaadsds", "b", "http://localhost/sql.php?id=dsaadsds", "c");
        ArrayList array2 = tools.repes(tools.cortar(array));
        for (int i = 0; i < array2.size(); i++) {
        System.out.println(array2.get(i));
        }
        */
       //System.out.println(tools.regex("1sadasdsa2","1","2"));
       //System.out.println(tools.response_code("http://www.petardas.com/"));
       /*
        File savefile = new File("c:/xampp/mierda.avi");
        if(tools.download("http://localhost/test.avi",savefile)) {
        System.out.println("yeah");
        }
        */

       //System.out.println(tools.extract_file_by_url("http://localhost/dsaads/dsadsads/index.php"));
       //System.out.println(tools.uri_split("http://localhost/index.php?id=dadsdsa","query"));
       //System.out.println(tools.md5_encode("123"));
       //System.out.println(tools.md5_file("c:\\xampp\\texto.txt"));
       //System.out.println(tools.get_ip("www.petardas.com"));
   }

}
Eso seria todo.

 
Status
Not open for further replies.
Back
Top