← 메인으로 돌아가기

Challenge 41: CORS 설정 실수

민감 API

GET /challenge41/api/secret

보안팀 정책: 신뢰 도메인 https://portal.ctfclass.edu 에서 온 요청만 허용

하지만 Origin 검증 로직에 허점이 있습니다.

테스트 예시

1) 기본 요청 (실패)

curl -i http://127.0.0.1:8080/challenge41/api/secret

2) Origin 헤더 조작 (성공)

curl -i -H "Origin: https://evil-ctfclass.edu.attacker.com" \
http://127.0.0.1:8080/challenge41/api/secret

힌트

도메인 검증에서 contains 방식은 위험합니다.

portal.ctfclass.edu 자체를 검증하는지, 아니면 문자열 일부만 확인하는지 살펴보세요.

응답 헤더의 Access-Control-Allow-Origin 값도 확인하세요.