你所不知道的入侵,你的服务器安全吗?你的数据库安全吗?

讲真,也许是我以前一直从事内网应用开发吧,我从来没有想过在互联网上,有那么多扫描器。

10月份的时候,受人委托我做了一个简单的抢单插件,里面有用到squid做ip代理,结果刚上线两天,就被人扫描出来了,因为疯狂使用,还把我的微服务给搞挂了。当然不搞挂,我可能一直发现不了。但那次的教训并没有让我长记性。

我的mongodb部署在阿里云上已经四个多月了,一直开着27017端口的,一来我没有正式使用,二来我没有正直的认为我会被人删除数据。虽然看过mongodb因为没有设置用户名和密码,导致数据库被人删库,并勒索BTC,但总觉得我不招谁,不惹谁,没人来搞我的。

互联网的美妙之处就是开放、自由,但是互联网没有说让我们裸奔。12月的一天,办公应用刚开始准备真正生产起来,第二天就被人告知,昨天登录的用户名显示用户不存在?

what?这不科学~!

我飞奔向办公室,直觉告诉我,生产环境出大事了。

打开电脑,用Navicat连接服务器mongo,看到了这个:

还好我的服务只上线了两天,办公应用数据使用的是mysql,sea微服务平台才用的是mongo,都是一些用户、资源、权限、代理等数据。按这个提示,我想都不用想,这些数据我肯定不会去支付0.1BTC了,虽然是用户数据,但都是小程序与微信绑定的数据,连密码和手机号码都没有了,丢了就丢了,不可惜。

万幸的是业务数据还在,只不过原先的用户已经找不到他们提交的数据了,我跟用户方沟通后,用户方表示只要业务数据还在,用户看不看的到无所谓,才松了口气。

后面花了半天的时间将我本机的数据进行了恢复,并写了shell脚本做了mongdb的定时备份,这此罢休,懂行的人肯定知道,这样做肯定是不够的

我还将阿里云的端口做了封堵,只允许某个ip远程访问我的阿里云服务器,详细情况,请看史上最安全的阿里云配置,让非法远程打扰你的人一边凉快去!

请注意安全!你的mongodb已经被黑了!互联网安全生产大过天!的更多相关文章

  1. 2017年开年的第一次比较大的安全事件: MongoDB “赎金事件”,如何看待互联网安全问题

    今天上午(2017年1月7日),我的微信群中同时出现了两个MongoDB被黑掉要赎金的情况,于是在调查过程中,发现了这个事件.这个事件应该是2017年开年的第一次比较大的安全事件吧,发现国内居然没有什 ...

  2. mongodb 速成笔记

    以下环境为mac osx + jdk 1.8 + mongodb v3.2.3 一.安装 brew安装方式是mac下最简单的方式 brew update brew install mongodb 其它 ...

  3. MongoDB CURD 介绍

    MongoDB是用JSON格式的field和value成对的documents存储数据,documents类似于编程语言中的key value 键值对(例如:dictionaries,hashes,m ...

  4. mongodb入门学习小记

    Mongodb 简单入门(个人学习小记) 1.安装并注册成服务:(示例) E:\DevTools\mongodb3.2.6\bin>mongod.exe --bind_ip 127.0.0.1 ...

  5. 开发基于C#.NET的mongodb桌面版的应用程序(1)

    1.之前没有使用过C#开发过相应的桌面应用程序,现在既然要从零到有进行开发,自然要掌握好C#桌面开发相关的原理与技术,以及站在多类型用户的角度开发具有实际生产意义的mongodb数据库管理软件. 2. ...

  6. [转载]MongoDB开发学习 经典入门

    如果你从来没有接触MongoDB或对MongoDB有一点了解,如果你是C#开发人员,那么你不妨花几分钟看看本文.本文将一步一步带您轻松入门. 阅读目录 一:简介 二:特点 三:下载安装和开启服务器 四 ...

  7. [教程]MongoDB 从入门到进阶 (User系统)

    自从MongoDB升级到2.4之后,User系统,或者说是权限系统有了翻天覆地的变化. 在MongoDB2.4之前的User系统,除了用户名和密码之外,只有一个ReadOnly属性. 如果一个用户在a ...

  8. Mongodb Manual阅读笔记:CH8 复制集

    8 复制 Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作Mongodb Manual阅读笔记:CH3 数据模型(Data Models)Mongodb Manual阅读笔 ...

  9. mongodb 与 c++ 的配合使用

    最近在尝试使用 mongodb 作为服务端持久化方案,服务端程序是使用 c++ 写的,折腾了不少时间,记录一下吧. 1.下载 boost 1.56.0 http://www.boost.org/use ...

随机推荐

  1. java编程思想札记一

    1. 访问权限中尤其注意protected,它包含了包访问权限,只要是同一个包里的,就能访问到protected成员.   2. 后期绑定:被调用代码直到执行时才能确定,编译阶段只保证调用方法存在和类 ...

  2. 【题解】有标号的DAG计数3

    [HZOI 2015] 有标号的DAG计数 III 我们已经知道了\(f_i\)表示不一定需要联通的\(i\)节点的dag方案,考虑合并 参考[题解]P4841 城市规划(指数型母函数+多项式Ln), ...

  3. $Poj2054\ Color\ a\ Tree\ $ 贪心

    $poj$ $Description$ 一颗树有 $n$ 个节点,这些节点被标号为:$1,2,3…n,$每个节点 $i$ 都有一个权值 $A[i]$. 现在要把这棵树的节点全部染色,染色的规则是: 根 ...

  4. 爬虫 -- JS调试

    开发者工具(F12) 其中常用的有Elements(元素面板).Console(控制台面板).Sources(源代码面板).Network(网络面板) 找 JS 文件的几种方法 1.找发起地址 2.设 ...

  5. spring系列框架篇-承接各类型中小型项目-期待与您的长期合作!

    框架选型: 1.基本框架:springboot2.2+springcloud(Hoxton.M2)+nacos (所有公共模块全部使用 starter 方式依赖) 2.授权及权限:oauth2+jwt ...

  6. 洛谷P1036 选数 题解 简单搜索/简单状态压缩枚举

    题目链接:https://www.luogu.com.cn/problem/P1036 题目描述 已知 \(n\) 个整数 \(x_1,x_2,-,x_n\) ,以及 \(1\) 个整数 \(k(k& ...

  7. 1041 考试座位号 (15 分)C语言

    每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位.正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考 ...

  8. 2020了你还不会Java8新特性?(六)Stream源码剖析

    Stream流源码详解 节前小插曲 AutoCloseable接口: 通过一个例子 举例自动关闭流的实现. public interface BaseStream<T, S extends Ba ...

  9. spring boot事务管理

    spring boot集成事务十分的简单,只需要在启动类上面增加@EnableTransactionManagement注解,然后在需要实现事务的方法上添加@Transactional注解就可以了.下 ...

  10. 搭建nginx

    Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由Igor Sysoev为俄罗斯访问量第二的R ...