Giter VIP home page Giter VIP logo

Comments (33)

jpwesselink avatar jpwesselink commented on June 1, 2024 2

I agree with @SomeoneWeird that we should have something in place asap. I'm applying the CloudFlare setup to one of my domains to see how easy it is to implement. If it doesn't give me trouble we can implement it for nodeschool.io as well.

from nodeschool.github.io.

martinheidegger avatar martinheidegger commented on June 1, 2024 2

Well done everyone!

from nodeschool.github.io.

riyadhalnur avatar riyadhalnur commented on June 1, 2024 1

Yeah, would be great if we could get Zeit to sponsor our hosting. Would solve all our problems ๐Ÿ‘ผ

from nodeschool.github.io.

SomeoneWeird avatar SomeoneWeird commented on June 1, 2024 1

Protecting 2/3 steps of the connection is the same as not having the protection at all.

So you're suggesting we have 0 protection rather than some ?

from nodeschool.github.io.

SomeoneWeird avatar SomeoneWeird commented on June 1, 2024 1

Anyway, enabling SSL (even if it's just for the 75%!) should be the first thing we do ASAP. We can reevaluate and keep arguing about it, but as long as we have something soon, we have time to evaluate the best way to proceed from here.

from nodeschool.github.io.

jpwesselink avatar jpwesselink commented on June 1, 2024 1

Thanks @brianloveswords. It seems that the changes have propagated properly and we have a valid certificate ๐ŸŽ‰

screen shot 2016-10-21 at 00 28 44

from nodeschool.github.io.

martinheidegger avatar martinheidegger commented on June 1, 2024

It is possible put a https proxy in front of github webhosting. or use a different webhost to host http://nodeschool.io. In any case: Infra support welcome.

from nodeschool.github.io.

jpwesselink avatar jpwesselink commented on June 1, 2024

A decent solution could be using CloudFlare, as decribed here. We probably need a different tier than their free one though because their free tier does not support sha1 for older browsers.

I'd like to match the Google Analytics data from nodeschool.io against the statistics provided by CloudFlare to see how many of our visitors we would exclude if we would use CloudFlare's free tier.

@martinheidegger Do you know who has access to this Google Analytics data?

Below CloudFlare stats.

Country Percentage of Browsers Without SHA-2 Support
China 6.08%
Cameroon 5.39%
Yemen 5.25%
Sudan 4.69%
Egypt 4.85%
Libya 4.83%
Ivory Coast 4.67%
Nepal 4.52%
Ghana 4.42%
Nigeria 4.32%
Ethiopia 3.82%
Iran 3.78%
Tanzania 3.72%
Syria 3.63%
Paraguay 3.53%
Angola 3.50%
Kenya 3.29%
Algeria 3.12%
Bahrain 3.09%
Nicaragua 3.08%
Myanmar 3.01%
Senegal 2.94%
Bangladesh 2.58%
Venezuela 2.58%
Pakistan 2.55%

Edit: s/Cloudflare/CloudFlare/

from nodeschool.github.io.

riyadhalnur avatar riyadhalnur commented on June 1, 2024

My concern with using CloudFlare is that the connection between CloudFlare and GitHub will not be over SSL. Protecting 2/3 steps of the connection is the same as not having the protection at all.

from nodeschool.github.io.

jpwesselink avatar jpwesselink commented on June 1, 2024

Doesn't it work like this?

https://nodeschool.io (at CloudFlare) < - > https://nodeschool.github.io (at GitHub)

from nodeschool.github.io.

riyadhalnur avatar riyadhalnur commented on June 1, 2024

More like this :
User <-- SSL --> CloudFlare <-- HTTP --> GitHub

Cloudflare

I don't think we can opt for Full SSL (Strict). Assuming we opt for Full SSL (2nd option), since CloudFlare doesn't validate the certificate, we would be risking a MITM attack.

from nodeschool.github.io.

jpwesselink avatar jpwesselink commented on June 1, 2024

Aha. So Full SSL (Strict) would only suffice. What do we need for that?

from nodeschool.github.io.

riyadhalnur avatar riyadhalnur commented on June 1, 2024

From what I understand after reading this thread, I don't think Full SSL (Strict) is going to work. Seems like for now, people are opting for Flexible SSL because Full SSL by itself doesn't really make much difference.

from nodeschool.github.io.

martinheidegger avatar martinheidegger commented on June 1, 2024

A different thought: now costs 14.90/month for a custom_domain. And it would allow us to do some other, server-side processing as well. I wonder if we could get open-source sponsoring?

from nodeschool.github.io.

jpwesselink avatar jpwesselink commented on June 1, 2024

@riyadhalnur I see, interesting thread. Ok, then CloudFlare is not going to work.

from nodeschool.github.io.

martinheidegger avatar martinheidegger commented on June 1, 2024

(with now it is possible to serve ssl content)

from nodeschool.github.io.

jpwesselink avatar jpwesselink commented on June 1, 2024

@rauchg, would it be possible for Zeit to sponsor us with hosting?

from nodeschool.github.io.

SomeoneWeird avatar SomeoneWeird commented on June 1, 2024

If the origin server has SSL, cloudflare will 100% use that if you enable "Full SSL" (but not strict mode) when connecting back to origin. Just because something is not 100% perfect does not mean we can't use it.

from nodeschool.github.io.

riyadhalnur avatar riyadhalnur commented on June 1, 2024

@SomeoneWeird If there's a possibility of MITM attacks, yes I don't think it's worth protecting two-thirds of the path. The whole point of SSL is to mitigate MITM attacks among others.

from nodeschool.github.io.

SomeoneWeird avatar SomeoneWeird commented on June 1, 2024

@riyadhalnur So you would rather leave everyone open to 100% possibility of MITM, rather than protecting against the 75% - albeit leaving the hardest 25% vulnerable? That seems very backwards.

from nodeschool.github.io.

riyadhalnur avatar riyadhalnur commented on June 1, 2024

If there was to be a MITM attack when you have 75% of it protected, then the loss of trust that will arise is more damaging. We'll essentially be giving people a false sense of security.

Another example would be this scenario - serving an app over HTTPS but storing user passwords in plain text in the database.

from nodeschool.github.io.

SomeoneWeird avatar SomeoneWeird commented on June 1, 2024

So you would rather leave everything open to MITM to really basic adversaries (like somebody sitting on the same WiFi router as them) than protecting against the easiest 75% and now having to fend off nation-state level attackers that have to be able to MITM the infrastructure between Cloudflare and Github?

"Don't do nothing just because you can't do everything"

from nodeschool.github.io.

riyadhalnur avatar riyadhalnur commented on June 1, 2024

I get your point but you're assuming that only state level actors can inflict damage on the unprotected 25%. This incident doesn't give me confidence.

from nodeschool.github.io.

SomeoneWeird avatar SomeoneWeird commented on June 1, 2024

Even if we have 100% SSL across everything, it would still be a problem if a rogue CAย handed out malicious certs. What we're talking about here doesn't (and can't!) protect against that. I'm assuming that anybody that can get access to a link between CF & GH can MITM that connection, and with DCs crazy security nowadays, I am presume only a nation-state-level actor would be able to do it.

from nodeschool.github.io.

SomeoneWeird avatar SomeoneWeird commented on June 1, 2024

Enabling stuff like HPKP can be done on top of us enabling SSL on the website, which would mitigate some of the attack avenues of rogue-certificates. But we still need SSL.

from nodeschool.github.io.

riyadhalnur avatar riyadhalnur commented on June 1, 2024

That's a level of trust you walk in with when deploying SSL anywhere be it from Let's Encrypt, DigiCert, Comodo and so on. That like everything else goes to show nothing's 100% perfect but would you want to push that trust beyond that, as a real user?

from nodeschool.github.io.

SomeoneWeird avatar SomeoneWeird commented on June 1, 2024

I know, that's what i'm arguing for. You're saying that just because we can't 100% trust everybody then we shouldn't use SSL?

from nodeschool.github.io.

riyadhalnur avatar riyadhalnur commented on June 1, 2024

I'm not saying we should never use SSL but personally, I would not want to push my trust beyond a certain point which is the case here - accepting at all that benefit of last-mile security outweighs harm from illusion of security.

We could definitely use CloudFlare for the time being and since we don't have any sensitive information passing through the servers (none comes to mind), it would theoretically be ok. I personally would still like an option like now.

from nodeschool.github.io.

gerrywastaken avatar gerrywastaken commented on June 1, 2024

@SomeoneWeird If there's a possibility of MITM attacks, yes I don't think it's worth protecting two-thirds of the path. The whole point of SSL is to mitigate MITM attacks among others.

@riyadhalnur I agree completely. Even with a secure connection, you're still only protecting part of the path, the hosting company can still access data. A browser/OS vendor could still supply fake root certificates and hijack all traffic. If we can't prevent against these things then we are just engaging in security theatre. The only reasonable step is to remove the hard drive from the server, store it in a vault and weld it shut.

Although, I have to admit the unlikely possibility that I might be wrong and that just maybe security isn't boolean and instead a balance between risk and convenience.

from nodeschool.github.io.

riyadhalnur avatar riyadhalnur commented on June 1, 2024

@gerrywastaken thank you for making my day a bit brighter ๐Ÿ˜„
cee2e2017554de6da437cb4c37dfb65be82a6da7949a56fc24e9ad41e00b84b7

from nodeschool.github.io.

jpwesselink avatar jpwesselink commented on June 1, 2024

Current DNS records are like so:

~ โžœ host -a nodeschool.io
Trying "nodeschool.io"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 3241
;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 10

;; QUESTION SECTION:
;nodeschool.io.                 IN      ANY

;; ANSWER SECTION:
nodeschool.io.          3334    IN      TXT     "v=spf1 include:mailgun.org ~all"
nodeschool.io.          3334    IN      NS      ns2.dnsimple.com.
nodeschool.io.          3334    IN      NS      ns3.dnsimple.com.
nodeschool.io.          3334    IN      NS      ns4.dnsimple.com.
nodeschool.io.          3334    IN      NS      ns1.dnsimple.com.
nodeschool.io.          3334    IN      SOA     ns1.dnsimple.com. admin.dnsimple.com. 1435660680 86400 7200 604800 300
nodeschool.io.          86400   IN      A       192.30.252.153
nodeschool.io.          3334    IN      MX      10 mxa.mailgun.org.
nodeschool.io.          3334    IN      MX      10 mxb.mailgun.org.

CloudFlare will copy 'em like this:

screen shot 2016-10-19 at 12 21 21

@brianloveswords if this looks sane to you, can change the nameservers like so?

Current Nameservers Change Nameservers to
ns1.dnsimple.com brad.ns.cloudflare.com
ns2.dnsimple.com kristin.ns.cloudflare.com
ns3.dnsimple.com Remove this nameserver
ns4.dnsimple.com Remove this nameserver

from nodeschool.github.io.

brianloveswords avatar brianloveswords commented on June 1, 2024

@jpwesselink we good on this issue, think we can close it?

EDIT: nevermind I commented before refreshing! Thanks for driving this.

from nodeschool.github.io.

jpwesselink avatar jpwesselink commented on June 1, 2024

With pleasure :)

from nodeschool.github.io.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.