All Projects → dschadow → Javasecurity

dschadow / Javasecurity

Licence: apache-2.0
Java web and command line applications demonstrating various security topics

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Javasecurity

Express Security
nodejs + express security and performance boilerplate.
Stars: ✭ 37 (-79.67%)
Mutual labels:  xss, csp, csrf
Mi S
基于SpringBoot+SpringCloud+Mybatis主流框架搭建的分布式敏捷开发系统架构,为中、小型项目打造企业级基础开发多种解决方案。
Stars: ✭ 140 (-23.08%)
Mutual labels:  spring-boot, spring-security
Spring Backend Boilerplate
The modularized backend boilerplate based on Spring Boot Framework, easy to get started and add your business part.
Stars: ✭ 134 (-26.37%)
Mutual labels:  spring-boot, spring-security
Javadevjournal
Source code for the tutorials published on the Javadevjournal site.
Stars: ✭ 141 (-22.53%)
Mutual labels:  spring-boot, spring-security
Sk Admin
基于 Spring Boot、 Spring Data JPA、 Spring Security、Vue 的前后端分离的管理系统。项目采用模块开发方式, 主要模块:权限管理 (RBAC(Role-Based Access Control,基于角色的访问控制),支持数据字典、数据权限管理、前端菜单支持动态路由)、日志管理、代码生成器、系统监控、云存储管理、系统工具等等
Stars: ✭ 130 (-28.57%)
Mutual labels:  spring-boot, spring-security
Cas Security Spring Boot Starter
Spring boot starter for Apereo CAS client fully integrated with Spring security
Stars: ✭ 129 (-29.12%)
Mutual labels:  spring-boot, spring-security
Cloud Book
《Spring Cloud 微服务架构进阶》各章节附录源码
Stars: ✭ 142 (-21.98%)
Mutual labels:  spring-boot, spring-security
Milkomeda
Spring extend componets which build from experience of bussiness, let developers to develop with Spring Boot as fast as possible.(基于Spring生态打造的一系列来自业务上的快速开发模块集合。)
Stars: ✭ 117 (-35.71%)
Mutual labels:  spring-boot, spring-security
Angular Spring Reactive Sample
RESTful API demos with Spring 5 WebFlux, Spring Boot 2, Spring Data Mongo, Spring Security, Spring Session and Angular 11
Stars: ✭ 153 (-15.93%)
Mutual labels:  spring-boot, spring-security
Jwt Security Example
Spring Boot with Spring Security using JWT
Stars: ✭ 154 (-15.38%)
Mutual labels:  spring-boot, spring-security
Spring Samples
A series of examples used to demonstrate certain features of Spring.
Stars: ✭ 154 (-15.38%)
Mutual labels:  spring-boot, spring-security
Spring Boot Blog
Simple blog web app made using Spring Boot + Thymeleaf
Stars: ✭ 121 (-33.52%)
Mutual labels:  spring-boot, spring-security
Springboot Restful Angular
springBoot,restful,jwt,angular4 搭建的前后端分离后台管理系统
Stars: ✭ 121 (-33.52%)
Mutual labels:  spring-boot, spring-security
Jiiiiiin Security
一个前后端分离的内管基础项目
Stars: ✭ 132 (-27.47%)
Mutual labels:  spring-boot, spring-security
Securing Rest Api Spring Security
Spring Boot 2.2.x + Spring 5.2.x Rest Api Security Example
Stars: ✭ 117 (-35.71%)
Mutual labels:  spring-boot, spring-security
Clean Architecture Delivery Example
A example of clean architecture in Java 8 and Spring Boot 2.0
Stars: ✭ 140 (-23.08%)
Mutual labels:  spring-boot, spring-security
Xssor2
XSS'OR - Hack with JavaScript.
Stars: ✭ 1,969 (+981.87%)
Mutual labels:  xss, csrf
Spring Cloud Flycloud
🔥🔥🔥FlyClould 微服务实战项目框架,在该框架中,包括了用 Spring Cloud 构建微服务的一系列基本组件和框架,对于后台服务框架的搭建有很大的参考价值,大家可以参考甚至稍加修改可以直接应用于自己的实际的项目开发中,该项目没有采用Maven进行项目构建,Maven通过xml进行依赖管理,导致整个配置文件太过臃肿,另外灵活性也不是很强,所以我采用Gradle进行项目构建和依赖管理,在FlyTour项目中我们见证了Gradle的强大,通过简单的一些配置就可以轻松的实现组件化的功能。该项目共有11个Module工程。其中10个位微服务工程,这10个微服务工程构成了一个完整的微服务系统,微服务系统包含了8个基础服务,提供了一整套微服务治理功能,他们分别是配置中心module_c…
Stars: ✭ 1,514 (+731.87%)
Mutual labels:  spring-boot, spring-security
Learning Path Spring Boot Microservices
Curated path for learning Spring Boot & Microservices based on published videos in TechPrimers
Stars: ✭ 116 (-36.26%)
Mutual labels:  spring-boot, spring-security
Springbootwebapplicationstepbystep
Develop your first web application with Spring Boot Magic
Stars: ✭ 146 (-19.78%)
Mutual labels:  spring-boot, spring-security

Java Security

This repository contains several Java web applications and command line applications covering different security topics. Have a look at my slides and publications covering most applications in this repository.

Requirements

Web Applications in Detail

Some web applications contain exercises, some are only there to inspect and learn. Instructions are provided in detail on the start page of each web application.

Some web applications are based on Spring Boot and can be started via the main method in the Application class or via mvn spring-boot:run in the project directory. Most projects can be launched via docker run -p 8080:8080 dschadow/[PROJECT]:[VERSION] after the image has been created using mvn clean verify jib:dockerBuild. The other web applications either contain an embedded Tomcat7 Maven plugin which can be started via mvn tomcat7:run-war, or an embedded Jetty Maven plugin which can be started via mvn jetty:run-war.

access-control-spring-security

Access control demo project utilizing Spring Security in a Spring Boot application. Shows how to safely load user data from a database without using potentially faked frontend values. After launching, open the web application in your browser at http://localhost:8080.

csp-spring-security

Spring Boot based web application using a Content Security Policy (CSP) header. After launching, open the web application in your browser at http://localhost:8080.

csrf-spring-security

Cross-Site Request Forgery (CSRF) demo project based on Spring Boot preventing CSRF in a web application by utilizing Spring Security. After launching, open the web application in your browser at http://localhost:8080.

csrf

Cross-Site Request Forgery (CSRF) demo project preventing CSRF in a JavaServer Pages (JSP) web application by utilizing
the Enterprise Security API (ESAPI). After launching, open the web application in your browser at http://localhost:8080/csrf.

direct-object-references

Direct object references (and indirect object references) demo project using Spring Boot and utilizing the Enterprise Security API (ESAPI). After launching, open the web application in your browser at http://localhost:8080.

intercept-me

Spring Boot based web application to experiment with OWASP ZAP as intercepting proxy. Target is to receive SUCCESS from the backend. After launching, open the web application in your browser at http://localhost:8080.

security-header

Security response header demo project which applies X-Content-Type-Options, Cache-Control, X-Frame-Options, HTTP Strict Transport Security (HSTS), X-XSS-Protection and Content Security Policy (CSP) (Level 1 and 2) headers to HTTP responses. After launching, open the web application in your browser at http://localhost:8080/security-header or https://localhost:8443/security-header.

security-logging

Spring Boot based web application utilizing the OWASP Security Logging Project. Demonstrates how to log security relevant incidents in a log file. After launching, open the web application in your browser at http://localhost:8080.

session-handling-spring-security

Session handling demo project based on Spring Boot utilizing Spring Security and jasypt-spring-boot to secure Spring configuration (property) files. Shows how to restrict access to resources (URLs), how to apply method level security and how to securely store and verify passwords. Uses Spring Security for all security related functionality. Requires a system property (or environment variable or command line argument) named jasypt.encryptor.password with the value session-handling-spring-security present on startup. After launching, open the web application in your browser at http://localhost:8080.

session-handling

Session handling demo project using plain Java. Uses plain Java to create and update the session id after logging in. Requires a web server with Servlet 3.1 support. After launching, open the web application in your browser at http://localhost:8080/session-handling.

sql-injection

Spring Boot based web application to experiment with normal (vulnerable) statements, statements with escaped input, and prepared statements. After launching, open the web application in your browser at http://localhost:8080.

xss

Cross-Site Scripting (XSS) demo project preventing XSS in a JavaServer Pages (JSP) web application by utilizing input validation, output escaping with OWASP Java Encoder and the Content Security Policy (CSP). After launching, open the web application in your browser at http://localhost:8080/xss.

Command Line Applications in Detail

The following projects demonstrate crypto usage in Java with different libraries. Each project contains one or more main methods to start the demo.

crypto-hash

Crypto demo project using Java to hash passwords with different hashing algorithms.

crypto-java

Crypto demo project using plain Java to encrypt and decrypt data with asymmetric (RSA) and symmetric (AES) algorithms as well as to sign and verify data (DSA).

crypto-keyczar

Crypto demo project using Keyczar to encrypt and decrypt data with asymmetric (RSA) and symmetric (AES) algorithms as well as to sign and verify data (DSA).

crypto-shiro

Crypto demo project using Apache Shiro to encrypt and decrypt data with symmetric (AES) algorithms as well as hash data (passwords).

crypto-tink

Crypto demo project using Google Tink to encrypt and decrypt data with asymmetric and hybrid encryption, MAC and digital signatures. Depending on the demo, keys are either generated on the fly or stored/loaded from the keysets directory. The AWS KMS samples (classes with AwsKms in their names) require a configured AWS KMS with an enabled master key.

Meta

Build License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].