I don't understand the data type of the code that inserts the 4-byte address into the array. We're doing a buffer overflow attack, and we're inserting a four-byte address into the array from the provided source.
Notice that an error occurs if any of the *(long *) & buf []
is missing. However, I do not understand this code. I would appreciate it if you help me.
*(long *) &test[0] = 0x12345678;
*(long *) &test[4] = 0x12345678;
*(long *) &test[8] = 0x12345678;
I don't know the meaning of *(long *) &test[]
here.