웹보안
-
쿠키 사용 시 CSRF 취약점 대응을 위한 설명!Web 2025. 4. 25. 17:18
🍪 웹 개발자가 꼭 알아야 할 쿠키(Cookie) 속성 정리웹 보안과 인증에서 쿠키는 매우 중요한 역할을 합니다. 특히 SameSite 속성은 CSRF 공격을 방어하기 위해 꼭 알아야 하는 요소입니다. 이 글에서는 웹 개발자가 실무에서 자주 다루는 쿠키 속성들을 정리해보았습니다.✅ 쿠키 속성 총정리 속성설명 Name=Value쿠키의 이름과 값 Domain쿠키가 유효한 도메인 Path쿠키가 전송될 URL 경로 Expires / Max-Age쿠키의 만료 시간 설정 SecureHTTPS에서만 쿠키를 전송 HttpOnlyJavaScript로 쿠키 접근 차단 (XSS 방지) SameSiteCross-site 요청 시 쿠키 전송 여부 결정 (CSRF 방지)🔐 SameSite 속성 설명SameSit..
-
CSRF 취약점과 방어 방법에 대해 알아보자!Web 2025. 4. 25. 17:15
✅ CSRF는 언제 발생하고, RESTful API에서는 안전한가?CSRF(Cross-Site Request Forgery)는 웹 보안에서 자주 언급되는 취약점입니다. 많은 개발자들이 궁금해하는 부분 중 하나가 "RESTful API는 CSRF에 안전한가?"입니다. 이 글에서는 그에 대한 정확한 설명과 주의할 점들을 정리해봅니다.🔍 CSRF는 어떤 상황에서 발생하나요?CSRF는 브라우저가 인증 정보를 자동으로 서버에 전송할 때 발생합니다. 즉, 쿠키 기반 세션 인증 방식이 대표적인 예입니다. 조건설명 쿠키 기반 세션 인증브라우저가 요청 시 쿠키를 자동 전송 서버가 세션 유지상태(stateful) 기반 인증 로그인 상태 유지 중공격자가 위조 요청을 보낼 수 있음✅ REST API는 CSRF에 안전..
-
위지윅(WYSIWYG) 에디터와 XSS 취약점에 대해 알아보자Web 2025. 4. 25. 16:21
✅ WYSIWYG 에디터와 XSS 취약점, 그리고 안전하게 사용하는 방법웹 개발에서 위지윅(WYSIWYG: What You See Is What You Get) 에디터는 텍스트를 HTML 형태로 손쉽게 작성할 수 있어 매우 유용합니다. 하지만 이 편리함 뒤에는 XSS(Cross-Site Scripting) 취약점이라는 보안 위협이 숨어 있습니다. 이번 글에서는 왜 이러한 취약점이 생기는지, 그리고 이를 어떻게 방지할 수 있는지에 대해 알아봅니다.🔍 1. 왜 XSS 취약점이 발생하나요? (예시 포함)WYSIWYG 에디터는 사용자가 입력한 내용을 HTML로 변환해서 저장합니다. 이 과정에서 악성 스크립트가 필터링되지 않으면, 브라우저가 이를 실행하게 되어 XSS가 발생합니다.📌 예시 상황이 코드가 필터링..
-
[Springboot] SQL Injection 이란? 해결 방안은?Server/Spring Boot 2025. 4. 21. 17:28
🔐 SQL Injection이란?SQL Injection은 사용자의 입력값이 검증 없이 SQL 쿼리에 포함될 때 발생합니다...💥 SQL Injection 발생 예제 (Spring Boot)// 취약한 코드 예시@RestController@RequiredArgsConstructorpublic class UserController { private final JdbcTemplate jdbcTemplate; @GetMapping("/user") public String getUser(@RequestParam String username) { String sql = "SELECT * FROM users WHERE username = '" + username + "'"; ..
-
HTTP란 무엇인가?Web 2025. 4. 15. 00:21
HTTP(HyperText Transfer Protocol)는 웹에서 데이터를 전송하기 위한 규약(프로토콜)입니다. 간단히 말해서, 웹 브라우저와 웹 서버 간에 데이터를 주고받을 때 사용하는 규칙이라고 할 수 있습니다. HTTP는 클라이언트와 서버 간에 요청(request)과 응답(response)을 주고받는 방식으로 작동합니다. 예를 들어, 사용자가 웹사이트의 주소를 입력하면, 브라우저는 HTTP 요청을 서버로 보내고, 서버는 해당 요청에 대한 응답을 HTTP를 통해 반환합니다.1. HTTP의 기본 동작 원리 요청(Request): 클라이언트(웹 브라우저 등)는 웹 서버에 HTTP 요청을 보냅니다. 이 요청은 특정 URL(Uniform Resource Locator)에 대한 데이터를 요구하는 것입..