cheese cake (08-10-2019),hack2learn (05-21-2011)
[Release] Enc DLL Injector V1.3
This is an injector that injects DLLs.
Thank/Rep me if you want.
It says it's a virus because of false positives. Most injectors are like that, don't worry it's not.
File Size:
[464.0 KB]
ScreenShot:
[img]https://i204.photobucke*****m/albums/bb267/lnguyen2306/7332-Copy2-Copy-1.jpg[/img]
Require:
.Net Framework v2.0
Virus scan::
+++Virustotal+++
Tuts:
1. Open injector
2. Where it says "Process:" type in soldierfront.exe.
3. Make sure automatically inject is checkmarked.
4. Click browse and select a DLL you want to inject.
5. Minimize and start soldierfront.
NOTE: You must have your own DLL
NOTE: This injector may not work on Windows 7 operating system
NOTE: If this injector will not work then 'right click' on it and select 'Run as Administrator'
Source Code:
[highlight=vb.net]
'Source code released by Enc94.
'You are free to distribute this injector or edit it in
'any way but please leave me credit somewhere, somehow.
'Thank you!
Imports System.Management
Public Class Main
'Injector Declarations
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 = 4S
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 Integer, ByVal 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
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Dim SCurrentDll As String
Dim SFileName
Dim DoneInject As String
Dim NewPoint As New System.Drawing.Point
Dim x, y As Integer
Dim curloc As New Point(0, 0)
Private Sub CheckAuto_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckAuto.CheckedChanged
If CheckAuto.Checked = True Then
If DoneInject = True Then
btnManual.Text = "New Injection"
Exit Sub
End If
btnManual.Enabled = False
Timer1.Enabled = True
Else
Timer1.Enabled = False
btnManual.Text = "Inject"
btnManual.Enabled = True
lblStatus.Text = "Waiting for Injection..."
End If
End Sub
Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click
LVItems.Items.Clear()
End Sub
Private Sub btnRemove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRemove.Click
For i As Integer = LVItems.SelectedIndices.Count - 1 To 0 Step -1
LVItems.Items.RemoveAt(LVItems.SelectedIndices(i))
Next
btnRemove.Enabled = False
End Sub
Private Sub btnManual_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnManual.Click
If Not txtProcess.Tex*****ntains(".exe") Then
txtProcess.Text = txtProcess.Text & ".exe"
End If
If btnManual.Text = "New Injection" Then
DoneInject = False
btnManual.Text = "Inject"
btnManual.Enabled = False
Exit Sub
End If
SFileName = Microsoft.VisualBasic.Left(txtProcess.Text, txtProcess.Text.Length + -4)
Dim TargerProcess As Process() = Process.GetProcessesByName(SFileName)
If LVItems.Items.Count < 1 Then
lblStatus.Text = "No DLL File to inject"
btnManual.Enabled = False
Exit Sub
End If
If IsNumeric(txtDelay.Text) Then
System.Threading.Thread.Sleep(txtDelay.Text * 1000)
End If
If TargerProcess.Length = 0 Then
lblStatus.Text = "Cant find " & SFileName & ".exe!"
Else
For i = 0 To (LVItems.Items.Count + -1)
SCurrentDll = LVItems.Items(i)
Call Inject()
lblStatus.Text = "Sucessfully Injected DLL!"
Timer1.Enabled = False
DoneInject = True
Next i
If CheckClose.Checked = True Then
System.Threading.Thread.Sleep(1000)
Close()
End If
End If
btnManual.Enabled = False
End Sub
Private Sub wait(ByVal interval As Integer)
Dim sw As New Stopwatch
sw.Start()
Do While sw.ElapsedMilliseconds < interval
' Allows UI to remain responsive
Application.DoEvents()
Loop
sw.Stop()
End Sub
Private Sub Inject()
On Error GoTo 1
Timer1.Stop()
'Inject Dll
Dim TargetProcess As Process() = Process.GetProcessesByName(SFileName)
TargetProcessHandle = OpenProcess(PROCESS_CREATE_THREAD Or PROCESS_VM_OPERATION Or PROCESS_VM_WRITE, False, TargetProcess(0).Id)
pszLibFileRemote = SCurrentDll
pfnStartAddr = GetProcAddress(GetModuleHandle("Kernel32"), "LoadLibraryA")
TargetBufferSize = 1 + Len(pszLibFileRemote)
Dim Rtn As Integer
Dim LoadLibParamAdr As Integer
LoadLibParamAdr = VirtualAllocEx(TargetProcessHandle, 0, TargetBufferSize, MEM_COMMIT, PAGE_READWRITE)
Rtn = WriteProcessMemory(TargetProcessHandle, LoadLibParamAdr, pszLibFileRemote, TargetBufferSize, 0)
CreateRemoteThread(TargetProcessHandle, 0, 0, pfnStartAddr, LoadLibParamAdr, 0, 0)
CloseHandle(TargetProcessHandle)
1: Me.Show()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If Not txtProcess.Tex*****ntains(".exe") Then
txtProcess.Text = txtProcess.Text & ".exe"
End If
SFileName = Microsoft.VisualBasic.Left(txtProcess.Text, txtProcess.Text.Length + -4)
Dim TargerProcess As Process() = Process.GetProcessesByName(SFileName)
If LVItems.Items.Count < 1 Then
lblStatus.Text = "Waiting for DLL File"
btnManual.Enabled = False
Exit Sub
End If
If TargerProcess.Length = 0 Then
lblStatus.Text = "Waiting for " & SFileName & ".exe"
Exit Sub
End If
If IsNumeric(txtDelay.Text) Then
System.Threading.Thread.Sleep(txtDelay.Text * 1000)
End If
If TargerProcess.Length = 0 Then
lblStatus.Text = "Waiting for " & SFileName & ".exe"
Else
For i = 0 To (LVItems.Items.Count + -1)
SCurrentDll = LVItems.Items(i)
Call Inject()
lblStatus.Text = "Sucessfully Injected DLL!"
Timer1.Enabled = False
DoneInject = True
Next i
If CheckClose.Checked = True Then
System.Threading.Thread.Sleep(1000)
Close()
End If
End If
End Sub
Private Sub btnBrowse_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBrowse.Click
Dim fdlg As OpenFileDialog = New OpenFileDialog()
fdlg.Title = "Pick a dll to addzor"
fdlg.Filter = "Dynamic Link Library (*.dll*)|*.dll*"
fdlg.FilterIndex = 2
fdlg.RestoreDirectory = True
If fdlg.ShowDialog() = DialogResult.OK Then
If Not LVItems.Items.Contains(fdlg.SafeFileName) Then
LItems.Items.Add(fdlg.FileName)
LVItems.Items.Add(fdlg.SafeFileName)
btnClear.Enabled = True
Else
MsgBox("DLL is already on the list!")
End If
End If
End Sub
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
Dim FILE_NAME As String = System.AppDomain.CurrentDomain.BaseDirectory & "Enc_Injector.ini"
If System.IO.File.Exists(FILE_NAME) = True Then
Dim objWriter As New System.IO.StreamWriter(FILE_NAME)
objWriter.WriteLine("[General]")
objWriter.WriteLine("Process: " & (txtProcess.Text))
objWriter.WriteLine("Delay: " & (txtDelay.Text))
objWriter.WriteLine("AutoInject: " & (CheckAuto.Checked))
objWriter.WriteLine("AutoClose: " & (CheckClose.Checked))
objWriter.WriteLine("[DLL]")
For i = 0 To LVItems.Items.Count + -1
objWriter.WriteLine("CName" & i & ": " & LVItems.Items(i))
objWriter.WriteLine("CPath" & i & ": " & LItems.Items(i))
Next i
objWriter.Close()
Else
MsgBox("Could not save settings! (File Not Found)", MsgBoxStyle.Critical, "Save Settings Error")
End If
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim FILE_NAME As String = System.AppDomain.CurrentDomain.BaseDirectory & "Enc_Injector.ini"
Dim Temp As String
Dim i, b As Integer
'Load setttings
If System.IO.File.Exists(FILE_NAME) = True Then
Dim objReader As New System.IO.StreamReader(FILE_NAME)
Temp = (objReader.ReadLine)
Temp = (objReader.ReadLine)
On Error Resume Next
txtProcess.Text = (Microsoft.VisualBasic.Right(Temp, Temp.Length + -9))
Temp = (objReader.ReadLine)
txtDelay.Text = (Microsoft.VisualBasic.Right(Temp, Temp.Length + -7))
Temp = (objReader.ReadLine)
CheckAuto.Checked = (Microsoft.VisualBasic.Right(Temp, Temp.Length + -12))
Temp = (objReader.ReadLine)
CheckClose.Checked = (Microsoft.VisualBasic.Right(Temp, Temp.Length + -11))
Temp = (objReader.ReadLine)
On Error Resume Next
For i = 1 To 100
'Viewed
Temp = objReader.ReadLine()
Temp = (Microsoft.VisualBasic.Right(Temp, Temp.Length + -8))
LVItems.Items.Add(Temp)
'Paths
Temp = objReader.ReadLine
Temp = (Microsoft.VisualBasic.Right(Temp, Temp.Length + -8))
LItems.Items.Add(Temp)
If Temp = "" Then i = 100
Next
objReader.Close()
Else
On Error Resume Next
Dim oFile As System.IO.File
Dim oWrite As System.IO.StreamWriter
oWrite = oFile.CreateText(System.AppDomain.CurrentDomain.Ba seDirectory & "Enc_Injector.ini")
oWrite.Close()
End If
Me.Opacity = 0.0
DoneInject = False
End Sub
Private Sub tmrKey_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrKey.Tick
If GetAsyncKeyState(Keys.Delete) And btnManual.Enabled = True Then
btnManual.PerformClick()
End If
End Sub
Private Sub tmrCheck_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrCheck.Tick
If Not LVItems.SelectedIndex = -1 Then
btnRemove.Enabled = True
Else
btnRemove.Enabled = False
End If
If LVItems.Items.Count < 1 Then
lblStatus.Text = "Waiting for DLL File"
btnManual.Enabled = False
btnClear.Enabled = False
Else
If CheckAuto.Checked = False Then
btnManual.Enabled = True
btnClear.Enabled = True
If lblStatus.Text = "Waiting for DLL File" Then
lblStatus.Text = "Waiting for Injection..."
End If
ElseIf DoneInject = False Then
Timer1.Enabled = True
lblStatus.Text = "Waiting for " & SFileName & ".exe"
End If
End If
If lblStatus.Text = "Sucessfully Injected DLL!" Then
btnManual.Text = "New Injection"
btnManual.Enabled = True
End If
If btnManual.Text = "New Injection" Then
lblStatus.Text = "Sucessfully Injected DLL!"
End If
End Sub
Private Sub txtDelay_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtDelay.TextChanged
End Sub
Private Sub CheckClose_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckClose.CheckedChanged
End Sub
Private Sub Label4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label4.Click
System.Diagnostics.Process.Start("https://www.*****************/forums/enc94-4097656.html")
End Sub
Private Sub tmrHover_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrHover.Tick
End Sub
Private Sub Label4_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles Label4.MouseEnter
Label4.ForeColor = Color.LimeGreen
End Sub
Private Sub Label4_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Label4.MouseLeave
Label4.ForeColor = Color.Lime
End Sub
Private Sub tmrIntro_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrIntro.Tick
Me.Opacity = Me.Opacity + 0.01
If (Me.Opacity = 1) Then
tmrIntro.Stop()
tmrIntro.Dispose()
End If
End Sub
Private Sub GroupBox1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox1.Enter
End Sub
Private Sub lblStatus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lblStatus.Click
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
End
End Sub
Private Sub Panel1_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs)
End Sub
Private Sub Label5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
End
End Sub
Private Sub Panel1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Panel1.MouseDown
x = Control.MousePosition.X - Me.Location.X
y = Control.MousePosition.Y - Me.Location.Y
End Sub
Private Sub Panel1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Panel1.MouseMove
If e.Button = Windows.Forms.MouseButtons.Left Then
NewPoint = Control.MousePosition
NewPoint.X -= (x)
NewPoint.Y -= (y)
Me.Location = NewPoint
End If
End Sub
Private Sub Panel1_Paint_1(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Panel1.Paint
End Sub
Private Sub Label5_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label5.Click
End
End Sub
End Class
[/highlight]
Last edited by NextGen1; 03-29-2011 at 07:51 PM.
cheese cake (08-10-2019),hack2learn (05-21-2011)
Nice GUI
Last edited by Jason; 03-22-2011 at 12:45 AM. Reason: removed talk about duplicate thread /sigh
Won't be able to approve til I get home from University, about 2 hours from now, sorry.
You can win the rat race,Originally Posted by Jeremy S. Anderson
But you're still nothing but a fucking RAT.
++Latest Projects++
[Open Source] Injection Library
Simple PE Cipher
FilthyHooker - Simple Hooking Class
CLR Injector - Inject .NET dlls with ease
Simple Injection - An in-depth look
MPGH's .NET SDK
eJect - Simple Injector
Basic PE Explorer (BETA)
-Away Alt (03-22-2011)
U goina upload a file?
did you see the file yet?
Scan the .rar not the .exe buddy.
You can win the rat race,Originally Posted by Jeremy S. Anderson
But you're still nothing but a fucking RAT.
++Latest Projects++
[Open Source] Injection Library
Simple PE Cipher
FilthyHooker - Simple Hooking Class
CLR Injector - Inject .NET dlls with ease
Simple Injection - An in-depth look
MPGH's .NET SDK
eJect - Simple Injector
Basic PE Explorer (BETA)
You can win the rat race,Originally Posted by Jeremy S. Anderson
But you're still nothing but a fucking RAT.
++Latest Projects++
[Open Source] Injection Library
Simple PE Cipher
FilthyHooker - Simple Hooking Class
CLR Injector - Inject .NET dlls with ease
Simple Injection - An in-depth look
MPGH's .NET SDK
eJect - Simple Injector
Basic PE Explorer (BETA)