Просто для прикола над другом решил написать программку редактирования реестра у него на компе, основная ее часть заключается в подключении к компу жертвы и естественно получение прав на редактирование. Так как я знаю пароль админа домена мне это не составило труда))
Всегда ему говорил же отключай ты службу удаленного реестра, ну вот не слушался))
procedure TForm1.Button2Click(Sender: TObject);
var
UserName,Password,DomainName:PAnsiChar;
tolken:THandle;
vReg: TRegistry;
begin
UserName:='Логин';
Password:='Пароль';
DomainName:='Домен к которому принадлежит ПК';
//коннектимся к компу
try
if LogonUser(UserName,DomainName,Password,LOGON32_LOGON_INTERACTIVE,LOGON32_PROVIDER_DEFAULT,tolken) then
begin
Beep;
ImpersonateLoggedOnUser(tolken);
vReg := TRegistry.Create(KEY_ALL_ACCESS);
try
vReg.RootKey := HKEY_CURRENT_USER;
if vReg.RegistryConnect('\\noname') then //если не указать имя пк то редактирование будет происходить на локальном ПК будьте бдительны
begin
vReg.OpenKey('Control Panel\Mouse',False);
Memo1.Lines.add('До: '+vReg.ReadString('MouseSensitivity'));
vReg.WriteString('MouseSensitivity','20');
Memo1.Lines.add('После: '+vReg.ReadString('MouseSensitivity'));
vReg.CloseKey;
end;
finally
vReg.Free;
end;
end;
finally
CloseHandle(tolken);
end;
end;
В целом код не сложный если прочитать msdn, но вот только я по началу не заметил того что редактирование реестра HKEY_CURRENT_USER происходит у админа ПК под которым я залогинился, а не под логином моего друга)), но в ветке HKEY_USERS я нашел все учетки и друга и админа да и вообще всех пользователей пк которые можно изменять без проблем.
Всегда ему говорил же отключай ты службу удаленного реестра, ну вот не слушался))
procedure TForm1.Button2Click(Sender: TObject);
var
UserName,Password,DomainName:PAnsiChar;
tolken:THandle;
vReg: TRegistry;
begin
UserName:='Логин';
Password:='Пароль';
DomainName:='Домен к которому принадлежит ПК';
//коннектимся к компу
try
if LogonUser(UserName,DomainName,Password,LOGON32_LOGON_INTERACTIVE,LOGON32_PROVIDER_DEFAULT,tolken) then
begin
Beep;
ImpersonateLoggedOnUser(tolken);
vReg := TRegistry.Create(KEY_ALL_ACCESS);
try
vReg.RootKey := HKEY_CURRENT_USER;
if vReg.RegistryConnect('\\noname') then //если не указать имя пк то редактирование будет происходить на локальном ПК будьте бдительны
begin
vReg.OpenKey('Control Panel\Mouse',False);
Memo1.Lines.add('До: '+vReg.ReadString('MouseSensitivity'));
vReg.WriteString('MouseSensitivity','20');
Memo1.Lines.add('После: '+vReg.ReadString('MouseSensitivity'));
vReg.CloseKey;
end;
finally
vReg.Free;
end;
end;
finally
CloseHandle(tolken);
end;
end;
В целом код не сложный если прочитать msdn, но вот только я по началу не заметил того что редактирование реестра HKEY_CURRENT_USER происходит у админа ПК под которым я залогинился, а не под логином моего друга)), но в ветке HKEY_USERS я нашел все учетки и друга и админа да и вообще всех пользователей пк которые можно изменять без проблем.
Комментариев нет:
Отправить комментарий