Abstract: | Bugs in software have always been a problem to developers and especially securitycritical
bugs that can make the software vulnerable. In the case of exploitable
vulnerabilities, attackers can use them to leak data, attack systems with denial of
system attacks, or in the worst-case gain full access to the system. Many of these
vulnerabilities are in binaries. Therefore, it is hard for developers and testers to
detect them and fix them.
Many previous articles were about finding a way to automate the process of detecting
binary vulnerabilities and, we will focus on approaches that used symbolic execution
and compare between them. Then, we will see the results provided by the article
plus, showing what can be performed to improve the binary vulnerability detection
process.***
Les bugs dans les logiciels ont toujours été un problème pour les développeurs, en
particulier les bugs critiques pour la sécurité qui peuvent rendre le logiciel vulnérable.
Dans le cas de vulnérabilités exploitables, les attaquants peuvent les utiliser pour
faire fuir des données, attaquer des systèmes par Les attaques DOS ou, dans le pire
des cas, obtenir un accès complet au système. Un grand nombre de ces vulnérabilités
se trouvent dans des binaires. Il est donc difficile pour les développeurs et les testeurs
de les détecter et de les corriger. De nombreux articles précédents visaient à trouver
un moyen d’automatiser le processus de détection des vulnérabilités binaires. Nous
allons nous concentrer sur les approches qui utilisent l’exécution symbolique et les
comparer. Ensuite, nous conclurons quelles approches ont été les meilleures dans le
processus de détection et nous montrerons ce qui peut être fait pour améliorer le
processus de détection des vulnérabilités binaires. |