Downloadlink der DLL: AMSI.zip
Im Packet ist eine 32Bit und eine 64Bit Version der DLL enthalten.
Sie enthält den XProfan X2 Quelltext und ein PureBasic Testprogramm in einer 32Bit und einer 64Bit Version.
Weiterführende Links:
Downloadlink der DLL: AMSI.zip
Im Packet ist eine 32Bit und eine 64Bit Version der DLL enthalten.
Sie enthält den XProfan X2 Quelltext und ein PureBasic Testprogramm in einer 32Bit und einer 64Bit Version.
Weiterführende Links:
Beschreibung der Funktionalität der DLLs
Die amsiscan.dll und die amsiscan64.dll bieten beide die selbe Funktionalität. Die amsiscan64.dll ist für 64Bit Anwendungen gedacht, die amsiscan.dll für 32Bit Anwendungen. Da es sich im Prinzip um den selben Code handelt, wird jetzt in Folge nur noch von einer DLL die Rede sein.
Entwickelt wurde die DLL hauptsächlich dafür, um das unter Windows10 eingeführte Antimalware Scan Interface ansteuern und testen zu können. Desweiteren bietet sie aber auch die Möglichkeit, auf allen Betriebssystemen ab WindowsXP nach Alternate Data Streams suchen zu lassen. Die Ergebnisse werden dabei in einer Art Liste abgespeichert, deren Elemente einzeln abfragbar sind. Die DLL erzeugt aus dieser Liste am Ende des Scans einen formatierten String, der wiederum alle Ergebnisse des Scans enthält (zum Beispiel zum Abspeichern als LOG-Datei).
Längere Scans laufen dabei in einem eigenen Thread ab. Ist ein Scan beendet, wird ein Timer mit einer speziellen ID gesetzt, damit die jeweilige Anwendung, die die DLL nutzt, auf das Scanende reagieren und die Daten der Liste weiter verarbeiten kann.
Das ist mit der DLL möglich:
Die Funktionen der DLL:
Funktionen zum Scannen von Prozessspeicher
Beschreibung:
Diese Funktion sucht in einem Ordner oder optional auch auf allen Laufwerken nach Alternate Data Streams und schickt deren Inhalt, wenn möglich, unter Windows10 an das Antimalware Scan Interface. Die Ergebnisse werden in Listen gespeichert, deren Elemente nacheinander abgefragt werden müssen, wenn der Scan beendet ist. Diese Suche läuft in einem eigenen Thread ab. Ist die Suche beendet, wird ein Timer mit der ID 123321 initialisiert, um darüber die Anwendung (durch die Auswertung von WM_TIMER zum Beispiel) zu informieren. In der Prozedur, die nach dem Empfang der Timermessage aufgerufen wird, muss diesen Timer mittels der API KillTimer umgehend wieder löschen.
Die Funktion hat folgende Parameter:
Rückgabe:
Die Funktion gibt keinen Wert zurück.
Beschreibung:
Diese Funktion sucht in einer Datei nach Alternate Data Streams und schickt deren Inhalt, wenn möglich, unter Windows10 an das Antimalware Scan Interface. Die Ergebnisse werden in Listen gespeichert, deren Elemente nacheinander abgefragt werden müssen, wenn der Scan beendet ist. Diese Suche läuft in einem eigenen Thread ab. Ist die Suche beendet, wird ein Timer mit der ID 123321 initialisiert, um darüber die Anwendung (durch die Auswertung von WM_TIMER zum Beispiel) zu informieren. In der Prozedur, die nach dem Empfang der Timermessage aufgerufen wird, muss diesen Timer mittels der API KillTimer umgehend wieder löschen.
Die Funktion hat folgende Parameter:
Rückgabe:
Die Funktion gibt keinen Wert zurück.
Beschreibung:
Diese Funktion schickt den Inhalt eines Alternate Data Streams unter Windows10 an das Antimalware Scan Interface. Das Ergebnis wird in Listen gespeichert, deren Elemente nacheinander abgefragt werden müssen, wenn die Funktion beendet ist. Diese Funktion läuft in einem eigenen Thread ab. Ist sie beendet, wird ein Timer mit der ID 123321 initialisiert, um darüber die Anwendung (durch die Auswertung von WM_TIMER zum Beispiel) zu informieren. In der Prozedur, die nach dem Empfang der Timermessage aufgerufen wird, muss diesen Timer mittels der API KillTimer umgehend wieder löschen.
Die Funktion hat folgende Parameter:
Rückgabe:
Die Funktion gibt keinen Wert zurück.
Beschreibung:
Diese Funktion schickt den Inhalt eines Alternate Data Streams unter Windows10 an das Antimalware Scan Interface. Das Ergebnis wird in Listen gespeichert, deren Elemente nacheinander abgefragt werden müssen, wenn die Funktion beendet ist. Diese Funktion läuft in dem Thread ab, der sie aufruft.
Die Funktion hat folgende Parameter:
Rückgabe:
Die Funktion gibt 0 zurück, wenn keine Malware erkannt wurde. Sie gibt 1 zurück, wenn Malware erkannt wurde. Sie gibt -1 zurück, wenn ein Fehler auftrat.
Beschreibung:
Diese Funktion liest den Prozessspeicher der laufenden Prozesse aus und schickt Speicherinhalt der Prozesse an das Antimalware Scan Interface. Die Ergebnisse werden in Listen gespeichert, deren Elemente nacheinander abgefragt werden müssen, wenn die Funktion beendet ist. Diese Funktion läuft in einem eigenen Thread ab. Ist sie beendet, wird ein Timer mit der ID 123321 initialisiert, um darüber die Anwendung (durch die Auswertung von WM_TIMER zum Beispiel) zu informieren. In der Prozedur, die nach dem Empfang der Timermessage aufgerufen wird, muss diesen Timer mittels der API KillTimer umgehend wieder löschen.
Die Funktion hat folgende Parameter:
Rückgabe:
Die Funktion hat keinen Rückgabewert.
Beschreibung:
Diese Funktion liest den Prozessspeicher der laufenden Prozesse mit einem bestimmten Prozessnamen aus und schickt Speicherinhalt der Prozesse an das Antimalware Scan Interface. Die Ergebnisse werden in Listen gespeichert, deren Elemente nacheinander abgefragt werden müssen, wenn die Funktion beendet ist. Diese Funktion läuft in einem eigenen Thread ab. Ist sie beendet, wird ein Timer mit der ID 123321 initialisiert, um darüber die Anwendung (durch die Auswertung von WM_TIMER zum Beispiel) zu informieren. In der Prozedur, die nach dem Empfang der Timermessage aufgerufen wird, muss diesen Timer mittels der API KillTimer umgehend wieder löschen.
Die Funktion hat folgende Parameter:
Rückgabe:
Die Funktion hat keinen Rückgabewert.
Beschreibung:
Diese Funktion liest den Prozessspeicher mit der angegebenen Prozess-ID aus und schickt Speicherinhalt des Prozesses an das Antimalware Scan Interface. Die Ergebnisse werden in Listen gespeichert, deren Elemente nacheinander abgefragt werden müssen, wenn die Funktion beendet ist. Diese Funktion läuft in einem eigenen Thread ab. Ist sie beendet, wird ein Timer mit der ID 123321 initialisiert, um darüber die Anwendung (durch die Auswertung von WM_TIMER zum Beispiel) zu informieren. In der Prozedur, die nach dem Empfang der Timermessage aufgerufen wird, muss diesen Timer mittels der API KillTimer umgehend wieder löschen.
Die Funktion hat folgende Parameter:
Rückgabe:
Die Funktion hat keinen Rückgabewert.
Beschreibung:
Diese Funktion schickt den angegebenen Speicherbereich des aktuellen Prozesses zur Überprüfung an das Antimalware Scan Interface. Das Ergebnis wird in Listen gespeichert, deren Elemente nacheinander abgefragt werden müssen, wenn die Funktion beendet ist. Diese Funktion läuft in einem eigenen Thread ab. Ist sie beendet, wird ein Timer mit der ID 123321 initialisiert, um darüber die Anwendung (durch die Auswertung von WM_TIMER zum Beispiel) zu informieren. In der Prozedur, die nach dem Empfang der Timermessage aufgerufen wird, muss diesen Timer mittels der API KillTimer umgehend wieder löschen.
Die Funktion hat folgende Parameter:
Rückgabe:
Die Funktion hat keinen Rückgabewert.
Beschreibung:
Diese Funktion schickt den angegebenen Speicherbereich des aktuellen Prozesses zur Überprüfung an das Antimalware Scan Interface. Das Ergebnis wird in Listen gespeichert, deren Elemente nacheinander abgefragt werden müssen, wenn die Funktion beendet ist. Diese Funktion läuft in dem Thread ab, der sie aufruft.
Die Funktion hat folgende Parameter:
Rückgabe:
Die Funktion gibt 0 zurück, wenn keine Malware erkannt wurde. Sie gibt 1 zurück, wenn Malware erkannt wurde. Sie gibt -1 zurück, wenn ein Fehler auftrat.
Beschreibung:
Diese Funktion liefert während eines längeren Scans, der in einem eigenen Thread ausgeführt wird, Infos zum aktuell durchsuchten Objekt zurück. Diese Funktion dient zum Beispiel zum Befüllen einer Statusbar während des Scans.
Die Funktion hat folgende Parameter:
Diese Funktion hat keine Parameter.
Rückgabe:
Diese Funktion gibt die Adresse eines Strings zurück, der das zuletzt durchsuchte Objekt enthält.
Beschreibung:
Diese Funktion setzt die Listen der Scanergebnisse auf den ersten Eintrag zurück. Diese Funktion sollte vor dem Auslesen der Scanergebnisse angewendet werden.
Die Funktion hat folgende Parameter:
Diese Funktion hat keine Parameter.
Rückgabe:
Diese Funktion hat keinen Rückgabewert.
Beschreibung:
Die Funktion liest den aktuellen Eintrag aus der angegebenen Ergebnisliste des Scans aus und schiebt den Zeiger der Liste auf den nächsten Eintrag. Der erste Eintrag dieser Listen ist immer eine Art Überschrift für die jeweilige Rubrik, für die die Liste steht. Mit dem ersten Eintrag kann zum Beispiel der Header eines Listviews für die einzelnen Spalten beschrieben werden.
Die Funktion hat folgende Parameter:
Rückgabe:Die Funktion liefert die Adresse eines Strings zurück, der den aktuellen Eintrag in der jeweiligen Rubrik enthält.
Beschreibung:
Die Funktion liefert die Anzahl an Einträgen in den mit GetScanlistEntry auszulesenden Listen mit den Scanergebnissen..
Die Funktion hat folgende Parameter:
Diese Funktion hat keine Parameter.
Rückgabe:Die Funktion liefert die Anzahl an Einträgen in den mit GetScanlistEntry auszulesenden Listen mit den Scanergebnissen zurück.
Beschreibung:
Mit dieser Funktion kann man nach einem Scan überprüfen, ob vom AMSI im letzten Scan Malware erkannt wurde.
Die Funktion hat folgende Parameter:
Diese Funktion hat keine Parameter.
Rückgabe:
Beschreibung:
Die Funktion liefert einen formatierten Text mit den Scanergebnissen zurück.
Die Funktion hat folgende Parameter:
Diese Funktion hat keine Parameter.
Rückgabe:Die Funktion liefert die Adresse eines Strings zurück, die in formatierter Art die Scanergebnisse des letzten Scans enthalten.
Beschreibung:
Die Funktion liefert die Länge des mit GetScanfile zu ermittelnden Textes mit den Scanergebnissen zurück.
Die Funktion hat folgende Parameter:
Diese Funktion hat keine Parameter.
Rückgabe:Die Funktion liefert die Länge des mit GetScanfile zu ermittelnden Textes mit den Scanergebnissen zurück.
Beschreibung:
Mit dieser Funktion kann man nach einem Scan überprüfen, ob das Antimalware Scan Interface beim letzten Scan verfügbar war.
Die Funktion hat folgende Parameter:
Diese Funktion hat keine Parameter.
Rückgabe:
Beschreibung:
Diese Funktion bricht einen gestarteten Scan ab, wenn er in einem eigenen Thread läuft.
Die Funktion hat folgende Parameter:
Rückgabe:
Diese Funktion hat keinen Rückgabewert.
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!