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.
논문 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의 비밀번호 저장 체계의 보안 약점을 입증하는 첫 번째 악용 사례를 제시하고 그 함의를 논의한다. 적절한 윤리적 공개 지침 및 벤더 통지가 준수되었다.
본 연구가 해결하고자 하는 핵심 문제는 다음과 같다: 현대의 대규모 인터넷 플랫폼이 비용 절감을 위해 채택한 점진적 해시 알고리즘 업그레이드 전략이 심각한 보안 취약점을 야기할 수 있다 .
영향 규모의 거대함 : Meta 플랫폼은 약 40억 월간 활성 사용자를 보유하고 있으며, 보안 문제의 영향 범위가 극히 광범위함업계 대표성 : 기술 선도 기업인 Facebook의 접근 방식이 다른 기업들에 의해 모방될 가능성이론과 실제의 괴리 : 이론적으로 안전한 해시 체인이 실제 적용에서 근본적인 결함을 가질 수 있음을 입증전통적인 비밀번호 저장소 업그레이드 방안은 다음을 요구한다:
두 개의 해시 테이블 유지 (구형 MD5 및 신형 SHA1) 모든 사용자의 재로그인을 통한 마이그레이션 완료 대기 장기간 비활성 사용자의 데이터 마이그레이션 처리 높은 시스템 재구성 비용 부담 Facebook 엔지니어들은 위의 비용을 회피하기 위해 창의적으로 해시 체인 방안을 채택했으나, 이 "영리한" 해결책은 실제로 심각한 보안 취약점을 야기했으며, 이에 대한 심층적 분석이 필요하다.
Facebook 비밀번호 저장소의 근본적 보안 결함 최초 공개 : 해시 체인 방안의 보안 강도가 최약 환절인 MD5 수준으로 저하됨을 입증작동 가능한 취약점 악용 코드 제공 : 실제 해시 충돌 공격을 시연하여 잘못된 비밀번호로 Facebook 계정에 로그인 가능함을 입증포괄적 보안 영향 분석 : 수십억 사용자 및 OAuth 생태계에 대한 취약점의 영향을 상세히 평가책임감 있는 공개 준수 : 공개 전 Meta에 취약점을 보고하고 확인을 획득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
Facebook 계정 생성, 비밀번호를 문자열 a로 설정 계정 로그아웃, 브라우저 데이터 삭제 문자열 b를 비밀번호로 사용하여 로그인 시도 결과 : 로그인 성공, 취약점 존재 입증플랫폼 : Facebook.com테스트 시간 : 논문 작성 시점 (2025년 10월)검증 방법 : 실제 계정 생성 및 로그인 테스트계정 생성 : MD5 충돌 쌍의 첫 번째 문자열을 비밀번호로 사용환경 초기화 : 서로 다른 사용자 환경을 모의하기 위해 기기/네트워크 변경공격 검증 : 두 번째 충돌 문자열을 사용하여 로그인 시도결과 확인 : 공격 성공률의 체계적 검증공격 성공률 : 100% (테스트 기간 내 체계적 성공)취약점 확인 : Facebook이 2014년 공개된 해시 체인 방안을 여전히 사용 중임을 확인보안 저하 : 비밀번호 보안 강도가 예상 256비트에서 123-128비트로 저하계정 접근 : 원본이 아닌 비밀번호로 Facebook 계정에 로그인 가능비밀번호 복구 복잡도 : 2^256에서 2^123-2^128로 감소표준 준수성 : NIST 보안 표준 미충족비밀번호 엔트로피 제한 : 최대 유효 비밀번호 엔트로피는 15-16자만 가능OAuth 서비스 : Facebook OAuth 로그인을 사용하는 모든 제3자 서비스가 영향을 받음기업 사용자 : Facebook 기업 서비스를 사용하는 조직이 보안 위험에 직면초기 방안 : MD5 알고리즘 (2000년대 초)보안 문제 발견 : 2005년 Lenstra 등에 의한 MD5 충돌 공격 시연공식 폐기 : 2008년 카네기 멜론 대학의 MD5 사용 중단 권고현대 표준 : NIST의 SHA-256 이상 알고리즘 권장전통적 방안 : 이중 테이블 병행, 단계적 마이그레이션Facebook 방안 : 해시 체인 적층보안 균형 : 비용 효율성과 보안성의 균형근본적 결함 : Facebook의 해시 체인 방안은 설계 수준의 보안 결함을 보유실제 악용 가능성 : 취약점이 실제로 악용 가능하며 수십억 사용자에게 영향표준 위배 : 현재 네트워크 보안 표준 및 모범 사례 미충족생태계 영향 : 전체 Facebook OAuth 생태계에 영향공격 전제 조건 : 계정 비밀번호 설정 능력 필요로 실제 위협 시나리오 제한방어 조치 : 이중 인증 등 추가 보안 조치가 위험을 완화할 수 있음계산 복잡도 : 무작위 비밀번호의 경우 충돌 발견이 여전히 어려움사용자 행동 : 대부분의 사용자 비밀번호 엔트로피가 낮아 전통적 공격이 더 효과적일 수 있음대규모 마이그레이션 전략 : 안전하면서도 경제적인 비밀번호 저장소 업그레이드 방안 연구해시 체인 보안 분석 : 해시 체인 보안성의 이론적 프레임워크 수립실제 위협 평가 : 이러한 유형의 취약점에 대한 실제 보안 위험의 정량화중대한 발견 : 수십억 사용자에게 영향을 미치는 실제 보안 취약점 공개엄밀한 방법론 : 이론적 분석에서 실제 검증까지의 완전한 연구 절차책임감 있는 공개 : 적절한 취약점 공개 절차 준수실용적 가치 : 업계에 중요한 보안 경고 제공위협 모델의 한계 : 공격 시나리오가 상대적으로 제한적이며 실제 위협이 과대평가될 수 있음기술적 깊이 : MD5 사전상 공격에 대한 분석이 충분하지 않음해결책 부재 : 구체적인 수정 권고사항 미제시영향 정량화 부족 : 실제 공격 비용과 수익에 대한 정량적 분석 부재학술적 가치 : 비밀번호 저장소 보안 연구에 중요한 사례 제공산업적 영향 : 대규모 플랫폼의 비밀번호 저장 전략 재검토 촉발 가능성표준 제정 : 관련 보안 표준 개선의 참고 자료 제공교육적 의의 : 비용 중심 의사결정이 야기할 수 있는 보안 위험 입증대규모 인터넷 플랫폼 : 수많은 사용자 비밀번호 업그레이드를 처리해야 하는 기업보안 감사 : 기업 보안팀의 기존 시스템 평가 참고 자료학술 연구 : 암호학 및 네트워크 보안 관련 연구정책 제정 : 네트워크 보안 규제 정책 수립의 참고 자료본 논문은 30편의 관련 문헌을 인용하며, 다음을 포함한다:
해시 알고리즘 보안성 연구 (NIST 표준, MD5 취약점 분석) 비밀번호 저장소 모범 사례 (OWASP 지침, CISA 권고) Facebook 기술 공유 (2014년 비밀번호 컨퍼런스 발표) 관련 보안 사건 및 데이터 유출 사례 연구의 의의 : 본 연구는 수십억 사용자에게 영향을 미치는 실제 보안 취약점을 공개할 뿐만 아니라, 비용 효율성을 추구하는 과정에서 보안의 근본 원칙을 간과할 수 없다는 점을 업계 전체에 상기시킨다. 해시 체인의 보안 강도는 최약 환절에 의해 결정된다는 본 발견은 향후 비밀번호 저장소 시스템 설계를 지도하는 데 중요한 가치를 가진다.