Knife tool doesn't cut obscured edges
Knife will cut through obscuring faces, if Z is pressed while cutting, either on solid or wireframe mode. 

Midpoint snap can be activated by pressing Ctrl while cutting.

Further options are displayed on the 3D View area's header, while Knife tool is active.