Firstly, let's drop KEYCLOAK-2325 from 1.8 and see if we can fix it for 1.9.
Secondly, the back button should not navigate backwards in the flow. Also, the refresh button should just redisplay the page as it does now (ignoring the post). A couple ideas to improve things though:
1) Set cache-control to "Cache-Control: no-store, must-revalidate, max-age=0". This should force a reload of the page when the user clicks the back button
2) Can we add a back link to some steps in the flow?
3) Can we add a cancel link to some steps in the flow?
4) If a user clicks the back button in the browser depending on where we are in the flow I think we should either take the user back to the first step (cancel), go back one step or just reshow the same page
By setting the cache as I suggested in 1 I actually think the browser will just complain when you navigate back to a page that does a post.