Gamme DC et Antivirus

Couvre tous les domaines de l'émulation logicielle ou de la virtualisation ainsi que les discussions sur les divers outils associés.

Modérateurs : Papy.G, fneck, Carl

Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Gamme DC et Antivirus

Message par Daniel »

Changer le type de char en wchar_t pour les roms est un travail considérable qui nécessiterait des semaines de travail et déstabiliserait le programme pour très longtemps, pour un résultat hypothétique. Il est hors de question de faire ce type d'opération.
Daniel
L'obstacle augmente mon ardeur.
kirion
Messages : 346
Inscription : 22 sept. 2022 03:29

Re: Gamme DC et Antivirus

Message par kirion »

Oui si tu dois tout réorganiser pour que DCMOTO puisse fonctionner en wide char, je veux bien croire que ca peut prendre du temps.

Mais ce n'était pas ce que je demandais. Je vais donc prendre un exemple avec DCTO8.

Fichiers to8basic.h et to8moniteur.h


Est il possible de renommer
char to8dbasic[] en wchar_t to8dbasic[]
et char to8dmoniteur[] en wchar_t to8dmoniteur[]

sans rien changer d'autre et de compiler. La compilation fonctionnera t'elle avec des warning ou va t'elle bloquer ?

je sais que le programme ne pourra pas s'executer sans planter mais ce n'est pas le but.
Le but serait juste d'envoyer dcto8.exe compilé sur virustotal.com pour voir s'il y a encore des alertes ou plus aucune.

Le but serait de voir si en réorganisant les rom, les antivirus ne voient plus aucun danger ou non.
Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Gamme DC et Antivirus

Message par Daniel »

C'est trop long à faire (plusieurs centaines de roms dans dcmoto) et inutile, car même si ça trompe les antivirus je ne réécrirai pas tout l'émulateur pour passer en wchar_t. J'ai essayé de faire la transformation sur une rom, la compilation donne quatre warnings mais génère quand même un exécutable.

Il est beaucoup plus simple de demander à l'utilisateur d'ajouter une exception pour dcmoto dans son antivirus.
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7988
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Gamme DC et Antivirus

Message par __sam__ »

kirion a écrit : 10 mars 2024 20:36 Alors j'ai effectué différents tests, effectivement le téléchargement se passe sans problème mais l'antivirus se déclenche lors de la création de l'exe.
Et changer d'anti-virus,ca ne te dis pas ?
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Gamme DC et Antivirus

Message par Daniel »

Oui, car quand on observe les résultats dans virustotal, les bons antivirus reconnus par la communauté ne produisent pas de faux-positifs avec dcmoto. Ce sont des antivirus inconnus ou gratuits qui les déclenchent.

Dans cette histoire, je le rappelle, il ne faut pas se tromper de coupable. L'émulateur dcmoto n'y est pour rien. Les responsables sont les mauvais antivirus et les utilisateurs qui les installent. C'est à eux d'en supporter les conséquences, pas à moi.
Daniel
L'obstacle augmente mon ardeur.
kirion
Messages : 346
Inscription : 22 sept. 2022 03:29

Re: Gamme DC et Antivirus

Message par kirion »

Sam je ne parle pas que pour moi, je pense à tous les gens qui peuvent tomber sur Dcmoto ou autres DC par hasard et qui ne le lanceront jamais à cause de ça.
Notre génération s'éteint, la génération prochaine ne va sûrement pas désactiver son antivirus pour vérifier si c'est quand même un virus ou non.

Je viens de trouver une solution, je peux compiler et l'émulateur se lance (je suis sous linux). Il n'y a pratiquement aucune modification à faire. Le test est fait pour DCTO8D.

Que pensez vous de ma solution ?

Il n'y a absolument rien à changer dans l'émulateur DC, on ajoute seulement quelques lignes. Les ROM sont en wide char (16 bits) mais au lancement du programme, il y a recopie des ROM wide char en char (8 bits). Ainsi les antivirus sont trompés car chaque octet de la ROM est séparé par des 00 tant qu'elle est en wide char et pour l'antivirus ce n'est pas du code exécutable et il ne trouvera aucune signature virale dedans.

Mais comme au lancement de l'émulateur ces ROM wide char (16 bits) sont recopiées en char (8 bits), il n'y a rien à modifier dans le reste de l'émulateur qui trouve ses ROM en 8 bits comme à son habitude.

Fichier to8dmoniteur.h :

Code : Tout sélectionner

#include <stddef.h>
char to8dmoniteur[16384];
wchar_t  Wto8dmoniteur[]={
0x4d,0x54,0x44,0x3a,0x16,0x00,0x6f,0x16,0x00,0x1b,0x16,0x04,0xa6,0x17,0x0c,0xa8,
Fichier to8dbasic.h:

Code : Tout sélectionner

#include <stddef.h>
char to8dbasic[65536];
wchar_t Wto8dbasic[]={
0x20,0x42,0x41,0x53,0x49,0x43,0x20,0x35,0x31,0x32,0x20,0x4d,0x49,0x43,0x52,0x4f,
Fichier dcto8demulation.c:

Code : Tout sélectionner

void Initprog()
{
 int i;
   
 for (i=0;i<16384;i++) to8dmoniteur[i]=Wto8dmoniteur[i];
 for (i=0;i<65536;i++) to8dbasic[i]=Wto8dbasic[i];
 
 void Reset6809();
Dernière modification par kirion le 10 mars 2024 22:56, modifié 6 fois.
Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Gamme DC et Antivirus

Message par Daniel »

C'est très bien comme ça. Les utilisateurs ordinaires pourront utiliser dcto8d et dcmoto restera réservé à l'élite :lol:
Je considère que ce sujet est clos, mais vous pouvez continuer sans moi.
Daniel
L'obstacle augmente mon ardeur.
kirion
Messages : 346
Inscription : 22 sept. 2022 03:29

Re: Gamme DC et Antivirus

Message par kirion »

C'est très bien comme ça. Les utilisateurs ordinaires pourront utiliser dcto8d et dcmoto restera réservé à l'élite :lol:
Je considère que ce sujet est clos, mais vous pouvez continuer sans moi.

Tu abuses quand même Daniel. Quand j'émets des solutions, tu aimes bien me montrer qu'elles ne fonctionnent pas.
Et quand je trouve une solution qui fonctionne réellement et qui réglerait le problème des antivirus de façon définitive sans devoir utiliser des fichiers ".bat" qui retransforment l'émulateur en .exe, tu bottes en touche en disant "je ne change rien, ça restera élitiste".

Ca m'a pris 5 minutes montre en main à faire fonctionner DCTO8 avec ma solution.

Même si c'est un peu long pour DCMOTO qui contient plusieurs centaines de ROM tu pourrais faire la modif sur Dcalice, Dctop9p, DCto8, Dcexcel ... tous les émulateurs qui n'ont que quelques roms.

Dans un autre post, tu m'as dit "montre moi une solution qui fonctionne et je l'utiliserai". Finalement c'était du bidon, tu restes toujours sur tes positions dans tous les cas...

Tu étais prêt à découper ton fichier .exe en deux avec une fausse marque de fin pour que les antivirus ne scannent pas au-delà.
Je propose une solution toute simple : le wide char et je le mets en oeuvre sans devoir rien changer au programme, tout simplement en recopiant les ROM en wide char en char au lancement, ce qui trompe à coup sûr les antivirus et là hop tu disparais sans même confirmer que ma solution fonctionne alors que tu traines ce problème d'antivirus, depuis, comme tu l'as dit toi-même, 20 ans !
__sam__
Messages : 7988
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Gamme DC et Antivirus

Message par __sam__ »

kirion a écrit : 10 mars 2024 22:11 Sam je ne parle pas que pour moi, je pense à tous les gens qui peuvent tomber sur Dcmoto ou autres DC par hasard et qui ne le lanceront jamais à cause de ça.
Ca ne doit pas faire grand monde au total. Et ces gens là on les connait: ils ne lisent pas les docs. Du coup il ne vont pas comprendre qu'un jeu MO5 ne tourne pas sur TO7, ni que le TO7 ne peut pas démarrer un jeu si on ne lui a pas mis la cartouche basic, ni qu'un jeu TO7 peut ne pas tourner sur TO8, surtout si on a lancé le basic2 dans lequel le fameux RUN" ne lance aucune cassette, etc etc.

Les thomsons sont des machines complexes bien plus compliquées à apprendre que des consoles de jeu ou configurer son anti-virus.
Il n'y a absolument rien à changer dans l'émulateur DC, on ajoute seulement quelques lignes. Les ROM sont en wide char (16 bits) mais au lancement du programme, il y a recopie des ROM wide char en char (8 bits). Ainsi les antivirus sont trompés car chaque octet de la ROM est séparé par des 00 tant qu'elle est en wide char et pour l'antivirus ce n'est pas du code exécutable et il ne trouvera aucune signature virale dedans.
Ou comment doubler l'occupation mémoire pour pas grand chose, car une fois compressée avec UPX, les zéros bien réguliers disparaitrons et l'exe aura a nouveau plein d'occasions de faire grogner un anti-virus mal foutu.

Fondamentalement avec les wide-chars tu réduis artificiellement l'entropie du fichier (car l'exe est plus régulier, plus prédictible). Il aura effectivement moins de chance de trouver une signature dedans. Mais quand il est recompressé, son l'entropie remonte à celle de la version compressée sans wide-chars et les possibilités de hits augmentent.

Au final, je ne suis pas convaincu que l'approche wide-char apporte une vraie solution. Il faudrait que tu vérifie sur virus-total & friend ce qu'ils disent de l'exe "wide-char" compressé avec UPX.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Gamme DC et Antivirus

Message par Daniel »

Voici le résultat de l'analyse par VirusTotal de la dernière version de dcmoto.exe compressée avec UPX.

virustotadcmoto.png
virustotadcmoto.png (20.48 Kio) Consulté 362 fois

70 antivirus ne détectent pas de menace :

Code : Tout sélectionner

Acronis (Static ML)       Undetected
AhnLab-V3                 Undetected
Alibaba                   Undetected
alibabacloud              Undetected
ALYac                     Undetected
Antiy-AVL                 Undetected
Arcabit                   Undetected
Avast                     Undetected
AVG                       Undetected
Avira (no cloud)          Undetected
Baidu                     Undetected
BitDefender               Undetected
BitDefenderTheta          Undetected
Bkav Pro                  Undetected
ClamAV                    Undetected
CMC                       Undetected
CrowdStrike Falcon        Undetected
Cybereason                Undetected
Cylance                   Undetected
Cynet                     Undetected
DeepInstinct              Undetected
DrWeb                     Undetected
Elastic                   Undetected
Emsisoft                  Undetected
eScan                     Undetected
ESET-NOD32                Undetected
Fortinet                  Undetected
GData                     Undetected
Google                    Undetected
Gridinsoft (no cloud)     Undetected
Ikarus                    Undetected
Jiangmin                  Undetected
K7AntiVirus               Undetected
K7GW                      Undetected
Kaspersky                 Undetected
Kingsoft                  Undetected
Lionic                    Undetected
Malwarebytes              Undetected
MAX                       Undetected
McAfee                    Undetected
NANO-Antivirus            Undetected
Palo Alto Networks        Undetected
Panda                     Undetected
QuickHeal                 Undetected
Rising                    Undetected
Sangfor Engine Zero       Undetected
SentinelOne (Static ML)   Undetected
Skyhigh (SWG)             Undetected
Sophos                    Undetected
SUPERAntiSpyware          Undetected
Symantec                  Undetected
TACHYON                   Undetected
TEHTRIS                   Undetected
Tencent                   Undetected
Trapmine                  Undetected
Trellix (FireEye)         Undetected
TrendMicro                Undetected
TrendMicro-HouseCall      Undetected
Varist                    Undetected
VBA32                     Undetected
VIPRE                     Undetected
VirIT                     Undetected
ViRobot                   Undetected
Webroot                   Undetected
WithSecure                Undetected
Xcitium                   Undetected
Yandex                    Undetected
Zillya                    Undetected
ZoneAlarm by Check Point  Undetected
Zoner                     Undetected
Avast-Mobile              Unable to process file type
BitDefenderFalx           Unable to process file type
Symantec Mobile Insight   Unable to process file type
Trustlook                 Unable to process file type
3 antivirus détectent une menace :

Code : Tout sélectionner

MaxSecure       Trojan.Malware.300983.susgen
Microsoft       Program:Win32/Wacapew.C!ml
SecureAge       Malicious
Malicious, c'est un compliment pour l'ingéniosité du programme. Les deux autres c'est n'importe quoi. Par exemple :
Microsoft a écrit : Program:Win32/Wacapew.C!ml is a heuristic detection designed to generically detect a Trojan Horse. It is not a specific virus or malware, but rather a type of detection that is used to identify a wide range of malicious programs.
Program:Win32/Wacapew.C!ml may not necessarily be malicious. Should you be uncertain as to whether a file is malicious or a false positive detection, you can submit the affected file to https://www.virustotal.com/en/ to be scanned with multiple antivirus engines.
Et dcmoto n'est pas le seul a être persécuté par MaxSecure et Microsoft : https://github.com/lian/msfs2020-go/issues/14

Il n'y a pas de quoi s'affoler, d'autant plus qu'avec la nouvelle méthode de diffusion sans fichier exécutable le fichier .zip est 100% sans virus.

Image
Daniel
L'obstacle augmente mon ardeur.
__sam__
Messages : 7988
Inscription : 18 sept. 2010 12:08
Localisation : Brest et parfois les Flandres

Re: Gamme DC et Antivirus

Message par __sam__ »

Les signatures ne sont gage de rien, sauf que la techno de l'anti-virus date d'il y a 30 ans. C'est complètement dépassé.

Ce qui compte pour moi est le "no sandbox flagged this file". Faire tourner le prog dans une sandbox et tracers les appels systèmes est un truc à la fois protecteur et puissant. La dessus j'ai appris que certains R&D d'A/V font tourner des réseaux de neurones sur des bases de vrai virus pour leur apprendre à reconnaitre les façons caractéristiques d'utiliser les appels systèmes par les virus/malware (cf. la partie "catégorisation en l'IA"). Ce sont là à mon sens l'avenir des anti-virus: les rendre intelligents pour que leurs heuristiques soient plus souples et qu'ils apprennent des chose sur le comportement des EXEs. Chose que les signatures ne savent pas faire.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Gamme DC et Antivirus

Message par Daniel »

Pour tester VirusTotal, j'ai écrit un programme qui ne fait rien :
dcmoto_preparation.zip
(5.83 Kio) Téléchargé 7 fois

Code : Tout sélectionner

#include <stdlib.h>
#include <stdio.h>
#include <string.h>

//Programme principal ////////////////////////////////////////////////////////
int main(int argc, char *argv[])
{
 return 0;
}
Il est 100% malfaisant, le high-score maximum de 100 est atteint :mrgreen:
Je me demande comment des gens intelligents peuvent prendre les antivirus au sérieux. Ils nous pourrissent la vie.
Cynet, d'après ce que j'ai lu, est un antivirus révolutionnaire utilisant l'intelligence artificielle. Nous vivons dans un drôle de monde...

cynet.png
cynet.png (40.44 Kio) Consulté 274 fois
Daniel
L'obstacle augmente mon ardeur.
Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Gamme DC et Antivirus

Message par Daniel »

Le faux positif ne pouvant pas provenir du programme source, il vient donc du compilateur. Avec MinGW32 il y a une menace sur 72.
J'ai essayé LCC32, en pensant que le problème serait résolu. Hélas ! C'est bien pire : 11 menaces sur 72.

lcc32.png
lcc32.png (22.77 Kio) Consulté 256 fois

C'est donc le compilateur qui déclenche les faux positifs, et pas le programme. Reste à trouver le bon compilateur.
Daniel
L'obstacle augmente mon ardeur.
Daniel
Messages : 17426
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: Gamme DC et Antivirus

Message par Daniel »

Alors je me suis dit : autant installer le top du top : VisualStudio.
Après avoir téléchargé 5 Go et attendu plus d'une demi-heure la fin de l'installation j'ai pu compiler mon programme dcmoto_preparation.c
Hélas il y a cette fois quatre faux-positifs, trois de plus qu'avec MinGW. Que faire ?

visualstudio.png
visualstudio.png (21.72 Kio) Consulté 228 fois

Comment un développeur indépendant peut-il publier ses programmes sans être bloqué par les antivirus ?
Daniel
L'obstacle augmente mon ardeur.
Dmanu78
Messages : 270
Inscription : 20 juin 2020 14:28
Localisation : Yvelines

Re: Gamme DC et Antivirus

Message par Dmanu78 »

Bonjour,

Daniel, rassure-toi J'ai eu droit un temps à de fausses détections virales avec Amspirit aussi, que je compile sous visual studio.
C'était super embêtant car dès lors que l'exécutable était généré, l'antivirus le bloquait et le mettait en quarantaine !! Et 15 jours plus tard, tout était redevenu normal. Je n’ai jamais compris d'où venait le problème...
Répondre