|
1 |
| -# awesome-java-security |
2 |
| -Awesome Java Security Resources |
| 1 | +<br/> |
| 2 | +<div align="center"> |
| 3 | + |
| 4 | +A curated list of awesome Java security-related resources. |
| 5 | + |
| 6 | +[](https://awesome.re) |
| 7 | + |
| 8 | +_List inspired by the [awesome](https://github.com/sindresorhus/awesome) list thing._ |
| 9 | + |
| 10 | +Supported by: [GuardRails.io](https://github.com/apps/guardrails) |
| 11 | + |
| 12 | +</div> |
| 13 | +<br/> |
| 14 | + |
| 15 | +# Tools |
| 16 | + |
| 17 | +## Web Framework Hardening |
| 18 | + |
| 19 | +- [Apache Shiro](https://shiro.apache.org/) - A powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management. |
| 20 | +- [JJWT](https://github.com/jwtk/jjwt) - Java JWT: JSON Web Token for Java and Android. |
| 21 | +- [OWASP ESAPI Java](https://github.com/ESAPI/esapi-java-legacy) - Enterprise Security API is a free, open source, web application security control library that makes it easier for programmers to write lower-risk applications. |
| 22 | +- [PAC4J](https://github.com/pac4j/pac4j) - Security engine for Java to authenticate users, get their profiles and manage authorizations in order to secure web applications and web services. |
| 23 | +- [Spring Security](https://github.com/spring-projects/spring-security) - A powerful and highly customizable authentication and access-control framework. |
| 24 | +- [Spring Security Oauth](https://github.com/spring-projects/spring-security-oauth) - Support for adding OAuth1(a) and OAuth2 features (consumer and provider) for Spring web applications. |
| 25 | + |
| 26 | +## Multi tools |
| 27 | + |
| 28 | +- [hawkeye](https://github.com/hawkeyesec/scanner-cli) - Multi-purpose security/vulnerability/risk scanning tool supporting Ruby, Node.js, Python, PHP and Java. |
| 29 | +- [GuardRails](https://github.com/apps/guardrails) - A GitHub App that gives you instant security feedback in your Pull Requests. |
| 30 | + |
| 31 | +## Static Code Analysis |
| 32 | + |
| 33 | +- [Spotbugs](https://github.com/spotbugs/spotbugs) - SpotBugs is FindBugs' successor. A tool for static analysis to look for bugs in Java code. |
| 34 | +- [Find Security Bugs](https://github.com/find-sec-bugs/find-sec-bugs/) - SpotBugs plugin for security audits of Java web applications and Android applications. |
| 35 | +- [Detect Secrets](https://libraries.io/pypi/detect-secrets) - An enterprise friendly way of detecting and preventing secrets in code. |
| 36 | +- [Gitrob](https://github.com/michenriksen/gitrob) - Gitrob is a tool to help find potentially sensitive files pushed to public repositories on Github. |
| 37 | + |
| 38 | +## Runtime Analysis |
| 39 | + |
| 40 | +- [Code Pulse](https://github.com/codedx/codepulse) - Code Pulse is a real-time code coverage tool for penetration testing activities. |
| 41 | +- [OWASP ZAP](https://github.com/zaproxy/zaproxy) - Helps automatically find security vulnerabilities in your web applications. |
| 42 | + |
| 43 | +## Vulnerabilities and Security Advisories |
| 44 | + |
| 45 | +- [OWASP Dependency-Check](https://github.com/jeremylong/DependencyCheck) - Detects publicly disclosed vulnerabilities in application dependencies. |
| 46 | +- [Snyk](https://github.com/snyk/snyk) - CLI and build-time tool to find & fix known vulnerabilities in open-source dependencies. |
| 47 | +- [Snyk Vulnerability DB](https://snyk.io/vuln?type=maven) - Commercial but free listing of known vulnerabilities in libraries. |
| 48 | +- [Common Vulnerabilities and Exposures](https://www.cvedetails.com/product/19117/Oracle-JRE.html?vendor_id=93) - Vulnerabilities that were assigned a CVE. Covers the language and packages. |
| 49 | +- [National Vulnerability Database](https://nvd.nist.gov/vuln/search/results?form_type=Basic&results_type=overview&query=java&search_type=all) - Java known vulnerabilities in the National Vulnerability Database. |
| 50 | + |
| 51 | +## Cryptography |
| 52 | + |
| 53 | +- [Bouncy Castle](https://www.bouncycastle.org/java.html) - Java implementation of cryptographic algorithms. |
| 54 | +- [Conscrypt](https://github.com/google/conscrypt) - Java Security Provider that implements parts of the Java Cryptography Extension and Java Secure Socket Extension. |
| 55 | +- [Cryptomator](https://github.com/cryptomator/cryptomator) - Multi-platform transparent client-side encryption of your files in the cloud. |
| 56 | +- [Keyczar](https://github.com/google/keyczar) - Easy-to-use crypto toolkit by Google. |
| 57 | +- [Keywhiz](https://github.com/square/keywhiz) - System for distributing and managing secrets. |
| 58 | +- [Tink](https://github.com/google/tink) - Multi-language, cross-platform library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse. |
| 59 | + |
| 60 | +# Educational |
| 61 | + |
| 62 | +## Hacking Playground |
| 63 | + |
| 64 | +- [BodgeIt Store](https://github.com/psiinon/bodgeit) - A vulnerable web application aimed at people who are new to pen testing. |
| 65 | +- [OWASP Benchmark](https://github.com/OWASP/Benchmark) - A Java test suite designed to verify the speed and accuracy of vulnerability detection tools. |
| 66 | +- [Security Shepherd](https://github.com/OWASP/SecurityShepherd) - Web and mobile application security training platform. |
| 67 | +- [WebGoat](https://github.com/WebGoat/WebGoat) - A deliberately insecure Java Web Application. |
| 68 | + |
| 69 | +## Articles, Guides & Talks |
| 70 | + |
| 71 | +- [Application Security Verification Standard](https://www.owasp.org/images/3/33/OWASP_Application_Security_Verification_Standard_3.0.1.pdf) - (PDF) The standard is a list of application security requirements that can be used by developers. |
| 72 | +- [Spring Security CSRF](https://www.baeldung.com/spring-security-csrf) - A Guide to CSRF Protection in Spring Security. |
| 73 | +- [Secure Coding Guidelines](https://www.oracle.com/technetwork/java/seccodeguide-139067.html) - Secure Coding Guidelines for Java SE |
| 74 | +- [Securing a Web Application](https://spring.io/guides/gs/securing-web/) - This guide walks you through the process of creating a simple web application with resources that are protected by Spring Security. |
| 75 | +- [Spring Security Guides](https://docs.spring.io/spring-security/site/docs/current/guides/html5/index.html) - Step by step guides on how to use Spring Security. |
| 76 | + |
| 77 | +# Other |
| 78 | + |
| 79 | +## Reporting Bugs |
| 80 | + |
| 81 | +- [Java Security Reporting](https://www.oracle.com/corporate/security-practices/assurance/vulnerability/reporting.html) |
| 82 | + |
| 83 | +# Contributing |
| 84 | + |
| 85 | +Found an awesome project, package, article, or another type of resources related to Java Security? Send a pull request! |
| 86 | +Just follow the [guidelines](/CONTRIBUTING.md). Thank you! |
| 87 | + |
| 88 | +--- |
| 89 | + |
| 90 | +say _hi_ on [Twitter](https://twitter.com/s_streichsbier) |
| 91 | + |
| 92 | +## License |
| 93 | + |
| 94 | +[](http://creativecommons.org/publicdomain/zero/1.0/) |
0 commit comments