일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- builder
- java
- Spring
- OAuth 2.0
- Dependency Injection
- factory
- lombok
- spring security
- Google OAuth
- 일급 객체
- 일급 컬렉션
- nestjs
- synchronized
- Volatile
- middleware
- Today
- Total
목록2025/08 (2)
HJW's IT Blog
0. 사전 지식대부분 알고 있겠지만, DBMS 의 트랜잭션 격리 수준은 4가지로 나뉜다.READ UNCOMITTED: 다른 트랜잭션이 commit 하지 않은 데이터도 보인다. Dirty Read 발생 가능READ COMITTED: 다른 트랜잭션이 commit 한 데이터만 보인다. 하지만 트랜잭션 실행 도중 데이터가 변경될 수 있다. Non Repeatable Read 발생 가능REPEATABLE READ: 트랜잭션에서 하나의 row 를 두번 조회하였을때 결과가 같음을 보장한다. 하지만 다건 조회의 경우 다를 수 있다. Phantom Read 가능SERIALIZABLE: 락을 거는 등, 고수준의 방법을 통해 한번에 하나의 트랜잭션만 해당 데터를 다룸을 보장한다.이러한 '격리'는 데이터의 무결성을 보장하기 ..
1. CSRF 란?Cross-Site Request Forgery 란, 사용자가 의도하지 않은 요청을 서버에 보내도록 유도하여 사용자의 권한을 악의적으로 사용하는 공격이다. 즉, 사용자의 권한을 사용하기 때문에 권한을 많이 가진 사용자 일수록 해당 공격에 노출되었을 때의 리스크가 높다. CSRF 공격이 가능하기 위해 다음 세가지 조건이 만족되어야 한다.상태 변경 작업 : 공격자가 어플리케이션 내에서 유도할 만한 동작이 존재해야 한다.쿠키 기반 세션 처리 : 작업을 수행하기 위해 공격자는 HTTP 요청에 의존하며, 어플리케이션은 사용자를 식별하기 위해 Session 쿠키에만 의존해야 한다.예측 가능한 요청 매개변수 : 공격자가 공격을 수행하기 위해 추측할 수 없는 매개변수가 있어선 안된다.대표적인 CSRF..