Page MenuHomePhabricator

Use phutil_hashes_are_identical() when comparing hashes in Phabricator
ClosedPublic

Authored by epriestley on Sep 1 2015, 2:39 AM.
Tags
None
Referenced Files
F19529623: D14026.id33933.diff
Mon, Jan 19, 5:38 PM
F19526486: D14026.id33933.diff
Sun, Jan 18, 5:32 PM
F19507502: D14026.diff
Fri, Jan 9, 9:10 PM
F19304035: D14026.diff
Dec 24 2025, 6:49 AM
F19103247: D14026.id33913.diff
Dec 5 2025, 8:52 AM
F19038845: D14026.id.diff
Nov 26 2025, 5:52 AM
F19036233: D14026.id33913.diff
Nov 25 2025, 7:12 PM
F19035781: D14026.id33913.diff
Nov 25 2025, 6:09 PM

Details

Summary

See D14025. In all cases where we compare hashes, use strict, constant-time comparisons.

Test Plan

Logged in, logged out, added TOTP, ran Conduit, terminated sessions, submitted forms, changed password. Tweaked CSRF token, got rejected.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

epriestley retitled this revision from to Use phutil_hashes_are_identical() when comparing hashes in Phabricator.
epriestley updated this object.
epriestley edited the test plan for this revision. (Show Details)
epriestley added a reviewer: chad.
src/applications/people/storage/PhabricatorUser.php
411–412

The extra changes here are just following through with this and removing support for the plain CSRF tokens. The BREACH tokens have been in the wild for a little over a year, now.

chad edited edge metadata.
This revision is now accepted and ready to land.Sep 1 2015, 2:46 AM
This revision was automatically updated to reflect the committed changes.