CSP(Content Security Policy): XSS를 원천 차단하는 헤더
XSS 공격이 성공해도 실행되지 않게 막는 마지막 방어선이 CSP다. 디렉티브 문법부터 nonce 방식, Next.js 설정, 점진적 도입 전략까지 정리했다.

개발과 기술에 대한 이야기를 기록합니다.
XSS 공격이 성공해도 실행되지 않게 막는 마지막 방어선이 CSP다. 디렉티브 문법부터 nonce 방식, Next.js 설정, 점진적 도입 전략까지 정리했다.

인젝션, 인증 취약점, XSS부터 최신 위협까지 — OWASP Top 10을 실제 코드 예시와 함께 하나씩 뜯어보고, 각 취약점을 어떻게 막는지 정리했다.

SSRF 공격의 원리와 방어 방법을 경험을 통해 이해한 과정

어느 날 내 서비스가 낯선 도메인의 iframe 안에서 돌고 있는 걸 발견했습니다. Clickjacking 공격을 막기 위해 HSTS, X-Frame-Options, CSP, Permissions-Policy 등 필수 보안 헤더 6가지를 상세히 설명하고, Nginx와 Next.js에 적용하는 방법을 공유합니다.

HTTP로 접속하는 사용자를 단순히 HTTPS로 리다이렉트하는 것만으로는 부족합니다. 중간자 공격(MITM)에 취약하기 때문이죠. 브라우저에게 '이 사이트는 무조건 HTTPS로만 접속해!'라고 각인시키는 HSTS(HTTP Strict Transport Security)의 원리와 적용 방법을 정리합니다.

서비스 런칭 3일 차, 갑자기 DB CPU가 100%를 찍었습니다. 로그를 보니 SQL Injection 공격이 들어오고 있었죠. 급하게 AWS WAF를 도입하여 공격을 차단하고, 더 나아가 Rate Limiting으로 DDoS까지 방어한 경험담입니다. Positive/Negative 보안 모델과 OWASP CRS의 개념도 함께 다룹니다.

고등학교 시절, 친구의 웹사이트를 'admin' --' 한 줄로 뚫었던 경험과 그 충격을 공유합니다. 웹 개발자가 반드시 알아야 할 10가지 보안 취약점(OWASP Top 10)과 이를 막기 위해 '해커처럼 생각하는 법'을 4가지 핵심 위협(Injection, IDOR, Crypto, Misconfig)을 중심으로 설명합니다.

SQL Injection으로 관리자 권한을 탈취당하고 데이터를 날린 경험담. 왜 Prepared Statement가 유일한 해결책인지, ORM은 정말 안전한지 파헤쳐봤습니다.

게시판에 달린 댓글 하나 때문에 관리자 계정이 탈취당했습니다. XSS(Cross-Site Scripting)의 3가지 유형(Stored, Reflected, DOM)과 React/Next.js 환경에서의 구체적인 방어법(HTML 이스케이프, CSP, 쿠키 보안)을 예제와 함께 깊이 있게 다룹니다.

회원가입 폼을 없애고 '구글로 로그인' 버튼을 달면 쉬울 줄 알았습니다. 하지만 Redirect URI 에러, State 파라미터, HTTPS 문제 등 OAuth 2.0의 복잡함에 압도당했죠. OAuth의 4단계 '댄스'와 실제적인 해결책(NextAuth.js), 그리고 모바일 앱에서의 딥링크 처리까지 깊이 있게 다룹니다.

로그인과 권한 체크를 혼동해서 발생했던 실제 보안 사고 사례와, 이를 '공항 보안 검색'과 '호텔 카드키'에 비유하여 명쾌하게 정리했습니다. JWT 구조부터 OAuth 2.0, 그리고 MSA 환경에서의 인증 전략까지.

DDoS(분산 서비스 거부) 공격은 단순히 트래픽을 많이 보내는 것 이상의 정교한 기술입니다. L4(TCP Syn Flood)부터 L7(Slowloris)까지 다양한 공격 유형을 분석하고, Rate Limiting, CDN, Anycast Network를 활용한 실질적인 방어 전략을 정리합니다.

C언어의 strcpy 하나가 어떻게 전체 시스템 권한을 탈취하게 만들까요? 스택 오버플로우 공격의 원리와 이를 막기 위한 ASLR, Canary, NX Bit 같은 방어 기법들을 파헤쳐봤습니다.
