The researcher who hacked Zuckerberg's page to get rewarded but not from Facebook

23/8/2013 : The researcher who hacked Zuckerberg's page to get rewarded but not from Facebook

Khalil Shreateh, the man who gained international fame a few days ago by writing on the Facebook wall of its CEO Mark Zuckerberg to prove there was a security flaw in the service, will get a monetary reward for finding the bug, but it won't be coming from Facebook itself.

Instead, the reward will come from a crowd sourced donation campaign on the Gofundme website. The page was set up by Marc Maiffret, the chief technology officer of the security firm BeyondTrust. He felt that Facebook's decision to not offer a bounty to Shreateh for finding the exploit was wrong, saying, "Let us all send a message to security researchers across the world and say that we appreciate the efforts they make for the good of everyone."

The goal was to raise $10,000 and so far, the campaign has raised over $11,000 in about a day. Maiffret says he is now in touch with Shreateh and is working with Gofundme to transfer the money to him.

Meanwhile, Facebook has now admitted that they "failed in our communication" with Shreateh when he tried to report the bug through normal channels before he decided to write on Zuckerberg's wall. In a Facebook post, the company's chief security officer Joe Sullivan stated:

We get hundreds of submissions a day, and only a tiny percent of those turn out to be legitimate bugs. As a result we were too hasty and dismissive in this case. We should have explained to this researcher that his initial messages to us did not give us enough detail to allow us to replicate the problem.

Facebook will offer more detailed information on how to report an exploit from now on and will also improve their email communications with the people who report on such bugs. However, the company is still refusing to offer a bounty to Shreateh, with Sullivan saying, "It is never acceptable to compromise the security or privacy of other people."

19/8/2013 : Security Researcher Hacks Mark Zuckerberg’s Wall To Prove His Exploit Works

Earlier this week, security researcher Khalil Shreateh discovered a Facebook bug that allowed a hacker to post on anyone’s wall — even if they weren’t that person’s friend.

While he was able to prove to Facebook that his bug was legit (despite an initial response that it wasn’t a bug at all), Facebook wasn’t too happy with the way he did it: by using the bug to post on Zuckerberg’s otherwise friends-only wall.

Security research can be a pretty tough balancing act. If you don’t follow a company’s responsible reporting terms to a T, you might be robbing yourself of your fair share of recognition and, if the company is one of many that gives bug bounties, a chunk of cash. Alas, exploiting your way onto Zuck’s timeline… doesn’t exactly comply with Facebook’s reporting rules.

In his initial report of the bug, Khalil demonstrated that he was able to post on anyone’s wall by submitting a link to a post he’d made on the wall of Sarah Goodin (a college friend of Zuck’s, and the first woman on Facebook.)

Unfortunately, the member of the Facebook Security team who clicked the link wasn’t friends with Goodin, whose wall was set to be visible to friends only. As a result, they couldn’t see Khalil’s post. (While Facebook Security can almost certainly over-ride privacy settings to see anything posted on the site, they didn’t seem to do that here)

“I don’t see anything when I click the link except an error”, responded Facebook’s Security team.

Khalil submitted the bug with the same link again, explaining that anyone investigating the link would need to either be Goodin’s friend or would need to “use [their] own authority” to view the private post.

“I am sorry this is not a bug”, replied the same member of the Security team, seemingly failing to grasp what was going on.

Khalil responded by taking his demonstration to the next level; if posting on one of Mark Zuckerberg’s friend’s walls didn’t get his point across, perhaps posting on Zuck’s own wall would?

On Thursday afternoon, Khalil posted a note into Zuckerberg’s timeline. “Sorry for breaking your privacy [to post] to your wall,” it read, “i [had] no other choice to make after all the reports I sent to Facebook team”.

Within minutes, Facebook engineers were reaching out to Khalil. He’d made his point.

Through Facebook’s whitehat exploit disclosure program, security researchers are paid at least $500 for each critical bug they report responsibly. $500 is just the minimum — the size of the bounty increases with the severity of the bug, with no set maximum.

Alas, there would be no bug bounty for Khalil. Amongst other terms, Facebook’s bug disclosure policy requires researchers to use test accounts for their investigations and reports, rather than the accounts of other Facebook users. By posting to Goodin and Zuck’s walls, he’d broken those rules pretty much right out of the gate. His reports also didn’t include enough detail of how to reproduce the bug, says Facebook:

Unfortunately your report to our Whitehat system did not have enough technical information for us to take action on it. We cannot respond to reports which do not contain enough detail to allow us to reproduce an issue. When you submit reports in the future, we ask you to please include enough detail to repeat your actions.

We are unfortunately not able to pay you for this vulnerability because your actions violated our Terms of Service. We do hope, however, that you continue to work with us to find vulnerabilities in the site.

Since Khalil’s initial post went up on Friday, there’s been a healthy debate as to whether or not Facebook should be paying him a bounty. On one hand, he broke their disclosure rules (perhaps unknowingly — as many have pointed out, Facebook’s disclosure terms are only available in English, which doesn’t seem to be Khalil’s first language); on the other, he was seemingly trying to report it responsibly rather than selling it to spammers.

Even Facebook’s own engineers have entered the discussion. On Hacker News, Facebook Security Engineer Matt Jones laid things out as he saw them:

For background, as a few other commenters have pointed out, we get hundreds of reports every day. Many of our best reports come from people whose English isn’t great – though this can be challenging, it’s something we work with just fine and we have paid out over $1 million to hundreds of reporters. However, many of the reports we get are nonsense or misguided, and even those (if you enter a password then view-source, you can access the password! When you submit a password, it’s sent in the clear over HTTPS!) provide some modicum of reproduction instructions. We should have pushed back asking for more details here.

However, the more important issue here is with how the bug was demonstrated using the accounts of real people without their permission. Exploiting bugs to impact real users is not acceptable behavior for a white hat. We allow researchers to create test accounts here: to help facilitate responsible research and testing. In this case, the researcher used the bug he discovered to post on the timelines of multiple users without their consent.

What say you? Should Facebook bend the rules and shell out? Would breaking the rules set a dangerous precedent?