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
Unknown Object (File)
Fri, May 3, 2:27 AM
Unknown Object (File)
Mon, Apr 29, 4:27 PM
Unknown Object (File)
Mon, Apr 29, 1:57 PM
Unknown Object (File)
Wed, Apr 24, 10:03 PM
Unknown Object (File)
Mon, Apr 22, 4:30 AM
Unknown Object (File)
Sun, Apr 21, 4:09 PM
Unknown Object (File)
Wed, Apr 17, 3:12 PM
Unknown Object (File)
Thu, Apr 11, 7:20 AM

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
Branch
hashcomp
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 7868
Build 8767: [Placeholder Plan] Wait for 30 Seconds
Build 8766: arc lint + arc unit

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.