Ваш ключ: необходима авторизация | MyProxy - бесплатный обменник валидных прокси между пользователями форума.

Привязка к железу. C#

Тема в разделе C#, создана пользователем Alex, 18 мар 2013.

Войдите для ответа
  1. Alex Новорег

    Alex
    Статус:
    Вне сети
    Сообщения:
    21
    Симпатии:
    4
    Регистрация:
    25.03.13
    Привязка к железу. C#.






    Привет, сегодня решил написать довольно таки "hard" гайд по привязке к железу, кому то он покажется сложным, кому-то нет - не важно! Принцип прост - при запуске генерируется уникальный ключ, который после высвечивается в текст боксе, юзер отправляет вам ключ, вы добавляете в базу его Ник(логин) и сам ключ. Тобишь кроме него никто не сможет зайти по этому логину.

    Что нам потребуется:






    1. Компилятор C#, я советую Microsoft Visual Studio 2008/2010


    2. Хостинг с поддержкой php, для начала советую h u t 2 . r u (удалить пробелы)


    3. Базовые знание по СиШарпу


    4. Точные действия по гайду


    5. И как всегда руки (желательно прямые) и конечно серое вещство.


    6. Добавить следующие библеотеки:



    using System.IO;
    
    using System.Net;
    
    using System.Management;
    
    

    7. Добавить Management, Кликаем на References(Ссылки) правой кнопкой, Add Reference(Добавить Ссылку), Там выбрать .NET и найти System.Management и нажать ОК.


    [​IMG]2. Теперь нам надо сгенерировать SYS-KEY, для этого получим HDD Serial Number где установлена Windows и закпритуем самым обычным способом, который я взял у TBX1n.

    Для этого добавим после:



    public Autorization() //Имя вашей формы
    
            {
    
                InitializeComponent();
    
            }
    Следующее:



    private string Crypt(string text)
    
            {
    
                string rtnStr = string.Empty;
    
                foreach (char c in text) // Цикл, которым мы и криптуем "текст"
    
                {
    
                    rtnStr += (char)((int)c ^ 1); //Число можно взять любое.
    
                }
    
                return rtnStr; //Возвращаем уже закриптованную строку. 
    
            }
    3. Теперь на эвент: Form_Load, добавим код:



    try
    
                {
    
                    string drive = Environment.GetFolderPath(Environment.SpecialFolder.System).Substring(0, 1);
    
                    ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"" + drive + ":\"");
    
                    disk.Get();
    
                    string diskLetter = (disk["VolumeSerialNumber"].ToString());
    
                    string lol1 = (Crypt(diskLetter.ToString()));
    
                    textBox1.Text = lol1;
    
    
                }
    
                catch (Exception)
    
                {
    
                    textBox1.Text = "Error to generate SYS code!";
    
                }
    Генерируем ключ и выводим в текстБокс1.

    4. Теперь, создадим файл db.php, и воткнём в него код:



    <?
    
    
    
    ?>
    ТЕПЕРЬ! Каждый раз когда вам надо добавить нового юзера вы должны открыть db.php через FTP и ввести инфо юзера таким образом:



    <?
    
    UserName|SYS-KEY
    
    UserName2|SYS-KEY
    
    ?>
    И так далее...

    5. Теперь зальём файл login.php на наш хост с таким содержанием:



    <?php
    
    
    
    $login = $_POST['log'];
    
    $password = $_POST['pas'];
    
    if($login == 'Вписываем логин' && $password == 'пароль' && !empty($login) && !empty($password)) 
    
    { 
    
        $lines = file('db.php');
    
        foreach($lines as $single_line)
    
        echo $single_line . "<br />\n"; 
    
    } 
    
    else 
    
    {
    
    $URL="http://www.google.com";
    
    header ("Location: $URL"); 
    
    }
    
    ?> 
    В поля логин и пароль вписываем значения, при которых юзер при запросе, ответ получт db.php, если юзер прийдёт на login.php без post параметра log,pass то его перенаправит на гугл :D.

    6. Теперь добавим на буттон код:



    String password = "log=ЛогинКоторыйЛежитВLogin.php&pas=АналогичноПасВLogin.php";
    
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://сайт.hut2.ru/login.php");
    
                request.UserAgent = "Opera/9.80";
    
                request.Method = "POST";
    
                request.ContentType = "application/x-www-form-urlencoded";
    
                byte[] EncodedPostParams = Encoding.ASCII.GetBytes(password);
    
                request.ContentLength = EncodedPostParams.Length;
    
                request.GetRequestStream().Write(EncodedPostParams, 0, EncodedPostParams.Length);
    
                request.GetRequestStream().Close();
    
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    
                string html = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("windows-1251")).ReadToEnd();
    
                string[] stringSeparators = new string[] { "\n" };
    
                string[] result = html.Split(stringSeparators, StringSplitOptions.RemoveEmptyEntries);
    
    
                    string PolucheniiNomer = "";
    
    
    
                    foreach (string stroka in result)
    
                    {
    
                        if (stroka.IndexOf(textBox2.Text) != -1)
    
                        {
    
                            string[] NashaStroka = stroka.ToString().Split((Convert.ToChar("|")));
    
    
                            string reLoL0 = (Crypt(NashaStroka[1].ToString()));
    
                            PolucheniiNomer = reLoL0.ToString();
    
    
                        }
    
                    }
    
    
    
                string HoldingAdress = "";
    
                try
    
                {
    
                    string drive = Environment.GetFolderPath(Environment.SpecialFolder.System).Substring(0, 1);
    
                    ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"" + drive + ":\"");
    
                    disk.Get();
    
                    string diskLetter = (disk["VolumeSerialNumber"].ToString());
    
                    HoldingAdress = diskLetter;
    
    
    
                }
    
                catch (Exception)
    
                {
    
                    MessageBox.Show("Critical error, application automatically exit", "", MessageBoxButtons.OK, MessageBoxIcon.Error);
    
                    Application.Exit();
    
                }
    
    
    
    
    
    
                if (PolucheniiNomer == HoldingAdress)
    
                {
    
                    MessageBox.Show("Loging Succefull!");
    
                }
    
                else
    
                {
    
                    MessageBox.Show("Loging Fail!");
    
                }
    7. Запускаем, получаем SYS-KEY, на фтп в db.php добавляем строку в теги



    <?
    
    ?>



    UserName|SYSKEY
    [/CODE]

    [/color]


    8. Всё, если вы всё правильно сделали, у вас должны было появиться такое окошко:


    [​IMG]


    9. Гуглим: DotNetReactor 4.0.0.0 + Crack, качаем, защищаем код проги.





    10. PROFIT!

    Поехали...





    1. Создадим формочку с 2 group box, 1 label, 2 textBox-a, 1 button.
     
    18 мар 2013 #1
  2. Tuborg Забанен

    Tuborg
    Статус:
    Вне сети
    Сообщения:
    4
    Симпатии:
    1
    Регистрация:
    28.09.13
    Слабоватая Привязка :facepalm:
     
    24 сен 2013 #2
  3. NeonEye Отец by Kennyx ☠

    NeonEye
    Легенда
    Статус:
    Вне сети
    Сообщения:
    791
    Симпатии:
    271
    Регистрация:
    01.06.13
    Ну хоть что то, верно? Или выложи сам какую нибудь привязку, которая оказалась бы не слабой.
     
    24 сен 2013 #3
  4. cR0NuS Любитель Мороженка^_^

    cR0NuS
    Статус:
    Вне сети
    Сообщения:
    945
    Симпатии:
    187
    Регистрация:
    03.05.16
    Не знаю как вам,но для новичков топик во:good:
    Всё хорошо объяснил,сам кое что воспринял!
    В общем молодец!
     
    3 май 2016 #4
Загрузка...
Похожие темы
  1. Alex

    Привязка C#

    Alex, 18 мар 2013, в разделе: C#
    Ответов:
    0
    Просмотров:
    891
  2. Richter_NSO
    Ответов:
    0
    Просмотров:
    741
Top