Search Members Help

» Willkommen Gast
[ Einloggen :: Registrieren ]

Alle Beiträge auf einer Seite

[ bei Antworten benachrichtigen :: per E-Mail senden :: Thema ausdrucken ]

reply to topic new topic new poll
Thema: Neues Tool online: H2Switch, Tools, Release< Älteres Thema | Neueres Thema >
 Beitrag Nummer: 1
Luke_Filewalker Search for posts by this member.
Bastard Operator From Hell
Avatar

TeamIcon

Gruppe: Administrators
Beiträge: 892
Seit: 23.12.2005
PostIcon Geschrieben: 13.2.2011, 00:53  Skip to the next post in this topic. Ignore posts   QUOTE

Hamachi 2 Switch erlaubt das komplette Deaktivieren und Aktivieren von Hamachi 2, genauso wie dies schon bei Hamachi 1 von Haus aus der Fall war. Es gibt bereits mindestens einen weiteren Launcher für Hamachi 2, wozu also einen neuen? Das hat mehrere Gründe:

  • Ich wollte einen Launcher bei dem man sieht was gerade geschieht. Das wurde realisiert durch ein Trayicon welches durch verschiedene Zustände anzeigt welche Phase gerade aktiv ist. Ausserdem durch Sprechblasen die, genau wie das Trayicon selbst, auch abschaltbar sind. Zusätzlich kann auch ein Log aktiviert werden, was aber normal nur im Problemfall interessant sein dürfte.
  • Ausserdem sollte Hamachi, sofern es zuletzt aktiviert wurde, auch beim Systemstart wieder vollständig gestartet werden und nicht inkonsequenterweise nur der Netzwerkadapter. d.h. mit H2Switch bedeutet Aktiv auch dauerhaft Aktiv und umgekehrt, eben wie ein echter Schalter.
  • Virustotal meldet beim anderen Launcher 3 Funde. Das sieht aber eher nach Fehlalarm aus. Allerdings wurde der Launcher mit UPX gepackt und wenn man die entpackte EXE nochmal hochlädt, dann werden schon 7 Funde gemeldet was nicht sonderlich vertrauenserweckend auf mich wirkte. Wobei man ganz klar sagen muss, dass auch das ein Fehlalarm sein kann. Um das endgültig zu klären, müsste man die EXE weiter auseinander nehmen.
  • Und der letzte Grund ist ganz simpel. Ich sage es mit den Worten von Kirk als er Spock den wichtigsten Grund nannte, warum er den Berg besteigt: "Weil er da ist.".  ;)


Allerdings gibts auch einen kleinen "Nachteil" meines eigenen Launchers: In VB ist es mir nicht gelungen eine saubere Lösung für das Steuern des Netzwerkadapters zu finden die auch in Vista und 7 funktioniert. Darum musste ich auf devcon von Microsoft zurückgreifen. Die jeweilige EXE, abhängig ob 32 oder 64 Bit,  muss ins gleiche Verzeichnis wie H2Switch. Ich darf diese EXE laut MS leider nicht mit ins Archiv packen, darum muss diese gesondert heruntergeladen werden. :( Dafür funktioniert dann die Steuerung der Netzwerkadapter absolut zuverlässig.

H2Switch wurde ausgiebig unter 32Bit von XP, Vista und 7 getestet. Unter 64Bit kann ich leider (noch) nicht testen, "sollte" aber auch dort funktionieren. Wenn das jemand testen könnte, würde ich mich über eine Rückmeldung freuen.


Bearbeitet von Luke_Filewalker am 13.2.2011, 13:42

--------------
Luke 'GTH' Filewalker
...may the backup be with you - always!
Zitat: "Nicht gesicherte Dateien dürfen als gelöscht betrachtet werden"
Offline
Top of Page Profile Contact Info WEB 
 Beitrag Nummer: 2
Luke_Filewalker Search for posts by this member.
Bastard Operator From Hell
Avatar

TeamIcon

Gruppe: Administrators
Beiträge: 892
Seit: 23.12.2005
PostIcon Geschrieben: 03.5.2011, 12:17 Skip to the previous post in this topic.  Ignore posts   QUOTE

Tatort GTH: Dem ersten Hamachi Launcher auf den Zahn gefühlt.
Auch wenn mein H2Switch jetzt alles genau das macht was mir beim ersten Launcher fehlt, so war doch eine gewisse Neugier vorhanden wie der erste funktioniert und vor allem ob die Virenmeldungen wirklich alle Fehlalarme sind. Darum habe ich mich jetzt - nachdem mein eigenes Tool einen robusten Status erreicht hat - einen Nachmittag lang intensiv mit der EXE auseinandergesetzt da mich die folgende Frage beschäftigte:

Mit welchem Programm wurde die EXE erstellt bzw. kompiliert?

Der Hexeditor brachte sehr schnell zu Tage, dass die EXE mit UPX gepackt war. Das war der erste Hinweis warum etliche Virenscanner Alarm schlugen da die Konvertierung einer EXE zu einem on-the-fly-unpacker unter anderem auch bei Virencodern und Skript-Kiddies sehr beliebt ist um den Inhalt ihrer EXEs zu verschleiern. UPX und co. wurden aber eigentlich nicht zur Verschleierung entwickelt, sondern um in bestimmten Fällen auch bei ausführbaren Programmen möglichlist viel Speicherplatz sparen zu können. Nichtsdestotrotz reagieren viele Antivirenscanner allergisch auf EXE Packer.

Also die EXE mit UPX entpackt und das Ergebnis wieder in den Hexeditor geladen um nach Hinweisen zu suchen, mit welchem Programm die EXE erstellt wurde. Dann fand ich erstmal Hinweise darauf, das die EXE möglicherweise einen Payload hat. Also noch eine oder mehrere Dateien huckepack trägt. Zuerst dachte ich dann an ein simples Archiv SFX Modul. Als jedoch der Total Commander nichts mit der EXE anzufangen wusste, bemühte ich Winrar. Aber auch Winrar meinte "Wat soll ich mit dem Ding? Geht mich nichts an!". Deshalb verwarf ich diese Theorie erstmal wieder.  Auch meine Theorie das die EXE etwa mit Autoit oder Autohotkey erstellt wurde verwarf ich schnell wieder; die EXE war dafür viel zu klein. Aber irgendwo muss man ja mal anfangen.

Ok, dann schauen wir doch mal was die EXE während der Laufzeit so alles treibt. In einer virtuellen Maschine habe ich dann IO Zugriffe auf die Platte, Registry Zugriffe, Prozess Aktionen und Netzwerkzugriffe protokolliert. Nachdem ich mit der EXE Hamachi einmal kurz aktiviert und wieder deaktiviert hatte, waren genug Logdaten vorhanden um erstmal Kaffee aufzusetzen. Nach dem durchstöbern von etlichen dutzenden Kilobytes Logdaten fand ich dann heraus, dass die EXE während der Laufzeit 3 Dateien im TEMP Verzeichnis entpackte, inklusive einer weiteren EXE. Also stimmte schon mal meine Payload Theorie. Die Dateien wurden immer nach Programmende sofort wieder aus dem TEMP Verzeichnis gelöscht. Also das ganze wiederholt und diesmal alle Dateien aus dem TEMP Verzeichnis abgefangen und in ein separates Verzeichnis kopiert. Hab dich!

Der Payload besteht aus einer REG Datei mit der der Autorun Eintrag der UI EXE aus der Registry gelöscht wird. Die zweite Datei ist ein CMD Batch mit der alle Aktionen gesteuert werden und die dritte Datei ist - ach schau an - devcon.exe. ;) Nun war mir auch klar, warum es den Launcher einmal als 32Bit und einmal als 64Bit Variante gibt: weil es jeweils die 32 oder 64 Bit Version von devcon enthält. Mit diesem Wissen startete ich einen Resourceneditor und entpackte nochmal gezielt alle darin enthaltenen Dateien, inklusive einem relativ kleinen code Bereich den ich für den Payload Entpacker halte. Dann führte ich zur Sicherheit noch einen Binärvergleich mit meinen abgefangenen TEMP Dateien durch um sicherzustellen, dass während der Laufzeit nicht evtl. eine Datei manipuliert wurde. Dem war nicht so.  Egal, sicher ist sicher. Eigentlich wollte ich ja nur herausfinden mit welchem Programm die EXE erstellt wurde. Aber wie fast immer ergeben sich bei solchen Analysen ganz gerne andere Richtungen und gar den Sourcecode (in Form der CMD Batch) vorzufinden, damit habe ich nun wirklich nicht gerechnet.

Schön schön, ich weiss aber immer noch nicht, mit was die EXE erstellt wurde. Also mal die Free- und Shareware-Szene nach Tools abgeklappert, die ein Batch und weitere Dateien zu einer EXE zusammenfassen, während der Laufzeit die Dateien entpacken, anschliessend den Batch ausführen und schlussendlich die TEMP Files wieder löschen. Da gab es mehr als ich dachte. Also wieder den Hexeditor bemüht und in der EXE nach Hinweisen auf den Payload Entpacker gesucht. Es gab keinen direkten Hinweis wie z.B. ein Programmname oder so. Wär ja auch zu einfach gewesen. :rolleyes: Aber ich fand Texte die nach Fehlermeldungen aussahen. Na das ist doch was. Nebenbei stellte ich dann fest, das die Payload Dateien 1:1 in der EXE enthalten waren und nicht komprimiert. Das war ein weiterer, ungewöhnlicher Hinweis. Dann alle gefundenen Tools der Reihe nach installiert und eine Volltextsuche darauf mit den Texten der Fehlermeldungen ausgeführt. Nichts. Gibts doch nicht! Okay, nochmal anders: Mit jedem Tool und den vorhandenen Dateien selbst eine EXE erstellt und die jeweils wieder mit dem Hex Editor untersucht. Ja hoppla, was ist das denn? Meine eigene Test EXE die ich mit dem dritten Tool erstellt habe, ist exakt gleich gross wie mein Testobjekt? Das konnte kein Zufall sein. Also auf meine selbst erstellte EXE und die originale EXE einen Binärvergleich ausgeführt und siehe da; es gab sehr grosse Übereinstimmungen. Auch die Fehlermeldungen fand ich 1:1 wieder. Alleine der letzte Punkt zeigte mir schon, dass das gesuchte Tool höchstwahrscheinlich gefunden war. Um das ganze endgültig zu verifizieren, habe ich aus der original EXE noch das Icon extrahiert und in mein Test Projekt eingebunden. Dann noch die Versionsinfos 1:1 übernommen und anschliessend wieder eine EXE erzeugt. Nun gab es laut Binärvergleich noch deutlich mehr Übereinstimmungen und die Unterschiede waren nur noch minimal. Bingo! Das Tool wurde zweifelsfrei gefunden.

Die EXE wurde also mit dem Tool "Bat To Exe Converter" erstellt. Nach einiger Recherche war schnell klar, dass das Tool als sauber gilt und es wird auch von etlichen seriösen Download Portalen wie z.B. Chip Download EU angeboten. Das "deutet" darauf hin, dass die Alarme wirklich allesamt Fehlalarme sind. Schlussendlich mit absoluter Sicherheit kann ich das nicht sagen, aber es schaut zumindest mal so aus.

Ja, das ist auch eine Methode einen freien Nachmittag zu verbringen. Aber sowas ist für mich zu meiner sonstigen Arbeit eine willkommene Abwechslung und fast schon wie Erholung. Zudem hab ich bei dem ganzen so einiges dazugelernt; zuerst bei der Entwicklung meines H2Switch als auch jetzt bei der Analyse des ersten Launchers. Und ausserdem war das Wetter an dem besagten Nachmittag einfach schei....  :P


Bearbeitet von Luke_Filewalker am 27.9.2011, 11:17

--------------
Luke 'GTH' Filewalker
...may the backup be with you - always!
Zitat: "Nicht gesicherte Dateien dürfen als gelöscht betrachtet werden"
Offline
Top of Page Profile Contact Info WEB 
1 Antworten seit 13.2.2011, 00:53 < Älteres Thema | Neueres Thema >

[ bei Antworten benachrichtigen :: per E-Mail senden :: Thema ausdrucken ]


Alle Beiträge auf einer Seite
reply to topic new topic new poll