백엔드/인증-보안 MCP 서버 보안: LLM이 생성한 파일 경로를 18줄로 막는 Path Traversal 방어 MCP 서버는 로컬 권한과 LLM 입력이 만나는 새로운 공격 표면입니다. Path Traversal, prefix 우회, symlink 공격을 18줄의 검증 함수로 막는 방법과 그 뒤의 설계 원칙을 정리합니다.
백엔드/API설계 메모 한 통에 10MB? API 입력 길이 제한으로 무제한 텍스트 남용 막기 리포트 메모 필드에 아무 제한 없이 문자열을 받고 있었다. 악의든 실수든 누군가 MB 단위 텍스트를 넣으면 DB와 네트워크가 먼저 비명을 지른다. 5분이면 추가할 수 있는 방어선을 PR 리뷰에서 발견한 기록.
백엔드/Prisma Prisma $extends 테넌트 격리와 $transaction 사이의 타협: 수동 orgId 주입 전략 SaaS 모드에서 Project 쿼리에 organizationId를 자동 주입하던 $extends 확장이 $transaction 콜백 안에서는 동작하지 않았다. 테넌트 격리를 포기할 수도, 트랜잭션을 포기할 수도 없어서 '수동 orgId 주입' 패턴으로 절충한 기록.
백엔드/인증-보안 Next.js에서 2FA/TOTP 인증 구현하기: 라이브러리 없이 RFC 6238 표준 준수 외부 라이브러리 없이 RFC 6238 TOTP 표준을 직접 구현했습니다. Dynamic Truncation 알고리즘 동작 원리와 Next.js 미들웨어에서 2FA를 강제하는 방법을 공유합니다.
백엔드/인증-보안 Next.js App Router에서 CSRF 토큰 관리하기: Double Submit Cookie 패턴 CSRF 공격을 방어하기 위해 Double Submit Cookie 패턴을 구현했습니다. Edge Runtime 호환, 타이밍 공격 방지, 그리고 useCsrfToken 훅까지의 경험을 공유합니다.
프론트엔드/크롬확장 크롬 확장 보안 강화: CSP와 최소 권한 원칙 크롬 확장은 강력한 권한을 가지므로 보안이 중요합니다. CSP로 인라인 스크립트와 동적 코드 실행을 차단하고, 불필요한 권한과 리소스 노출을 제거하여 공격 표면을 최소화했습니다.
프론트엔드/Next.js Next.js 로컬 개발 환경 HTTP → HTTPS 전환 완전 가이드: mkcert, NextAuth v5 쿠키 문제 해결까지 로컬 개발 환경에서 HTTPS가 필요할 때 — mkcert 인증서 생성부터 NextAuth v5의 쿠키 프리픽스 문제 해결까지, 실전에서 마주치는 모든 함정과 해결법을 정리합니다.
인프라/네트워크 Tailscale VPN 적용 후 GitHub Actions SSH 배포 복구하기 Oracle Cloud 서버에 Tailscale SSH를 적용했더니 CI/CD 배포가 깨졌습니다. appleboy/ssh-action에서 tailscale ssh로 전환하여 SSH 키 없이 안전하게 배포하는 전체 과정을 공유합니다.
백엔드/Prisma Prisma Extension으로 민감 데이터 암호화 자동화하기 개인정보보호법 준수를 위해 DB 민감 데이터를 암호화해야 했습니다. Prisma Extension으로 투명한 암호화를 구현하고, Blind Index로 검색 문제까지 해결한 경험을 공유합니다.
백엔드/인증-보안 Express 프록시 레이어에서 파일 다운로드 자동 암호화 구현하기 http-proxy-middleware의 selfHandleResponse 옵션을 활용해 파일 다운로드 응답을 가로채고 AES-256-GCM으로 암호화하는 방법. 전략 패턴으로 사내 API 연동도 준비.
백엔드/인증-보안 민감 데이터 접근 추적: Audit Logging 구현하기 개인정보보호법과 GDPR 준수를 위해 민감 데이터 접근 이력을 추적해야 했습니다. Context 기반 감사 로깅과 Fire-and-forget 패턴으로 구현한 경험을 공유합니다.
자동화/n8n n8n 셀프 호스팅에 사내 SSO 연동하기: 인증 게이트웨이 구축 완벽 가이드 n8n을 사내에 도입하면서 직원들이 별도 계정 없이 사번/비밀번호로 로그인할 수 있게 만들었습니다. Enterprise 라이선스 없이 Community Edition에서 인증 게이트웨이를 구축한 과정을 공유합니다.
프론트엔드/크롬확장 Web Crypto API로 안전한 해싱 구현하기: SHA-256에서 PBKDF2까지 단순 SHA-256 해싱의 보안 한계를 분석하고, Web Crypto API의 PBKDF2로 업그레이드하는 방법을 다룹니다. Timing Attack 방어를 위한 constant-time 비교와 클라이언트 Rate Limiting 패턴까지 실제 코드와 함께 설명합니다.