Trojaner-Board

Trojaner-Board (https://www.trojaner-board.de/)
-   Archiv (https://www.trojaner-board.de/archiv/)
-   -   Secure Banking - Online Banking auf der sicheren Seite! (https://www.trojaner-board.de/109844-secure-banking-online-banking-sicheren-seite.html)

SecureBanking 20.01.2014 21:46

Nein du musst nichts updaten, nur Secure Banking in den Ausnahmen eintragen, damit es sich mit der Datenbank verbinden kann.

Dazu gehst du in die Antivirus-Einstellungen, dann auf den Tab "Ausschlüsse", setzt den Regler bei "Ausschlüsse für Dateien" auf ON, klickst dann auf Ausgeschlossene Prozesse - Hinzufügen - Navigierst in das Installationsverzeichnis von Secure Banking (Standardmäßig: "C://programme/secure banking software/secure banking") und fügst die Datei sbservice.exe und vorsichtshalber auch SecureBanking.exe hinzu.

Dann müsste es laufen.

Microwave 23.01.2014 13:28

Hi SecureBanking,

Interessanter Ansatz, Bankingtrojaner zu entdecken!
Habe mir kurz das Funktionsprinzip deiner Software begutachtet und versucht, typische Situationen nachzustellen:
Dazu ließ ich die 32Bit-Version eines 64Bit-Userland-Rootkits laufen.

Zuerst war da das Installieren und Starten von SecureBanking. Trotz des Ring3-Rootkit-Guards bemängelte die Software in keinster Weise, dass sie gerade schon beim Start vom Rootkit gehookt wurde (die versteckenden Funktionen "ZwEnumerateValueKey", "ZwQueryValueKey", "NtEnumerateKey", "NtQueryDirectoryFile" und "ZwQuerySystemInformation" wurden verändert, DLL-Injektion über AppInit-DLLs).

Danach wurden Firefox21 (ja ich weiß, giga out-of-date) und Chrome32 abwechslungsweise gestartet, und jedes Mal erschien die Meldung, dass der Browser sicher sei.
Die Rootkit-DLL war aber auch in Chrome und Firefox geladen worden (just als sie gestartet wurden) und bog munter die obigen fünf Funktionen auf sich selbst um.

Ich bin dann auf die Idee gekommen, dass du nicht jede Schnittstelle überwachst, sondern nur die, die zum Übermitteln eines Formulars (oder einer Anfrage, etc.) zuständig sind.
Also habe ich diese Funktionen herausgesucht und mittels CheatEngine 6.2 pseudoverändert, nachdem ich sichergestellt hatte, dass die Funktionen auch wirklich aufgerufen wurden.
Das heißt, dass nach der "Code-Injection" im Firefox-Prozess ein Sprung auf testweisen von mir geschriebenen Code (z.B. push eax, add eax 3, pop eax) durchgeführt wurde, und dann erst wieder in die eigentliche Funktion gesprungen wurde (eben so ein Detour-Patch halt).

Obwohl mir das sogenannte Hookshark64 (geht auch für 32bit) anzeigte, dass die Hooks saßen, meldete dein SecureBanking seltsamerweise nach wie vor, dass der Browser sicher sei.
Jedoch hätte das Codeschnipsel in Klammern auch etwas "Sinnvolles" tun können, wie z.B. eben Daten verändern oder abgreifen, wo du ja drauf abzielst.

Als ich das selbe Spiel (manuelles Einfügen von Detour-Patches via CheatEngine6.2) mit Chrome durchführte, meldete sich der SecureBanking-Prozess wie erwartet zu Wort, dass eine (unbekannte) Malware gefunden wurde und der Browser gesichert werden konnte.


Fazit: 1.) Ist es geplant, dass dein Anti-Rootkit-Schutz nicht auf die fünf Nt- und Zw-Funktionen reagiert?

2.) Weshalb werden offensichtliche Schnittstellen-Hooks (send, WSASend usw.) nicht erkannt, wenn ich sie im Firefox anbringe, im Chrome allerdings schon?
Liegt das am veralteten Firefox?

3.) Ich habe auch versucht, unsinnigen Code direkt in die Watchdog-Funktion der in die sbservice.exe geladenen SecureBanking.dll zu schreiben. Teilweise passierte nichts, andere Male stürzte der Prozess ab. Was jetzt hier "unsinnig" war, hätte auch gezielt schlimme Dinge anstellen können. Weshalb hat SecureBanking diese offensichtlichen Veränderungen der wichtigen Watchdog-Funktion nicht bemängelt/verhindert?

4.) Über ZwQuerySystemInformation-Hooks in sbservice.exe könnte ich ja theoretisch den Prozess "chrome.exe" verstecken, der SecureBanking wüsste dann nicht mehr, dass dieser Browser läuft?


Trotzdem sehr vielversprechend das Ganze, freue mich schon auf Version 2.0!
Das Prinzip, alle wichtigen Schnittstellen im Browser zu überwachen, könnte man auch auf die gesamte Win32- /NTAPI anwenden (CreateFile, NtQueryDirectoryInformation, ..., NtLoadDriver).
Wäre das denn schwierig zum Bauen/erweitern?


Grüße - Microwave

Lehmie 23.01.2014 16:08

Hallo microwave,

Zitat:

2.) Weshalb werden offensichtliche Schnittstellen-Hooks (send, WSASend usw.) nicht erkannt, wenn ich sie im Firefox anbringe, im Chrome allerdings schon?
Liegt das am veralteten Firefox?
Ich habe das mit vielen Versionen von IE / FF und Chrome probiert, aber nur bei Chrome meckert Secure. Anders war das bei der Version 2.0, da hat Secure wirklich bei allen Browsern gemeckert.

Alöle
Lehmie

SecureBanking 23.01.2014 16:39

Hallo Microwave,

vielen Dank für deinen ausführlichen Bericht, freut mich immer wieder sehr. Vor allem bekommt man dann auch neue Denkansätze usw.

Zitat:

Zitat von Microwave (Beitrag 1237549)
Fazit: 1.) Ist es geplant, dass dein Anti-Rootkit-Schutz nicht auf die fünf Nt- und Zw-Funktionen reagiert?

Diese Version von Secure Banking prüft lediglich die Explorer und Taskmanager Prozesse auf Hooks (Anti-Rootkit). (Es prüft auch nicht sich selber auf Hooks :P)
Der Grundgedanke dahinter war, ein Ring3-Rootkit hooked minimal entweder nur den Explorer um die Files zu verstecken und den Taskmanager um den Prozess zu verstecken.
Deshalb prüfte ich hier nur in diesen zwei Prozessen auf gewisse Hooks. Waren glaub ich FindNextFileW/A und NtQuerySystemInformation.
Rootkits die dann alle Prozesse hooken würden somit ja auch erkannt werden.

Der Anti-Rootkit Guard war immer ein bisschen ein Problemkind, da viele Anti-Cheat Programme den Taskmanager hookten um eben versteckte DLL's bzw. Prozesse zu finden (Cheats) und somit schlug hier Secure Banking immer an.. kam dann zu den Schluss das ich ihn rausnehme. Hatte nämlich zu wenig Zeit hier auch noch eine Whitelist mit Signaturen zu erstellen.

Zitat:

Zitat von Microwave (Beitrag 1237549)
2.) Weshalb werden offensichtliche Schnittstellen-Hooks (send, WSASend usw.) nicht erkannt, wenn ich sie im Firefox anbringe, im Chrome allerdings schon?
Liegt das am veralteten Firefox?

Das liegt daran, dass diese Version von Secure Banking in FF nur PR_Write/PR_Read und PR_OpenTCPSocket auf Hooks prüft.
In Internet Explorer die wichtigsten Funktionen in der wininet.dll (HttpSendRequestA/W usw.)
und in Chrome nur WSASend/recv/send in der ws2_32.dll.

Wenn du also bei FF WSASend o.Ä. hookst, erkennt es diese Version nicht, bei Chrome jedoch schon. (Da es eigentlich auch nicht relevant ist, da die Formulare bzw. Injections bei FF über PR_Write und PR_Read abgefangen/manipuliert werden).

Wie auch immer, bei der neuen Version ist das nicht mehr der Fall. Falls eine dieser DLLs im Prozess geladen ist, wird sie auch gescannt.

Zitat:

Zitat von Microwave (Beitrag 1237549)
3.) Ich habe auch versucht, unsinnigen Code direkt in die Watchdog-Funktion der in die sbservice.exe geladenen SecureBanking.dll zu schreiben. Teilweise passierte nichts, andere Male stürzte der Prozess ab. Was jetzt hier "unsinnig" war, hätte auch gezielt schlimme Dinge anstellen können. Weshalb hat SecureBanking diese offensichtlichen Veränderungen der wichtigen Watchdog-Funktion nicht bemängelt/verhindert?

Darüber hab ich mir auch schon oft den Kopf zerbrochen. Da das ganze Programm im Ring3 arbeitet ist es ziemlich schwer sowas zu verhindern.
Daher wählte ich den relativ simplen Ansatz, dass der User eh sieht, wenn er den Browser öffnet ob Secure Banking läuft oder nicht (durch das Pop-Up).
Aber im Prinzip hast du recht, Secure Banking kann relativ einfach abgeschossen werden.

Zitat:

Zitat von Microwave (Beitrag 1237549)
4.) Über ZwQuerySystemInformation-Hooks in sbservice.exe könnte ich ja theoretisch den Prozess "chrome.exe" verstecken, der SecureBanking wüsste dann nicht mehr, dass dieser Browser läuft?

Richtig! Das ist natürlich böse. :nono:
Aber hier gilt das selbe wie für Punkt 3. Da sollte man aber als User merken, dass das Popup nicht mehr kommt und der Browser nicht gescannt wurde.
Den könnte man aber entgegenwirken, indem man den eigenen Prozess auf Hooks prüft.

Zitat:

Zitat von Microwave (Beitrag 1237549)
Trotzdem sehr vielversprechend das Ganze, freue mich schon auf Version 2.0!
Das Prinzip, alle wichtigen Schnittstellen im Browser zu überwachen, könnte man auch auf die gesamte Win32- /NTAPI anwenden (CreateFile, NtQueryDirectoryInformation, ..., NtLoadDriver).
Wäre das denn schwierig zum Bauen/erweitern?

Da die "alte" (noch ist sie aktuell :P) Version komplett in Assembler programmiert ist, waren solche Erweiterungen schon recht mühsam (keine Objektorientierung usw.) und natürlich auch Fehleranfällig.

Version 2.0 hab ich jetzt in C++ geschrieben und dort wären solche Erweiterungen nicht so aufwendig.
Das Problem an der ganzen Sache ist, desto mehr (unwichtige) Schnittstellen ich auf Hooks prüfe, desto höher wird die Wahrscheinlichkeit auf False Positives.
Also die Liste mit wichtigen Funktionen zu erweitern macht sicherlich Sinn, aber die gesamte Lib zu scannen eher nicht.

Da der Anti-Rootkit-Guard ja rausfliegt, fallen diese APIs natürlich weg. (CreateFile, NtQuery.. usw.)


Wenn du willst schicke ich dir gerne die aktuelle Beta von Secure Banking 2.0 zu. Würde mich sehr über eine kleine Analyse freuen.
Arbeite ja nur alleine an diesem Projekt und somit bin ich für jede Unterstützung sehr dankbar.
Eine zweite Meinung / Ansicht / Überlegung ist immer sehr viel wert, da man selber ja immer nur in seinen "eigenen vier Wänden" denkt. :zunge:

Microwave 23.01.2014 18:54

OK, danke für die schnelle Antwort,
Das beantwortet meine Fragen schon besser.

Ich wäre schon an einem Job als Betatester interessiert, es heißt glaube ich, du würdest das Programm dann per EMail schicken.
Soll ich dann zusätzlich zu grundlegenden Funktionstests noch meine Versuche von gestern wiederholen?

Schreib mir doch, was für dich interessant wäre, zu wissen (welche Aktionen ich durchführen soll, etc.)


Grüße - Microwave

SecureBanking 23.01.2014 19:00

Hab dir eine PN mit dem Download Link geschickt.

Ja kannst damit anstellen was du willst. :) Wie gesagt, dir fallen vielleicht ganz andere Sachen ein, was man testen könnte, als mir.

Jap, ein Anfang wäre mal diesen Test zu wiederholen, aber wie gesagt, auf Rootkits wird nicht mehr geprüft.

Danke!

P.S.: Richte gerade ein kleines Forum ein. Ist vielleicht besser als immer hier alles wirr-warr rein zu schreiben.

Microwave 23.01.2014 21:37

Bin dabei und habe die ersten Punkte notiert.
Wird sich aber etwas ziehen, denn ich muss mir erst noch überlegen, welche Hooks wohl sinnvoll sind, oder was ich sonst noch ausprobieren könnte. ;)

Wann willst du Ergebnisse?


Grüße - Microwave

mort 23.01.2014 21:58

Ist eine 64 bit Version schon geplant oder existiert schon eine 64 bit Version der Beta?

SecureBanking 23.01.2014 22:53

Zitat:

Zitat von Microwave (Beitrag 1237897)
Bin dabei und habe die ersten Punkte notiert.

Super! :)

Zitat:

Zitat von Microwave (Beitrag 1237897)
Wann willst du Ergebnisse?

So wie du Zeit und Lust hast, basiert ja alles auf freiwilliger Basis. ;)
Danke!

@mort: Geplant ist eine, aber wann die kommt kann ich noch nicht sagen. Muss mal schauen dass alles andere gut läuft, und dann kommt x64 Support. ;)

mort 23.01.2014 22:56

Das Problem ist halt, dass Internet Explorer auf 64 bit Systemen nicht wirklich geschützt werden können.

SecureBanking 23.01.2014 23:50

Ja ich weiß, aber vorher muss alles mal auf 32-Bit rund laufen. ;)

So hab mal schnell ein kleines Forum eingerichtet, ist mehr für Beta Tests usw. gedacht. Denn das passt hier nicht so richtig rein... dass es hier nicht so voll wird.

deeprybka 25.01.2014 22:12

Safe Browsing

Ist das normal? ;)

SecureBanking 26.01.2014 22:22

Nein das sicher nicht. :P
Werde mal schauen was sich hier machen lässt.

SecureBanking 19.02.2014 02:22

Hey Leute,

für all die, die Probleme mit Bitdefender / McAffee und Secure Banking haben, können sich hier Secure Banking v2.0.0 b7 herunterladen.
Habe eine neue Technologie eingebaut, die solche Falschmeldungen erkennt. :party:

moe_zart 12.03.2014 16:32

Interessante Projekt wünsche dir viel Erfolg!


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:58 Uhr.

Copyright ©2000-2025, Trojaner-Board


Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131