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

Тема в разделе "Кодим в Делфи", создана пользователем ja_far, 5 янв 2015.

↑ ↓
  1. ja_far Житель форума
    ja_far
    Ответить в чате

    Форумчанин

    Регистрация:
    01.10.2014
    Сообщения:
    52
    Симпатии:
    65
    Пол:
    Мужской
    Репа:
    +68 / 0 / -0
    Собственно сабж выше.

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

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

    Погуглил навскидку, готовых решений не нашел, может плохо искал? Какие соображения?
     
    • Мне нравится Мне нравится x 1
  2. X-Shar :)
    X-Shar
    Ответить в чате

    Администрация

    Регистрация:
    03.06.2012
    Сообщения:
    5.814
    Симпатии:
    434
    Пол:
    Мужской
    Репа:
    +970 / 153 / -29
    Jabber:
    Telegram:
    Тупо батник:
    Для Хром примерно так:
    Код:
    @echo off

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

    del 
    ///"%ChromeDir%"
    rd //"%ChromeDir%"
    Мозилла:
    Код:
    @echo off

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

    del 
    ///"%DataDir%"
    rd //"%DataDir%"

    for /%%x in (C:\Users\%USERNAME%\AppData\Roaming\Mozilla\Firefox\Profiles\*) do del ///%%x\*sqlite
    Опера:
    Код:
    @echo off

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

    del 
    ///"%DataDir%"
    rd //"%DataDir%"

    del ///"%DataDir2%"
    rd //"%DataDir2%"
    IE:
    Код:
    @echo off

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

    del 
    ///"%DataDir%"
    rd //"%DataDir%"

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

    del 
    ///"%History%"
    rd //"%History%"

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

    del 
    ///"%IETemp%"
    rd //"%IETemp%"

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

    del 
    ///"%Cookies%"
    rd //"%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 
    ///"%FlashCookies%"
    rd //"%FlashCookies%"
    Могу ошибиться в путях, проверяйте сами...

    А не лучше тырить куки ?

    Или сейчас так хитро шифруют всё ?Не въехал!!!
     
    • Мне нравится Мне нравится x 1
  3. ja_far Житель форума
    ja_far
    Ответить в чате

    Форумчанин

    Регистрация:
    01.10.2014
    Сообщения:
    52
    Симпатии:
    65
    Пол:
    Мужской
    Репа:
    +68 / 0 / -0
    Дело не в куках. Нужны именно пароли)
    В хроме в пути User Data с пробелами - чувствую будет ошибка если по такому пути обратится.

    P.S.
    Спасибо за старания - пути проверил - всё правильно!
     
    Последнее редактирование: 6 янв 2015
    • Мне нравится Мне нравится x 1
  4. X-Shar :)
    X-Shar
    Ответить в чате

    Администрация

    Регистрация:
    03.06.2012
    Сообщения:
    5.814
    Симпатии:
    434
    Пол:
    Мужской
    Репа:
    +970 / 153 / -29
    Jabber:
    Telegram:
    А по мойму Хром и Мозилла, да и IE тоже хранят пароли в файлах, хотя могу ошибаться...Не въехал!!!
     
    • Мне нравится Мне нравится x 1
  5. ja_far Житель форума
    ja_far
    Ответить в чате

    Форумчанин

    Регистрация:
    01.10.2014
    Сообщения:
    52
    Симпатии:
    65
    Пол:
    Мужской
    Репа:
    +68 / 0 / -0
    Вот годная функция которая позволит перенести код на делфи:
    Код:
    { **** UBPFD *********** by delphibase.endimus.com ****
    >> 
    Удаление непустого каталога вместе с подкаталогами

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

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

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

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

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

    function 
    FullRemoveDir(DirstringDeleteAllFilesAndFolders,
      
    StopIfNotAllDeletedRemoveRootboolean): Boolean;
    var
      
    iInteger;
      
    SRecTSearchRec;
      
    FNstring;
    begin
      Result 
    := False;
      if 
    not DirectoryExists(Dirthen
        
    exit;
      
    Result := True;
      
    // Добавляем слэш в конце и задаем маску - "все файлы и директории"
      
    Dir := IncludeTrailingBackslash(Dir);
      
    := FindFirst(Dir '*'faAnyFileSRec);
      try
        while 
    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
    (FNfaArchive);
              
    Result := FullRemoveDir(FNDeleteAllFilesAndFolders,
                
    StopIfNotAllDeletedTrue);
              if 
    not Result and StopIfNotAllDeleted then
                
    exit;
            
    end;
          
    end
          
    else // Иначе удаляем файл
          
    begin
            
    if DeleteAllFilesAndFolders then
              FileSetAttr
    (FNfaArchive);
            
    Result := SysUtils.DeleteFile(FN);
            if 
    not Result and StopIfNotAllDeleted then
              
    exit;
          
    end;
          
    // Берем следующий файл или директорию
          
    := FindNext(SRec);
        
    end;
      finally
        
    SysUtils.FindClose(SRec);
      
    end;
      if 
    not Result then
        
    exit;
      if 
    RemoveRoot then // Если необходимо удалить корень - удаляем
        
    if not RemoveDir(Dirthen
          Result 
    := false;
    end;

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

    FullRemoveDir('C:\a'truetruetrue);
    // Полное удаление папки C:\a со всем её содержимым,
    // и с последующим удалением самой c:\a
     
    • Мне нравится Мне нравится x 1
  6. ja_far Житель форума
    ja_far
    Ответить в чате

    Форумчанин

    Регистрация:
    01.10.2014
    Сообщения:
    52
    Симпатии:
    65
    Пол:
    Мужской
    Репа:
    +68 / 0 / -0
    Я уже погуглил, походу и пароли у всех браузерах хранятся там же в этих папках, кроме IE.
    Там в каждой версии свой бред. Вот чего нагуглил:
    Сомневаюсь что винда позволит потереть все в каталоге Vault...
     
    • Мне нравится Мне нравится x 1
  7. X-Shar :)
    X-Shar
    Ответить в чате

    Администрация

    Регистрация:
    03.06.2012
    Сообщения:
    5.814
    Симпатии:
    434
    Пол:
    Мужской
    Репа:
    +970 / 153 / -29
    Jabber:
    Telegram:
    Если не удалит, то можно попробовать вызвать утилиту командной строки forfiles.exe, входящую в состав Windows 7, как-то так:
    Код:
    forfiles.exe /%temp% //*.* /-14 /"cmd /c del /q /f @file"
    • Вместо %temp% (временной папки в профиле) подставьте свою папку (параметр /p)
    • Возраст файлов по умолчанию 14 дней (параметр /d), но вы можете задать любое значение
    • Можно удалять файлы определенного расширения по маске (например, /m *.log)
    • За рекурсивное удаление (во вложенных папках) отвечает параметр /s
    Одной командой удаляются все файлы из указанной папки и вложенных в нее.
     
    • Мне нравится Мне нравится x 1
  8. ja_far Житель форума
    ja_far
    Ответить в чате

    Форумчанин

    Регистрация:
    01.10.2014
    Сообщения:
    52
    Симпатии:
    65
    Пол:
    Мужской
    Репа:
    +68 / 0 / -0
    Набросал уже на Delphi удалялочку с GUI, просьба протестить, поискать баги, дать ценные советы)
    Особенно прошу потестить на баги и на работоспособность. С IE только походу пароли не удалятся, в лучшем случае - куки..

    Эффект должен быть следующий:
    во всех браузерах, на всех сайтах (почтовиках, вконтакте и т.п.) вы автоматически разлогинетесь, а при входе по новой - браузеры не должны предлагать автоматический ввод логинов и паролей - если это будет, значит все работает правильно.
     
    Последнее редактирование: 6 янв 2015
    • Мне нравится Мне нравится x 2
  9. X-Shar :)
    X-Shar
    Ответить в чате

    Администрация

    Регистрация:
    03.06.2012
    Сообщения:
    5.814
    Симпатии:
    434
    Пол:
    Мужской
    Репа:
    +970 / 153 / -29
    Jabber:
    Telegram:
    Я нормально залил, может неработает, т.к. через VPS ?Не въехал!!!
     

    Вложения:

    • Мне нравится Мне нравится x 1
    • Согласен(а) Согласен(а) x 1
  10. Антоха Администратор
    Антоха
    Ответить в чате

    Администрация

    Регистрация:
    26.12.2012
    Сообщения:
    3.190
    Симпатии:
    11.100
    Пол:
    Мужской
    Репа:
    +11.248 / 47 / -6
    Jabber:
    Skype:
    У меня чего-то не пашет.Виндовс 7 32 бита (виртуалка),все браузеры из шапки темы.Пароли не исчезают,куки тоже.
     

Поделиться этой страницей