security - Memory corruption attacks in c -
i reading this article . it's how attackers can produce memory errors (dangling pointers , pointers going out of memory) lead memory corruption , possible attack on program/system. different methods being described how make programs more memory safe , prevent attacks. however have difficulties understanding things. thought have fair knowledge of c (pointers, dangling pointers, memory allocation, data encapsulation, , couple of things more) reading article makes me question knowledge of c. , couple of c sources have had , reading have done have not pointed out vulnerabilities. how can attacker take control of programs pointers? read it's connected dangling pointers or pointers gone out of memory or double freeing, how? , how 1 know for? for example if take care of dangling pointers: int *ptr = malloc(1000 * sizeof *ptr); // stuff here free(ptr); ptr = null; can attacker still take control? and authors point printf(user_input) // input "%3$x" prints ...