Server-Side Request Forgery: Security Architect's Perspective (Part 2)In Part 1 of this series, we examined SSRF from a developer's perspective, covering secure coding patterns, input validation, allow lists, DNS resolution checks, and HTTP client configuration in Java Aug 18, 2026·17 min read
Broken Access Control in Java and Spring: Secure Implementation Patterns (Part 2)Part 1 covered horizontal privilege escalation, where users access resources that belong to other users at the same privilege level. We walked through IDOR vulnerabilities in path parameters, query paJun 22, 2026·27 min read
Broken Access Control in Java and Spring: Secure Implementation Patterns (Part 1)Broken Access Control sits at the top of the OWASP Top 10 2025, and that ranking tells an important story. Authentication answers a simple question: who is this person? Authorization answers a harder Jun 16, 2026·21 min read
OS Command Injection: Security Architect's Perspective (Part 2)In Part 1 of this series, we cover OS command injection vulnerabilities from a developer's perspective. We looked at secure coding approaches with ProcessBuilder, whitelist-based validation strategiesMay 11, 2026·22 min read
OS Command Injection in Java: Secure Coding Patterns (Part 1)There are times when using the Java APIs is simply not sufficient. Video processing using FFmpeg, obtaining EXIF information, integrating with legacy tools – all of these are valid reasons for accessiMay 5, 2026·19 min read
Directory Traversal: A Security Architect's Perspective (Part 3)In Part 1 and Part 2 of this series, we examined directory traversal from a developer's perspective, covering attack vectors, secure coding patterns, Apache Commons IO usage, frontend security consideApr 28, 2026·16 min read
Directory Traversal in Java: Advanced Protection and Testing (Part 2)In previous part 1, we discussed the basics of directory traversal attacks, attack vectors, vulnerable code structures, and the essential mitigation techniques, including secure Spring Boot usage. In Apr 20, 2026·22 min read