So, for instance over here in above image), this buffer which is defined on the stack also contain the exploit code and the string copy was executed in such a way that after string copy completed its execution, it would cause the exploit code that is the shell code which is present on the stack to be executed.
ಮೇಲಿನ ಇಮೇಜ್ ನಲ್ಲಿ ತೋರಿಸಿದ main ಫಂಕ್ಷನ್ ನಲ್ಲಿ ಸ್ಟ್ಯಾಕ್ ನಲ್ಲಿ ಎಸ್ಪಿಲೋಯ್ಟ್ ಕೋಡ್ ಮತ್ತು ಸ್ಟ್ರಿಂಗ್ ಕಾಪಿ ಹೊಂದಿರುವ ಬಫರ್ ಇದ್ದು, ಆ ಸ್ಟ್ರಿಂಗ್ ಕಾಪಿ ತನ್ನ ಕೆಲಸ ಮುಗಿಸಿದ ನಂತರ ಅದು ಶೆಲ್ ಕೋಡ್ ನಲ್ಲಿರುವ ಎಸ್ಪಿಲೋಯ್ಟ್ ಕೋಡ್ ಎಕ್ಸಿಕ್ಯೂಟ್ ಆಗುವಂತೆ ಮಾಡುತ್ತದೆ.