Потребовалось мне вытянуть сообщения из базы ICQ Lite. К моему удивлению это оказалось довольно просто, ибо база имеет формат SQLite3.
База лежит в C:\Documents and Settings\Username\Application Data\ICQ\UIN\Messages.qdb
Где Username – имя пользователя винды, UIN – числовой ICQ идентификатор.
Качаем бинарник sqlite3.exe и копируем его в C:\Windows
Пуск -> Выполнить: cmd.exe
Делаем CD в директорию базы, выполняем “sqlite3 Messages.qdb”. Смотрим “.schema”. Все месаги содержатся в таблице Messages. Поле “fromUser” пустое если сообщение от вас и содержит идентификатор корреспондента, если сообщение шло к вам, то это поле содержит кто писал сообщение. Поле participantsHash это Foreighn Key на таблицу Participants, откуда джойном можно вытянуть к кому было направлено сообщение.
Поскольку сообщение может быть отправлено к нескольким людям, тут связь бесконечность-к-одному.
По этому следующий запрос вытянет все сообщения из БД
sqlite> select p.userId,m.* from Messages m inner join Participants p on m.participantsHash=p.participantsHash;
Можно вытянуть конкретную свою переписку с идентификатором 11111:
sqlite> select p.userId,m.* from Messages m inner join Participants p on m.participantsHash=p.participantsHash WHERE m.fromUser=111111 OR p.UserId=111111;
Однако база вообще в UTF-8 формате, по этому в командной строке вы увидите кучу говна. Советую экспортировать это в файл, а потом уже его читать редактором, понимающим UTF:
C:\blah> sqlite3 -html Messages.qdb “select p.userId,m.* from Messages m inner join Participants p on m.pa
rticipantsHash=p.participantsHash WHERE m.fromUser=111111 OR p.UserId=111111″ > perepiska.html
Отредактируем perepiska.html, вставим в начало:
<html><head><META http-equiv=”Content-Type” content=”text/html; charset=utf-8″></head>
<body><table>
И в конец:
</table></body></html>
Все. Читайте вашу переписку в деталях, охуевайте и сносите побыстрее ICQ Lite.
http://www.pentarh.com/wp/2009/04/21/icq-lite-base/#more-152
ЗЫ Наличие нормального экспорта из ICQLite было бы куда эффективнее.
Статью конечно можно дополнить и подпилить, но этого вполне достаточно, кто понял что тут написькано, тому дальнейшие каменты не нужны.
RSS
- wireguard скрипт создания нового пользователя
- [решено/solved] ERR_SSL_KEY_USAGE_INCOMPATIBLE
- [решено] ssh auth key from windows
- [решено] защита RDP на windows сервере
- [Решено] Отключение локальных дисков групповыми политиками/disable local drive by GPO
- Конвертация дисков vdi VirtualBox в qcow2 QEMU
- wd and seagate cmr/smr disks
- [решено] сохранить/восстановить ассоциации файлов по умолчанию
- [решено] 0X000003e3
- [решено] Восстановить доверительные отношения между рабочей станцией и доменом AD/добавить машину в домен powershell
Рубрики