Skip to content

Don’t trust publisher payment information over HTTP #104

Open

Description

@da2x

Too tempting for public access points, caches, proxies, ISPs, malicious software, attackers, and myself to intercept HTTP requests to /tipsy.txt and insert their own payment information. The same goes for payment information extracted from pages.

I’ll submit a patch with the following logic change:

  • Only read on-page payment details over HTTPS
  • If HTTP page or no on-page payment details, then try to load /tipsy.txt over HTTPS.

This will allow publishers who for technical reasons still stick with HTTP for their main page to still supply payment information for Tipsy over HTTPS.

Browsers will begin marking websites loaded over HTTP as insecure later this year, so this policy is just keeping up with the times.

Activity

  1. tbranyen commented on Feb 16, 2017

    @tbranyen
    Member

    Is this to help mitigate MITM attempts?

  2. da2x commented on Feb 16, 2017

    @da2x
    ContributorAuthor

    Indeed. “public access points, caches, proxies, ISPs, malicious software, attackers” all qualify as men/women/persons/services in the middle.

  3. karger commented on Feb 16, 2017

    @karger
    Member

    My only concern here is novices who haven't implemented https for their sites. Is there a way we can let them use http without compromising anyone else's tipsy security? Possibly not; obvious schemes don't work. For example, if I try https first and failover to http, then the MITM can just block the https connection to trick me.

  4. schilippe commented on Feb 16, 2017

    @schilippe
    Contributor
  5. da2x commented on Feb 16, 2017

    @da2x
    ContributorAuthor

    there a way we can let them use http without compromising anyone else's tipsy security?

    Setup a central register and curate a verified list. Painful, time-consuming, and undesirable.

    Total novices host with Blogger, GitHub, WordPress, Squarespace, etc. These already provide HTTPS by default for their users.

    HTTP-only origins already have limited access to modern browser APIs.

    As I said, http will be marked as insecure in leading browsers later this year. (Actually, the first start at the end of the month!) Plain-text HTTP is taking it’s dying breaths.

  6. da2x commented on Feb 16, 2017

    @da2x
    ContributorAuthor

    … which reminds me that the project website is HTTP-only. 👎

  7. karger commented on Feb 16, 2017

    @karger
    Member
  8. tbranyen commented on Feb 16, 2017

    @tbranyen
    Member

    @karger I set up https://letsencrypt.org/ (free and open certificates) recently and it's been working well. used certbot which is a CLI tool that verifies your domain and issues the certificate. you can set it up to run on a schedule with cron as well (although I used systemd on my server). I can try and get a list of commands together to run to set this up, or help someone else who has access.

  9. karger commented on May 24, 2017

    @karger
    Member

    It took a while but thanks to netlify I've been able to move http://tipsy.news/ to support https://tipsy.news/ as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions