On pushdown systems model checking : application to malware detection and software model-checking
暂无分享,去创建一个
Dans cette these, nous considerons le probleme de verification des systemes a pile (PDS) et son application a la detection de codes malveillants et a la verification du logiciel. La principale contribution est une nouvelle approche de model-checking pour la detection des malwares en tenant compte du comportement de la pile. Notre approche consiste a: (1) la modelisation du programme a l'aide d'un PDS. (2) La definition de deux logiques nouvelles, appelees SCTPL et SLTPL, pour representer les comportements malveillants. SCTPL (resp. SLTPL) peut etre vue comme une extension de la logique temporelle CTL (resp. LTL) avec des variables, des quantificateurs, et des predicats sur la pile. (3) La reduction du probleme de detection de codes malveillants auprobleme de model-checking de PDS contre des formules SCTPL / SLTPL. Nous presentons des techniques symboliques pour resoudre ces problemes de model-checking. Nous avons mis en œuvre ces techniques dans notre outil POMMADE. POMMADE est capable de detecter 600 malwares reels et 200 nouveaux malwares. Plusieurs anti-virus bien connus et largement utilises tels que Avira, Avast, Kaspersky, McAfee ou Norton ne sont pas en mesure de detecter plusieurs de ces nouveaux malwares. POMMADE a egalement ete en mesure de prouver que 400 programmes benins sont benins. Nous considerons egalement dans cette these le probleme de verification de proprietes CTL pour les PDS. Enfin, nous considerons le probleme de verification de reseaux d'automates a piles.