Суббота, 20.04.2024, 18:14 Приветствую вас Гость | Группа "Гости" 
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Модератор форума: Волк-1024, Anton93, xXxSh@dowxXx  
delphicode » Delphi » Вирусология Delphi » Запрет доступа к сайту (хук)
Запрет доступа к сайту
okeДата: Воскресенье, 06.05.2012, 17:21 | Сообщение # 1
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
Доступно только для пользователей
все работает даже если к примеру заблочить vk.com и ввести в yandexe или в др поисковике то он не работает) так же нужен модуль AdvApiHook


Сообщение отредактировал oke - Воскресенье, 06.05.2012, 17:24
 
xXxSh@dowxXxДата: Воскресенье, 06.05.2012, 18:15 | Сообщение # 2
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
а так же для этого кода потребуется "WinSock2"

вот который смог откопать...
Прикрепления: winsock2.rar (19.2 Kb)
 
okeДата: Воскресенье, 06.05.2012, 18:24 | Сообщение # 3
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
а винсок2 разве не дефолт?

Сообщение отредактировал oke - Воскресенье, 06.05.2012, 18:24
 
xXxSh@dowxXxДата: Воскресенье, 06.05.2012, 18:30 | Сообщение # 4
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
не знаю, вобще вроде да, но у меня не было походу, и еще ты тестировал у себя эту dll, она у тебя во всех браузерах работает?
 
okeДата: Воскресенье, 06.05.2012, 18:46 | Сообщение # 5
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
да тестил внедрял хуком во все проци и внедрял только в project.exe эффект один и тотже
 
okeДата: Воскресенье, 06.05.2012, 18:50 | Сообщение # 6
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
кстати работает на xp 95 7 на висте не поверял
 
xXxSh@dowxXxДата: Среда, 09.05.2012, 00:21 | Сообщение # 7
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
че та я уже заколебался с этой длл, как только я не пробывал ее загружать, если просто загружал в свое приложение эффекта никакого, так же через вызов самой функции пробувал, то же самое эффекта никакого, хотя там две функции можно экспортировать как я понял это "SetHK" и "HookProc"

вот код которым загружал:

Code

procedure TForm1.Button1Click(Sender: TObject);
type
            TSetHK = procedure(AForm : TForm);
var
      DLLInstance : THandle;
      SetHK      : TSetHK;
begin
      DLLInstance := LoadLibrary(PChar(Edit1.Text));
            if DLLInstance = 0 then
            begin
                    MessageDlg('Невозможно загрузить DLL', mtError, [mbOK], 0);
                    Exit;
            end;
            @SetHK := GetProcAddress(DLLInstance, 'SetHK');
            if @SetHK <> nil then
                    SetHK (Self)
            else
                    MessageDlg('Не найдена процедура.', mtError, [mbOK], 0);
            FreeLibrary(DLLInstance);
end;


или вот такой код:

Code

var
     Form1: TForm1;
     LibHandle: HModule;
     SetHK: procedure; stdcall;
     HookProc: procedure; stdcall;
implementation

Procedure LoadMyLibrary(FileName: String);
Begin
LibHandle:= LoadLibrary(PChar(FileName));   
If LibHandle = 0 then begin
MessageBox(0,'Невозможно загрузить DLL',0,0);
Exit;
End;
SetHK:= GetProcAddress(LibHandle,'SetHK');
HookProc=: GetProcAddress(LibHandle,'HookProc');
If @SetHK = nil then begin
MessageBox(0,'Невозможно загрузить функцию 1',0,0);
Exit;
End;
If @HookProc = nil then begin
MessageBox(0,'Невозможно загрузить функцию 2',0,0);
Exit;
End; End;
{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
LoadMyLibrary('Project1.dll');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
SetHK;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
HookProc;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
FreeLibrary(LibHandle);
end;


но и этим кодом ошибку выдает, непойму почему...
вобщем если можешь, выложи свой код, как ты ее загружал, или пример...


Сообщение отредактировал xXxSh@dowxXx - Среда, 09.05.2012, 20:39
 
okeДата: Четверг, 10.05.2012, 01:51 | Сообщение # 8
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
Code
program Injector;

uses
   Windows, AdvApiHook;

const DLL_INJ = 'DLL Injector (HOOKS)';

type TShp = procedure (hk: HHOOK) stdcall;

procedure InjectDLLviaHOOKS(dll_name: string);
var
    h: THandle;
    p: pointer;
    sh: TShp;
    hk: HHOOK;
begin
     h:=LoadLibrary(PAnsiChar(dll_name));
      if h=0 then
         begin
              MessageBox(0, PAnsiChar('Не могу загрузить DLL '+dll_name+'!'), DLL_INJ, MB_OK+MB_ICONERROR);
            exit;
         end;
      p:=GetProcAddress(h, 'HookProc');
      @sh:=GetProcAddress(h, 'SetHK');
      if ((p=nil) or (@sh=nil)) then
         begin
              MessageBox(0, PAnsiChar('Библиотека '+
                            dll_name+' не содержит необходимых процедур!'),
                            DLL_INJ, MB_OK+MB_ICONERROR);
              FreeLibrary(h);
              exit;
         end;
      hk:=SetWindowsHookEx(WH_CALLWNDPROC, p, h, 0);
      if hk=0 then
         begin
              MessageBox(0, PAnsiChar('Невозможно установить ловушку!'),
                            DLL_INJ, MB_OK+MB_ICONERROR);
              FreeLibrary(h);
              exit;
         end;
      sh(hk);
      MessageBox(0, 'Ловушка установлена! Нажмите OK для снятия.',
                    DLL_INJ, MB_OK);
      UnhookWindowsHookEx(hk);
      FreeLibrary(h);
end;

begin
      InjectDLLviaHOOKS('inet.dll');
end.

я подгружал так...
 
xXxSh@dowxXxДата: Четверг, 10.05.2012, 08:10 | Сообщение # 9
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
хм интересный пример, вот зачем значит AdvApiHook в этом dll, а я то думал biggrin

благодарю за исходник smile


Сообщение отредактировал xXxSh@dowxXx - Четверг, 10.05.2012, 08:11
 
okeДата: Четверг, 10.05.2012, 17:03 | Сообщение # 10
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
но я всегда без инжектора просто через реестр подгружал
 
xXxSh@dowxXxДата: Четверг, 10.05.2012, 18:31 | Сообщение # 11
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
Ну я реестр не использую,потому что палится всем чем можно,а твой пример инжектора как раз не палится,что кстати странно,когда у меня стоял Касперский кристал,то он палил любой инжект библиотеки в любой процесс,щас стоял KIS последний,он не спалил,я даже удивился...
 
okeДата: Четверг, 10.05.2012, 18:57 | Сообщение # 12
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
аваст тоже не палит)
 
AndroidДата: Пятница, 11.05.2012, 09:42 | Сообщение # 13
Постоянный
Зарегистрирован: 13.12.2011
Группа: Пользователи
Сообщений: 100
Статус: Offline
Товарищи, объясните популярно, почему в этом куске кода
Code

p:=GetProcAddress(h, 'HookProc');    
@sh:=GetProcAddress(h, 'SetHK');  

(он уже из инжектора) первая процедура получается просто так, а вторая - через @ ???

Это как работает?
 
xXxSh@dowxXxДата: Пятница, 11.05.2012, 10:07 | Сообщение # 14
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
Android я так понимаю это потому что:

Code

     p: pointer;    
     sh: TShp;


хотя могу и ошибаться...
 
AndroidДата: Воскресенье, 13.05.2012, 20:56 | Сообщение # 15
Постоянный
Зарегистрирован: 13.12.2011
Группа: Пользователи
Сообщений: 100
Статус: Offline
а зачем надо именно р делать указателем???
 
xXxSh@dowxXxДата: Понедельник, 14.05.2012, 02:45 | Сообщение # 16
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
Это уже другой вопрос,хз я особо в коде библиотеки не разбирался,главное что работает smile
 
cool1Дата: Понедельник, 14.05.2012, 08:21 | Сообщение # 17
Участник
Зарегистрирован: 14.07.2010
Группа: Пользователи
Сообщений: 238
Статус: Offline
А возможно ли тут сделать редирект???
И как это сделать?
 
xXxSh@dowxXxДата: Понедельник, 14.05.2012, 10:06 | Сообщение # 18
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
cool1 если ты хочешь что бы пользователь открыл браузер и попал сразу на твою страничку, то проще измени файл отвечающий за стартовую страничку...

хотя при помощи длл так же можно сделать редирект, например если пользователь хочет попасть на сайт vk.ru то его автоматом перекинет на твой сайт, только для этого нужно хорошенько поправить эту dll


Сообщение отредактировал xXxSh@dowxXx - Понедельник, 14.05.2012, 10:08
 
okeДата: Суббота, 09.06.2012, 23:45 | Сообщение # 19
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
Android, потому что p - первая буква pointer biggrin
 
NeoДата: Воскресенье, 10.06.2012, 06:09 | Сообщение # 20
Модератор
Зарегистрирован: 04.05.2010
Группа: Модераторы
Сообщений: 317
Статус: Offline
Quote (cool1)
А возможно ли тут сделать редирект???

Не знаю как тут,но если делать моим способом,то возможно.Вот скрин:
Прикрепления: 1632928.jpg (221.2 Kb)


Сообщение отредактировал Neo - Воскресенье, 10.06.2012, 06:18
 
xXxSh@dowxXxДата: Воскресенье, 10.06.2012, 09:49 | Сообщение # 21
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
Neo интересный пример, у тебя даже ссылка в адресной строке при редиректе не изменилась, или это только IE так тупит?
 
NeoДата: Воскресенье, 10.06.2012, 11:09 | Сообщение # 22
Модератор
Зарегистрирован: 04.05.2010
Группа: Модераторы
Сообщений: 317
Статус: Offline
Opera,Chrome,Мазила так тупит.А вот Iron восстанавливает адресную строку.
 
Волк-1024Дата: Воскресенье, 10.06.2012, 14:25 | Сообщение # 23
Авторитетный
Зарегистрирован: 24.07.2011
Группа: Модераторы
Сообщений: 469
Статус: Offline
Кста неплохая идея с редиректом. На этом можно поднять не хилые $. Например, написать мелкий трой, который будет редиректить на фейковые адреса. Юзер напишет в адр строке vk.com и попадёт на фейк, где введёт свои данные и они ФсЕ уплывут... Плюс трой можно прогружать тысячами. И никаких правлений файла hosts. smile
 
okeДата: Воскресенье, 10.06.2012, 14:59 | Сообщение # 24
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
Волк-1024, можно создать hosts в другом месте и в реестре поменять путь к фейк hosts и все правда антивирусы проблема
 
xXxSh@dowxXxДата: Воскресенье, 10.06.2012, 19:37 | Сообщение # 25
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
oke в том то и дело, что антивирусы и работа с реестром, а с редиректом менее палевно я думаю...

Волк-1024 а на счет фейкового vk, почты и других ссылок, так это уже давно используется, другое дело вопрос в том запустит ли юзер прогу и тп., для меня например гораздо удобней и более скрытней использовать уязвимости браузеров, или отъискать XSS на сайте и кидать уже всем ссылку, или shellcode но это уже сложнее и более трудоемко, чем пытаться кому то впарить троя в надежде что его запустят...


Сообщение отредактировал xXxSh@dowxXx - Воскресенье, 10.06.2012, 19:42
 
delphicode » Delphi » Вирусология Delphi » Запрет доступа к сайту (хук)
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск:

delphicode.ru © 2008 - 2024 Хостинг от uCoz