AI 요약
데이터베이스를 API 인증의 유일한 신뢰 원천으로 사용하면 SQL 인젝션 공격 시 공격자가 자신의 유효한 API 키 해시를 피해자의 레코드에 덮어쓰기만 해도 전체 테넌트를 장악할 수 있는 심각한 취약점이 발생한다. Sturdy Statistics는 이러한 문제를 해결하기 위해 서버 측 암호화 페퍼(TPM에 봉인된 고엔트로피 비밀)를 사용해 HMAC-SHA512 서명을 계산하는 방식으로 데이터베이스 보안과 인증 시스템 보안을 분리하는 심층 방어 전략을 채택했다.
핵심 포인트
- SQL 인젝션으로 UPDATE 문 한 번 실행 시 공격자가 자신의 키 해시를 피해자 행에 복사하여 전체 테넌트 접근 권한 획득 가능
- 일반적인 API 키 인증은 데이터베이스에 해시(SHA-256)만 저장하지만, 데이터베이스가 손상되면 인증 시스템 전체가 무력화됨
- Sturdy Statistics는 HMAC-SHA512 서명과 서버 측 TPM-봉인 페퍼를 사용해 데이터베이스 손상이 전체 시스템 침해로 이어지지 않도록 설계
- 심층 방어 원칙: 모든 계층에서 실패를 방지하되, 각 계층이 다른 계층의 실패를 가정하고 설계
향후 전망
- API 인증에서 데이터베이스 의존도를 낮추는 암호화 바인딩 방식이 업계 표준 보안 관행으로 자리잡을 가능성
- SQL 인젝션 방어만으로는 부족하며, 인증 계층과 데이터 계층의 완전한 분리가 필수 보안 요구사항으로 인식될 것
출처:hackernews
