Over 650 TB of Data Up For Grabs From Publicly Exposed MongoDB Database (csoonline.com)
itwbennett writes: A scan performed over the past few days by John Matherly, the creator of the Shodan search engine, has found that there are at least 35,000 publicly accessible and insecure MongoDB databases on the Internet, and their number appears to be growing. Combined they expose 684.8 terabytes of data to potential theft. Matherly originally sounded the alarm about this issue back in July, when he found nearly 30,000 unauthenticated MongoDB instances. He decided to revisit the issue after a security researcher named Chris Vickery recently found information exposed in such databases that was associated with 25 million user accounts from various apps and services, including 13 million users of the controversial OS X optimization program MacKeeper, as reported on Slashdot on Wednesday.
What firewall. There are even easy to use wrappers for this stuff people!
sudo apt-get install shorewall ... ?
Impressive that 35,000 users forgot how to NAT and firewall. "Oops!"
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
I've posted a clone of this data-cache on my BBS. Just make sure you have at least a 54.6 baud modem, so ensure a speedy download.*
Long-distance telephone charges may apply.
Feed it to the AIs of the world and set stdout to stdin, forever. Cue crazy facebook/google/linkedin home pages for the lulz.
Whom to measures in bits? Dum motha fux.
<crickets>No answer</crickets>
When you allow mungos to setup databases.
.....something something webscale.
If you're gonna leak data, go big or go home!
Just cruising through this digital world at 33 1/3 rpm...
... that shipping with bad default security settings and/or allowing bad security settings was going to cause an issue: https://www.trustwave.com/Reso...
This is how you do breaches these days: go big or go home.
Once AT&T hooks us up, I'll be able to download this volume of data in a mere two months.
Oh, wait. 1TB monthly data caps.
Okay, once AT&T hooks us up, I'll be able to download this volume of data in a mere 54 years.
This is what happens when you let hipster doofus script kiddies decide your database architecture.
... deserves to lose their data as a lesson not top use amateur hour software.
Field data longer than 8kb? Ooh, can't index that and it won't get returned in a query using that index.
Shard gets corrupted? Oh bad luck, thats some of your data gone - unless you've used also replication in which case you'll have spent 2 months trying to set it all up.
Lots of concurrent writes? Yeah, well, with monogdbs single monolithic write lock - good luck with that.
Want a DB that uses encrypted network transfers between shards and replica sets? Sorry.
Want a DB that uses a sane query language - ie not one thats a nightmare mashup between pure javascript and parameter passing using javascript to an underpowered underlying query engine? Don't use mongo.
Etc , the list goes on.
I'm not totally surprised. In my experience, those who use and advocate NoSQL "databases" tend to be on the amateurish side of the spectrum.
Except for a very small number of cases, if you have data to store you should be using one of the many existing relational database management systems.
It doesn't even matter which one you use. There are many you can pay for, and many free ones, too. PostgreSQL is the best free one. MySQL isn't very good, but it's a hell of a lot better than the NoSQL systems.
These databases can easily store key-value data. They can also easily store JSON, XML, and other non-relational formats.
Learn how to use indexes. It turns out that many of the performance problems these people use to justify switching to a NoSQL database only arise because they don't know how to index their relational database system. Some of these NoSQL supporters don't even know what an index is at all!
Learn how to use SQL. It ain't perfect, but it's a fuck of a lot better than writing queries in JavaScript, of all things!
Even the most basic book about relational databases that you can find at your local bookstore will clearly explain all of these concepts.
It's like most people who use NoSQL, especially when they're dealing with anything less than petabytes of data, try as hard as they can not to put in the small amount of effort needed to learn now to use relational databases properly.
There are so many people with very little internet skills own domains and basically hire someone to build their site. I recently registered a domain and I am being swamped by solicitations to "the new small business owner" about "making a great website to sell your product" with "search engine optimization" and "customer support data base" blah blah blah. Frankly even their email skills are fishy and I am sure they will jury-rig some solution. If they change the default installation to make it less secure, it definitely looks like someone managing something for someone else where convenience overrides security.
sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
MongoDB is web scale. Did this happen because of sharding? That data never would've been breached if they'd stored it on /dev/null. Plus it would have been fast as hell.
How do you do a scan of your network to find unsecured NoSQL databases like this? I bet that I'd find a few of them on my work's intranet.
MacKeeper's only reason for existence is people who don't know any better. It's malware, pure and simple. I really wish that decent sites would ban MacKeeper ads.
A successful API design takes a mixture of software design and pedagogy.
"684.8 terabytes of data"
So wouldn't that be "650TB", not "650Tb"?
Just another proletarian malcontent.
Bad architecture, plain and simple. Why on earth would you expose your persistence layer to the public?
The real problem is that MongoDB is the Visual Basic of databases.
People have been flocking to MongoDB because they consider SQL databases "too difficult" and "require too much effort". They want something easy that they can just slap together and get up and running, and all other considerations be damned.
And this is the result. Databases are *not* hard, but they *do* require you to actually think things through. If you can't do that, you shouldn't be doing development to begin with.
I up your NoSQL databases with NoSecuritySQL. Not only is it webscale, but it's now it's even faster without security checks.
He should be the one taking care of Mongo's databases!
Tracy Johnson
Old fashioned text games hosted below:
http://empire.openmpe.com/
BT