Depending on the situation, both top placement and bottom placement of the final action buttons are proper. Consider that (as in the Gutenberg Diagram) the user's eye is scanning from top to bottom and left to right consistently when he/she is determining what to do.
When determining placement of these end controls, it all comes down to the requirements of the UI:
If the user is required to take actions on the screen, bottom placement is more appropriate, because it better assures the user checked over all the content before proceeding. Even one important action, like fully reading a warning, may dictate bottom placement. Bottom placement more likely forces the user to stop, look, and think before taking an action.
If the user can leave at any time and all actions are optional, top placement is better. One way to think about this is that the exit is near other navigation, where it would be expected to be found. Top placement more likely puts the the user at ease, and telegraphs that he/she is the one in control of the environment.
One more note: If the button set is a consistent series of steps, where one can go back, forward, or exit/cancel, determine which view of the several taking place dictates the placement. Bottom placement is a safer bet in these situations, but not always appropriate. If getting through a series of steps must be done quickly, top placement may be a better experience.