
CVE-2022-33171: TypeORM SQL Injection Vulnerability
CVE ID: CVE-2022-33171
제품: TypeORM
영향 받는 버전: < 0.3.0
취약점 유형: SQL Injection
공개 날짜: June 28, 2022
TypeORM 0.3.0 이전 버전의 findOne(id) 및 findOneOrFail(id) 함수는 문자열 또는 FindOneOptions 객체를 입력받을 수 있습니다. 이 함수에 대한 입력이 사용자가 제어하는 파싱된 JSON 객체인 경우, id 문자열 대신 조작된 FindOneOptions를 제공하면 SQL 인젝션이 발생합니다.
취약점은 다음 이유로 존재합니다:
findOne() 함수는 유연한 입력 유형(문자열 또는 FindOneOptions 객체)을 허용합니다.TypeORM 유지보수자들은 근본 원인이 라이브러리 자체가 아닌 애플리케이션 측의 불충분한 입력 검증이라고 밝혔습니다. 그러나 이 함수는 명시적으로 사용자 입력을 받도록 설계되었으므로, 라이브러리가 이를 안전하게 처리해야 한다는 주장이 타당합니다.
TypeORM 0.3.0 이상으로 업그레이드하면 이 취약점에 대한 수정 사항이 포함됩니다.