Skip to content

Commit

Permalink
Apply suggestions from spec review
Browse files Browse the repository at this point in the history
Signed-off-by: Ravi Sahita <[email protected]>
  • Loading branch information
rsahita committed Nov 30, 2023
1 parent b3b62b7 commit 816fe08
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion specification/src/chapter3.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,9 @@ See also hardware enforced memory tagging below.

https://github.com/riscv/riscv-cfi

Control-flow Integrity (CFI) capabilities help defend against Return-Oriented Programming (ROP) and Call/Jump-Oriented Programming (COP/JOP) style control-flow subversion attacks, where an attacker attempts to modify return addresses or call addresses to redirect a victim to code controlled by the attacker.
Control-flow Integrity (CFI) capabilities help defend against Return-Oriented Programming (ROP) and Call/Jump-Oriented Programming (COP/JOP) style control-flow subversion attacks, where an attacker attempts to modify return addresses or call/jump address to redirect a victim to code reused by the attacker.

These attack methodologies use code sequences in authorized modules, with at least one instruction in the sequence being a control transfer instruction that depends on attacker-controlled data either in the return stack or in memory used to obtain the target address for a call or jump. Attackers stitch these sequences together by diverting the control flow instructions (e.g., JALR, C.JR, C.JALR), from their original target address to a new target via modification in the return stack or in the memory used to obtain the jump/call target address.

Risc-V provides two defenses:

Expand Down

0 comments on commit 816fe08

Please sign in to comment.