Speaker: Andrew Gross
See the table of contents
General
- Vulnerability – flaw or weakness that could be exploited to violates the system’s security policy
- Design/Architecture – faulty assumptions, missing security mech
- Implementation – insecure programming practices
- Integration/test – config errors, vulnerability third party code
- Deployment/release – missing third party patches
Cost of vulnerabilities
- Remediation time/resources to fix/build/release
- Intermediate response – migration, detection, incident response
- Damage to reputation – PR, liability
Secure coding
- Design/Architecture – training, threat modeling, missuse cases
- Implementation – manual code review, static analysis
- Integration/Test – dependency checkers, static analysis, runtime tesitng, negative testing
- Deployment/release – vulnerability scanning, monitoring (ex: WAFs_, dependency patching, vulnerability remediation
Secure Coding Guidelines for Java SE doc
- Guidlines at: https://www.oracle.com/java/technologies/javase/seccodeguide.html
- covers – general guidelines and Java specific ones
- Not meant to be comprehensive or a tutorial
- Update as see problems, additional context, new security features like JEP 486 to disable the security manager
- Gave examples of Security third party code, injection/inclusion, take care interpretting untrusted code, input validation, serialization/deserialization
News
- 2021 – remote code execution in log4j
- 2021 – Confluence OGNL injection
- 2022 – Cobalt Strike – simulator for red tools. Had XSS vulnerability. Client uses Swing so HTML could be rendered into UI.
- 2022- Text4Shell
- 2024: XZ Utils Backdoor. Malicious co-maintainer over several years. Was trying to put into httpd but discovered first
- 2025: npm packages compromise. phishing
My take
I didn’t realize how closely this was going to be of presenting the guidelines document. Which I’ve read. So the session itself was fine, but I should have chosen a different one. The from the news part was more engaging for me.