METHODS FOR IMPROVING SECURITY IN COMPUTING DEVICES IMPLEMENTING CONTROL FLOW INTEGRITY
Various embodiments include methods and devices for maintaining control flow integrity in computing devices. Embodiments may include identifying indirect function call candidate functions from a source code by a compiler, replacing, by the compiler, an indirect function call from the source code wit...
Gespeichert in:
Hauptverfasser: | , , , , , , |
---|---|
Format: | Patent |
Sprache: | eng ; fre |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Various embodiments include methods and devices for maintaining control flow integrity in computing devices. Embodiments may include identifying indirect function call candidate functions from a source code by a compiler, replacing, by the compiler, an indirect function call from the source code with a call to a wrapper function, and collocating the indirect function call candidate functions in at least one range of addresses of memory by a linker. The wrapper function may be configured to determine whether an address to be passed to the indirect function call is within the at least one range of addresses of memory.
Divers modes de réalisation comprennent des procédés et des dispositifs pour maintenir une intégrité de flux de commande dans des dispositifs informatiques. Des modes de réalisation peuvent comprendre l'identification de fonctions candidates d'appel de fonction indirecte à partir d'un code source par un compilateur, le remplacement, par le compilateur, d'un appel de fonction indirecte à partir du code source par un appel vers une fonction d'enveloppe, et la colocalisation des fonctions candidates d'appel de fonction indirecte dans au moins une plage d'adresses de mémoire par un lieur. La fonction d'enveloppe peut être configurée pour déterminer si une adresse devant être transmise à l'appel de fonction indirecte se trouve à l'intérieur de ladite plage d'adresses de mémoire. |
---|