퀴즈 / 웹 보안 / 문제

프로토타입 오염(Prototype Pollution) 공격이란?

어려움 MDN Web Docs
보기 및 정답
A JavaScript 객체의 프로토타입(__proto__)을 조작하여 애플리케이션 전체의 객체 동작을 변조하는 공격이다
B JavaScript에서 프로토타입 패턴을 잘못 구현하여 메모리 누수가 발생하고 애플리케이션 성능이 저하되는 코딩 실수이다
C 프로토콜 버퍼(Protobuf)의 직렬화 데이터를 오염시켜 서버 간 통신 데이터를 변조하는 네트워크 계층의 공격이다
D 프로토타입 기반 상속 체계를 무력화하여 클래스 기반 객체 생성을 차단하고 애플리케이션의 정상 동작을 방해하는 공격이다

해설

프로토타입 오염은 사용자 입력을 통해 Object.prototype에 프로퍼티를 주입하는 공격입니다. 예: 악의적 JSON에 {"__proto__": {"isAdmin": true}}를 넣으면 모든 객체에 isAdmin이 생길 수 있습니다. 입력 검증, Object.freeze(Object.prototype), Map 사용 등으로 방어합니다.

코딩, 제대로 배우고 싶다면?

개념 확인은 퀴즈로, 실력은 실전 프로젝트로.
투더제이 코딩클래스에서 시작하세요.

정규반 살펴보기
START THE LOOP · CHOOSE

시장과 사람의 답을 봤다면,
다음 결과물의 구조를 고릅니다.

한 번의 결과에 기대지 않고 다시 만들 수 있도록, 문제 발견부터 제작·배포·수익화까지 이어지는 전체 흐름을 익혀보세요.

TTJ CLASS에서 다음 구조 고르기
처리 중...