You cant know if for sure for some reasons:
You can always "fake" the name and email if you are not using ssh key.
git commit -c user.name <faked name> -c user.email <fake email> ...
If the user has checkout and old commit and the forced push the commited will be the one who commited the last push (again assuming using http/https)
What you can do it to check the local repositories of the developers with the `git reflog``
--
You can try and read out the stash logs as described here
https://confluence.atlassian.com/stashkb/how-to-read-the-stash-log-formats-317951177.html
Again - this will be helpful if you use ssh keys. Otherwise its useless.
git reflog
will display any change which updated the HEAD
, in your case pointing out who changed and commited the wrong commit.

How to prevent it for next time?
install this plugin for stash
Protect specific branches from force pushes
https://marketplace.atlassian.com/plugins/com.carolynvs.force-field/server/overview