• Уменьшение отступа

    Обратная связь

    (info@ru-sfera.pw)

Как грамотно реализовать очистку куков и сохраненных паролей?


ja_far

Уважаемый пользователь
Форумчанин
Регистрация
01.10.2014
Сообщения
47
Репутация
48
Собственно сабж выше.

Появилась одна интересная задумка но пока не знаю с какой стороны к ней лучше подойти.
А интересна она тем, что может быть использована как с целью защиты так и с целью нападения.
Задача следующая: имеется ПК с установленными Chrome, Opera, Firefox и Internet Explorer.
Необходимо создать код (желательно делфи, но по идее можно и скриптом на подобие vbs)
который бы в юзермоде очищал куки и сохраненные пароли во всех браузерах.

Смысл затеи - для тех, кто не догадался:
- ну с целью защиты понятно - кликнул на кнопку (или запустил скрипт) и ПК больше не содержит Ваших персональных данных;
- с целью нападения - Вы заставите юзера вводить пароли вручную, что значительно упростит их перехват (отпадает необходимость играть в кошки-мышки с браузерами и их методами хранения паролей).

Погуглил навскидку, готовых решений не нашел, может плохо искал? Какие соображения?
 

X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
6 068
Репутация
8 174
Погуглил навскидку, готовых решений не нашел, может плохо искал? Какие соображения?
Тупо батник:
Для Хром примерно так:
Код:
@echo off

set ChromeDir=C:\Users\%USERNAME%\AppData\Local\Google\Chrome\User Data

del /q /s /f "%ChromeDir%"
rd /s /q "%ChromeDir%"

Мозилла:
Код:
@echo off

set DataDir=C:\Users\%USERNAME%\AppData\Local\Mozilla\Firefox\Profiles

del /q /s /f "%DataDir%"
rd /s /q "%DataDir%"

for /d %%x in (C:\Users\%USERNAME%\AppData\Roaming\Mozilla\Firefox\Profiles\*) do del /q /s /f %%x\*sqlite

Опера:
Код:
@echo off

set DataDir=C:\Users\%USERNAME%\AppData\Local\Opera\Opera
set DataDir2=C:\Users\%USERNAME%\AppData\Roaming\Opera\Opera

del /q /s /f "%DataDir%"
rd /s /q "%DataDir%"

del /q /s /f "%DataDir2%"
rd /s /q "%DataDir2%"

IE:
Код:
@echo off

set DataDir=C:\Users\%USERNAME%\AppData\Local\Microsoft\Intern~1

del /q /s /f "%DataDir%"
rd /s /q "%DataDir%"

set History=C:\Users\%USERNAME%\AppData\Local\Microsoft\Windows\History

del /q /s /f "%History%"
rd /s /q "%History%"

set IETemp=C:\Users\%USERNAME%\AppData\Local\Microsoft\Windows\Tempor~1

del /q /s /f "%IETemp%"
rd /s /q "%IETemp%"

set Cookies=C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Cookies

del /q /s /f "%Cookies%"
rd /s /q "%Cookies%"

C:\bin\regdelete.exe HKEY_CURRENT_USER "Software\Microsoft\Internet Explorer\TypedURLs"

Также есть ещё флеш-куки:
Код:
@echo off

set FlashCookies=C:\Users\%USERNAME%\AppData\Roaming\Macromedia\Flashp~1

del /q /s /f "%FlashCookies%"
rd /s /q "%FlashCookies%"

Могу ошибиться в путях, проверяйте сами...

- с целью нападения - Вы заставите юзера вводить пароли вручную, что значительно упростит их перехват (отпадает необходимость играть в кошки-мышки с браузерами и их методами хранения паролей).
А не лучше тырить куки ?

Или сейчас так хитро шифруют всё ?Не въехал!!!
 

ja_far

Уважаемый пользователь
Форумчанин
Регистрация
01.10.2014
Сообщения
47
Репутация
48
Дело не в куках. Нужны именно пароли)
В хроме в пути User Data с пробелами - чувствую будет ошибка если по такому пути обратится.

P.S.
Спасибо за старания - пути проверил - всё правильно!
 
Последнее редактирование:

ja_far

Уважаемый пользователь
Форумчанин
Регистрация
01.10.2014
Сообщения
47
Репутация
48
Вот годная функция которая позволит перенести код на делфи:
Код:
{ **** UBPFD *********** by delphibase.endimus.com ****
>> Удаление непустого каталога вместе с подкаталогами

Удаление подкаталогов рекурсивное - функция вызывает саму себя.
Описание назначения агрументов:

-DeleteAllFilesAndFolder - если TRUE то функцией будут предприняты
попытки для установки атрибута faArchive любому файлу или папке
перед его(её) удалением;

-StopIfNotAllDeleted - если TRUE то работа функции моментально
прекращается если возникла ошибка удаления хотя бы одного файла или папки;

-RemoveRoot - если TRUE, указывает на необходимость удаления корня.

Зависимости: FileCtrl, SysUtils
Автор:       lipskiy, lipskiy@mail.ru, ICQ:51219290, Санкт-Петербург
Copyright:   Собственное написание (lipskiy)
Дата:        26 апреля 2002 г.
***************************************************** }

function FullRemoveDir(Dir: string; DeleteAllFilesAndFolders,
  StopIfNotAllDeleted, RemoveRoot: boolean): Boolean;
var
  i: Integer;
  SRec: TSearchRec;
  FN: string;
begin
  Result := False;
  if not DirectoryExists(Dir) then
    exit;
  Result := True;
  // Добавляем слэш в конце и задаем маску - "все файлы и директории"
  Dir := IncludeTrailingBackslash(Dir);
  i := FindFirst(Dir + '*', faAnyFile, SRec);
  try
    while i = 0 do
    begin
      // Получаем полный путь к файлу или директорию
      FN := Dir + SRec.Name;
      // Если это директория
      if SRec.Attr = faDirectory then
      begin
        // Рекурсивный вызов этой же функции с ключом удаления корня
        if (SRec.Name <> '') and (SRec.Name <> '.') and (SRec.Name <> '..') then
        begin
          if DeleteAllFilesAndFolders then
            FileSetAttr(FN, faArchive);
          Result := FullRemoveDir(FN, DeleteAllFilesAndFolders,
            StopIfNotAllDeleted, True);
          if not Result and StopIfNotAllDeleted then
            exit;
        end;
      end
      else // Иначе удаляем файл
      begin
        if DeleteAllFilesAndFolders then
          FileSetAttr(FN, faArchive);
        Result := SysUtils.DeleteFile(FN);
        if not Result and StopIfNotAllDeleted then
          exit;
      end;
      // Берем следующий файл или директорию
      i := FindNext(SRec);
    end;
  finally
    SysUtils.FindClose(SRec);
  end;
  if not Result then
    exit;
  if RemoveRoot then // Если необходимо удалить корень - удаляем
    if not RemoveDir(Dir) then
      Result := false;
end;

Пример использования:

FullRemoveDir('C:\a', true, true, true);
// Полное удаление папки C:\a со всем её содержимым,
// и с последующим удалением самой c:\a
 

ja_far

Уважаемый пользователь
Форумчанин
Регистрация
01.10.2014
Сообщения
47
Репутация
48
А по мойму Хром и Мозилла, да и IE тоже хранят пароли в файлах, хотя могу ошибаться...Не въехал!!!

Я уже погуглил, походу и пароли у всех браузерах хранятся там же в этих папках, кроме IE.
Там в каждой версии свой бред. Вот чего нагуглил:
Все пароли IE 10 хранятся в , защищены при помощи обычного шифрования DPAPI и легко восстанавливаются. По крайней мере, легче, чем в предыдущих трех версиях. Windows Vault - это новый механизм дискового хранилища приватной информации, которого так нехватает в Windows. Все приватные записи пользователя Vault можно найти в его профиле. По умолчанию это папка
C:/Users/<USER_NAME>/AppData/Local/Microsoft/Vault/<VAULT_UID> , где
<USER_NAME> - имя пользователя
<VAULT_UID> - идентификатор Vault. По умолчанию 4BF4C442-9B8A-41A0-B380-DD4A704DDB28.
Каждая запись с паролем IE 10 представлена файлом с расширением .vcrd (Vault Credential), ключ шифрования хранится в этом же каталоге.

Сомневаюсь что винда позволит потереть все в каталоге Vault...
 

X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
6 068
Репутация
8 174
Сомневаюсь что винда позволит потереть все в каталоге Vault...
Если не удалит, то можно попробовать вызвать утилиту командной строки forfiles.exe, входящую в состав Windows 7, как-то так:
Код:
forfiles.exe /p %temp% /s /m *.* /d -14 /c "cmd /c del /q /f @file"
  • Вместо %temp% (временной папки в профиле) подставьте свою папку (параметр /p)
  • Возраст файлов по умолчанию 14 дней (параметр /d), но вы можете задать любое значение
  • Можно удалять файлы определенного расширения по маске (например, /m *.log)
  • За рекурсивное удаление (во вложенных папках) отвечает параметр /s
Одной командой удаляются все файлы из указанной папки и вложенных в нее.
 

ja_far

Уважаемый пользователь
Форумчанин
Регистрация
01.10.2014
Сообщения
47
Репутация
48
Набросал уже на Delphi удалялочку с GUI, просьба протестить, поискать баги, дать ценные советы)
Особенно прошу потестить на баги и на работоспособность. С IE только походу пароли не удалятся, в лучшем случае - куки..

Эффект должен быть следующий:
во всех браузерах, на всех сайтах (почтовиках, вконтакте и т.п.) вы автоматически разлогинетесь, а при входе по новой - браузеры не должны предлагать автоматический ввод логинов и паролей - если это будет, значит все работает правильно.
 
Последнее редактирование:

X-Shar

:)
Администрация
Регистрация
03.06.2012
Сообщения
6 068
Репутация
8 174

Вложения

  • Personal Killer.rar
    172.1 КБ · Просмотры: 13

Антоха

Уважаемый пользователь
Форумчанин
Регистрация
26.12.2012
Сообщения
2 780
Репутация
4 652
во всех браузерах, на всех сайтах (почтовиках, вконтакте и т.п.) вы автоматически разлогинетесь, а при входе по новой - браузеры не должны предлагать автоматический ввод логинов и паролей
У меня чего-то не пашет.Виндовс 7 32 бита (виртуалка),все браузеры из шапки темы.Пароли не исчезают,куки тоже.
 
Верх Низ