Page MenuHomePhabricator
Feed Advanced Search

Jan 23 2019

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D20022: Implement SMS MFA.
Jan 23 2019, 6:40 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

managing contact numbers

Jan 23 2019, 6:32 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

Also, managing contact numbers needs to require MFA or evading SMS MFA is trivial. 馃悎

Jan 23 2019, 6:07 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D20021: Add a pre-enroll step for MFA, primarily as a CSRF gate.
Jan 23 2019, 5:50 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

Currently, I think attackers can CSRF the MFA enroll endpoint (/mfa/new/?provider=xyz). This could send you an SMS, soon. This is mostly harmless but potentially a little annoying with push factors like SMS/Duo. I'll get a CSRF gate on it.

Jan 23 2019, 4:51 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D20020: Allow different MFA factor types (SMS, TOTP, Duo, ...) to share "sync" tokens when enrolling new factors.
Jan 23 2019, 4:42 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D20019: Add a rate limit for enroll attempts when adding new MFA configurations.
Jan 23 2019, 3:29 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D20018: Don't rate limit users clicking "Wait Patiently" at an MFA gate even if they typed some text earlier.
Jan 23 2019, 3:12 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

Also, I think we still have an issue with rate limiting where:

Jan 23 2019, 12:23 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

So I don't forget about it: the default settings/ UI is now incorrectly showing Conpherence settings, not date and time settings. Clicking anything works properly.

Jan 23 2019, 12:19 PMPlans

Jan 21 2019

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D20008: Allow users to access some settings at the "Add MFA" account setup roadblock.
Jan 21 2019, 8:10 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

The need for more UI support on the "MFA Required" flow is making me consider expanding scope here into knocking "Settings" back out to a full-width UI. I think that's not terribly hard. I'm maybe going to start there so it can get more testing as I go through everything else, and I can give up if it's harder than I think.

Jan 21 2019, 5:30 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

From D19975, two considerations:

Jan 21 2019, 5:26 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

T13227 also needs to happen this week.

Jan 21 2019, 5:19 PMPlans
joshuaspence added a watcher for Plans: joshuaspence.
Jan 21 2019, 1:40 AM

Jan 19 2019

epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

The fix for T12921: Link to referenced object in transaction emails (in D19968) is a bit buggy -- the links aren't generating as absolute links with a protocol and domain name. This is likely an easy fix, although I don't expect to get to it tonight.

Jan 19 2019, 4:20 AMPlans

Jan 18 2019

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19997: Put a hard limit on password login attempts from the same remote address.
Jan 18 2019, 2:02 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19994: Show the customized "Login" message on the login screen.
Jan 18 2019, 2:32 AMPlans

Jan 17 2019

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19992: Add "Auth Messages" to support customizing onboarding/welcome flows.
Jan 17 2019, 7:43 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19987: Don't bounce mail messages if any recipient was reserved.
Jan 17 2019, 2:47 PMPlans

Jan 16 2019

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19981: Use "random_bytes()" under newer PHP, and introduce "Filesystem::readRandomInteger()".
Jan 16 2019, 5:14 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

SMS MFA

Jan 16 2019, 3:51 PMPlans

Jan 15 2019

epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

since there's a bunch of errata collected here

Jan 15 2019, 9:46 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19976: Update `bin/auth` MFA commands for the new "MFA Provider" indirection layer.
Jan 15 2019, 9:38 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19975: Convert user MFA factors to point at configurable "MFA Providers", not raw "MFA Factors".
Jan 15 2019, 9:19 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

One issue here is that existing MFA factors now require a concrete Factor object to associate with. To preserve existing behavior, we'd need to create a new one automatically on all installs. This inevitably turns into a little bit of a mess where we have some builtinKey factors and some organic factors. Nothing terrible, but not especially clean.

Jan 15 2019, 3:19 PMPlans

Jan 14 2019

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19965: Update the "SES" and "sendmail" mailers for the new API; remove "encoding".
Jan 14 2019, 5:02 PMPlans

Jan 5 2019

epriestley added a comment to T13123: Plans: Improve SSH key parsing and handling.

The other component of that report is that there are 32,768 low-entropy "2048-bit" RSA keys which Debian systems generated until ~2008:

Jan 5 2019, 4:08 AMPlans, Auth
epriestley added a comment to T13123: Plans: Improve SSH key parsing and handling.

See https://hackerone.com/reports/474897, which suggests that ssh-keygen -l ... ("Show fingerprint of specified public key file.") is probably a pretty good starting point for ssh --is-this-a-valid-public-key:

Jan 5 2019, 3:50 AMPlans, Auth

Jan 3 2019

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19953: Prevent inbound processing of the "void/placeholder" address and other reserved addresses.
Jan 3 2019, 11:59 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19943: Pass timeline view data to comment previews, restoring Differential comment previews.
Jan 3 2019, 1:16 AMPlans

Jan 2 2019

epriestley added a comment to T13123: Plans: Improve SSH key parsing and handling.

See PHI500 and T13179. Recent versions of SSH support passing the key fingerprint to the AuthorizedKeysCommand by specifying it like this:

Jan 2 2019, 8:22 PMPlans, Auth
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

D19935 prepares for multiple MFA provider types.

Jan 2 2019, 6:59 PMPlans

Dec 29 2018

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19935: Add a skeleton for configurable MFA provider types.
Dec 29 2018, 1:54 AMPlans

Dec 28 2018

epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

I expect to make TOTP configuration a concrete object, then pursue Yubikey/U2F (T8787) and Duo (PHI912).

Dec 28 2018, 10:54 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.
  • Also, comment interactions should get a warning when you'll be required to MFA on submit, especially when you don't have MFA on your account.
Dec 28 2018, 10:47 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

Also, just so I don't forget:

Dec 28 2018, 8:47 PMPlans

Dec 22 2018

epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

The bit-strength change above should still happen.

Dec 22 2018, 10:41 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: Restricted Differential Revision.
Dec 22 2018, 12:54 PMPlans

Dec 20 2018

epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.
  • We still need to key the Image table in Pholio (see D19914) although the right key looks like just <mockPHID>.
  • instances/ should get some cleanup for the changes to transactions.
Dec 20 2018, 10:53 PMPlans
epriestley updated the task description for T13178: Plans: Support Pact Competitive Update.
Dec 20 2018, 7:57 PMPlans, Support, Phacility

Dec 18 2018

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19909: Remove the "willApplyTransactions()" hook from ApplicationTransactionEditor.
Dec 18 2018, 10:34 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19908: Improve UI for "wait" and "answered" MFA challenges.
Dec 18 2018, 10:19 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19906: Fix a double-prompt for MFA when recovering a password account.
Dec 18 2018, 8:04 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19905: Make partial sessions expire after 30 minutes, and do not extend them.
Dec 18 2018, 7:58 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19904: Remove support for the "TYPE_AUTH_WILLLOGIN" event.
Dec 18 2018, 7:38 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19903: Allow "bin/auth recover" to generate a link which forces a full login session.
Dec 18 2018, 7:17 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19902: Allow tokens to be awarded to MFA-required objects.
Dec 18 2018, 4:23 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19901: Allow "MFA Required" objects to be edited without MFA if the edit is only creating inverse edges.
Dec 18 2018, 4:12 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19900: Improve UI messaging around "one-shot" vs "session upgrade" MFA.
Dec 18 2018, 4:04 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19899: Allow objects to be put in an "MFA required for all interactions" mode, and support "MFA required" statuses in Maniphest.
Dec 18 2018, 3:19 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

Notes for myself:

Dec 18 2018, 3:06 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19898: Tighten some MFA/TOTP parameters to improve resistance to brute force attacks.
Dec 18 2018, 2:01 PMPlans

Dec 17 2018

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19897: Allow any transaction group to be signed with a one-shot "Sign With MFA" action.
Dec 17 2018, 8:37 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19896: In Legalpad, prompt for MFA at the end of the workflow instead of the beginning.
Dec 17 2018, 7:24 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19895: Carry MFA responses which have been "answered" but not "completed" through the MFA workflow.
Dec 17 2018, 7:12 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19894: Explicitly mark MFA challenges as "answered" and "completed".
Dec 17 2018, 6:10 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19893: When accepting a TOTP response, require it respond explicitly to a specific challenge.
Dec 17 2018, 5:19 PMPlans
epriestley renamed T13222: 2018 Week 48-51 Bonus Content from 2018 Week 48-50 Bonus Content to 2018 Week 48-51 Bonus Content.
Dec 17 2018, 2:51 PMPlans

Dec 16 2018

20after4 added a watcher for Plans: 20after4.
Dec 16 2018, 6:03 PM

Dec 14 2018

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19890: Simplify and correct some challenge TTL lockout code.
Dec 14 2018, 3:57 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19889: Bind MFA challenges to particular workflows, like signing a specific Legalpad document.
Dec 14 2018, 2:16 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19888: Add a garbage collector for MFA challenges.
Dec 14 2018, 1:32 PMPlans

Dec 13 2018

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19886: Track MFA "challenges" so we can bind challenges to sessions and support SMS and other push MFA.
Dec 13 2018, 11:44 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19885: Require MFA implementations to return a formal result object when validating factors.
Dec 13 2018, 8:41 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19884: Upgrade an old "weakDigest()" inside TOTP synchronization code.
Dec 13 2018, 8:19 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19883: Upgrade sessions digests to HMAC256, retaining compatibility with old digests.
Dec 13 2018, 7:31 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

One piece of minor mess here -- when you bin/auth recover yourself into a MFA'd account, you can get two MFA prompts: one to upgrade the session, then one to allow you to perform a password reset. Probably, the contextless password reset should only require MFA if you actually submit the form, and should do one-shot MFA, and ideally should carry the challenge tokens from the login and belong to the same workflow, although that's probably impractical.

Dec 13 2018, 7:21 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19882: Fix construction of two new qsprintf() exceptions.
Dec 13 2018, 7:01 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19881: Give sessions real PHIDs and slightly modernize session queries.
Dec 13 2018, 6:34 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

Bind Challenges to Sessions

Dec 13 2018, 6:03 PMPlans

Dec 12 2018

epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

This should learn from Auth and support multiple providers of the same type from initial implementation (see T6703).

Dec 12 2018, 8:37 PMPlans
epriestley updated the task description for T13222: 2018 Week 48-51 Bonus Content.
Dec 12 2018, 7:30 PMPlans

Dec 11 2018

epriestley updated the task description for T13222: 2018 Week 48-51 Bonus Content.
Dec 11 2018, 12:28 AMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19867: Make viewing a user's profile page clear notifications about that user.
Dec 11 2018, 12:15 AMPlans

Dec 10 2018

epriestley updated the task description for T13222: 2018 Week 48-51 Bonus Content.
Dec 10 2018, 11:24 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19866: Add a CLI workflow for testing that notifications are being delivered.
Dec 10 2018, 10:36 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19865: Remove obsolete "NotifyTest" feed story.
Dec 10 2018, 10:26 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19864: Separate "feed" and "notifications" better, allow stories to appear in notifications only.
Dec 10 2018, 10:23 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19861: Update the "Notification Test" workflow to use more modern mechanisms.
Dec 10 2018, 8:35 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19860: Fix a bad method call signature throwing exceptions in newer Node.
Dec 10 2018, 7:43 PMPlans
epriestley updated the task description for T13222: 2018 Week 48-51 Bonus Content.
Dec 10 2018, 7:09 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19859: When users mark their own inline comments as "Done", suppress the timeline/mail stories.
Dec 10 2018, 7:07 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19858: Share more inline "Done" code between Differential and Diffusion.
Dec 10 2018, 6:40 PMPlans
epriestley updated the task description for T13222: 2018 Week 48-51 Bonus Content.
Dec 10 2018, 4:09 PMPlans
epriestley added a comment to T13222: 2018 Week 48-51 Bonus Content.

See D19829 for a followup change: getDetail()/setDetail() should be more-private APIs than they are today, and callers elsewhere (like transaction logic) should use methods like getEncoding(), not getDetail('encoding').

Dec 10 2018, 4:09 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19857: Give "Track Only" repository detail proper getters/setters.
Dec 10 2018, 4:06 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19856: Give "Autoclose Only" repository detail proper getters/setters.
Dec 10 2018, 3:51 PMPlans
epriestley updated the task description for T13222: 2018 Week 48-51 Bonus Content.
Dec 10 2018, 2:20 PMPlans
epriestley updated the task description for T13222: 2018 Week 48-51 Bonus Content.
Dec 10 2018, 2:20 PMPlans
epriestley renamed T13222: 2018 Week 48-51 Bonus Content from 2018 Week 48-49 Bonus Content to 2018 Week 48-50 Bonus Content.
Dec 10 2018, 2:20 PMPlans

Dec 7 2018

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19855: Replace the "Choose Subtype" radio buttons dialog with a simpler "big stuff you click" sort of UI.
Dec 7 2018, 2:15 PMPlans

Dec 6 2018

epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19854: Allow "maniphest.subtypes" to configure which options are presented by "Create Subtask".
Dec 6 2018, 7:55 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19853: Allow the "Create Subtask" workflow to prompt for a subtype selection, and prepare for customizable options.
Dec 6 2018, 7:09 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19852: Replace the informal "array" subtype map with a more formal "SubtypeMap" object.
Dec 6 2018, 4:15 PMPlans

Dec 5 2018

epriestley updated the task description for T13222: 2018 Week 48-51 Bonus Content.
Dec 5 2018, 9:32 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19851: Add an "availaiblity" attachment for user.search.
Dec 5 2018, 8:48 PMPlans
epriestley updated the task description for T13222: 2018 Week 48-51 Bonus Content.
Dec 5 2018, 8:36 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19850: Allow "bin/repository thaw --demote" to demote an entire service, not just a single device.
Dec 5 2018, 8:24 PMPlans
epriestley added a revision to T13222: 2018 Week 48-51 Bonus Content: D19849: Allow "bin/repository thaw" to accept "--all-repositories" instead of a list of repositories.
Dec 5 2018, 7:58 PMPlans