我的腾讯云小鸡子被黑了-_-

2018-10-23 11:02:44 +08:00
 ChristopherWu

其实应该不是被黑。。

mongo 默认没有账号密码,而且允许外网访问; 这个『漏洞』我之前一直有看新闻意识到,但这是腾讯云很便宜买的小鸡子,而且目前没有啥重要东西放上面,改了 ssh 端口跟不允许密码账号登录后,就轻视了。

知道之前需要测试 mongo 的东西时,9.30 号 在小机子上面把 mongo 启动起来,然后没有关。

昨天晚上因为做给自己用的一个小网站( http://119.29.78.110:8000/books.html),凌晨 3 点才搞完,赶着先出样品,就用 python 的 simple server ( emm..那时急着睡觉,没有用 nginx,也因为机器不重要。。),用作前端的服务器; 然后 Flask 直接启动了一个后端服务,就先启起来了,然后睡觉了~

今天早上上去一看,发现 mongo 数据库空了(反正抓来的数据,没影响 @——@),下面有一个 Warn 库

> db.Warn.find()
{ "_id" : ObjectId("5bce24b3e581f3bc95d75f07"), "BitCoin" : "3P4hnQNpEpKPL1x3kKcwGcB5UUmZdRF2Um", "eMail" : "dbbak_service@protonmail.com", "Exchange" : "https://localbitcoins.com/", "Solution" : "Your Database is downloaded and backed up on our secured servers. To recover your lost data: Send 0.6 BTC to our BitCoin Address and Contact us by eMail with your server IP Address and a Proof of Payment. Any eMail without your server IP Address and a Proof of Payment together will be ignored.You are welcome!" }

刚开始以为是 python simple server 的锅,然后就意识到,我外网可以直接连自己的 mongo 啊....

以上,报告完毕。

#明明我还吐槽过很多次 mongo 允许外网访问以及默认没有密码的-_-

请问诸位还有啥漏洞要注意的吗? python simple server 应该没这么容易被攻破吧? 我要检查上面有没有挂马之类的,除了看 top,ps aux 之类的异常进程,还有啥办法吗~ (知道大佬都说被搞过,直接重装最安全;但上面没有敏感数据,先不重装,这样玩着:P, 像这样我对 mongo 这点印象更深刻了)

7000 次点击
所在节点    程序员
53 条回复
kkhaike
2018-10-23 11:40:25 +08:00
腾讯云的 安全组 呢
ChristopherWu
2018-10-23 11:40:55 +08:00
@GrahamACER 其实生产环境就直接限制内网访问(本来数据库这些东西就不用暴露出去)
ChristopherWu
2018-10-23 11:42:45 +08:00
@kkhaike 木有用,是怎么样的呢?
likuku
2018-10-23 11:43:32 +08:00
@kkhaike 腾讯云 有 安全组 这种云防火墙吗?

想来 aws ec2 默认就是 安全组封锁一切通讯,保守但的确保证了默认安全,给的最佳实践也是首先从安全组开始,真是避免了很多踩坑。
likuku
2018-10-23 11:44:45 +08:00
@ChristopherWu 快速扫描全网并不是听起来那般不可能...
ChristopherWu
2018-10-23 11:46:44 +08:00
@likuku 默认把用户当傻蛋其实挺好的-_-
GrahamACER
2018-10-23 11:49:05 +08:00
而且当时并不全是 mongo 的锅,整个环境下所有的东西都没了
我就发了个工单问腾讯对方是怎么拿到我的 root 权限的
腾讯一直在强调 redis 的漏洞问题,回避这个 root 的问题……
likuku
2018-10-23 11:49:17 +08:00
@ChristopherWu 不不,默认把当前网络环境当作家门口就恶魔成堆的凶险之地,挺好的。
congeec
2018-10-23 11:51:40 +08:00
@ChristopherWu 快速遍历全球 ipv4 地址
https://zmap.io
fchypzero
2018-10-23 11:54:23 +08:00
@ChristopherWu 在不保证准确率的情况下,PING 就完事了。
mytsing520
2018-10-23 11:58:07 +08:00
1 小时就能扫遍全网所有 IP 地址的端口一次
ChristopherWu
2018-10-23 12:04:40 +08:00
大佬们顺便回答一哈:


我的 mongo 是 9 月 30 号 就开了的,为什么昨天我把 python 后台跟 simple server 启动起来,才被人扫
y10210118
2018-10-23 12:14:50 +08:00
自建 MongoDB 存在空密码或弱口令很容易被入侵,如果有备份数据或者快照可以恢复,做关键还是提前做好安全防护,看到有个挺好的文档可以参考下: http://bbs.qcloud.com/thread-42928-1-1.html。
Les1ie
2018-10-23 13:05:20 +08:00
Les1ie
2018-10-23 13:06:41 +08:00
@ChristopherWu 被入侵是随机事件, 并不是你一打开就能够通知到别人你这里有未授权的
PulpFunction
2018-10-23 14:14:02 +08:00
想问一下数据库也是在本地服务器(本小鸡上)的吗
FakeLeung
2018-10-23 14:17:51 +08:00
是的,我的小博客也是因为芒果没有密码,导致所有博文丢失了。

这些人是真的闲啊。。。。
opengps
2018-10-23 14:23:10 +08:00
这么说吧,不是有些人闲的,在以前互联网起步时候,只能用本办法全网扫描抓肉鸡,之后经过了 idc 时代,现在云时代,普遍就多了个特征“机房流量”,对于机房的网段,已经被大量扫描器来来回回的扫描了,一旦有漏洞甚至是自动入侵的。根本不是人在盯着你机器是否有漏洞。
所以很多服务器使用习惯已经需要变革了,最典型的就是外网端口,能不开就不开,必须开则尝试下修改,例如最基本的 22,3389 修改掉
faceRollingKB
2018-10-23 14:25:58 +08:00
第一次租服务器的时候,一觉起来 ssh 有 2000+failed login,从那以后我都是直接防火墙设置 ip 白名单的
faceRollingKB
2018-10-23 14:27:40 +08:00
80、443 开放,其他所有端口白名单

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/500119

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX