Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #58, СЕНТЯБРЬ 2005 г.

Как скрытое становится явным

Bad_guy

Спецвыпуск: Хакер, номер #058, стр. 058-016-3


begin

c1 := 0;

hRes := spPStore.EnumSubtypes(0, typeGUID, 0, spEnumSubTypes);

while spEnumSubTypes.Next(1,subtypeGUID,c2) = S_OK do

begin

c2 := 0;

hRes := spPStore.EnumItems(0, typeGUID, subtypeGUID, 0, spEnumItems);

while spEnumItems.Next(1,itemName,c2) = S_OK do

begin

c2 := 0;

ListBox1.Items.Add('Name: '+itemName);

ppbData := @Buf; pcbdata := 0;

pi.cbSize := 16; pi.dwPromptFlags := 2; pi.hwndApp := handle; pi.szPrompt := 0;

hRes := spPStore.ReadItem(0,typeGUID,subtypeGUID,PWideChar(itemName),pcbData,ppbData,pi,0);

GetDriveType('c:\');

asm

lea eax, ppbData

mov eax, dword ptr [eax]

mov pn, eax

end;

ListBox1.Items.Add('Data: '+StrPas(pn));

ListBox1.Items.Add('----------');

end;

end;

end;

Чтобы код заработал, нужно кинуть на форму проекта все три установленные PSTORECLib-компонента, а переменные определить следующим образом:

hMod: HModule;

hRes: HResult;

DW: DWORD;

spPStore: IPStore;

spEnumTypes: IEnumPStoreTypes;

PStoreCreateInstance: TPStoreCreateInstance;

spEnumSubTypes: IEnumPStoreTypes;

spEnumItems: IEnumPStoreItems;

typeGUID, subtypeGUID: TGUID;

c1, c2, pcbData: cardinal;

itemName: LPWSTR;

pi: _PST_PROMPTINFO;

Buf: array [0..1023] of char;

ppbData: pshortint1;

pn: pointer;

Строку GetDriveType('c:\'); удобно использовать для отладки своей программы в отладчике SoftICE. Тогда, чтобы прерваться на этом месте, нужно всего лишь ввести прерывание bpx GetDriveTypeA.

В результате получается новая готовая программа - CRACKL@B Protected Storage Viewer 1.0. Можешь скачать ее в архиве вместе с исходниками по ссылке http://cracklab.ru/download/cpsv.rar.

Что-то еще

В Windows 2k и выше также существует специальная служба. Смотри "Пуск"-> "Панель управления"-> "Администрирование"-> "Службы"-> "Защищенное хранилище". Там живет служба, которая обеспечивает его работоспособность.

Если отключить эту службу, ни одна из программ не сможет считать данные из защищенного хранилища.

В итоге

Вот такие выводы можно сделать из всего этого:

1. Все, что названо "защищенным", может оказаться совершенно беззащитным ;).

2. На всякий случай, не стоит доверять IE хранить пароли на доступ к закрытым зонам сайтов, лучше вводить пароль вручную. Да, каждый раз.

3. Даже крупнейшие провайдеры могут идти на компромиссы в информационной безопасности.

4. "Вирусом" могут обозвать не только вирус, но и любую неординарную программу, которая им не является.

Нужны пароли? Качай Protected Storage PassView или Protected Storage Explorer.

Наиболее распространена охота на аккаунты почтового клиента, так как они же часто бывают поставлены и на доступ в интернет.

Пароли лучше хранить в голове или где-то не на компьютере.

Назад на стр. 058-016-2  Содержание