Історія повідомлень в майл агента. Як прочитати історію Агента

При втраті кожного архіву листування безліч програм для обміну повідомленнями пропонує різні варіанти, одним з яких є резервне копіювання файлів. У програмі «Шпигун Mail.ru» є своя система поправлення.

Вам знадобиться

  • Програмне забезпечення Шпигун Mail.ru.

Інструкція

1. Раніше кожного, вам потрібно запустити програму для стрімкого обміну повідомленнями між користувачами мережі mail.ru. Для цього двічі клацніть по значку із зображенням логотипу програми на робочому столі. Також її можна запустити через меню «Пуск» (розділ «Усі програми»).

2. Для перегляду архіву повідомлень певного контакту з вашого списку потрібно відкрити даний список, натиснути правою кнопкою на контакті і віддати перевагу однойменну опцію. Якщо перегляд бажаних повідомлень виконати не вдалося, рекомендується випробувати метод поправки архіву через електронну пошту на mail.ru. Від того що дана функція стала доступна щодо незадовго, частина повідомлень може не відобразиться.

3. Безліч подібних програм зберігає всі метаморфози архіву повідомлень на жорсткому диску. У «Шпигун Mail.ru» також присутня ця функція, яка зберігає дані в захованих файлах. Щоб переглянути ці файли, потрібно активувати опцію відображення прихованих і системних файлів. Для цього відкрийте будь-яке вікно «Провідника Windows», натисніть верхнє меню «Сервис» і виберіть рядок «Властивості папки». У вікні, клацніть по вкладці «Вид» і поставте позначку на пункті «Відображати приховані папки і файли».

4. Зараз перейдіть до папки, в якій містяться заховані файли з архівами повідомлень списку контактів. Відкрийте документ за допомогою будь-якого текстового редактора, скажімо, «Блокнота» або «Wordpad». За замовчуванням дані файли знаходяться в папці облікового запису або каталозі Application Data в тій же користувальницької папці.

5. Для збереження файлів архіву листування в іншому каталозі потрібно натиснути верхнє меню «Файл» і віддати перевагу пункт «Зберегти як» (у відкритому текстовому редакторі). У вікні збереження файлу вказати його найменування і прийдешнє розташування. Після цього натисніть на кнопку «Зберегти» або натисніть клавішу Enter.

Листування за допомогою миттєвих повідомлень сьогодні набирає цикли: це стрімко, комфортно і абсолютно даром. Глава спілкування є, ймовірно, сервіс icq. За ним же в рейтингу стабільно тримається mail-шпигун, але користуватися ним може лише той, хто має пошту на Mail.ru.

Інструкція

2. У діалоговому вікні співрозмовника перегляньте нинішні повідомлення або натисніть кнопку «архів» справа вгорі. Це відкриє кожен архів вашої переписки. Архів дозволено також відкрити, клацнувши правою кнопкою на контакті і віддавши перевагу пункт «архів повідомлень».

3. Щоб отримувати повідомлення про тих, хто прийшов повідомлення х, натисніть кнопку «меню» в тому ж вікні списку контактів.

4. Виберіть пункт «налаштування облікових записів», далі вкладку «повідомлення» і поставте прапорець в «повідомляти про нові повідомлення х ». Тоді про надходження нових повідомлення х будуть відображатися в нижньому кутку праворуч на значку агента.

Програми-архіватори підтримують функцію охорони архіву паролем, і часто при скачуванні архівів з інтернету ви не можете їх відкрити, не знаючи пароля. Або самі встановлюєте пароль і забуваєте його. Що ж робити в таких випадках?

Вам знадобиться

  • - комп'ютер;
  • - програма Advanced Archive Password Recovery.

Інструкція

1. Скачайте звідси http://www.elcomsoft.ru/archpr.html програму Advanced Archive Password Recovery, яка дозволяє зняти пароль ву охорону з архівів різних форматів. Для поправлення довгих паролів потрібно зареєструвати програму. Запустіть програму, виберіть зі списку «Тип атаки» метод поправки пароля до архіву.

2. Виберіть особливо вірний метод - перебір всіх символів (великі та маленькі заголовних букв, цифр, символів і пробілів). Якщо при установці пароля застосовувалося слово, виберіть перебір по словнику, щоб прискорити підбір пароля до архіву. Якщо ви пам'ятаєте, скільки символів було в паролі, виберіть перебір по масці.

3. Зауважте в поле «Комплект символів» прапорцями потрібні для підбору символи, скажімо, цифри і латинські букви. Дозволено вказати цифри або символи, з яких буде розпочато перебір. При виборі атаки по масці введіть в поле «Маска» довжину пароля і ті символи, які вам звісно. А натомість незнайомих символів встановіть знак питання. Скажімо, ви пам'ятаєте, що пароль складається з 5-ти символів, перші літери його La, а далі аабилі. Ваша маска буде виглядати так: La ???.

4. Вкажіть потрібну довжину пароля у вкладці «Довжина», виберіть максимальну і мінімальну довжину, щоб витягнути пароль від архіву. У незареєстрованої версії максимальна довжина пароля - чотири символи. Виберіть тип поправлення «За словником», перейдіть у вкладку «Словник», вкажіть додаткові опції та виберіть словник для перебору. Щоб включити в перебір російські символи, перейдіть у вкладку «Комплект», встановіть прапорець «Комплект користувача», введіть всі символи, які потрібно застосовувати для поправлення пароля. Заповніть дане поле максимально величезним числом знаків.

5. Виберіть архів, до якого потрібно підібрати пароль , Пізніше вибору потрібних налаштувань. Для цього натисніть на кнопку «Відкрити», виберіть папку на диску, клацніть мишкою по архіву. Архів з'явиться у вікні програми, натисніть кнопку «Старт», щоб почати підбір пароля до архіву. Швидкість підбору і число використаних комбінацій, а також хід злому буде відображений в «Вікні стану». За висновком підбору в ньому буде показаний бажаний пароль .

Відео по темі

Поправлення листування в більшості месенджерів відбувається за одним сценарієм - перегляд логів в папках користувача. Втім mail.ru придумали новітній комфортний метод зберігання листування.

Інструкція

1. Скористайтеся переглядом історії повідомлень в mail agent за допомогою контекстного меню необхідного вам контакту. Виберіть пункт «Архів повідомлень». Якщо з історії були видалені всі дані, ви можете їх відновити за допомогою поштової скриньки. Зверніть увагу, що дана функція виникла зовсім незадовго до списку служб обслуговування, тому повна історія листування, починаючи з самого початку розмови з контактом, може бути не доступна.

2. Відкрийте вашу поштову скриньку, за допомогою якого ви здійснюєте вхід в mail agent. У списку отриманої кореспонденції виявіть листи, в темах яких вказана позначка mail agent'а. Зверніть увагу, що в деяких версіях програми повинна бути включена функція відправки повідомлень на поштову скриньку. Це робиться на налаштуваннях програми на вкладці повідомлень про надходження нових повідомлень.

3. Перегляньте записи на комп'ютері, багато замовників для обміну повідомлень зберігають інформацію з історією повідомлень на жорсткому диску, mail agent тут також не виняток. Для перегляду активуйте режим відображення прихованих файлів і папок на вашому комп'ютері (Панель управління-Властивості папки-Від-Відображати заховані папки і фали). Зайдіть в папку зберігання логів програми і відкрийте їх за допомогою блокнота.

4. В подальший раз робіть резервну копію таких даних в окремому текстовому файлі. Зрідка даний документ видаляється при чищенні історії повідомлень, втім для деяких версій він залишається в первісному вигляді. Директорія знаходження таких файлів - Application Data в папці користувача операційної системи на локальному диску. Коли відкриєте її, припустимо, буде потрібно відкрити ще й MRA і Roaming, але все може залежати від налаштувань і версії програми. Видимість папок неодмінно повинна бути налаштована, в огидному випадку директорія і вміст будуть недосяжні для перегляду.

Корисна порада
Встановлюйте пароль на ваш профіль в месенджерах, щоб заборонити перегляд історії повідомлень.

Mail.ru агент - комфортний засіб для обміну текстовими повідомленнями, здійснення аудіо- та відеодзвінків, обміну файлами і т.д. Для того щоб їм користуватися, потрібно мати поштову скриньку на mail.ru. Але що робити, якщо ваш ящик зламали? Або ви забули особистий пароль доступу? як відновити агент ?

Інструкція

1. Зайдіть на сайт Mail.ru. Для цього запустіть свій інтернет-браузер і введіть в поле адресного рядка без лапок www.mail.ru. Перед вами відкриється основна сторінка сайту.

2. У лівій стороні сторінки, що відкрилася розташовується блок «Пошта». Тут ви звичайно вводите свої дані для авторизації: логін і пароль. Навпаки колонки пароль виявіть посилання «забули?», Клікніть по ній. Ви потрапите на сторінку поправлення пароля.

3. Якщо ви пам'ятаєте ваш логін, але не пам'ятаєте пароль, введіть ваш логін на першій сторінці і натисніть копку «Далі». На подальшої сторінці система спробує відновити пароль саме до вашого скриньки, задавши вам таємний питання, той, що вказувався вами ще в процесі реєстрації пошти. Дайте відповідь на нього позитивно, і ви отримаєте новітній пароль доступу.

4. Якщо ж з якихось небудь причин відновити пароль з підмогою таємного питання в ящику нереально, скористайтеся іншим варіантом - заповніть форму звернення до служби підтримки. Для цього натисніть на відповідне посилання внизу на сторінці поправлення пароля.

5. Дану форму потрібно заповнити максимально об'ємно. Введіть як дозволено огромнее інформації про себе, це дозволить повернути доступ до вашого аккаунту в максимально короткі терміни. Толк даної форми полягає в подальшому: якщо введені вами дані співпадуть з тими, що ви вказали при реєстрації поштової скриньки, то на який зазначено на звороті форми адресу буде висланий лист з посиланням для поправлення пароля. Посилання працює протягом 3 днів. Увага, не повторюйте запит до закінчення даного терміну. При повторенні запитів система видасть новий пароль в результат на всякий з них, і ви просто не зможете розібратися, який з отриманих паролів є правильним.

6. Коли доступ до ящика буде відновлений, запустіть Mail.ru агент і у вікні авторизації введіть логін і новітній пароль доступу до поштової скриньки.

Якщо ви ненароком видалили історію листування або втратили доступ до програмного забезпечення, то відновити архів повідомлень дозволено кількома методами. Вони залежать від вашої програми для спілкування і встановлених налаштувань безпеки.

Інструкція

1. Виявіть файл з резервною копією архів а повідомлень на вашому комп'ютері. Даний документ, як водиться, є захованим, слідчо спочатку відкрийте будь-яке вікно і натисніть на меню «Сервис» або «Систематизувати». Пізніше цього виберіть «Властивості і параметри папок». Перейдіть на вкладку «Вид» і поставте галочку біля рядка «Відображати приховані папки і файли». Натисніть кнопку «Застосувати» і «Ок».

2. Відкрийте будь-яке вікно і вставте в адресний рядок посилання C: / _ папка пользователя_ / AppData / Roaming. Натисніть Enter. У цій папці за умовчанням зберігаються архів и більшості встановлених на вашому комп'ютері програм. Якщо ви в налаштуваннях вказали інше місце зберігання даних, то перейдіть в нього.

3. Виявіть папку з необхідним додатком і зайдіть в розділ, присвячений вашого профілю. Залежно від програми архів повідомлень може бути представлений окремо на весь контакт або розбитий по датам. У будь-якому випадку, натисніть правою кнопкою мишки на потрібний файл і клацніть по пункту «Відкрити за підтримкою». Виберіть Блокнот або текстовий редактор для перегляду тексту.

4. Запустіть програму «Шпигун Mail.ru», якщо для неї потрібно відновити архів повідомлень . Натисніть правою кнопкою мишки на контакт, листування з яким ви хочете переглянути, і виберіть відповідний пункт. Якщо виконати цю процедуру не вдалося, то ви можете відновити архів за допомогою запиту з електронної пошти. Ця функція доступна не так давним-давно, слідчо давні повідомлення відновити не вдасться.

5. Встановіть на свій комп'ютер програмне забезпечення icq2htm, яке дозволяє користувачам ICQ відновлювати всякі видалені повідомлення. Для скайпу також існує подібна програма, яка іменується SkypeLogView. Обидві програми дюже комфортні в застосуванні і виразні навіть тим, хто паскудно розбирається в комп'ютерах.

Відео по темі

Інтерфейс всякого поштової скриньки (в тому числі і обслуговування Mail.Ru) приблизно ідентичний і містить в собі папки: «Вхідні», «Вихідні», «Чернетки», «Спам», «Кошик». Де ж шукати віддалені повідомлення ?

Інструкція

1. Зайдіть в свою поштову скриньку Mail.Ru і відкрийте папку «Кошик». Якщо ви незалежно видаляли листи і зараз хочете їх відновити, вони зобов'язані перебувати саме в цій директорії. Якщо їх там немає, пригадайте, чи не очищали ви «Кошик» пізніше видалення повідомлень. В процесі чищення кошика всі листи видаляються з поштового сервера Mail.Ru без ймовірності поправлення.

2. За замовчуванням «Кошик» також очищається при виході з ящика, і всі листи, що знаходяться в ній, знищуються. Якщо ви хочете змінити цю опцію, зайдіть на сторінку «Налаштування». Виберіть розділ «Інтерфейс поштового ящика», приберіть галочку навпаки пункту «Очищати кошику при виході».

3. Якщо ви чекали від когось лист, але воно не прийшло до вас, відкрийте папку «Спам», подивіться, чи не потрапило воно випадковим чином туди. Зрідка програма перенаправляє підозрілу на її погляд кореспонденцію і в цю папку.

4. У разі, якщо у вас на Mail.Ru пропали всі листи, пригадайте, не справляли ви або хтось із користувачів, що мають доступ до вашої поштової скриньки, настройку поштових програм. Досить часто складається обстановка, коли при настройках подібного програмного забезпечення користувач забуває відзначити галочкою опцію «Зберігати листи на сервері». В результаті всі листи, що знаходяться в поштовій скриньці, переміщаються на комп'ютер. Щоб перевірити це, в налаштуваннях поштової скриньки поставте галочку навпаки опції «Показувати інформацію про останній вхід в систему». Якщо навпаки написи «Вхід по POP3» буде вказаний IP-адреса - ваш поштовий ящик працює через поштову програму.

5. Для зберігання листів зробіть особливу папку, в яку ви будете перекладати кореспонденцію, яку ви хочете зберегти. Її можна створити в поштовій програмі Mail.Ru, зайшовши в розділ «Налаштування» і звідти перейшовши за посиланням «Папки».

Основне покликання електронної пошти - обмін повідомленнями . При виявленні пропажі по якимось причинам головних листів з поштової скриньки не варто відразу засмучуватися. Дозволено випробувати відновити вилучену кореспонденцію.

Інструкція

1. У разі незалежного видалення листів з електронної пошти вони не зникають, а механічно поміщаються в особливу папку під назвою «Кошик», яка знаходиться в лівій частині меню. Для поправлення якогось листа зайдіть в «Кошик», виділіть необхідний лист або кілька листів галочкою поруч з адресою відправника і натисніть кнопку «Перемістити», що розташовується у верхній частині «Кошика», над списком листів для видалення. Перед вами відкриється діалогове вікно, в ньому вкажіть папку для поправлення помічених листів. Після цього для підтвердження своїх дій натисніть ОК.

2. Крім цього, пізніше всякого виходу з поштової скриньки всі листи, переміщені в «Кошик», видаляються механічно без ймовірності поправлення. Щоб цього не відбувалося, поміняйте налаштування таким чином, щоб листи з «Кошика» віддалялися тільки вручну. Для цього треба зайти в пункт «Налаштування», після цього в розділ «Інтерфейс поштового ящика» і поруч з полем «Очищати кошику при виході» приберіть галочку.

3. Листи, видалені з «Кошика», на жаль, не підлягають поправлення. Слідчо випробуйте попросити свого співрозмовника переслати вам повідомлення вдруге.

4. Якщо у відправника такої ймовірності немає, напишіть запит з поясненням своєї задачі в службу технічної підтримки користувачів. Через кілька днів адміністрація поштового обслуговування дасть вам результат. Втім відновити кореспонденцію даними методом фактично немислимо, тому що через джерело електронної пошти щодня проходить кілька тисяч листів.

5. Щоб уникнути неприємної обстановки, зробіть особливу папку і перекладайте в неї всю головну для вас кореспонденцію. Для цього в розділі «Налаштування» натисніть на пункт «створити нову папку» і придумайте їй ім'я, а за бажанням і пароль.

Відео по темі

На сьогоднішній день електронна пошта відіграє значиму роль у житті людини. Втрата коду (пароля) доступу до своєї пошти для багатьох може стати величезний бідою, чай зберігаються дані на ящику, можуть мати величезну цінність. Саме слідчо поправлення доступу до пошти є пріоритетом для багатьох людей.

Інструкція

1. Відновлювати доступ до електронної пошти почнемо зі стандартного методу, той, що є найпростішим і виразним. Для початку звернемо увагу на те, що відновити доступ до пошти дозволено з підмогою переходу на посилання «Нагадати пароль», той, що знаходиться знизу зліва, натискаємо на неї і переходимо на сторінку поправлення доступу. Пізніше переходу на сторінку поправлення доступу до електронної пошти, система відправить «пароль поправлення» на номер телефону, той, що був прив'язаний до ящика. Але для початку необхідно засвідчити, що ви є реальним користувачем, а не роботом. Для цього вводимо представлений код на зображенні в поле і натискаємо «Отримати код по SMS». Далі відкриється вікно «Введіть код» і в необхідне поле вводимо «Код підтвердження», той, що прийшов на номер телефону по SMS. Після цього створюємо новий пароль, підтверджуємо його і натискаємо «Увійти в систему».

2. Щоб відновити пошту з підтримкою другого методу, знадобиться пригадати деякі деталі з життя електронної пошти. Буває так, що доступ до поправки пошти перегороджує втрачений номер телефону, той, що був пов'язаний з ящиком. Саме слідчо доведеться скористатися іншою системою поправлення. Для початку необхідно повернутися до самого початку. Переходимо по посиланню «Нагадати пароль» і бачимо в правому нижньому кутку, підкреслено пунктиром «У мене немає доступу до вказаному телефону», натискаємо і переходимо по посиланню. Зараз потрібно заповнити всі поля, які доступні на цій сторінці, і натискаємо відправити. Пізніше чого чекаємо результату від служби підтримки.

3. У тому випадку, коли всі представлені методи не підходять, залишається тільки скористатися іншою електронною поштою і безпосередньо написати лист в службу підтримки компанії майл.ру, з проханням відновити доступ до певної електронній пошті і пояснити, що всі представлені методи поправлення доступу до ящика не підходять .

Добрий недільний вечір, шановні читачі! Перед вами матеріал, вся інформація в якому заснована на моїх особистих експериментах і багатий досвід. У сьогоднішній статті ви дізнаєтеся про те, як відбувається перехоплення Агент@Mail.ru. Адже багато зловмисників можуть дізнатися, як прочитати чужий Агент@Mail.ru. Важливо вміти захищати свою інформацію від несанкціонованого злому! В кінці статті знайдете корисне відео.

Чому виникла необхідність розбирати такі питання? Як прочитати чужий Агент@Mail.ru і перехопити його, не знаючи пароль користувача? Мені просто потрібна була зручна програма для швидкого обміну повідомленнями з колегами по роботі, родичами, друзями. Нічого більш універсального знайти не вдалося. Користуюся цим меседжер вже кілька років. Але завжди терзали сумніви, а не читає чи хтось мої повідомлення? Щоб зламати чужу переписку Агент@Mail.ru, знадобилися б якісь спеціалізовані додатки. Ось я і відправився в Інтернет на їх пошуки.

У будь-якій пошуковій системі за запитом «як подивитися чужий Агент@Mail.ru» перед вами відкриється колосальна кількість різних посилань. На перевірку виявляється, що 99% з них - лохотрони, віруси, інші шкідливий. Так, траплялися запускалися, але вони не працювали. Всі тести я виробляв на своєму смартфоні, що працює на Android 4.1. Нічого з віддаленим доступом знайдено не було - такі невтішні висновки! Не поведу на порожні обіцянки зловмисників!

І все ж я подумав про те, як подивитися і перехопити чужий Агент@Mail.ru більш звичними додатками. Наприклад, службовими утилітами для резервного копіювання інформації! В Android спочатку їх немає, але підібрати і скачати не складе труднощів. Навіть в Play Market подібних програм сотні. Але проблема криється в тому, що функцій в них замало. Я багато додатків переглянув, поки нарешті не натрапив на чудовий сервіс. Зламувати і перехоплювати чужі листування Агент@Mail.ru він не вміє, та й створений не для цього.

Суть сервісу в наступному: в мобільник на Android встановлюється стандартна програма формата.apk, яка збирає інформацію і пересилає її в особистий користувальницький кабінет. Це спеціальний розділ, де дані зберігаються 30 днів. Переглядати їх там дуже зручно. Кабінет ви знайдете на окремому сайті, тому сторонні особи туди доступ не отримають. Тільки людина, встановити і налаштувати утиліту.

Але уявіть ситуацію, в якій перехопити і прочитати чужий Агент@Mail.ru спробує зловмисник! Він може спробувати встановити в ваш телефон подібну програму! І не важливо, яку саме. Щоб цього не сталося, намагайтеся мобільник де попало не кидати, не залишати його без нагляду, не передавати в незнайомі руки. А також людям, яким ви не довіряєте на 100%!

Далі буде ролик на Youtube, записаний мною для читачів даного блогу. У ньому описується процес установки і налаштування утиліти, про яку я писав вище. Зручні можливості для резервного копіювання відкриються перед вами! Але такі утиліти можна ставити в чужі телефони! Власнику мобільника точно не сподобається, якщо його особиста інформація почне пересилатися незрозуміло кому.

Можливості програми: читання листування SMS, MMS, Вконтакте (офіційний додаток і Kate Mobile), Однокласники, Facebook, Мій Мир@mail.ru, ВСеті.by, Twitter, Hangouts, Google+, WhatsApp, Skype, Viber, Hangouts (колишній Google Talk ), Агент@mail.ru, ICQ, IM + і IM + Pro, AIM, Jabber, MSN, MySpace, Yahoo! і Я. Онлайн (Яндекс Чат), Email переписку Gmail і Почта@mail.ru, переглядати відвідані сайти в браузерах Chrome, Opera, Firefox. Отримати доступ до списку дзвінків і місцезнаходженням телефону. Це мала частина всіх можливостей. весь

Відео керівництво по установці для будь-якого телефону:

Відео керівництво по установці на телефон з ROOT правами:

Інструкція з встановлення та налаштування:

  1. Заводимо особистий кабінет за цим посиланням: «Завести особистий кабінет» (просто реєструємося там).
  2. Заходимо за цим посиланням: «Ви можете увійти на сайті» і вводимо Email і пароль, які вказали пре реєстрації.
  3. Тиснемо кнопку: «Додати телефон»
  4. Заповнюємо всі поля які просять ввести. Заповнюємо правильно як там написано, інакше не буде працювати.
  5. Тиснемо кнопку «Зберегти».
  6. Читаємо інструкцію яка з'явилася після натискання кнопки «Зберегти»
  7. Встановлюємо на телефон, (той з якого потрібно отримати інформацію) додаток, і налаштовуємо його згідно з інструкцією, яку ви повинні будете прочитати на кроці 6.
  8. Додаток встановлено. Все добре. Розробники пишуть, що треба почекати не менше години, щоб дані почали надходити в ваш особистий кабінет який ви завели на кроці 1. У нашому випадку дані прийшли через 4 години. Задумане вдалося! Бажаю успіхів.

Ти навряд чи користуєшся Mail.Ru Агентом, але це шалено популярний сервіс, який з кожним днем \u200b\u200bнабирає обертів. За офіційними даними місячна аудиторія цього месенджера в кінці минулого року становила божевільну цифру в 21,4 мільйона чоловік. Це легко пояснити, - продукт дійсно вдалий. Але сьогодні я хочу розповісти про те, як був разреверсен файл з історією повідомлень користувача.

WARNING

Не забувай про статтю 138 - «Порушення таємниці листування, телефонних переговорів, поштових, телеграфних або інших повідомлень» КК РФ, а також про наявність в ній глави 28 - «Злочини у сфері комп'ютерної інформації» (ст. 272, 273, 274).

Історія злому

Експеримент почався для мене ще в далекому 2008 році, коли друг попросив перевірити листування його дівчини в Mail.ru Агента. Тоді файл історії вдавав із себе простий текстовік з назвою emailhistory.txt і мав порівняно з mra.dbs (файл, в якому в даний час зберігається історія листування і дані про контакти) примітивну структуру. За пару годин був написаний простий, але ефективний RTF-конвертер, який і робив всю брудну роботу по витягуванню листування з Агента. Друг був у захваті. Далі, в ході вивчення програмування на компільованих мовах, я як практики написав програму Mail.ru History Reader, опис якої потрапило на сторінки] [в серпні 2009 року. Отримавши велику кількість позитивних відгуків, я опублікував структуру формату тодішнього файлу історії (див. Посилання в бічному виносі) і вихідні читалки. Однак Mail.ru Агент продовжував розвиватися, і правити балом став новий просунутий файл mra.dbs. Після цієї події до мене посипалися тонни повідомлень від різних людей з проханнями зайнятися ім. У компанії з SOLON7 ми колупали цей файл в HEX-редакторі, намагаючись знайти структури, посилання на зміщення і всілякі зміни після запуску Mail.ru Агента. До кінця 2010 року після довгих пошуків формат все-таки скорився.

Rich Text Format (RTF)

RTF, що використовується в mra.dbs, представляє з себе формат зберігання розмічених документів, запропонований ще в 1982 році бородатими програмістами з Microsoft і Adobe. Для його парсинга зовсім не обов'язково винаходити велосипед, а досить лише відправити повідомлення EM_STREAMIN з прапором SF_RTF для запису і EM_STREAMOUT з прапором SF_TEXT для читання:

EDITSTREAM es \u003d (0); es.pfnCallback \u003d EditStreamCallback; es.dwCookie \u003d (DWORD_PTR) SendMessage (hRich, EM_STREAMIN, SF_RTF, (LPARAM) & es);

Цей нехитрий прийом і використаний в моїй читалки.

Як добути файл mra.dbs?

Ти, звичайно, задашься питанням: а де, власне, зберігається цей горезвісний mra.dbs, і як його добути? Файл mra.dbs зберігається в папці «% APPDATA% \\ Mra \\ Base \\ mra.dbs» (наприклад «C: \\ Documents and Settings \\ user \\ Application Data \\ Mra \\ Base \\ mra.dbs»), і отримати його при вимкненому агента не так вже й складно, достатньо лише використовувати функції ExpandEnvironmentStrings і CopyFile. Однак при включеному Агента файл mra.dbs є зайнятим і система просто не дозволить його використовувати. Для вирішення цієї проблеми можна, наприклад, тимчасово відключити Агент (для цього дії тобі знадобляться привілеї отладчика, які можна отримати тільки з правами адміністратора) або знайти відкритий хендл файлу в системі, а потім продублювати його в адресний простір свого процесу. Також можна прочитати файл безпосередньо з диска (правда, для цього потрібно знати, що таке кластер і як працювати безпосередньо з драйвером файлової системи) або ж написати власний файловий драйвер (це практично нереально). Все б добре, але на практиці у всіх перерахованих вище методів є свої недоліки. При перерахуванні хендлом за допомогою ZwQuerySystemInformation і їх копіюванні до себе в процес за допомогою DuplicateHandle можна зіткнутися з двома проблемами. Перша полягає в тому, що при виклику ZwQueryInformationFile потік може повиснути, чекаючи відгуку від блокуючого іменованого каналу. Друга - після копіювання обидва хендлом (наш і відкрив файл процесу) будуть вказувати на один FileObject, а отже - поточний режим введення-виведення. Позиція в файлі і інша пов'язана з файлом інформація будуть загальними у двох процесів, тому навіть читання файлу викличе зміна позиції читання і порушення нормальної роботи програми, яка відкрила файл. Звичайно, можна призупинити на час все потоки процесу файлу, а після копіювання відновлювати позиції читання і запускати процес власника знову, але це пов'язано з великими витратами часу і сил. Здавалося б, ідеальним методом може бути пряме читання з диска, але і тут є недоліки. Таким способом можна читати тільки файли, які відкриваються з доступом FILE_READ_ATTRIBUTES (крім файлів підкачки), файл обов'язково повинен бути не стиснутий, що не зашифрований (інакше ми прочитаємо нісенітницю) і мати свій кластер (маленькі файли в NTFS можуть цілком розміщуватися в MFT). Також слід врахувати, що під час читання файл може бути змінений (і ми отримаємо в результаті незрозуміло що). Тому розберемо найпростіший метод з тимчасовим відключенням процесу Агента.

Отже, щоб вбити процес Mail.ru Агента, для початку необхідно дізнатися його ідентифікатор (ProcessID). Зробити це можна різними способами: через ToolHelp API, через Native API (використовуючи функцію ZwQuerySystemInformation), прошерстів список відкритих хендлом або за списком відкритих процесом вікон (GetWindowThreadProcessId). Найлегший варіант - це використання ToolHelp API і пошук по імені exe-файлу. Для цього досить викликати функції CreateToolhelp32Snapshot\u003e Process32First\u003e Process32Next, а потім в тілі циклу звіряти значення поля szExeFile структури PROCESSENTRY32 c magent.exe. Необхідний нам ProcessID знаходиться в цій же структурі, поле th32ProcessID:

HProcessSnap \u003d CreateToolhelp32Snapshot (TH32CS_SNAPPROCESS, 0); if (INVALID_HANDLE_VALUE! \u003d hProcessSnap) (pe32.dwSize \u003d sizeof (PROCESSENTRY32); if (Process32First (hProcessSnap, & pe32)) (do (if (0 \u003d\u003d lstrcmp (pe32.szExeFile, _TEXT ( "magent.exe"))) (pid \u003d pe32.th32ProcessID; break;)) while (Process32Next (hProcessSnap, & pe32));) CloseHandle (hProcessSnap);)

Після того як ми знайдемо PID, нам необхідно отримати привілеї отладчика SeDebugPrivilege (OpenProcessToken\u003e LookupPrivilegeValue\u003e AdjustTokenPrivileges) і вбити процес (OpenProcess\u003e TerminateProcess), а потім знову спробувати викликати CopyFile. Привілеї можна отримати і більш елегантним шляхом - через Native API:

Void GetPrivilege (IN ULONG Privilege) (BOOLEAN OldValue; RtlAdjustPrivilege (Privilege, TRUE, FALSE, & OldValue);)

Все, mra.dbs у нас в руках. Тепер перейдемо до його патранню :).

Розкриваємо секрети mra.dbs

Файл mra.dbs вдає із себе дамп пам'яті Mail.ru Агента, тому відкрити його для читання при працюючій програмі не представляється можливим (для рядового програміста, але у нас свої секрети :), також завдання ускладнює той факт, що в пам'яті все числа зберігаються в перевернутому вигляді. Однак давай трохи заглибимося в реверс-інжиніринг.

Отже, в надрах mra.dbs існує хеш-таблиця, в якій описані зміщення на 4-байтниє ідентифікатори. Ідентифікатори служать для визначення початку запису різних структур і сегментів дампа, серед яких і знаходяться потрібні нам записи історії листування (зверни увагу на відповідну ілюстрацію):

Typedef struct _ids (unsigned int id1; unsigned int id2; unsigned int count;) _ids;

INFO

Хеш-таблиця - це структура даних, що реалізує інтерфейс асоціативного масиву, вона дозволяє зберігати пари «ключ-значення». Двусвязний список складається з елементів даних, кожен з яких містить посилання як на наступний, так і на попередній елементи.

Початок історії характеризується ключовим словом mrahistory_, за яким слід e-mail господаря файлу mra.dbs і e-mail контакту, з яким ведеться листування. У випадку з історією ідентифікатори утворюють двусвязний список: перший веде до першого відправленому з повідомленням, а другий - до останнього прийнятим повідомленням. Кількість повідомлень можна дізнатися, вивчивши чотири байти після ідентифікаторів (структура _ids). Пройшовши по зсуву ідентифікатора (його можна дізнатися з хеш-таблиці) ми потрапимо на запис повідомлення (знову вся увага на відповідний малюнок):

Пошук хеш-таблиці struct _message (unsigned int size; unsigned int prev_id; unsigned int next_id; unsigned int xz1; FILETIME time; unsigned int type_mesage; char flag_incoming; char byte; unsigned int count_nick; unsigned int magic_num; // 0x38 unsigned int count_message ; unsigned int xz2; unsigned int size_lps_rtf; unsigned int xz3;);

Рядки в дампі зберігаються в кодуванні Unicode (wchar_t) різними способами:

  • з завершальним нулем в кінці рядка;
  • в структурі LPS (назва структури взято з опису формату протоколу MMP), де перші чотири байти вказують на довжину наступного рядка;
  • в форматі RTF.

Знаючи кількість повідомлень, нам не важко буде пробігтися по всьому ланцюжку. Але звідки взагалі дізнатися, де знаходиться ця хеш-таблиця, і як знайти початок записів історії? Над пошуками відповідей до цих питань ми з SOLON7 провели чимало безсонних ночей.

Типи повідомлень mra.dbs

  • 2 - неавторизовані користувачі;
  • 4 - запити авторизації;
  • 7 - звичайні повідомлення;
  • 10 - передача файлів;
  • 35 - записи в мікроблог;
  • 46 - зміна геоположенія.

трохи магії

По зсуву 0x10 від початку файлу mra.dbs, як виявилося, і зберігається адреса заповітної хеш-таблиці. Пройшовши по зсуву першого індексу з хеш-таблиці, ми натикаємося на структуру початкових даних. Можливо, там знаходиться взагалі вся інформація, закладена в mra.dbs. Йдемо далі. По зсуву 0x20 в цій структурі зберігається кількість записів історії або, простіше кажучи, кількість листувань. Так як файл дампа постійно розширюється, то по зсуву 0x2C лежить ідентифікатор останньої записаної історії, - це все, що нам потрібно знати, щоб почати шукати ідентифікатори листувань. В цілому ж алгоритм такий:

  • проходимся по ідентифікаторів записів історії за допомогою циклу (починаючи від останньої доданої записи);
  • якщо в цьому записі від зсуву 0x190 присутнє слово «mrahistory_», то це означає, що по зсуву 0x24 лежать ідентифікатори ланцюжка повідомлень даної листування.

Щоб стало трохи зрозуміліше, поглянь на цей код:

DWORD * offset_table \u003d (DWORD *) (mra_base + * (DWORD *) (mra_base + 0x10)); DWORD end_id_mail \u003d * (DWORD *) (mra_base + 0x20 + offset_table); DWORD count_emails \u003d * (DWORD *) (mra_base + 0x2C + offset_table); ... for (int i \u003d 0; i id2; )

Кодима

Зараз я покажу тобі лише самі основні моменти. Отже, файл mra.dbs є дампом пам'яті, тому ми не будемо перекручуватися і використовувати функції для роботи з файловими зсувами, а відразу помістимо його в пам'ять нашої програми. Для цього заюзать ресурси ОС Windows і створимо Memory Mapped файл:

CreateFile CreateFileMap MapViewOfFile VirtualFree CloseHandle CloseHandle

Так як нам не потрібно зберігати внесені зміни назад в файл, то тут замість UnmapViewOfFile використовується VirtualFree. Перше, що ми зробимо, це знайдемо всі контакти з історії листування. Зберігати знайдене добро будемо в структурі emails:

Typedef struct _emails (wchar_t * email; _ids * id;); ... struct _emails * emails; ... emails \u003d VirtualAlloc (NULL, count_emails * sizeof (struct _emails), ..); ...

Після проходу по ідентифікаторів і пошуку рядка «mrahistory_» наша структура буде заповнена адресами ідентифікаторів. Зауваж, при цьому ми не скопіювали навіть байта і витратили всього лише 16 * count_emails байт (наприклад, при 1 000 контактів ми використовуємо всього ~ 15 кілобайт пам'яті). Тепер, маючи на руках ідентифікатори початку листування з конкретним користувачем, ми можемо прочитати повідомлення:

Int id_message \u003d emails [k] .id-\u003e id1; for (int i \u003d 0; i count_messages; i ++) (_message * mes \u003d (_ message *) (mra_base + offset_table); wchar_t * str \u003d (wchar_t *) ((unsigned char *) mes + sizeof (_message)); ... id_message \u003d mes-\u003e prev_id ;)

Дата повідомлення зберігається в форматі FILETIME, для зручності її можна перевести в легкий для читання вигляд за допомогою функції FileTimeToSystemTime. Формат RTF відмінно сприймається Rich Edit'ом і будь-якими іншими стандартними редакторами типу WordPad. Але з цим можна і не морочитися, так як повідомлення зберігаються в неотформатированним вигляді відразу після ника, а їх розмір вказаний в структурі message. Це все, що тобі потрібно знати, щоб отримати більш-менш прийнятний список мессаг з Агента.

P.S.

На жаль, формат журналу не дозволяє привести тут мої хардкорні вишукування повністю, тому поспішає заглянути на диск. Сподіваюся, приклад коду читалки (exe'шнік якої, до речі, за допомогою невеликої оптимізації вмістився всього в 2 кілобайт без жодних пакеров) допоможе тобі в написанні швидкого і крутого C-коду, а також у вивченні hex-редакторів та інших низькорівневих речей. До речі, незачепленою залишилася не менше захоплююча тема читання історії ICQ-листування, яка також зберігається в файлі mra.dbs. Спасибі компанії Mail.Ru, по-перше, за розробку Mail.Ru Агента, по-друге, за помітний розвиток улюбленої аськи, і по-третє, за цікавий квест, про який я тобі сьогодні розповів.

Програма "Mail.ru Агент", яку багато хто використовує для обміну миттєвими повідомленнями, за замовчуванням зберігає всю історію листування на жорсткому диску комп'ютера, на який вона встановлена. Якщо ви забули пароль і не можете відкрити програму, отримати доступ до історії діалогів можна за допомогою додаткових програмних засобів.

Інструкція

  • У попередніх версіях програм-месенджерів вся переписка зберігалася в доступному вигляді, і прочитати її можна було без особливих зусиль за допомогою стандартних засобів операційної системи. Розробники виправили це непорозуміння, і тепер історія зберігається в зашифрованому файлі з розширенням dbs.
  • Для початку потрібно дістатися до цього файлу. Для цього відкрийте провідник Windows, клацнувши двічі на значку «Мій комп'ютер». Провідник також можна запустити, клацнувши правою клавішею миші на кнопці «Пуск» і вибравши команду «Відкрити провідник».
  • У вікні провідника виберіть команду «Властивості папки» в меню «Вид» (Windows XP або більш ранні версії), або «Параметри папок і пошуку» в меню «Упорядкувати» (Vista і 7). На вкладці «Вид» діалогового вікна «Параметри папок» знайдіть параметр «Показувати приховані файли і папки» і встановіть прапорець, щоб активувати його.
  • Тепер можна приступати до пошуку зашифрованого файлу з історією листування. Він знаходиться за адресою C: ПользователіІмя пользователяAppDataRoamingMraBase. Скопіюйте файл (можливо, їх буде декілька) на робочий стіл або в будь-яку іншу папку на комп'ютері.
  • Щоб відкрити файл, необхідно завантажити спеціальну програму, за допомогою якої всі збережені діалоги можна буде читати в зручному вигляді. В якості такої програми можна використовувати Mail.ru History Reader, завантажити яку можна на офіційній сторінці додатка за адресою https://forum.antichat.ru/thread114077.html
  • Програма не вимагає установки і відразу після завантаження її можна запустити на комп'ютері. Щоб додати раніше знайдений файл з історією листування, натисніть в меню «Історія» і виберіть команду «Відкрити». Вкажіть шлях до файлу, після чого він відкриється в програмі, і ви побачите всю переписку. Вибравши в меню зліва потрібний контакт зі списку, в основному вікні вам буде доступний текст діалогів.