HNHacker News
TopNewBestAskShowJobs

79d697i6fdif

192 karma · joined December 22, 2016

submissionscomments
79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
I don't think you understand how the internet works. Some websites only serve static content and don't deal with any sensitive information. Without seeing Cloudflare's data set there is no way to verify that the responses they picked are a representative sample.
79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
2. Information that can be actively exploited, but can also be fixed so the previous disclosure is harmless. This means passwords, authentication tokens, etc.

I wouldn't call the disclosure harmless. It's unknown if anyone made use of the leaked information before Cloudflare knew, so accounts should be treated as compromised unless it's shown otherwise.

Also, leaking user credentials to any system that handles payments and health info would also breach PCI/HIPAA . This broadens the scope of systems effectively breaking the law.

Another thing to keep in mind is that many(most?) token based authentication systems don't invalidate tokens. So any tokens captured will be valid until they expire, and they can't be "changed" without invalidating every outstanding token (changing the server key)

79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
My biggest issue is that they didn't release their data-set. With something this major, it's standard to either have a third party investigate or publicly release your data so it can be validated.

For all we know they cherry picked the responses they tested from a single site that doesn't handle anything sensitive.

79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
Cloudflare mentioned they only went through about 2000 leaked responses out of over a million. That combined with random people on hackernews STILL finding private data after the purge points towards this leak being a lot worse than they're letting on.

Thankfully CloudFlare spent a week cleaning up the leak in search engines and caches before publicly announcing the issue, so a lot of the evidence is gone.

79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
Hey at least mine is an obvious throwaway. And I don't think 17 comments in two months is that bad compared to ten in 5 years
79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
:( My bad.
79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
Tagging along on the top reply here, but does anyone else notice some serious HN gaming going on in this thread?

Accounts commenting that have made 10 comments in 5 years, people defending CF that, after going through their profiles, are clearly linked to CloudFlare or maybe even employees. Top relies suddenly being near the bottom and replaced by posts supporting CloudFlare with statements that don't match what was actually in the blog post.

Just seems really really fishy to me

79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
they only sampled a few thousand leaked responses out of over a million. The margin of error is 2.5% on conclusions because they didn't use enough data, not even close.
79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
Also, a lot of web spiders are not benign. All sorts of bots troll the internet looking specifically for data leaks like publicly visible email addresses and SSN's. I'm sure they're having a field day.
79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
antitrust is all bark with no bite these days. Most industries having 3-4 "competitors" that don't actually compete is the new norm. I wouldn't be amazed if a link is shown between this situation and the increasing wealth inequality
79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
So every website that uses cloudflare should ask their users to change all of their passwords, credit card numbers, and SSN's?

This leak is being downplayed by webmasters because it's so incredibly bad that there's no way of handling it. The credentials of practically any internet user could have been leaked. The only "safe" way to handle this is to give everyone in the US new credit cards and SSN's and to reset accounts and security questions for every user on a site with cloudflare

79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
And 1.2 million people dying is nothing compared to the number of people on the earth.

IMO a leak this bad should be enough to sink cloudflare. A provider of SSL was randomly spitting out private data onto public websites. OVER A MILLION TIMES. Entire CA's have been shut down for leaking a couple hundred certificates. This has leaked private data over a million times, cloudflare is a joke

79d697i6fdif··on Quantifying the Impact of “Cloudbleed”
In total, between 22 September 2016 and 18 February 2017 we now estimate based on our logs the bug was triggered 1,242,071 times.

Wow, so just as bad as we thought.

We did not find any passwords, credit cards, health records, social security numbers, or customer encryption keys in the sample set.

BUT WAIT, THERE'S MORE

The sample included thousands of pages and was statistically significant to a confidence level of 99% with a margin of error of 2.5%.

Oh, so it could actually be as a high as 2.5% leaking encryption credentials. And if none of the data was found to leak anything sensitive where the fuck is the dataset? I've been around way too long to take a "study" like this at face value without third party verification.

I also enjoy the straight up lie at the end:

We are continuing to work with third party caches to expunge leaked data and will not let up until every bit has been removed.

That sounds great right? Well, its too bad that a lot of 'third parties' are a box sitting on the corporate network edge that hasn't been touched in 5 years. Deleting all of this data from third party caches is not physically possible. In fact it might actually make things worse because it's destroying evidence of which credentials were leaked.

79d697i6fdif··on I Wrote My Fastest Hashtable
Ouch, this is much more thorough than my attempt to debunk the post.
79d697i6fdif··on I Wrote My Fastest Hashtable
realistically any hash table bigger than the 32 bit boundary will be well outside any CPU caches and possibly even ram. At these sizes the memory latency will dwarf CPU speed
79d697i6fdif··on I Wrote My Fastest Hashtable
The author seems mistaken about a couple things relating to hash tables. He doesn't seem aware that, by far, the main reason for using power-of-two hash table sizes is so you can use a simple bitshift to eliminate modulo entirely.

He is also going to run into modulo bias since using the remainder to calculate a slot position is biased toward certain positions for every table size that isn't a power of two. (see https://ericlippert.com/2013/12/16/how-much-bias-is-introduc... for cool graphs) Prime number table sizes do nothing to fix these issue. The power-of-two size with a bitshift is not just faster, it gets rid of the modulo bias.

Fastrange is much faster than modulo but if his goal is to build the fastest hashtable it's stupid to use a table size of anything except a power of two.

Source: I also wrote a hashtable :)

79d697i6fdif··on H-1B visas mainly go to Indian outsourcing firms
The Iran thing is too bad. Besides our governments not getting along, it's possibly the most advanced, moderate, and educated Muslim majority country in the middle east. Maybe second to Turkey, but Iran seems to have a lot more engineers.

I've known a few Iranian engineers and both of them were excellent. They didn't talk about politics either, the ones that come over here at least obviously don't have anything against the US.

79d697i6fdif··on Ask HN: What's your top growth strategy that helped grow your startup?
At this point I think I'm just going to start the blog I always planned but never did :). I've got about 10 pretty long articles buried in my docs folder about marketing and a bunch of other nonsense. I was never CEO/VP of a company but I've always done my best to "see the forest through the trees" with this kind of stuff.
79d697i6fdif··on Ask HN: What's your top growth strategy that helped grow your startup?
We were bootstrapped :) . Old school company that had been around for 20+ years, just needed a kick in the pants since advertising/marketing has changed immensely since the dawn of the internet.

#5 is a killer for so many places, maybe the most common big mistake. This is one place where "fake it till you make it" is absolutely mandatory for success. Selling yourself as a "freelancer" devalues everything you do. Selling yourself as a startup is similarly dangerous. Having the cutesy small business/startup vibe might sound appealing to customers and the valley but it makes you look disorganized and unstable to big successful businesses. These are the very customers willing and able to throw lots of money around.

I cringed at GitLab's unnecessary transparency recently because it makes their vulnerability and management missteps all more apparent. Their mistake is the kind of shit where the better choice from a business perspective is to be reasonably honest then give all your customers a free month or two so they stop talking about it. Their absolutely transparency exposes a lot of internal politics and missteps, especially mentioning people by name, A HUGE no-no in any kind of big business. If I was fortune 500, hell even INC 500, I would run away as fast as possible.

79d697i6fdif··on Ask HN: What's your top growth strategy that helped grow your startup?
only for free, current job prevents me from doing anything outside work :). I'll email you when off work
79d697i6fdif··on Ask HN: What's your top growth strategy that helped grow your startup?
1) Remade website to be more professional looking, faster, more focused towards SEO, mobile friendly. I could write many pages on this :) but following online guides will get you in the ballpark

2) Started writing interesting content. Truly good content is a PITA and you need to be a decent writer to make something compelling, but our first good article got us more traffic than the entire site with over 100 content pages.

3) New tools. everything linked together to see where our sales were coming from. Phone system, website, live chat, in person. All of our leads funneled into one system. We could see what was getting people and what wasn't

4) Online advertising. Locally first, expand AD reach as campaign becomes more nationally competitive. Make sure all the tools you setup continue to track where all these leads are coming from

5) Better "convincing" of clients that we're legit. Company T-Shirts and swag. Hotel-type exaggerated pictures of our team and office. Meet the team page. Professional website like I mentioned earlier. FB, google maps, yellowpages, wherever we could get a free listing. Automated scheduling systems for client meetings, phone tree for calls, tons of previous work repurposed as marketing material for clients to see. Listing our bigger clients on our website. 800 phone #. All the hallmarks of a big successful business even though we weren't exactly gave clients a much bigger confidence in our abilities and enabled us to charge more.

6) Marketing toward high value targets-- we needed to get the ear of C level and VP's. Concentrating on the fact that we were a US company without outsourcing. Marketing to wealthy areas "doctorville" we called it. Targeted marketing to business corridors. We went deep, going as far as checking the AS of your IP address and whether any services were running on it. A surprising amount of the time would could link an IP back to a company, so we could quietly market to your company just from you visiting our site.

7) competitive research. Found our biggest local competitors. Quietly outbid them on all their ad keywords. Even more quietly made sure we had all the backlinks they did on search. Got a list of their clients one way or another, marketed directly to their clients already knowing their weaknesses from our clients who previously worked with those competitors. One competitor hosted their own servers, so I figured out who owned the IP and tracked ownership of the company through their email server. Another put their email address at the bottom of all public sites they wrote, a simple targeted google search returned all/most of their clients' sites. Another had a "client login" page setup on all of their sites that had a redirect to their main page. Searching for backlinks using SEO tools revealed most of these client sites.

Lots more. It took a lot of creative thinking and some failures :)

79d697i6fdif··on Million requests per second with Python
the source to all the benchmark is available https://github.com/TechEmpower/FrameworkBenchmarks

If you want to make your chosen platform fast you can see what they're doing in the src to get those results. The ones not marked "stripped" and with "full" for ORM are very realistic examples. Not sure where you're going with this? Nobody's real workload looks exactly like benchmarks.

79d697i6fdif··on Announcing Ionic 2 Final
My argument doesn't have anything to do with multiple inheritance. C is the only one I know of that supports multiple inheritance and it's largely considered a historical mistake (see deadly diamond of death). Javascript uses something called the prototype chain to determine InstanceOf(). It's literally a linked list, and a ton of disadvantages come with the object system being a re-purposed linked list. It's possible (and easy) to break the type of an object by corrupting the prototype chain. It's the reason you have to do hacky stuff like Array.Prototype.ForEach to make sure your code actually works in larger JS applications. It's also slow and a big reason why javascript runs around 10x slower than most JIT'ed languages. The crazy object system prevents a ton of optimizations from working.

Encapsulation isn't the "classic version" of OO. It's literally the main reason OO was created. Javascript fails to encapsulate because it doesn't support true private data members. There's patterns to achieve some sort of data safety (see http://speakingjs.com/es5/ch17.html#private_data_for_objects) but they all have disadvantages because it isn't built into the language, it's another hack.

Composition can be easily achieved using interfaces in most languages, another thing javascript doesn't support.

Excusing these faults to being dynamic language is like saying the model T is a nice car because "it was good for its time". Many languages before JS (including perl even) supported a more sound and convenient type system.

JS was badly designed in many ways and we are still paying the price for it today. ES6 and transpiling have made it finally worthwhile to try to develop anything significant using it which has led to the recent explosion of javascript development. I pray that EMCA continue to remedy what can be fixed in future and that Typescript catches on since it mows over much of the insanity.

79d697i6fdif··on Million requests per second with Python
How does this get to the front page? Has nobody seen this? https://www.techempower.com/benchmarks/#section=data-r13

Much more thorough than this toy benchmark article, which reads like marketing release...

79d697i6fdif··on Ask HN: What sort of side-projects are useful for getting jobs?
it's bad code if you're writing it again. Everything you mentioned is something already handled for the developer through the browser/API's. It's like writing your own multithreading instead of using something provided by the OS. 99% of the time it's stupid
79d697i6fdif··on Announcing Ionic 2 Final
the way inheritance works in JS leads to a ton of inelegant design patterns that need to be remembered and very inefficient handling of many casts because the prototype chain is literally just a linked list.

It also prevents sound encapsulation of class local variables and methods, the main point of object oriented programming in the first place.

79d697i6fdif··on Libor: the bankers who fixed the world’s most important number
>The drop in rates arguably raised asset prices, which helps e.g. people who currently own houses. This comes at the expense of people who need to purchase houses in the future.

>However, it can also be argued that the drop in rates catalysed an economic recovery, without which there would be fewer jobs for the younger generation.

trickledown houseinomics?

79d697i6fdif··on Announcing Ionic 2 Final
I think it's around 5 years too late to prevent the complexity explosion :)

JS has been object oriented since the beginning it just has an insane prototype based inheritance hierarchy that they're increasingly trying to hide/pave over.

79d697i6fdif··on Ask HN: What sort of side-projects are useful for getting jobs?
Anything you could write in less than a half hour.

Lets take fizzbuzz for example. These types of problems almost always require manipulating strings and dumping them to the console in the simplest scenario possible. Usually the main method or equivalent in a console program.

It would be easy as hell except they don't let you use google or an IDE, so you need to memorize the syntax for the main method and string manipulation.

1) In real life you almost never write directly to the console. 2) In real life, you never manipulate strings using sub-string or regex really... In fact the only time I do this a lot is for terrible reasons in bad code. 2) Main method? If your real life app even has one it was written by the first guy 10 years ago and is 3 lines long, just some function that looks like this:

  var app= new BootStrapMainApp();
  app.run();
  logger.log("App crashed if we get here");
79d697i6fdif··on A Story of a Fraudulent Coder
You would never hire somebody like me :). I write code in IDEs usually, and never basic console apps. Always inside of a framework or a bigger project.

Good luck creating a maven project archetype and getting it to work during a whiteboard session. I would choke so hard on a basic "make a console app to display these numbers". I don't even remember the calls to string split and console display in some of my favorite languages. Why? You'd be an idiot to use those over Log4net or whatever you use in real life.

You're asking a guy that might know how to design rockets how to put together a bicycle. A does not imply B in this case.

I've always thought whiteboard interviews were biased towards those straight out of school, since that's the only place you would write toy apps that use basal language features.

On the other hand, I've got a ton of my own libraries on my Github and some of them are pretty popular. It's abundantly clear that I wrote all of these since they're all published in official package managers with my private keys.

I see things from the other direction. An employer too lazy to check my github and verify my credentials probably sucks.

Page 1 of 2Next →