2025-11-10T02:36:02.492459

Hash chaining degrades security at Facebook

Rivasseau
Modern web and digital application password storage relies on password hashing for storage and security. Ad-hoc upgrade of password storage to keep up with hash algorithm norms may be used to save costs but can introduce unforeseen vulnerabilities. This is the case in the password storage scheme used by Meta Platforms which services several billion monthly users worldwide. In this paper we present the first example of an exploit which demonstrates the security weakness of Facebook's password storage scheme, and discuss its implications. Proper ethical disclosure guidelines and vendor notification were followed.
academic

해시 체이닝이 Facebook의 보안을 저하시킴

기본 정보

  • 논문 ID: 2510.12665
  • 제목: Hash chaining degrades security at Facebook
  • 저자: Thomas Rivasseau (McGill University)
  • 분류: cs.CR (암호화 및 보안)
  • 발표 시간: 2025년 10월
  • 논문 링크: https://arxiv.org/abs/2510.12665

초록

현대의 웹 및 디지털 애플리케이션 비밀번호 저장소는 저장 및 보안을 위해 비밀번호 해싱에 의존한다. 해시 알고리즘 규범을 따라가기 위한 임시방편의 비밀번호 저장소 업그레이드는 비용 절감을 위해 사용될 수 있지만, 예상치 못한 취약점을 야기할 수 있다. 이는 전 세계 약 수십억 월간 활성 사용자에게 서비스를 제공하는 Meta Platforms의 비밀번호 저장 체계에서 발생하는 문제이다. 본 논문에서는 Facebook의 비밀번호 저장 체계의 보안 약점을 입증하는 첫 번째 악용 사례를 제시하고 그 함의를 논의한다. 적절한 윤리적 공개 지침 및 벤더 통지가 준수되었다.

연구 배경 및 동기

문제 정의

본 연구가 해결하고자 하는 핵심 문제는 다음과 같다: 현대의 대규모 인터넷 플랫폼이 비용 절감을 위해 채택한 점진적 해시 알고리즘 업그레이드 전략이 심각한 보안 취약점을 야기할 수 있다.

문제의 중요성

  1. 영향 규모의 거대함: Meta 플랫폼은 약 40억 월간 활성 사용자를 보유하고 있으며, 보안 문제의 영향 범위가 극히 광범위함
  2. 업계 대표성: 기술 선도 기업인 Facebook의 접근 방식이 다른 기업들에 의해 모방될 가능성
  3. 이론과 실제의 괴리: 이론적으로 안전한 해시 체인이 실제 적용에서 근본적인 결함을 가질 수 있음을 입증

기존 방법의 한계

전통적인 비밀번호 저장소 업그레이드 방안은 다음을 요구한다:

  • 두 개의 해시 테이블 유지 (구형 MD5 및 신형 SHA1)
  • 모든 사용자의 재로그인을 통한 마이그레이션 완료 대기
  • 장기간 비활성 사용자의 데이터 마이그레이션 처리
  • 높은 시스템 재구성 비용 부담

연구 동기

Facebook 엔지니어들은 위의 비용을 회피하기 위해 창의적으로 해시 체인 방안을 채택했으나, 이 "영리한" 해결책은 실제로 심각한 보안 취약점을 야기했으며, 이에 대한 심층적 분석이 필요하다.

핵심 기여

  1. Facebook 비밀번호 저장소의 근본적 보안 결함 최초 공개: 해시 체인 방안의 보안 강도가 최약 환절인 MD5 수준으로 저하됨을 입증
  2. 작동 가능한 취약점 악용 코드 제공: 실제 해시 충돌 공격을 시연하여 잘못된 비밀번호로 Facebook 계정에 로그인 가능함을 입증
  3. 포괄적 보안 영향 분석: 수십억 사용자 및 OAuth 생태계에 대한 취약점의 영향을 상세히 평가
  4. 책임감 있는 공개 준수: 공개 전 Meta에 취약점을 보고하고 확인을 획득

방법론 상세 설명

취약점 분석 프레임워크

Facebook 해시 체인 아키텍처

Facebook의 비밀번호 저장소는 다음과 같은 해시 체인을 채택한다:

password = pw
md5(pw) = m
sha1(m, salt) = s1
sha256(s1, secret) = s2
scrypt(s2) = s3
sha256(s3) = value

보안 결함 식별

핵심 문제: 전체 해시 체인의 보안 강도가 첫 번째 단계인 MD5 알고리즘의 강도로 제한된다.

수학적 증명: 두 개의 서로 다른 후보 비밀번호 a와 b에 대해, md5(a) = md5(b)인 경우:

a ≠ b
md5(a) = m(a) = m(b)
sha1(m(a), salt(a)) = s1(a) = s1(b)
sha256(s1(a), secret) = s2(a) = s2(b)
scrypt(s2(a)) = s3(a) = s3(b)
sha256(s3(a)) = value(a) = value(b)

취약점 악용 방법

충돌 쌍 선택

2024년 Marc Stevens가 발표한 MD5 충돌 쌍 사용:

a = TEXTCOLLBY fGiJUETHQ4hEcKSMd5zY pgqf1YRDhkmxHkhPWptrkoyz28wnI9V 0aHeAuaKnak
b = TEXTCOLLBY fGiJUETHQ4hAcKSMd5zY pgqf1YRDhkmxHkhPWptrkoyz28wnI9V 0aHeAuaKnak

검증: md5(a) = md5(b) = faad49866e9498fc1719f5289e7a0269

공격 절차

  1. Facebook 계정 생성, 비밀번호를 문자열 a로 설정
  2. 계정 로그아웃, 브라우저 데이터 삭제
  3. 문자열 b를 비밀번호로 사용하여 로그인 시도
  4. 결과: 로그인 성공, 취약점 존재 입증

실험 설정

테스트 환경

  • 플랫폼: Facebook.com
  • 테스트 시간: 논문 작성 시점 (2025년 10월)
  • 검증 방법: 실제 계정 생성 및 로그인 테스트

검증 단계

  1. 계정 생성: MD5 충돌 쌍의 첫 번째 문자열을 비밀번호로 사용
  2. 환경 초기화: 서로 다른 사용자 환경을 모의하기 위해 기기/네트워크 변경
  3. 공격 검증: 두 번째 충돌 문자열을 사용하여 로그인 시도
  4. 결과 확인: 공격 성공률의 체계적 검증

실험 결과

주요 발견

  • 공격 성공률: 100% (테스트 기간 내 체계적 성공)
  • 취약점 확인: Facebook이 2014년 공개된 해시 체인 방안을 여전히 사용 중임을 확인
  • 보안 저하: 비밀번호 보안 강도가 예상 256비트에서 123-128비트로 저하

보안 영향 평가

직접적 영향

  1. 계정 접근: 원본이 아닌 비밀번호로 Facebook 계정에 로그인 가능
  2. 비밀번호 복구 복잡도: 2^256에서 2^123-2^128로 감소
  3. 표준 준수성: NIST 보안 표준 미충족
  4. 비밀번호 엔트로피 제한: 최대 유효 비밀번호 엔트로피는 15-16자만 가능

생태계 영향

  • OAuth 서비스: Facebook OAuth 로그인을 사용하는 모든 제3자 서비스가 영향을 받음
  • 기업 사용자: Facebook 기업 서비스를 사용하는 조직이 보안 위험에 직면

관련 연구

비밀번호 해싱 발전 과정

  1. 초기 방안: MD5 알고리즘 (2000년대 초)
  2. 보안 문제 발견: 2005년 Lenstra 등에 의한 MD5 충돌 공격 시연
  3. 공식 폐기: 2008년 카네기 멜론 대학의 MD5 사용 중단 권고
  4. 현대 표준: NIST의 SHA-256 이상 알고리즘 권장

점진적 업그레이드 전략

  • 전통적 방안: 이중 테이블 병행, 단계적 마이그레이션
  • Facebook 방안: 해시 체인 적층
  • 보안 균형: 비용 효율성과 보안성의 균형

결론 및 논의

주요 결론

  1. 근본적 결함: Facebook의 해시 체인 방안은 설계 수준의 보안 결함을 보유
  2. 실제 악용 가능성: 취약점이 실제로 악용 가능하며 수십억 사용자에게 영향
  3. 표준 위배: 현재 네트워크 보안 표준 및 모범 사례 미충족
  4. 생태계 영향: 전체 Facebook OAuth 생태계에 영향

한계 분석

  1. 공격 전제 조건: 계정 비밀번호 설정 능력 필요로 실제 위협 시나리오 제한
  2. 방어 조치: 이중 인증 등 추가 보안 조치가 위험을 완화할 수 있음
  3. 계산 복잡도: 무작위 비밀번호의 경우 충돌 발견이 여전히 어려움
  4. 사용자 행동: 대부분의 사용자 비밀번호 엔트로피가 낮아 전통적 공격이 더 효과적일 수 있음

향후 연구 방향

  1. 대규모 마이그레이션 전략: 안전하면서도 경제적인 비밀번호 저장소 업그레이드 방안 연구
  2. 해시 체인 보안 분석: 해시 체인 보안성의 이론적 프레임워크 수립
  3. 실제 위협 평가: 이러한 유형의 취약점에 대한 실제 보안 위험의 정량화

심층 평가

장점

  1. 중대한 발견: 수십억 사용자에게 영향을 미치는 실제 보안 취약점 공개
  2. 엄밀한 방법론: 이론적 분석에서 실제 검증까지의 완전한 연구 절차
  3. 책임감 있는 공개: 적절한 취약점 공개 절차 준수
  4. 실용적 가치: 업계에 중요한 보안 경고 제공

부족한 점

  1. 위협 모델의 한계: 공격 시나리오가 상대적으로 제한적이며 실제 위협이 과대평가될 수 있음
  2. 기술적 깊이: MD5 사전상 공격에 대한 분석이 충분하지 않음
  3. 해결책 부재: 구체적인 수정 권고사항 미제시
  4. 영향 정량화 부족: 실제 공격 비용과 수익에 대한 정량적 분석 부재

영향력 평가

  1. 학술적 가치: 비밀번호 저장소 보안 연구에 중요한 사례 제공
  2. 산업적 영향: 대규모 플랫폼의 비밀번호 저장 전략 재검토 촉발 가능성
  3. 표준 제정: 관련 보안 표준 개선의 참고 자료 제공
  4. 교육적 의의: 비용 중심 의사결정이 야기할 수 있는 보안 위험 입증

적용 시나리오

  1. 대규모 인터넷 플랫폼: 수많은 사용자 비밀번호 업그레이드를 처리해야 하는 기업
  2. 보안 감사: 기업 보안팀의 기존 시스템 평가 참고 자료
  3. 학술 연구: 암호학 및 네트워크 보안 관련 연구
  4. 정책 제정: 네트워크 보안 규제 정책 수립의 참고 자료

참고 문헌

본 논문은 30편의 관련 문헌을 인용하며, 다음을 포함한다:

  • 해시 알고리즘 보안성 연구 (NIST 표준, MD5 취약점 분석)
  • 비밀번호 저장소 모범 사례 (OWASP 지침, CISA 권고)
  • Facebook 기술 공유 (2014년 비밀번호 컨퍼런스 발표)
  • 관련 보안 사건 및 데이터 유출 사례

연구의 의의: 본 연구는 수십억 사용자에게 영향을 미치는 실제 보안 취약점을 공개할 뿐만 아니라, 비용 효율성을 추구하는 과정에서 보안의 근본 원칙을 간과할 수 없다는 점을 업계 전체에 상기시킨다. 해시 체인의 보안 강도는 최약 환절에 의해 결정된다는 본 발견은 향후 비밀번호 저장소 시스템 설계를 지도하는 데 중요한 가치를 가진다.