
보안 모범 사례
Helmet, CORS, rate limiting, 입력 sanitization, SQL injection, XSS, CSRF
1NestJS의 맥락에서 Helmet은 무엇인가요?
NestJS의 맥락에서 Helmet은 무엇인가요?
답변
Helmet은 일반적인 취약점으로부터 애플리케이션을 보호하기 위해 HTTP 보안 헤더를 자동으로 구성하는 미들웨어입니다. X-Frame-Options, Content-Security-Policy, X-Content-Type-Options와 같은 헤더를 활성화하여 XSS, clickjacking, MIME sniffing을 방지합니다. Helmet은 보안 영역을 강화하기 위한 프로덕션 환경의 필수 모범 사례입니다.
2API에서 CORS의 주요 역할은 무엇인가요?
API에서 CORS의 주요 역할은 무엇인가요?
답변
CORS(Cross-Origin Resource Sharing)는 어떤 외부 도메인이 API 리소스에 접근할 수 있는지를 제어합니다. CORS 구성이 없으면 브라우저는 보안상의 이유로 다른 도메인에서 오는 요청을 차단합니다. CORS를 올바르게 구성하면 보안을 유지하면서 접근 오류를 방지할 수 있습니다. wildcard로 모든 도메인을 허용하기보다는 허용된 출처의 화이트리스트를 사용하세요.
3무차별 대입 공격으로부터 API를 보호하는 가장 좋은 방법은 무엇인가요?
무차별 대입 공격으로부터 API를 보호하는 가장 좋은 방법은 무엇인가요?
답변
rate limiting은 일정 기간 동안 IP 또는 사용자별 요청 수를 제한하여 자동화된 무차별 대입 공격을 방지합니다. NestJS의 throttler-module과 같은 패키지를 사용하면 전역 또는 엔드포인트별 제한을 쉽게 구성할 수 있습니다. rate limiting을 점진적 전략(임시 차단 시간 증가) 및 민감한 엔드포인트용 CAPTCHA와 결합하세요. rate limiting은 서비스 거부 공격(DoS)으로부터도 보호해 줍니다.
XSS(Cross-Site Scripting) 공격이란 무엇인가요?
NestJS 애플리케이션을 SQL injection으로부터 어떻게 보호하나요?
+22 면접 질문