UPDATE: MLB says there are safeguards in place for All-Star vote shenanigans

51 Comments

An update, via ESPN:

MLB makes a concerted effort to investigate votes that: 1. come from accounts created using email addresses that appear to have been tweaked in some way that too closely resemble another address; 2. multiple voting accounts that come from the same IP address; and 3. troubling patterns in voting that emerge during the reviews by a third-party company employed to chart All-Star Game balloting trends.

[Bob] Bowman [MLB President of Business and Media] said that process alone leads to about 20 percent of the votes that are cast online being eliminated every year. With that in mind, all the votes MLB has reported so far have been sanitized.

And then there’s this from Jeff Passan of Yahoo Sports:

More than 300 million votes have been accepted, according to the league, and the record of 390 million should fall sometime this week. Almost certainly a half-billion votes will be cast by the time balloting ends at 11:59 p.m. ET on July 2. And that doesn’t include the massive amounts of votes Bob Bowman, the CEO of MLB Advanced Media, said the league disallowed because of concerns over fake or improper voting.

“I’m not saying we bat 1.000,” Bowman said. “But it’s between 60 and 65 million votes that have been canceled. We don’t really trumpet it because if someone thinks they’re getting away with it, they’ll try to again.”

Thirty-five of those votes belonged to the email address of Yahoo Sports blogger Mike Osegueda, who received a verification email for ballots he didn’t cast. Alerted to his tweet about it, the league said the votes were taken away. Presumably, MLBAM tries the same with similar such ballots – Bowman said the 20 percent rate of killing ballots is consistent with previous seasons – keenly aware that in addition to civic pride, Kansas City packs a nice wallop of humor.

2:54 p.m. ET: In terms of importance the All-Star vote isn’t exactly Fort Knox of the CIA mainframe or the president’s nuclear launch codes. Indeed, in the grand scheme of things it’s somewhat less important than the Astros’ Ground Control system and somewhat more important than the survey Pizza Hut wants you to do after filling out an online order.

But boy oh boy, you think they’d have at least some sort of security on the thing. Nope. They don’t. From HookSlide at SB Nation’s Bless You Boys blog, who explains how he hacked the All-Star voting page to give him far, far more than the 35 votes Major League Baseball allows each email address:

To be fair, “hacked” really isn’t the right word. That word implies some kind of username/password cracking, which in turn implies some kind of secure system, and quite frankly, the All Star voting page set up by MLB is anything but secure. With a basic knowledge of HTML, a bit of Javascript, and a few minutes to play around, I was able to exploit MLB’s All-Star voting system quite easily.

The key to exploiting the system was realizing that—are you ready for this?—there is zero verification surrounding the most important piece of information supplied in the voting process: your email address. The voting page asks you to supply an email address, along with some other information such as a birthdate, a zip code, and a favorite team, but unlike most systems that at least try to implement some form of security, MLB does not require you to validate your email address. There’s no confirmation email sent with a “click here to verify” or “use this five-digit verification code” message, some way of ensuring that the email address you supplied in the voting process is actually yours.

As he notes, it’s highly doubtful Major League Baseball gives a flying frick about this because they’re getting what they want out of the system: lots of pageviews and user engagement on their voting page which has a corporate sponsor. Lots of people talking about the All-Star Game. Lots of votes — in sheer numbers — which allows them to talk about how excited everyone is about the Midsummer Classic. The All-Star Game is, from its sponsored votes to its sponsored events to its sponsored musical acts, is just a big circus to the league anymore, so there’s no sense in worrying about the voting process being a circus too.

Sure, there will be a ballgame in the middle of all of this and it’ll decide home field advantage in the World Series, but that Esurance doesn’t sell itself.

And That Happened: Tuesday’s Scores and Highlights

Getty Images
5 Comments

Here are the scores. Here are the highlights:

Giants 7, Blue Jays 6: Kevin Pillar made his first return to Toronto after being traded away a couple of weeks ago, got a warm welcome from his former hometown crowd ad then knocked in a run in the second inning. I feel like that’s the baseball equivalent of coming back home during Thanksgiving break during your freshman year in college, seeing “old friends” that you were JUST hanging out with in early August and having them buy you shots. I mean, it’s nice, don’t get me wrong, but let’s not pretend this is some long-in-coming reunion or whatever. To extend this tortured analogy, Pillar’s Giants teammates were like the guys from his dorm who nonetheless came back with him and who were kinda rude to all his old high school buddies. Pablo Sandoval, Joe Panik, Evan Longoria and Brandon Belt all homered, which is the equivalent of them drinking too much, hitting on the old high school friends’ sisters and just not knowing how things are done back home, man. “You’ve changed, Kevin” they said. “Why don’t you go back to college. You seem to like those guys more anyway.”

Padres 6, Mariners 3: For the second time in three days someone ally-ooped a would-be fly out into a homer. Here it was Mallex Smith, who did the honors for Austin Hedges:

It didn’t matter that much — the Padres had already established what would be their winning margin — but guys should really stop doing that. Franmil Reyes homered twice for the Friars. He required no assists in doing so.

Astros 10, Twins 4: Minnesota jumped out to a 3-0 lead and then was outscored 10-1 the rest of the way. José Altuve hit a three-run homer. Alex Bregman drove in three. Michael Brantley had an RBI single.

In related news, ten years ago today Michael Brantley went 0-for-4 with a strikeout for the Columbus Clippers in a 9-7 win over the Indianapolis Indians. I know this because, as Facebook reminds me this morning, that was the first baseball game I ever took my kids to. That game also featured Andrew McCutchen leading off, Neil Walker at third base, Luis Cruz at second, Garrett Jones in right and Erik Kratz catching for Indy. For Columbus, in addition to Brantley, David Delucci was in left, Luis Valbuena (RIP) at short, and Chris Gimenez at DH. Matt LaPorta played in that game too. He’s the guy the Brewers sent to Cleveland the year before in the CC Sabathia trade. I thought he’d be a good one, but alas. Torey Lovullo was the manager for the Clippers. My son, not yet four, got kinda sick to his stomach on cotton candy that evening. My daughter, then five, wore all pink, which would mortify her today (she can blame her mom for that). They’re gonna kill me for posting photos too, but I don’t care. Ah, memories.

Tigers 7, Red Sox 4; Tigers 4, Red Sox 2: Chris Sale was a lot more Chris Sale-like in game one of yesterday’s doubleheader, striking out ten guys in five innings and looking much sharper than he’s been. The Red Sox bullpen has continued to be a tire fire, though, coughing up five runs in four innings of work. Josh Harrison hit a tiebreaking, two-run double in the eighth. Ronny Rodriguez had three hits, including a homer. Xander Bogaerts homered twice in a losing cause. Detroit took the nightcap too, with Brandon Dixon hitting a three-run double and Ron Gardenhire using eight pitchers in a nine inning game. This when his starter went five. Dear God, his feet must be tired from walking out the mound so much. But hey, results are results. The Tigers have won four of five.

Marlins 3, Indians 1: Carlos Carrasco was cruising until he injured his knee and had to leave. That sucked for this game but sucks worse long term if he has to miss a lot of time. As soon as he left, Jorge Alfaro homered on the first pitch from reliever Neil Ramírez, giving the Fish a 1-0 lead. They’d never trail in the game thanks to solid starting work from Pablo López, who allowed only one run, unearned, while pitching into the seventh.

Mets 9, Phillies 0: Zack Wheeler struck out 11 dudes in seven shutout innings doubled in two and hit a homer and scored a run on another play. What a night. Todd Frazier hit a grand slam. Late in the game Mets reliever Jacob Rhame sent a couple of fastballs over Rhys Hoskins‘ head, apparently in retaliation for a plunking in Monday’s game. The benches halfheartedly cleared but nothing came of it. Anyway, the Phillies look terrible lately. They’ve lost five of six.

Diamondbacks 2, Pirates 1: Luke Weaver outdueled Trevor Williams, allowing one run to Williams’ two while scattering six hits over six and a third. The winning run came on a diving slide by Jarrod Dyson, who was on third but dashed home on a hot shot to second base with the corners drawn in. He was originally called out but was ruled safe on replay:

Wheels, man.

Reds 7, Braves 6: Yasiel Puig is heating up. He was 2-for-3 with a homer and three driven in. The Reds blew an early 3-0 lead, though, and found themselves trailing by the sixth before battling back and then holding on to thwart a second Braves rally. Reds batters drew nine walks off of Atlanta pitching. Woof. In related news, I’ll be at tonight’s Braves-Reds game, sitting behind home plate. I’ll be the guy in the Braves cap wondering how he’s gonna drive home two hours after the game and get enough sleep to wake up to do tomorrow’s recaps. If the game is anything less than crisp I may just put up a list of scores tomorrow. We’re all allowed to mail one in, right?

Orioles 9, White Sox 1: Dwight Smith Jr. hit a three-run homer and teammates Renato Núñez, Chris Davis and Joey Rickard all went deep as well, all off of Ivan Nova. Andrew Cashner gave up one run over seven innings to win his fourth straight start. It’d own if the O’s lost 100+ games but Cashner somehow won 20. He’s currently in a five-way tie for the AL lead in that department and is on pace for 26 right now.

Rays 5, Royals 2: Jalen Beeks — who came in in the second inning following an opener — struck out seven in four and two-thirds shutout innings and Mike Zunino homered for the second straight game to break the Rays’ losing streak. The Royals, however, have dropped five in a row.

Cardinals 4, Brewers 3Paul DeJong hit a tie-breaking, leadoff homer in the eighth and Yadier Molina had three hits and two RBI. All three of the Brewers’ runs came on solo homers. All Milwaukee’s runs came on home runs in Monday’s big loss too. If they were the Yankees three columnists would be writing “do they hit too many homers” columns today. Thank god they’re not the Yankees. The Cardinals have won four in a row. The Brewers have lost five of six.

Cubs 7, Dodgers 2: Chicago built up a 6-0 lead after the second inning and skated from there. Willson Contreras‘ bases-loaded double in the first was the biggest hit, Anthony Rizzo‘s two-run homer in the second the next biggest. Javier Báez homered for the Cubbies as well. Báez also did this:

Which was somehow not called as running out of the baseline but since he got stranded at first base and since it didn’t matter in the game’s outcome who cares? It was fun.

Nationals 6, Rockies 3: Patrick Corbin pitched six pretty strong innings and singled and scored a run when Víctor Robles hit a three-run double. Not a bad night for a pitcher at Coors Field.

Yankees 7, Angels 5: Luke Voit hit two solo homers as the walking wounded Yankees won again. Mike Ford, who is a person I’ve totally heard of before today, yes sir, also homered. The Yankees have won five straight and seven of their last eight despite having 13 players on the injured list. A dead cat bounce? Maybe. Playing a bunch of games against the Royals and Angels helps too.

Athletics 11, Rangers 5: Seems like every Rangers game features someone scoring 10-12 runs every night, be it them or the opposition. Last night it was the opposition as Matt Chapman homered and walked three times, Marcus Semien had a two-run double and Stephen Piscotty banged out four hits and scored three times. The A’s put up a six-run fourth inning. Game over.