V2EX 首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Sponsored by
二向箔安全
​一对一的线上 web 安全培训服务
咨询微信:twosecurityrefer
Promoted by 二向箔安全
V2EX  ›  Linux

MYSQL 数据库遭比特币勒索。。。

  •  
  •   sunorg · 3 天前 · 3370 次点击

    昨晚 centos7.3 +lnmp1.4 的 mysql 数据库被搞了。

    勒索 0.2 比特币。。。。

    mysql 密码为 10 位数字母组合, 开放远程访问。

    普通方式查看操作记录, 暂无发现服务器被入的痕迹。其他文件都存在。。

    损失的数据库得花 2 天时间才能恢复大约 9 成。。。。 郁闷

    第 1 条附言  ·  3 天前
    自查方法:

    在数据库存储目录,一般是 path/to/mysql/var 里面
    1. 如果有 WARNING 目录,一般就是被搞了。
    2. tail -f mysql-bin.xxxxx ,如果看到 btc 铁定被 hack 了

    本轮排查,应该是 mysql 的漏洞导致的。。。

    建议大家先做:
    1、先备份一下数据
    2、取消 mysql 的 root 账号中的 % 权限。
    3、改 mysql 端口
    4、改 linux 端口,改证书登陆
    31 回复  |  直到 2017-12-11 13:53:16 +08:00
        1
    3dwelcome   3 天前
    mysql 版本是多少?怕怕的飘过。
        2
    xzg1993   3 天前
    0.2 比特币是 2 万块了吧··
        3
    sunorg   3 天前
        4
    Moorj   3 天前
    关注,什么原因?
        5
    p2pCoder   3 天前
    在上个公司,测试服务器,直接把 代码 考走了,勒索 一个比特币
    不过编译后的 java 代码,没啥影响,也没付款
        6
    gouchaoer   3 天前
    10 位数字字母组合如果随机性比较好的话很难穷举的,是用这个数据库的应用被人搞到了?
        7
    x86   3 天前
    给了也未必给你恢复
        8
    anguslg   3 天前
    我也被勒索过 0.1 个比特币, 公司的 mongodb 服务器开放了外网访问. 不过好在数据都有备份, 我给勒索人发了一封嘲讽的邮件, 至今没有收到回复
        9
    yakun4566   3 天前
    上个公司也碰见过,直接是一个服务器的全部文件都被加密,不过那是一个测试服务器,在阿里云上,当时说是要 7 个还是几个,直接没管它用快照恢复了。
        10
    sunorg   3 天前
    看自己是否被搞,

    在 mysql/var 目录,有一些 mysqlbinlog-0000xxxx.的文件,

    linux 下,执行 tail -f 这个文件名,就可以看到了。。
        11
    Rice   3 天前 via Android
    能否查查是怎么被搞的
        12
    opengps   3 天前
    这个,,,是爆破的密码?
        13
    clino   3 天前 via Android
    没异地备份?
        14
    msg7086   3 天前
    远程访问最好还是限制下 IP ……
        15
    sunorg   3 天前 via iPhone
    @clino 演示服务器,因为时间关系导致没定时备份
        16
    clino   3 天前
    @sunorg #15 演示的就是说数据不重要?
        17
    likuku   3 天前
    直接开放 mysql 端口远程访问,也真心是胆壮... (多少案例都是即便不开放 db 端口都会被搞)

    有效的备份比啥都重要。
        18
    likuku   3 天前
    @clino @sunorg 除非数据和系统永远不会被用到,只是个纯玩具,随时可以被干掉也不会对任何人造成任何伤害,

    那么才可以说“不重要”吧。
        19
    cxbig   3 天前
    如果 app 和 db 不在同一内网,至少要:
    1. 打开 IP 限制
    2. SSL 证书
    3. 32 位密码
    4. fail2ban
        20
    swulling   3 天前   ♥ 2
    MySQL 有如此优秀的安全性设定,支持按照 IP 地址授权,如果严格按照权限最小化的原则,不太可能被入侵。

    Root 只允许 127.0.0.1 ;
    非 Root 只允许特定 IP ;

    可惜大家在 GRANT 的时候喜欢用 『*』
        21
    sunorg   3 天前
    @clino 一开始是随时可以扔,随着演示的机器越来越多,就重要起来了。

    这 db 我是用来给用户的设备授权的。
        22
    realpg   3 天前
    看标题就知道你一定用了 centos
        23
    realpg   3 天前
    @swulling #20
    mysql 的官方编译版,官方二进制版,以及我常用的 ubuntu server/debian 的源里面的版本,安装上默认都是监听 127.0.0.1 的,redis 也是
    鬼知道为什么 redhat 系的自带的配置文件都是监听 0.0.0.0 的……
        24
    likuku   3 天前
    @cxbig

    “如果 app 和 db 不在同一内网”

    db 就近起一个 HTTPS-API 服务,app 通过 HTTPS-API 与 db 通讯。
        25
    cxbig   3 天前 via iPad
    @likuku
    我们的数据库服务都是纯内网的,需要通过堡垒机,SSH 都是用密钥文件。
        26
    zjqzxc   3 天前
    @realpg 我猜的,因为 rh 觉得自己有 selinux 在前面挡着
    然而它并没有考虑到很多随手关掉 selinux
        27
    lerry   3 天前 via iPhone
    不使用默认端口好点
        28
    falcon05   3 天前 via iPhone
    难道你们不用防火墙吗?
        29
    cjoke   3 天前
    之前也被勒索过 2 个比特币,还留了个暗网的链接,上面告诉我要发到某某邮箱,然后我就直接重装系统了
        30
    firebroo   5 小时 46 分钟前
    如果是公司的服务器,允许监听到公网只能有对外提供 http 和 https 服务的服务。
        31
    raysonx   3 小时 18 分钟前
    @realpg 楼主用的 MySQL 软件包明显来自第三方,根本不是 Red Hat 的官方源。因为 RHEL7/CentOS7 的官方源里根本没有 MySQL,取而代之的是 MariaDB。
    此外,MariaDB 安装后的默认策略是只允许本地连接 root 用户。
    楼主提到了 LNMP 1.4,我猜楼主是用所谓的一键安装脚本配置的环境,鬼知道那些脚本做了什么操作。
    DigitalOcean
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   鸣谢   ·   2674 人在线   最高记录 3541   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.0 · 66ms · UTC 09:11 · PVG 17:11 · LAX 01:11 · JFK 04:11
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1