Knowledge (XXG)

Indirect branch tracking

Source 📝

233: 130: 61:
target, with the processor capable of being put into a mode where it will raise an exception if an indirect branch is made to a location without a branch target instruction.
274: 77:
acting as the branch target instructions for 32 and 64 bit mode respectively. IBT is part of the Intel Control-Flow Enforcement Technology first released in the
203: 178: 267: 303: 298: 260: 154: 84:
The similar technology on ARM-64 processors is called Branch Target Identification (BTI), with the instruction, also called
51: 293: 69:
On Intel processors, the technique is known as Indirect Branch Tracking (IBT), with the "end branch" instructions
57:
It creates a special "branch target" instructions that have no function other than to mark a location as a valid
47: 35: 240: 244: 88:, having three variants that make it check only for jumps, or function calls, or for both. 58: 131:"Indirect Branch Tracking - 006 - ID:655258 | 12th Generation Intel® Core™ Processors" 287: 50:
that use indirect branch instructions to jump into code in unintended ways, such as
232: 78: 43: 39: 106: 155:"Intel brings novel CET technology to Tiger Lake mobile CPUs" 248: 46:processors. IBT is designed to protect against 268: 8: 275: 261: 107:"Indirect branch tracking for Intel CPUs" 97: 7: 229: 227: 38:mechanism implemented on some Intel 105:Corbet, Jonathan (March 31, 2022). 247:. You can help Knowledge (XXG) by 14: 16:Control flow integrity technology 231: 204:"Documentation – Arm Developer" 179:"Documentation – Arm Developer" 1: 28:branch target identification 52:return-oriented programming 320: 226: 81:generation of processors. 48:computer security exploits 20:Indirect branch tracking 304:Computer security stubs 299:Control flow integrity 36:control flow integrity 294:Computer security 256: 255: 241:computer security 208:developer.arm.com 183:developer.arm.com 26:), also known as 311: 277: 270: 263: 235: 228: 218: 217: 215: 214: 200: 194: 193: 191: 190: 175: 169: 168: 166: 165: 151: 145: 144: 142: 141: 127: 121: 120: 118: 117: 102: 87: 76: 72: 319: 318: 314: 313: 312: 310: 309: 308: 284: 283: 282: 281: 224: 222: 221: 212: 210: 202: 201: 197: 188: 186: 185:. December 2021 177: 176: 172: 163: 161: 153: 152: 148: 139: 137: 129: 128: 124: 115: 113: 104: 103: 99: 94: 85: 74: 70: 67: 65:Implementations 59:indirect branch 17: 12: 11: 5: 317: 315: 307: 306: 301: 296: 286: 285: 280: 279: 272: 265: 257: 254: 253: 236: 220: 219: 195: 170: 146: 122: 96: 95: 93: 90: 66: 63: 15: 13: 10: 9: 6: 4: 3: 2: 316: 305: 302: 300: 297: 295: 292: 291: 289: 278: 273: 271: 266: 264: 259: 258: 252: 250: 246: 243:article is a 242: 237: 234: 230: 225: 209: 205: 199: 196: 184: 180: 174: 171: 160: 156: 150: 147: 136: 135:edc.intel.com 132: 126: 123: 112: 108: 101: 98: 91: 89: 82: 80: 64: 62: 60: 55: 53: 49: 45: 41: 37: 33: 29: 25: 21: 249:expanding it 238: 223: 211:. Retrieved 207: 198: 187:. Retrieved 182: 173: 162:. Retrieved 158: 149: 138:. Retrieved 134: 125: 114:. Retrieved 110: 100: 83: 68: 56: 31: 27: 23: 19: 18: 288:Categories 213:2024-02-23 189:2023-07-14 164:2024-02-23 140:2024-02-23 116:2023-07-14 92:References 79:Tiger Lake 34:), is a 111:lwn.net 75:endbr64 71:endbr32 44:ARM-64 40:x86-64 239:This 159:ZDNET 245:stub 73:and 42:and 86:BTI 32:BTI 24:IBT 290:: 206:. 181:. 157:. 133:. 109:. 54:. 276:e 269:t 262:v 251:. 216:. 192:. 167:. 143:. 119:. 30:( 22:(

Index

control flow integrity
x86-64
ARM-64
computer security exploits
return-oriented programming
indirect branch
Tiger Lake
"Indirect branch tracking for Intel CPUs"
"Indirect Branch Tracking - 006 - ID:655258 | 12th Generation Intel® Core™ Processors"
"Intel brings novel CET technology to Tiger Lake mobile CPUs"
"Documentation – Arm Developer"
"Documentation – Arm Developer"
Stub icon
computer security
stub
expanding it
v
t
e
Categories
Computer security
Control flow integrity
Computer security stubs

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.