Key points are not available for this paper at this time.
Le suivi dynamique des flux de données (DFT) concerne l'étiquetage et le suivi des données d'intérêt lors de leur propagation pendant l'exécution du programme. Le DFT a été mis en œuvre à plusieurs reprises par une variété d'outils pour de nombreux objectifs, y compris la protection contre les attaques de jour zéro et de script inter-sites, la détection et la prévention des fuites d'informations, ainsi que pour l'analyse de logiciels légitimes et malveillants. Nous présentons libdft, un cadre DFT dynamique qui, contrairement aux travaux précédents, est à la fois rapide, réutilisable et fonctionne avec des logiciels et du matériel courants. libdft fournit une API pour créer des outils compatibles avec DFT qui fonctionnent sur des binaires non modifiés, fonctionnant sur des systèmes d'exploitation et du matériel communs, facilitant ainsi la recherche et le prototypage rapide. Nous explorons différentes approches pour mettre en œuvre les aspects bas-niveau du suivi des données au niveau des instructions, introduisons une mémoire d'ombre plus efficace et capable de 64 bits, et identifions (et évitons) les pièges courants responsables de la surcharge de performance excessive des études précédentes. Nous évaluons libdft en utilisant de vraies applications avec de grands codes sources comme les serveurs Apache et MySQL, ainsi que le navigateur Firefox. Nous utilisons également une série de benchmarks et d'utilitaires pour comparer libdft avec des systèmes similaires. Nos résultats indiquent qu'il fonctionne au moins aussi rapidement, sinon plus vite, que les solutions précédentes, et à notre connaissance, nous sommes les premiers à évaluer la surcharge de performance d'une implémentation DFT dynamique rapide en si grande profondeur. Enfin, libdft est disponible gratuitement en tant que logiciel open source.
Kemerlis et al. (Sat,) ont étudié cette question.