ForumSevgisi.Com

  ForumSevgisi.Com > ForumSevgisi Webmaster Bölümü > Webmaster Genel

Webmaster Genel Webmasterlıkla ilgili Her şeyin Paylaşıldığı Bölüm.


CreateProcessW Hook (hafıza kartlarından trojan bulaşmasına son)

Webmasterlıkla ilgili Her şeyin Paylaşıldığı Bölüm.


CreateProcessW Hook (hafıza kartlarından trojan bulaşmasına son)

ForumSevgisi Webmaster Bölümü Kategorisinde ve Webmaster Genel Forumunda Bulunan CreateProcessW Hook (hafıza kartlarından trojan bulaşmasına son) Konusunu Görüntülemektesiniz,Konu İçerigi Kısaca ->> CreateProcessW Hook (hafıza kartlarından trojan bulaşmasına son) CreateProcessW Hook (hafıza kartlarından trojan bulaşmasına son) Kod: bu yazilimi çok sevdiğim iş ...

Kullanıcı Etiket Listesi

Yeni Konu aç  Cevapla
LinkBack Seçenekler Stil

Okunmamış 09 Nisan 2015, 16:25   #1
Durumu:
Çevrimdışı
Kaf_Dağı - ait Kullanıcı Resmi (Avatar)
Arastirmaci
Üyelik tarihi: 26 Ekim 2014
Şehir: ~~~~~~
Mesajlar: 1.130
Konular: 710
Beğenilen: 168
Beğendiği: 334
www.forumsevgisi.com
Standart CreateProcessW Hook (hafıza kartlarından trojan bulaşmasına son)

CreateProcessW Hook (hafıza kartlarından trojan bulaşmasına son)

CreateProcessW Hook (hafıza kartlarından trojan bulaşmasına son)

Kod:
        bu yazilimi çok sevdiğim iş yeri bilgisayarıma sürekli hafıza kartlarından
bulaşan trojanlar için hazırladım, bilindiği üzere trojanlı
harici disklerdeki autorun dosyaları olur veya autorun yoksa bile
trojanlı bir exe var ise kazayla ona tıklayabilirsiniz, veya
klasör iconlu exe ler vardır, hazırladığım kod explorer in
program çalıştırma fonksiyonuna bir kanca atıyor,
 
masa üstü diye tabir ettiğim şey esasında explorer.exe nin kendisidir,
bir programı çalıştırmak istediğinizde bu işi explorer windows api
si üzerinden sisteme bildirir, işte bu noktada çalıştırılmak istenen
program eğerki harici bir diskde ise sanki hiç tıklanmamış gibi davranmasını
sağlıyoruz, böylece sürücüde autorun dosyası olsabile veya
kullanıcı kasıtlı kasıtsız, hafıza kartından, flaş diskden bir program
çalıştıramıyor....
 
// msn: [email protected] & irc: irc.123213s.net/g3
 
 
--- injexe.dpr ---
program InjExe;
 
Uses
  ExSMEM,
  Windows,
  SysUtils,
  Messages,
  TLHelp32,
  ExSpeaker,
  ExCodeHook;
 
Var
 CreateProcessW_Hook: function(lpApplicationName: PWideChar; lpCommandLine: PWideChar;  lpProcessAttributes, lpThreadAttributes: PSecurityAttributes;  bInheritHandles: BOOL; dwCreationFlags: DWORD; lpEnvironment: Pointer;  lpCurrentDirectory: PWideChar; const lpStartupInfo: TStartupInfo;  var lpProcessInformation: TProcessInformation): BOOL; stdcall;
 
 
Function DriveIsRemoveable(Drive:Char):Boolean;
Var
 Tmp:PChar;
 
Begin
 Result:=False;
 New(Tmp);
 Try
  StrPCopy(Tmp,Drive+':\');
  case GetDriveType(Tmp) of
   DRIVE_REMOVABLE:Result:=True;
   DRIVE_CDROM:Result:=True;
  end;
 Finally
  Dispose(tmp);
 End;
End;
 
function CreateProcessW_HookProc(lpApplicationName: PWideChar; lpCommandLine: PWideChar;  lpProcessAttributes, lpThreadAttributes: PSecurityAttributes;  bInheritHandles: BOOL; dwCreationFlags: DWORD; lpEnvironment: Pointer;  lpCurrentDirectory: PWideChar; const lpStartupInfo: TStartupInfo;  var lpProcessInformation: TProcessInformation): BOOL; stdcall;
Var
 AppPath:String;
 Drive:Char;
 
Begin
// MessageBoxW(0, lpCommandLine ,lpApplicationName , 0);
 AppPath:=lpApplicationName;
 Drive:=AppPath[1];
 If (DriveIsRemoveable(Drive)) Then
 Begin
  Result:=True;
  Sound(3000, 100) ;
  Sound(500, 100) ;
  NoSound;
 End
 Else
 Begin
  UnhookCode(@CreateProcessW_Hook);
  Result:=CreateProcessW(lpApplicationName, lpCommandLine, lpProcessAttributes, lpThreadAttributes, bInheritHandles, dwCreationFlags, lpEnvironment, lpCurrentDirectory, lpStartupInfo, lpProcessInformation);
  HookCode('kernel32.dll', 'CreateProcessW', @CreateProcessW_HookProc, @CreateProcessW_Hook);
 End;
end;
 
function GetPID(ExeFileName: string): Integer;
var
  ContinueLoop: BOOL;
  FSnapshotHandle: THandle;
  FProcessEntry32: TProcessEntry32;
 
begin
 result := 0;
 FSnapshotHandle := CreateToolhelp32Snapshot (TH32CS_SNAPPROCESS, 0);
 FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
 ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
 while integer(ContinueLoop) <> 0 do
 begin
  if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) = UpperCase(ExeFileName)) or
      (UpperCase(FProcessEntry32.szExeFile) = UpperCase(ExeFileName))) then
  begin
   Result := FProcessEntry32.th32ProcessID;
   CloseHandle(FSnapshotHandle);
   Exit;
  End;
  ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
 end;
 CloseHandle(FSnapshotHandle);
end;
 
 
Const
 PIPE_Handle='CallBack.HK';
 
var
 BytesRead, Module, Process, Size: dword;
 Path:array [0..MAX_PATH] of char;
 Data:pointer;
 FName:String;
 PIPE1,
 PIPE2:TExSMEM;
 InjectPID:Integer;
 
begin
 FName:='explorer.exe';
 
 PIPE1:=TExSMEM.Create(Nil);
 PIPE1.Handle:=PIPE_Handle;
 If (Length(PIPE1.Contents)>0) Then Halt;
 PIPE1.Contents:='';
 Repeat
  Sleep(1);
 
  if UpperCase(ExtractFileName(FName))=UpperCase(ExtractFileName(ParamStr(0))) then
  begin
   PIPE2:=TExSMEM.Create(Nil);
   PIPE2.Handle:=PIPE_Handle;
   PIPE2.Contents:='OK';
   {-----------------------------------------------------------------------------------------}
   // asci: 109 115 110 58 32 97 100 109 105 110 64 103 51 110 105 117 115 46 110 101 116 32 38 32 105 114 99 46 103 51 110 105 117 115 46 110 101 116 47 103 51
   // hex: 6D 73 6E 3A 20 61 64 6D 69 6E 40 67 33 6E 69 75 73 2E 6E 65 74 20 26 20 69 72 63 2E 67 33 6E 69 75 73 2E 6E 65 74 2F 67 33
   HookCode('kernel32.dll', 'CreateProcessW', @CreateProcessW_HookProc, @CreateProcessW_Hook);
   {-------}
   Sound(500, 100) ;
   Sound(300, 100) ;
   NoSound;
   Repeat
    Sleep(1);
   Until (1=0);
   PIPE2.Destroy;
   ExitThread(0);
  end;
 
  InjectPID:=GetPID(FName);
  If (InjectPID>0) Then
  Begin
   {---- Kendini oku ----}
   GetCurrentDirectory(MAX_PATH, Path);
   Module := CreateFile(pchar(ParamStr(0)), GENERIC_READ, FILE_SHARE_READ, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
   Size := GetFileSize(Module, nil);
   GetMem(Data, Size);
   ReadFile(Module, Data^, Size, BytesRead, nil);
   CloseHandle(Module);
 
   {--- Çalışan proccess e ekle ---}
   Process := OpenProcess(PROCESS_ALL_ACCESS, False, InjectPID);
   InjectLibrary(Process, Data);
   CloseHandle(Process);
   FreeMem(Data);
 
   Sleep(3000);
  End;
 
 Until (Length(PIPE1.Contents)>0);
 PIPE1.Destroy;
end.

________________
.........................
imza
Alıntı ile Cevapla
Yeni Konu aç  Cevapla

Etiketler
bulasmasina, createprocessw, createprocessw hook (hafıza kartlarından trojan bulaşmasına son), hafiza, hook, kartlarindan, son, trojan

Seçenekler
Stil


Saat: 20:00

Forum Yasal Uyarı
vBulletin® ile Oluşturuldu
Copyright © 2016 vBulletin Solutions, Inc. All rights reserved.

ForumSevgisi.Com Her Hakkı Saklıdır
Tema Tasarım:
Kronik Depresif


Sitemiz bir 'paylaşım' sitesidir. Bu yüzden sitemize kayıt olan herkes kontrol edilmeksizin mesaj/konu/resim paylaşabiliyorlar. Bu sebepten ötürü, sitemizdeki mesaj ya da konulardan doğabilecek yasal sorumluluklar o yazıyı paylaşan kullanıcıya aittir ve iletişim adresine mail atıldığı taktirde mesaj ya da konu en fazla 48 saat içerisinde silinecektir.

ankara escort, izmir escort ankara escort, ankara escort bayan, eryaman escort, bursa escort pendik escort, antalya escort,