PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Einstieg in die eigene Entwicklung, tipps?



AstvomBaum
16.12.2010, 16:42
So, der Titel sagts eigentlich schon, ich würde gerne anfangen eigenes zu programmieren, und brauche eine kleine Einsteigerhilfe.
Hierbei gehts mir nicht um die Frage welche Programmiersprache bla bla, dazu gibt es schon tausen Threads, ich bin einen kleinen Schrit weiter, denn ich programmiere schon seit einigen Jahren (überwiegend in C/C++ (auch WinAPI), außerdem C#.net und noch einiges andere).

Darum Frage an euch, gibt es sehr empfehlenswerte Tutorials oder Literatur zu dem Thema? Ich verabscheue es fertige Tools zu benutzen, aber wirkliche "Trojaner C Coding Tuts" o.Ä. finde ich nirgens. Ob auf Englisch oder Deutsch spielt eher weniger eine Rolle.

Ich glaube mein größtes Problem ist, das ich nur bedingt Ahnung von Netzwerkprogrammierung habe, aber was benutzt man da, die uhr alten standart sockets aus winsocks.h?

Also, ganz allgemein, wie soll ich als einfacer Programmiere in die "Scene" einsteigen, was sind eure Tipps?

ps:"frag mich grade warum mir mein AntiVir 17 Funde in irgendwelchen Phantom Ordnern zeigt, seit dem ich von hier was runtergeladen habe..."

l0dsb
16.12.2010, 16:52
Wenn du noch keine Ahnung von der Netzwerkprogrammierung hast, wäre es wohl sinnvoll, da anzusetzen. Wenn uralte Standard-Sockets so funktionieren, wie du es brauchst, was spricht dann dagegen?

Wenn du Scene-Tools programmieren willst, mein erster Rat: Lass es. Mein zweiter: Guck dich in den Foren um, was ein Tool entsprechender Sorte können soll und überlege dir dann, wie du es umsetzt.

CYSER
16.12.2010, 16:53
Naja die beste Grundlage ist natürlich C/++ zu beherrschen.., dann sollte man eine Idee haben wie z.B. eine Crypter schreiben zu wollen. Ins PE-Format einlesen, source-codes anschauen - deine eigenen entwickeln..

Sonst kann ich dir empfehlen dir Source-codes anzuschauen und sie zu verstehen - dass hat mir immer sehr geholfen den Einstieg in etwas zu geben, Kentnisse in Netzwerkprogrammierung ( z.b.: http://robsite.net/files/0000/0012/sockdoc.pdf) sollte man sich schon anschaffen aber es kommt natürlich drauf an was du vor hast.

Und zu deiner Frage mit winsocks :P, ich würde sagen never change a running system? Gibt ja noch Alternativen wie winHTTP usw.

AstvomBaum
16.12.2010, 18:58
danke schon mal, weiss gar nicht warum ich nicht auf die Idee gekommen bin mir fertigen code anzusehen, mache ich bei "normalen" Programmein eigentlich auch immer als erstes.
Aber ich glaube ihr habt mich etwas falsch verstanden, um Tools für irgendwelche Skript-Kiddies zu entwickeln, die dann nach 1/2 absolut nicht mehr FUD sind ist mir meine Zeit echt zu kostbar, ich wolte nur für den Eigenbedarf entwickeln, sprich, einfach kleine Progs, die keiner kennt, und bei denen man sich keine Gedanken machen muss, ob sie erkannt werden, solche die ich immer auf die entsprechenden Anforderungen anpasse.
Hab mich mal mit Exploits beschäftigt, hatte aber keine Lust mehr als ich anfangen wollte Windows Shellcoding zu lernen.
Aber bei einem kleinem Trojaner oder Sysfucker braucht man ja nicht zwingend Shellcodes/Assembler, reicht ja die Dateien selbst zu attakieren.

edit: oh ich hab ja was ganz tolles entdeckt, man kann in PoisonIvy anstelle einer Exe c shellcode generieren lassen, den man dann selber z.B. per Exploit einspeisen kann.

Wie funktionieren diese Tools eigentlich, haben die nen eigenen Compiler oder setzen die nur, je nach Einstellung, verschiedene HexCodes zu na Binary hintereinander?

Raciel
17.12.2010, 08:14
Also ich kann dir jetzt nicht verssichern ob das bei allen so ist, aber sicher bei einem Grossteil, wird die Server.exe als Ressource in der Client.exe abgelegt. Beim builden wird die Ressource gelanden und die Informationen, die du konfiguriert hast, werden dem Server übermittelt, indem z.b. Daten ans Ende des Servers, oder als Ressource angelagert werden. Der Server liest das dann beim Start aus und weiss wie er sich verhalten soll.

Blackghost
17.12.2010, 11:06
schau mal bei milw0rm, da finden sich genug quellcodes, was ich noch weiß ist das die meisten exploits auf assambler aufbauen, der rest ist c socket programmierung, da findet sich einges gerade zum thema server client prinzip. Was ich mir vorstellen könnte wäre erstmal einen server und client zuprogramieren, die sich nur mit einander verbinden, darauf könnte man dann den rest aufbauen so das ich z.b cd laufwerk öffnet oder ähnliche spässe. wäre zu min erstmal ein anfang. für mich ist programmierung sowie so ein rotes tuch.

!Neolution!
18.12.2010, 11:06
schau mal bei milw0rm
weil milw0rm ja auch gaanz plötzlich wieder online ist wa? -.-

_sLevin
18.12.2010, 14:41
Metasploit Framework - Overview - Metasploit Redmine Interface (http://www.metasploit.com/redmine/projects/framework)
dort solltest mal schauen

Cristhecrusader
18.12.2010, 15:55
+Oo

@TE: Also interessierst du dich für shellcode? Weiss ja nicht was da so spannend ist ne .exe in shellcode zu verwandeln, aber :P
Bei Cryptern wirst du ja nicht um ASM rumkommen, jetzt kommt es natürlich drauf an was genau du coden willst. Aber die WinAPI ist doch schon mal eine sehr gute Grundlage.

AstvomBaum
21.12.2010, 16:01
danke an alle (etwas verspätet).

@Cristhecrusader Mit der WinAPI hab ich mich schon ausführlich beschäftigt, benutze sie auch immer noch oft. wegen crypter und asm, ich glaube da eine andere Möglichkeit gefunden zu haben, bei der man nichtmal Ahnung vom windows PE format haben muss, vlt. mach ich bald ein tutorial, es funktioniert und ist FUD... (bis auf einen winzigen moment, den ich noch fixen muss)

Gaara
22.12.2010, 12:04
(bis auf einen winzigen moment, den ich noch fixen muss)

redest du hier von scantime FUD'ness?o.o

AstvomBaum
22.12.2010, 22:45
ja, ich bin grade dabei meine assembler Kenntnisse aufzubessern um einen Runtime hinzukriegen, das "scantimeproblem" kann man wohl nur umgehen indem man irgendwie die AV software kallt stellt bevor man droppt

Cristhecrusader
22.12.2010, 23:10
das "scantimeproblem" kann man wohl nur umgehen indem man irgendwie die AV software kallt stellt bevor man droppt
Eher nicht.
Was du vor den AV knallst wird dann auch detected sein, der Trick ist es eher direkt in den RAM zu droppen.