V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mrzhang76
V2EX  ›  信息安全

洗个澡的功夫,服务器被人拿了 root

  •  
  •   mrzhang76 · 2019-01-15 00:08:52 +08:00 via Android · 9640 次点击
    这是一个创建于 2174 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在阿里云租了一台轻应用,还没配置好。 洗个澡回来发现自己 root 被拿走了 简单检查了一下没啥痕迹 直接重置了系统 前几天做的环境配置全重来了 莫名其妙的被爆破 现在看看明天什么情况 按理说不会有什么拿 shell 的地方啊 环境还没配置完

    41 条回复    2019-01-16 09:45:27 +08:00
    konakona
        1
    konakona  
       2019-01-15 00:17:55 +08:00
    公开了哪些端口?咋不说下捏……还有系统日志呢?
    看下阿里云的安全登录记录啊。
    hangvane
        2
    hangvane  
       2019-01-15 00:21:10 +08:00 via iPhone
    可能是弱密码给试出来了吧,我的大小写+数字+符号密码一周被挖矿两次,最后给找出来是强行试出来的,不过我的密码的确很有规律性倒是...
    zxy
        3
    zxy  
       2019-01-15 00:36:49 +08:00
    改端口还是有点作用~
    hellowes
        4
    hellowes  
       2019-01-15 00:42:16 +08:00
    厉害
    laike9m
        5
    laike9m  
       2019-01-15 00:45:32 +08:00 via Android
    拿到服务器我一般都是先禁用密码登录。。
    haiyang416
        6
    haiyang416  
       2019-01-15 07:36:19 +08:00 via Android
    比较好奇怎么确定被拿了 root 呢
    neighbads
        7
    neighbads  
       2019-01-15 08:29:33 +08:00
    禁止密码远程登录
    andychen1
        8
    andychen1  
       2019-01-15 08:39:01 +08:00 via iPhone
    感觉国内服务器很容易招黑
    ctro15547
        9
    ctro15547  
       2019-01-15 08:40:22 +08:00
    Fail2ban 输错一次封 1 年,自己输错了去网页控制台解封
    LanAiFaZuo
        10
    LanAiFaZuo  
       2019-01-15 09:02:50 +08:00
    应该禁用哪些端口啊?有没有大佬说下。。
    ScotGu
        11
    ScotGu  
       2019-01-15 09:05:18 +08:00
    @laike9m #5
    @neighbads #7
    请教二位,禁止密码登录,那应该就是使用证书登录的吧?请问如何管理证书并实现跨设备(平台)管理服务器呢?
    因为要随时管理服务器,有时候需要在手机端管理,证书登录太麻烦了。


    @ctro15547 #9 狠起来连自己都不放过啊,密码较多,有时候会输错超过 3 次,按你这么搞,我可能会房梁自缢。
    MKDJOJO
        12
    MKDJOJO  
       2019-01-15 09:06:15 +08:00 via Android
    密匙吧,密码临时用用还差不多
    RiESA
        13
    RiESA  
       2019-01-15 09:10:01 +08:00
    @ScotGu #11 触发次数和封禁时间可以调整,一般不用 ban 那么长时间的,主要是防止暴力破解
    luckbbs
        14
    luckbbs  
       2019-01-15 09:12:46 +08:00
    @ScotGu Fail2ban 能设置错误次数。比如 100 次...
    glouhao
        15
    glouhao  
       2019-01-15 09:20:53 +08:00 via Android
    @ctro15547 一次一年是不是太狠,这要中标得多少亿次。
    xiaket
        16
    xiaket  
       2019-01-15 09:21:34 +08:00
    @ScotGu 各个平台的 ssh 客户端都会支持公私钥吧...
    Wincer
        17
    Wincer  
       2019-01-15 09:27:37 +08:00 via Android
    配置一下密钥登陆,禁止密码登陆,更换端口,禁止 icmp 报文。这么一来应该不会被攻破了。
    ckizey
        18
    ckizey  
       2019-01-15 09:29:56 +08:00 via iPhone
    首先更换个 5 尾数的端口
    celeron533
        19
    celeron533  
       2019-01-15 09:39:35 +08:00
    该不会你的 SSH 客户端被动过手脚?以前有过类似的大事件,国内某下载站的 putty 客户端被人放了后门,直接拿到 root 密码
    internelp
        20
    internelp  
       2019-01-15 09:45:29 +08:00   ❤️ 13
    这个事情告诉我们,没事不要洗澡。
    Reficul
        21
    Reficul  
       2019-01-15 09:51:20 +08:00 via Android   ❤️ 1
    检查一下自身环境,国内不少下载的 putty 都有问题。早年用 putty 的时候一台 aws 的机器也被搞过。
    blackeeper
        22
    blackeeper  
       2019-01-15 10:30:00 +08:00
    1、改端口
    2、密钥登录
    3、密码登录话,加一个二次认证
    这样基本不会被搞
    nicevar
        23
    nicevar  
       2019-01-15 10:34:40 +08:00
    好多人和小公司买的阿里云服务器都变成了矿机,而且还被装上了自动爆破程序,不断扫描其他主机
    不改端口、允许 root 密码登录、不限制尝试次数、开启公网 mysql 访问这些主机很容易就成为鸡
    ctro15547
        24
    ctro15547  
       2019-01-15 11:05:40 +08:00
    @ScotGu 阿里云网页控制台好像不用 root 登陆直接能用。用完别退 exit 就好。要是这个控制台被人登陆了,估计你支付宝钱包也要遭
    keepeye
        25
    keepeye  
       2019-01-15 11:10:37 +08:00   ❤️ 1
    两件事:
    1. 禁止 root 密码登陆
    2. 打开防火墙,并配置规则,默认拒绝所有端口的连接,仅开放自己需要用到的。
    okwork
        26
    okwork  
       2019-01-15 11:20:55 +08:00 via Android
    @ctro15547 一般这类高危操作,都要验证一次手机验证码的吧
    kohos
        27
    kohos  
       2019-01-15 11:32:43 +08:00
    证书登录,把证书放在自己个人的同步盘 OneDrive/Dropbox 里面,手机上有 APP 就能下回来用 JuiceSSH 连接
    sobigfish
        28
    sobigfish  
       2019-01-15 11:34:28 +08:00
    @ScotGu #11 手机端也有很多支持证书验证的 terminal 吧(这个应该算是基本需求吧)
    termius 之类

    证书本来就是应该一个 client 一个密钥(不要共享,不用管理)
    mrzhang76
        29
    mrzhang76  
    OP
       2019-01-15 14:31:02 +08:00 via Android
    @hangvane 我密码是脸滚键盘的…… 30+混合符合大小写
    mrzhang76
        30
    mrzhang76  
    OP
       2019-01-15 14:33:21 +08:00 via Android
    @haiyang416 我 root 直接掉了,没权限了
    mrzhang76
        31
    mrzhang76  
    OP
       2019-01-15 14:34:32 +08:00 via Android
    @celeron533 xshell 官网下载的
    claysec
        32
    claysec  
       2019-01-15 14:37:32 +08:00
    我都是随机 20 位密码的- -。。从来没试过有事
    xmlf
        33
    xmlf  
       2019-01-15 14:41:52 +08:00 via Android
    我很好奇,你是怎么发现的
    gouchaoer2
        34
    gouchaoer2  
       2019-01-15 14:51:08 +08:00
    @mrzhang76 你这个肯定不是秘密爆破,密码随机 10 位以上就不能爆破了,ls 一堆禁止 root 登录或者密钥登录的真的没啥意思还麻烦

    你肯定是用 root 的权限运行了一些 web 服务,然后别人用 web 服务的漏洞扫到你然后拿到你 root 的,于是你开了那些测试的 web 服务?来复盘吧
    killerv
        35
    killerv  
       2019-01-15 17:36:20 +08:00
    只对外开放必要的端口
    禁止 root 登录
    禁止密码登录
    likuku
        36
    likuku  
       2019-01-15 20:10:14 +08:00
    所以前两年 aws 发布会上某信息安全主管演讲中提到观点非常值得借鉴,大意:
    “安全策略 /操作,得在环境建立起始就同步进行,因为你根本不知道恶意攻击 /漏洞何时会出现”。

    上面各种怕麻烦的,谨祝你们的好运长久。
    3dwelcome
        37
    3dwelcome  
       2019-01-15 20:23:38 +08:00 via Android
    @likuku 可是没有任何证据说,root 长密码能被远程暴力破解的。
    如果超长密码的前提下,服务器还是被 hack,只能说明密码是本机泄露的,这样的情况下,用证书登录同样会出问题。
    likuku
        38
    likuku  
       2019-01-15 20:40:56 +08:00
    @3dwelcome 拿 root 登陆并日常使用,这本身就是高风险操作... 习惯不好,不值得。

    打个比方:
    即便如今奥地利格洛克使用了多重保险措施,装弹上膛后随意摔打+汽车碾压,都安全可靠,
    没事时不时拿着它用“准星前端”给自己脑袋挠痒痒,依然是很不明智和危险的事。
    yuikns
        39
    yuikns  
       2019-01-16 00:10:23 +08:00 via iPhone
    好奇怪,ssh-keygen 完了 ssh-copy-id 下,之后直接就进去了,那些 duangduangduangduang 每次都输入十几位口令的,是觉得自己手速特别快,不展示下可惜了么?

    要是普通用户想要 root 那太简单了,配置下 sudoer 即可控制免密码。
    KasuganoSoras
        40
    KasuganoSoras  
       2019-01-16 00:23:21 +08:00
    我的方法简单,ssh 端口改到 5 位数,密码随机 30 位数以上,然后怕忘记可以用纸写下来压在键盘下,完事
    snoopygao
        41
    snoopygao  
       2019-01-16 09:45:27 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2759 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 05:58 · PVG 13:58 · LAX 21:58 · JFK 00:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.