The Oracle (previously Sun) Java Runtime Environment (JRE) is among the most widely attacked software packages on the Internet. Despite being viewed as low hanging fruit, exploiting memory corruption vulnerabilities within the JRE is not always straight-forward. This talk will focus on a collection of techniques to overcome potential issues that one may face while developing exploits against memory corruption vulnerabilities within the JRE. The talk concludes with a demonstration of the techniques as used on a selection of contrived and real-world vulnerabilities.