Vb.net DLL İnjector Yapımı


Visual Basic ve .NET Framework    Visual Basic ve .NET Framework İle İlgili Paylaşım Kategorisi

Yazar: x60    0 Yorum    436 Görüntüleme
  • 0 Oy - 0 Yüzde

Paylaşım Tarihi: 18.03.2016, 19:39:01 #1
x60 #Requiem
Cezalı Üye
Status: Çevrimdışı Yorum Sayısı:551 Konu Sayısı:161 Üyelik Tarihi:18.11.2015

Bugün sizlere Vb.net ile DLL İnjector yapımını gösterecegim

Form'a Eklenicek İtemler

* 2 Textbox

* 1 Button
* 1 Timer
* 1 OpenFileDialog
* 1 Label

Forma girilecek kod :


PHP Kod:
button1.text "Dll Bul"
label1.text "Dosyalar Aranıyor..."
timer1.interval 50
timer1
.start()  

Timer 1'e girilecek kod 

PHP Kod:
If IO.File.Exists(OpenFileDialog1.FileNameThen Dim TargetProcess As Process() = Process.GetProcessesByName(TextBox1.Text) 
If TargetProcess.Length 0 Then 
Me
.Label1.Text = ("Lütfen Bekleyin : " TextBox1.Text ".exe") Else Timer1.Stop() Me.Label1.Text "Başarıyla İnjectlendi.." 
Call Inject
() 
End If 
Else 
End If  

Buton 1'e Girilecek Kod 


PHP Kod:
OpenFileDialog1.Filter "DLL (*.dll) |*.dll|(*.*) |*.*" OpenFileDialog1.ShowDialog()
Dim FileName As String
FileName 
OpenFileDialog1.FileName.Substring(OpenFileDialog1.FileName.LastIndexOf("")) 
Dim DllFileName 
As String FileName.Replace("","") 
Me
.TextBox2.Text = (DllFileName)  


Form'un Public Class Girilecek Kod :


PHP Kod:
Private TargetProcessHandle As Integer
Private pfnStartAddr As Integer
Private pszLibFileRemote As String
Private TargetBufferSize As Integer




Public Const PROCESS_VM_READ = &H10
Public Const TH32CS_SNAPPROCESS = &H2
Public Const MEM_COMMIT 4096
Public Const PAGE_READWRITE 4
Public Const PROCESS_CREATE_THREAD = (&H2)
Public Const 
PROCESS_VM_OPERATION = (&H8)
Public Const 
PROCESS_VM_WRITE = (&H20)
Dim DLLFileName As String
Public Declare Function ReadProcessMemory Lib "kernel32" _
ByVal hProcess 
As Integer_
ByVal lpBaseAddress 
As Integer_
ByVal lpBuffer 
As String_
ByVal nSize 
As Integer_
ByRef lpNumberOfBytesWritten 
As Integer) As Integer




Public Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" _
ByVal lpLibFileName 
As String) As Integer




Public Declare Function VirtualAllocEx Lib "kernel32" _
ByVal hProcess 
As Integer_
ByVal lpAddress 
As Integer_
ByVal dwSize 
As Integer_
ByVal flAllocationType 
As Integer_
ByVal flProtect 
As Integer) As Integer




Public Declare Function WriteProcessMemory Lib "kernel32" _
ByVal hProcess 
As Integer_
ByVal lpBaseAddress 
As Integer_
ByVal lpBuffer 
As String_
ByVal nSize 
As Integer_
ByRef lpNumberOfBytesWritten 
As Integer) As Integer




Public Declare Function GetProcAddress Lib "kernel32" _
ByVal hModule 
As IntegerByVal lpProcName As String) As Integer




Private Declare Function GetModuleHandle Lib "Kernel32" Alias "GetModuleHandleA" _
ByVal lpModuleName 
As String) As Integer




Public Declare Function CreateRemoteThread Lib "kernel32" _
ByVal hProcess 
As Integer_
ByVal lpThreadAttributes 
As Integer_
ByVal dwStackSize 
As Integer_
ByVal lpStartAddress 
As Integer_
ByVal lpParameter 
As Integer_
ByVal dwCreationFlags 
As Integer_
ByRef lpThreadId 
As Integer) As Integer




Public Declare Function OpenProcess Lib "kernel32" _
ByVal dwDesiredAccess 
As Integer_
ByVal bInheritHandle 
As Integer_
ByVal dwProcessId 
As Integer) As Integer




Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
ByVal lpClassName 
As String_
ByVal lpWindowName 
As String) As Integer




Private Declare Function CloseHandle Lib "kernel32" Alias "CloseHandleA" _
ByVal hObject 
As Integer) As Integer








Dim ExeName 
As String IO.Path.GetFileNameWithoutExtension(Application.ExecutablePath)




Private 
Sub Inject()
On Error GoTo 1 ’ If error occursapp will close without any error messages
Timer1
.Stop()
Dim TargetProcess As Process() = Process.GetProcessesByName(TextBox1.Text)
TargetProcessHandle OpenProcess(PROCESS_CREATE_THREAD Or PROCESS_VM_OPERATION Or PROCESS_VM_WRITEFalseTargetProcess(0).Id)
pszLibFileRemote OpenFileDialog1.FileName
pfnStartAddr 
GetProcAddress(GetModuleHandle("Kernel32"), "LoadLibraryA")
TargetBufferSize Len(pszLibFileRemote)
Dim Rtn As Integer
Dim LoadLibParamAdr 
As Integer
LoadLibParamAdr 
VirtualAllocEx(TargetProcessHandle0TargetBufferSizeMEM_COMMITPAGE_READWRITE)
Rtn WriteProcessMemory(TargetProcessHandleLoadLibParamAdrpszLibFileRemoteTargetBufferSize0)
CreateRemoteThread(TargetProcessHandle00pfnStartAddrLoadLibParamAdr00)
CloseHandle(TargetProcessHandle)
1Me.Show()
End Sub  









Aradığınızı Bulamadınız Mı ?
 Çalışıyor VB.NET Loader Yapımı

Konuyu görüntüleyenler:
1 Misafir