コード例 #1
0
        public AgentController(ServerController server, CryptoController crypto)
        {
            Server = server;
            Crypto = crypto;

            OnAgentEvent  += AgentEventHandler;
            OnServerEvent += Server.ServerEventHandler;
        }
コード例 #2
0
ファイル: ServerController.cs プロジェクト: tooBugs/SharpC2
        public ServerController()
        {
            ServerStatus = ModuleStatus.Starting;

            ClientController   = new ClientController(this);
            CryptoController   = new CryptoController();
            AgentController    = new AgentController(this, CryptoController);
            ListenerController = new ListenerControllerBase(this, AgentController, CryptoController);

            OnServerEvent += ServerEventHandler;
        }
コード例 #3
0
        public ListenerControllerBase(ServerController server, AgentController agent, CryptoController crypto)
        {
            ServerController = server;
            AgentController  = agent;
            CryptoController = crypto;

            HttpListenerController = new HttpListenerController(this);
            TcpListenerController  = new TcpListenerController(this);

            OnServerEvent += ServerController.ServerEventHandler;
        }
コード例 #4
0
        public ListenerHttp StartHttpListener(NewHttpListenerRequest request, AgentController agentController, CryptoController cryptoController, string user)
        {
            var listener = new ListenerHttp
            {
                ListenerName   = request.Name,
                Type           = ListenerType.HTTP,
                BindPort       = request.BindPort,
                ConnectAddress = request.ConnectAddress,
                ConnectPort    = request.ConnectPort
            };

            var module = new HttpCommModule
            {
                Listener = listener
            };

            HttpListeners.Add(module);

            module.Init(agentController, cryptoController);
            module.Start();

            OnServerEvent?.Invoke(this, new ServerEvent(ServerEventType.ListenerStarted, request.Name));
            Log.Logger.Information("LISTENER {Event} {ListenerName} {Nick}", ServerEventType.ListenerStarted.ToString(), request.Name, user);

            return(listener);
        }