Falsch-positive Virus-Meldungen unter Purebasic

Pascal, Basic und andere nicht aufgelistete
Antworten
egon
Beiträge: 1
Registriert: So Apr 19, 2015 6:49 am

Falsch-positive Virus-Meldungen unter Purebasic

Beitrag von egon » So Apr 19, 2015 7:07 am

Hallo,

ich bin ein Gelegenheitsprogrammierer unter Purebasic und habe das Problem mit falsch-positiven Meldungen unterschiedlicher Virenscanner.
Bei fast jedem (kleinen) Programm welches ich schreibe und auf meiner Homepage anderen Usern zur Verfügung stelle, bekomme ich eine Email, weil sich irgendein Virenscanner mit Warnmeldungen gemeldet hat. Das ist mir ziemlich unangenehm.
Gibt es dieses Problem auch unter anderen Programmiersprachen? Es kann doch nicht sein, dass ich jedes Programm bei irgendeinem Virenscanner-Programm-Hersteller anmelden muss, damit es keine Warnmeldungen gibt.

Ich bin mittlerweile soweit, dass ich mich nach einer anderen Programmiersprache umschaue.
vor Jahren habe ich es mal mit C/C++ und bin damit nicht so glücklich geworden. Ich bin eben ein Gelegenheitsprogrammierer, der auch mal 6 Monate lang kein neues Programm schreibt.
Meine Programme habe immer etwas mit der Auswertung von Messwerten (Com-Port) oder kleineren Rechnung und deren graphischen Darstellung zu tun.
Eigentlich ist Purebasic für mich ideal, wenn nur nicht diese lästigen und unangenehmen falschen Virus-Meldungen wären...

Was würdet ihr mir raten?

P.S. Eure Seite "https://www.proggen.org/doku.php?id=start:language" habe ich mir durchgelesen.

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3123
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Falsch-positive Virus-Meldungen unter Purebasic

Beitrag von cloidnerux » So Apr 19, 2015 2:27 pm

ich bin ein Gelegenheitsprogrammierer unter Purebasic und habe das Problem mit falsch-positiven Meldungen unterschiedlicher Virenscanner.
Das passiert in C/C++ meistens dann, wenn du unerlaubte Speicherzugriffe durchführst, was findige Programmierer auch zu schadhaften Zwecken nutzen können.

Wenn du C/C++ nicht nutzen möchtest, schaue dir mal C# oder Python an.
C# ist sehr mächtig, kann (unter Windows) direkt Com-Ports, GUIs sind nicht so schwer und mit Visual Studio existiert eines der besten Entwicklugnsumgebungen überhaupt.
Python ist eine Scriptsrache die unheimlich viel kann, läuft auf allen bekannteren Systemen und ist mitunter sehr einsteiger freundlich.
Redundanz macht wiederholen unnötig.
quod erat expectandum

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Falsch-positive Virus-Meldungen unter Purebasic

Beitrag von Xin » So Apr 19, 2015 6:57 pm

Moin Egon
egon hat geschrieben:Gibt es dieses Problem auch unter anderen Programmiersprachen? Es kann doch nicht sein, dass ich jedes Programm bei irgendeinem Virenscanner-Programm-Hersteller anmelden muss, damit es keine Warnmeldungen gibt.
Ein Kollege von mir hat das schonmal. Der Hinweis von Cloidnerux ist da interessant. :-D

Das Problem ist also nicht direkt von der Programmiersprache abhängig.
egon hat geschrieben:vor Jahren habe ich es mal mit C/C++ und bin damit nicht so glücklich geworden. Ich bin eben ein Gelegenheitsprogrammierer, der auch mal 6 Monate lang kein neues Programm schreibt.
Ein Freund von mir hat früher mit Purebasic programmiert und daher kenne ich die Syntax auch ein wenig. PureBasic ist weniger ein Basic-Dialekt, als ein C-Dialekt.

Die eigentliche Umstellung der Sprache wäre also vermutlich überschaubar, Du müsstest Dich halt damit beschäftigen, wie welche Libraries Du noch verwenden müsstest.
egon hat geschrieben:Eigentlich ist Purebasic für mich ideal, wenn nur nicht diese lästigen und unangenehmen falschen Virus-Meldungen wären...
Wenn cloidnerux recht hat, könntest Dein Programm unter Linux kompilieren und da PureBasic mit GCC übersetzt wird, dürftest Du das Programm mit valgrind testen können.

Wie das geht, weiß ich allerdings nicht. Du könntest allerdings danach googlen, vielleicht geht das ja.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

mfro
Beiträge: 346
Registriert: Mi Jan 16, 2013 4:58 pm

Re: Falsch-positive Virus-Meldungen unter Purebasic

Beitrag von mfro » So Apr 19, 2015 8:34 pm

Die Virenscanner reagieren üblicherweise nicht auf irgendeine mehr oder minder seltsame Art der Programmierung (dazu müssten sie eine Codepath-Analyse durchführen und wie das in der kurzen Zeit funktionieren soll, die der Anwender dafür zu warten bereit ist, ist noch nicht erfunden), sondern auf bestimmte Patterns (Codefolgen) im Binärfile.

Die "false positives" rühren m.E. wahrscheinlich nicht von irgendeiner "unsauberen Programmierung" her, sondern höchstwahrscheinlich davon, daß mehr oder weniger zufällig im Code ein Binärpattern enthalten ist, das mit dem eines bekannten Schadprogramms, das der Virenscanner in seinem Patternfile hat, übereinstimmt.
It's as simple as that. And remember, Beethoven wrote his first symphony in C.

canlot
Beiträge: 393
Registriert: Di Mär 08, 2011 11:01 pm
Wohnort: NRW

Re: Falsch-positive Virus-Meldungen unter Purebasic

Beitrag von canlot » Mo Apr 20, 2015 8:37 am

Ich würde auch C# vorschlagen. In C# ist es sehr einfach eine GUI zu erstellen und andere Aufgabe lassen sich dank des mächtigen Net Framework schnell und leicht erledigen, es hat zwar einige Macken aber damit kommt man später klar.
mfro hat geschrieben:Die "false positives" rühren m.E. wahrscheinlich nicht von irgendeiner "unsauberen Programmierung" her, sondern höchstwahrscheinlich davon, daß mehr oder weniger zufällig im Code ein Binärpattern enthalten ist, das mit dem eines bekannten Schadprogramms, das der Virenscanner in seinem Patternfile hat, übereinstimmt.
Interessant, d.h. also jedes Programm das diese Pattern enthält, wird Alarm schlagen.
Was ist wenn das Programm gepackt ist oder noch besser bei jeder Ausführung seinen mnemo code ändert mit ein paar Sprungbefehlen und setzen einiger Flags/Register?
Unwissenheit ist ein Segen

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Falsch-positive Virus-Meldungen unter Purebasic

Beitrag von Xin » Mo Apr 20, 2015 10:16 am

canlot hat geschrieben:Ich würde auch C# vorschlagen. In C# ist es sehr einfach eine GUI zu erstellen und andere Aufgabe lassen sich dank des mächtigen Net Framework schnell und leicht erledigen, es hat zwar einige Macken aber damit kommt man später klar.
Den Tipp unterstütze ich. C# ist auch ein vereinfachtes C++, aber doch recht mächtig. Es ist (zumindest mir) auch angenehmer als Java.
Für professionelle Programmierung würde ich den Fokus allerdings auf C++ legen, aber das ist hier ja nicht gefragt.
canlot hat geschrieben:
mfro hat geschrieben:Die "false positives" rühren m.E. wahrscheinlich nicht von irgendeiner "unsauberen Programmierung" her, sondern höchstwahrscheinlich davon, daß mehr oder weniger zufällig im Code ein Binärpattern enthalten ist, das mit dem eines bekannten Schadprogramms, das der Virenscanner in seinem Patternfile hat, übereinstimmt.
Interessant, d.h. also jedes Programm das diese Pattern enthält, wird Alarm schlagen.
Was ist wenn das Programm gepackt ist oder noch besser bei jeder Ausführung seinen mnemo code ändert mit ein paar Sprungbefehlen und setzen einiger Flags/Register?
Das sollte eine Kombination aus beidem sein. Virenscanner suchen nach bekannten (Binär-)Mustern, die die Programme aufweisen. Dazu kann auch ein Programmierfehler gehören, der in einem Virus eben kein Fehler, sondern beabsichtigt ist, um eine Schwachstelle auszunutzen.
Wenn also ein fehlerhafter Zugriff programmiert wird, der potentiell geeignet wäre eine bekannte Schwachstelle anzusprechen, könnte das Programm ein dem Virenkiller nicht bekannter Virus sein und er schlägt vorsichtshalber mal Alarm.

Gibt es noch selbstmodifizierende Programme? Heute sind die Speicherbänke doch geschützt. Was wohl weiterhin geht ist Programme in den Heap oder Stack zu kodieren und anschließend dorthin zu springen. Da wird ein Virenkiller aber kaum eine Chance haben.
Das Ziel ist schlussendlich ja auch nicht, den Virenkiller zu überlisten, sondern das Programm so zu gestalten, dass der Virenkiller es nicht verdächtigt.

Man könnte durch aus auskommentieren versuchen die Stelle zu finden, deren Übersetzung den Virenkiller anschlagen lässt.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Antworten