Paste the code into MIPS

Next, please comment each line of code in the .text section. Please do this FIRST! It will make tracing through the code much easier.

Once you understand what the code is doing, you’ll notice there is a ‘print_a’ function that is not reachable through the execution path of the code as it’s written. Your job is to devise an input that overflows the call stack and overwrites the $ra register causing the program to execute the ‘print_a’ function. Please provide the successful input that triggers the overflow, a screenshot of the successful execution of your attack that prints the A+ message, and a detailed description of how you figured out how to exploit the buffer overflow and how you devised the proper input.

Code used for the assignment above

.data

str: .asciiz “You’ve earned an A+!”

buffer: .space 28

 

.text

li $v0,8

la $a0, buffer

li $a1, 28

move $t0,$a0

syscall

 

move $a0, $t0

jal print

 

li $v0, 10

syscall

 

print:

addi $sp, $sp, -20

sw $ra, 16($sp)

sw $a0, 12($sp)

 

addi $t4, $sp, 0

la $t1, ($a0)

 

load_str:

lbu $t2, ($t1)

slti $t3, $t2, 1

beq $t2, 48, null

 

resume:

 

sb $t2, 0($t4)

addi $t4, $t4, 1

addi $t1, $t1, 1

bne $t3, 1, load_str

 

li $v0, 4

syscall

 

lw $ra 16($sp)

lw $a0 12($sp)

jr $ra

 

null:

addi $t2, $t2, -48

j resume

print_a:

li $v0, 4

la $a0, str

syscall

Link to the code as well: https://github.com/jkovba/jhu_sp20_comporg/blob/master/overflow.s

Found something interesting ?

• On-time delivery guarantee
• PhD-level professional writers
• Free Plagiarism Report

• 100% money-back guarantee
• Absolute Privacy & Confidentiality
• High Quality custom-written papers

Related Model Questions

Feel free to peruse our college and university model questions. If any our our assignment tasks interests you, click to place your order. Every paper is written by our professional essay writers from scratch to avoid plagiarism. We guarantee highest quality of work besides delivering your paper on time.

Grab your Discount!

25% Coupon Code: SAVE25
get 25% !!