Кстати, название файла соответствует логину данного пользователя. Зашифрованы эти файлы, в принципе, достаточно прилично. Если кому-либо интересно, то, взяв в руки какой-нибудь дизассемблер (HIEW, QVIEW), можно посмотреть процедуру шифрования. Она находится в файле MSPWL32. DLL. в версии OSR2pus со смещением 488(hex). Вот уж где накручено! Имеется счетчик (назовем его N) от нуля до «сколько надо». Имеются три таблицы. В соответствии со счетчиком N берется байт из первой таблицы (X). По смещению X+N, урезанному до 8 бит, из второй таблицы берется другой байт (Y). Затем по адресу X+Y, опять же урезанному до 8 бит, из третьей таблицы берется третий байт (Z). После столь хитрых манипуляций командой XOR с байтом Z шифруется байт информации, после чего счетчик инкременти-руется и все повторяется сначала. Кстати, таблиц на самом деле может оказаться и две, и одна (используются несколько раз на разных этапах). Расшифровывается все это аналогично (и той же процедурой), ибо команда XOR обратима. Если же у вас стоит какая-то другая версия Windows, не 95 или 98, то это дела принципиально не меняет. Видели хакеры лилипутов и покрупнее.
Не знаю уж, в чьих нездоровых мозгах могла появиться мысль использовать для шифрования команду xor byte ptr [eax+ebp], cl. Может, запутать хотели? Но команда уникальна, такие команды в обычных программах еще поискать надо. Стало быть, ищем соответствующую ей комбинацию 30h, OCh, 28h – и все дела. Дальше – просто. Берем MSPWL32. DLL и со смещения 511 h (или там, где найдем) ставим 90h, 90h, 90h – команды NOP (пустая операция). И все! – команда не выполняется! Что при этом произойдет? Как ни странно, ничего страшного и даже не очень страшного. И даже никто ничего не заметит!!! Все останется как всегда, с одним лишь исключением: ВСЕ логины/пароли будут видны, так сказать, невооруженным глазом!
Тут, правда, есть два неприятных момента. Во-первых, во время работы Windows вам не удастся подобным образом надругаться над их «святая святых»: писать в этот файл нельзя. Значит, придется перегружаться в режиме эмуляции MS-DOS, а это лишнее время, которого может не быть. Во-вторых, а это еще хуже, вам надо будет стереть все PWL’bi, иначе даже в Windows не пустят: а вот тут у законных пользователей могут возникнуть лишние вопросы и подозрения.
А можно проще? Без дизассемблеров и «насильственных действий»? Можно! И вот здесь я скажу то, за что (и за многое, увы, другое) Windows 95 иначе, как MustDie, по праву никто не называет. Вы, наверное, думаете, что пароли расшифровываются только тогда, когда это надо, а затем «выжигаются» из памяти «каленым железом»? Ну вот еще… Открытые пароли ПОСТОЯННО хранятся в системе – с момента ВХОДА в Windows данного пользователя и до момента его ВЫХОДА! Вот вам и безопасность. Но этого мало: они доступны ЛЮБЫМ приложениям через API Windows. И вот результат: появляется программа PWLVIEW, которая спокойно показывает вам «всю подноготную» вашей (или не вашей) машины. В том числе и DialUp, и сетевые пароли. Формат выдаваемой информации таков: *Rna\l-e соедине-ние\1-й логин 1-й пароль *Rna\2-e соединение\2-й логин 2-й пароль и т. д.
Да, это все хорошо, но она работает в окне DOS. Но есть еще одна штука, PEEPER называется. Эта идет еще дальше. Пароль, как вы можете заметить, не показывается, вместо него звездочки. Так вот: запускаем PEEPER, запускаем соединение, наводим мышь на звезды и в окне PEEPER видим… правильно, открытый пароль. Вы скажете: у меня нет ни времени, ни возможности ковыряться в чужой машине, нельзя ли стянуть у соседа этот самый PWL, а потом дома разобрать? Можно, только это вам ничего не даст: не будет он у вас работать. Вернее, он ОДИН не будет. Нужно унести еще и USER. DAT. После чего дома «создать» User’a с именем из PWL, заменить свой USER. DAT на цельнотянутый и еще добавить в Windows тянутый PWL. После чего войти в Windows под соответствующим именем и… Дальше в игру вступает PWLVIEW. Я все так и сделал, скажете вы, а вот тот User в Windows с паролем входил, а мне теперь не войти – пароля-то я не знаю. Что делать? Не беда! Уносим ТОЛЬКО USER. DAT! А теперь еще раз: Windows‘95 – MustDie! Как вам известно, кроме интерактивного доступа в Интернет, провайдеры предлагают еще и e-mail. Так вот, чтобы залезть в ваш почтовый ящик, в тот, что у вас на лестнице, нужен ключ (или лом). Чтобы залезть в ваш e-mail, нужен пароль (или виртуальный лом). И тут я скажу откровенно: мало кто из отечественных провайдеров заслуживает доброго слова! Пароль к РОРЗ-ящику всегда и у всех тот же, что и DialUp! «Ну и что?» – спросите вы. А дело в том, что пароль e-mail находится не в PWL’e, а в USER.DAT, и зашифрован он не так сильно, вернее, почти совсем не зашифрован!
Читать дальше