sysmodel Posted April 23, 2017 Report Posted April 23, 2017 Привет! Может кто знает с какой версии gcc стал вставлять вызов call [address] <__stack_chk_fail@plt> в конец каждой функции в программе? И можно ли как-то билдить с помощью gcc без вызова <__stack_chk_fail@plt>? Quote
sysmodel Posted April 23, 2017 Author Report Posted April 23, 2017 Забыл уточнить, что компилирую .c файлы, т.е. c код. Хотя, я думаю, что эта функция вставляется во все бинарники в независимости от языка. И кстати, я заметил, что эта функция вставляется, только если есть в коде есть массив из char значений (это то что я заметил. Возможно, условий гораздо больше). Quote
sysmodel Posted April 23, 2017 Author Report Posted April 23, 2017 Хотя мне кажется, что эта проверка целостности стека должна быть вшита в компилятор и никакими атрибутами не может отключаться в целях безопасности. Quote
sysmodel Posted April 23, 2017 Author Report Posted April 23, 2017 А также было бы не плохо, если кто-нибудь скинул описание этой функции или где можно посмотреть ее исходный код. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.