V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
coderabbit
V2EX  ›  程序员

gitee 码云私有仓库不可靠啊!配置文件的帐号密码一样泄漏!

  •  
  •   coderabbit · 2020-05-26 12:10:47 +08:00 · 11158 次点击
    这是一个创建于 1672 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近阿里云一直给我发漏洞邮件。我基本都不看的,但今天早上我看了下是我的一个 PHP 被人 fock 后拿去使用。我按阿里云上给的地址打开。好家伙完完整整的展现在我眼前所有配置的帐号密码都在!连接数据库也能连接!真是坑啊!然后我仔细一看我没有登陆 gitee 我准备登陆后联系对方。却发现登陆后这个仓库是个私有的仓库,既然是私有仓库我居然能看到配置。太坑啦!大伙最好别把你们的配置文件的帐号密码放在 gitee 了!

    图片 1 图片 2 图片 3

    https://imgchr.com/i/tP5sl4 https://imgchr.com/i/tP5y6J https://imgchr.com/i/tP5fk6

    第 1 条附言  ·  2020-05-26 16:25:31 +08:00
    那个仓库不是我的,我截出来的配置也不是我的帐号密码!
    阿里云邮件打码的是对方仓库地址我肯定要打码。另一个打码是对方仓库配置文件里的帐号密码我也肯定要打码。那些叫我把地址贴出来的,真是看热闹不嫌事大!我没有登陆前确实看到并截图下来了!登陆后再看就是提示 资源不存在或者没有访问权限。难道我在发现截图到登陆几十秒对方就设置为私有仓库了???哪有这么巧的事儿?
    59 条回复    2020-06-04 19:05:03 +08:00
    micean
        1
    micean  
       2020-05-26 12:31:36 +08:00
    试了以下未登录访问自己的私有库文件,没啥问题啊
    legiorange
        2
    legiorange  
       2020-05-26 12:33:54 +08:00
    @micean 能被采集到
    labulaka521
        3
    labulaka521  
       2020-05-26 12:41:59 +08:00
    还是存储到 github 吧,国内的不可靠
    wizardoz
        4
    wizardoz  
       2020-05-26 12:47:39 +08:00
    国内几家各种改来改去,烦了,累了。自建 gitlab 了。
    superrichman
        5
    superrichman  
       2020-05-26 12:49:46 +08:00 via iPhone
    这个仓库是先被 fork 再设的私有还是设了私有之后还被 fork 的?
    lasuar
        6
    lasuar  
       2020-05-26 12:50:20 +08:00
    私有仓库被别人怎么 fork ?看不到啊
    lasuar
        7
    lasuar  
       2020-05-26 12:51:22 +08:00
    你说的这个是 P1 级的产品 BUG,你确定是设置私有仓库后被别人 fork 了吗?
    lasuar
        8
    lasuar  
       2020-05-26 12:51:48 +08:00
    应该是 P0 级
    favourstreet
        9
    favourstreet  
       2020-05-26 12:52:27 +08:00 via Android
    不看阿里云的报警这也太心大了。别说 gitee 了,把 AK/SK 之类的东西明文放到公网上,别管什么地方,都要提前留一手,侥幸心理害人……
    redtea
        10
    redtea  
       2020-05-26 12:57:26 +08:00
    数据库直接连接不加跳板吗?
    Mithril
        11
    Mithril  
       2020-05-26 13:00:10 +08:00
    私库不登陆还能看是什么鬼操作。。。这玩意难道不算 0 级 bug ?
    luob
        12
    luob  
       2020-05-26 13:01:46 +08:00 via iPhone   ❤️ 2
    有一说一,无论私有公开,所有的代码文件都应当保持随时可以被开源的状态。生产环境的密码只能出现在生产环境,不应该出现在其他任何地方。
    coderabbit
        13
    coderabbit  
    OP
       2020-05-26 13:04:10 +08:00 via Android
    @superrichman 我的仓库公有,别人的私有!我能看到别人私有的项目代码!然后我好奇的连接配置账号密码正确!
    @lasuar 我的是共有的,对方的私有…
    imn1
        14
    imn1  
       2020-05-26 13:11:27 +08:00
    @coderabbit #13
    你应该加个 append
    就是说你自己没放账号密码,但你检视对方私有库时却看到对方的账号密码?
    lasuar
        15
    lasuar  
       2020-05-26 13:36:32 +08:00
    @coderabbit 你的密码改了吧,把对方的仓库地址贴一下
    kylix
        16
    kylix  
       2020-05-26 13:37:31 +08:00
    gitee 反正我是不敢用的,个人观点
    Mithril
        17
    Mithril  
       2020-05-26 13:43:10 +08:00
    @kylix 他们家已经出了好几次问题了吧
    oschina
        18
    oschina  
       2020-05-26 13:43:58 +08:00
    私有仓库,只要对方把你加到他的仓库成员,就可以访问,否则你永远访问不到私有仓库!!!
    oschina
        19
    oschina  
       2020-05-26 13:45:56 +08:00
    任何 Gitee 的私有项目都不可能被采集到,从你的截图可以看到你是一个公开项目。
    zoharSoul
        20
    zoharSoul  
       2020-05-26 13:48:11 +08:00
    什么乱七八糟的
    zoharSoul
        21
    zoharSoul  
       2020-05-26 13:50:27 +08:00   ❤️ 8
    @zoharSoul 果然满屏幕叹号的,表达总是抓不到重点.

    直接放出来有问题的仓库连接不就明明白白的.,讲了半天账号密码干啥?说的仿佛如果有问题,不是账号密码就没问题一样.
    zoker
        22
    zoker  
       2020-05-26 13:51:27 +08:00 via Android
    热心网友发送的链接,所以来回复下

    1. 私有仓库只有仓库成员可见
    2. Gitee 之前有一个功能,就是 Fork 的时候可以选择是否添加主仓成员进去,但这个功能后面下了,不知道是不是他 Fork 的时候把你加进去了,这个需要你确认,或者你提供相关信息给我,我来帮你确认
    3. 不仅是 Gitee,不要把你的密码放到任何托管平台上,只要放了,就不安全,隐私信息本来就不该与代码放到一块
    a62527776a
        23
    a62527776a  
       2020-05-26 13:52:15 +08:00
    @oschina 欸 官方来了
    lasuar
        24
    lasuar  
       2020-05-26 14:01:11 +08:00
    @oschina 他说的是他看到了对方的私有仓库,所以我建议他把地址贴出来给大家看看,这没毛病把
    oschina
        25
    oschina  
       2020-05-26 14:02:41 +08:00
    @lasuar 没毛病
    normalcoder
        26
    normalcoder  
       2020-05-26 14:06:00 +08:00   ❤️ 2
    重中之重:如果遇到密钥信息泄漏,第一时间修改和停用相关密钥。

    然后接着来看下面的东西。。。

    关于仓库权限:

    1 、个人的仓库如果是私有仓库,除了仓库成员外是不可能被看到的。 @coderabbit 能访问说明有几种可能:要么是个公开库,要么 @coderabbit 是仓库成员。

    2 、上文中「然后我仔细一看我没有登陆 gitee 我准备登陆后联系对方。却发现登陆后这个仓库是个私有的仓库」这句话也相当的诡异,未登录能访问登陆后反而不能访问?未登录情况下访问私有库会返回 403 页面。登录后如果没有权限也会是 403 页面。何来上面这一说。。


    https://imgchr.com/i/tP5y6J 一图看到,阿里云在 GitHub 上观测到来自于 Gitee 的泄漏的什么内容。。可惜截图被打码,未能明确是泄露了啥。猜测应该是跟阿里云 AK/SK 有关,那从截图反馈是阿里云通知的,泄密的信息可能跟 @coderabbit 有关联关系。把密码密钥这种敏感信息存在仓库内的确是不明智且不合理的操作方式。而且还被 Fork 了。。

    遇到这种问题的处理方式上面 @zoker 的建议还是比较中肯。
    zoharSoul
        27
    zoharSoul  
       2020-05-26 14:14:02 +08:00
    @normalcoder

    说的很对..

    楼主的描述要是有你这么条理清洗就好了.
    arthas2234
        28
    arthas2234  
       2020-05-26 14:14:54 +08:00
    配置文件都加到 gitignore 里或者加密配置文件
    GoRoad
        29
    GoRoad  
       2020-05-26 14:35:44 +08:00   ❤️ 1
    惊现码云开发组大佬
    EminemW
        30
    EminemW  
       2020-05-26 15:04:13 +08:00
    @normalcoder #26
    [2 、上文中「然后我仔细一看我没有登陆 gitee 我准备登陆后联系对方。却发现登陆后这个仓库是个私有的仓库」这句话也相当的诡异,未登录能访问登陆后反而不能访问?未登录情况下访问私有库会返回 403 页面。登录后如果没有权限也会是 403 页面。何来上面这一说。。]

    楼主的意思是,对方的 fork 的仓库是公有仓库,自己登陆账号后,发现自己的仓库是私有的。
    Exin
        31
    Exin  
       2020-05-26 15:20:45 +08:00
    Gitee 的获取文件列表的 API 也不太安全,不提供 token 也会返回完整的私有仓库文件列表
    dbw9580
        32
    dbw9580  
       2020-05-26 15:23:27 +08:00 via Android
    看完 30 楼,我依旧不知道泄漏的是谁的数据库连接凭证。。
    是楼主的?那楼主把凭证写在代码里,然后代码仓库公开,却说 gitee 泄漏用户的凭证?
    是 fork 楼主代码的人的?那为何接到阿里云邮件告警的是楼主?
    shintendo
        33
    shintendo  
       2020-05-26 15:30:59 +08:00
    @EminemW 我看楼主的意思是,他的库是公开的,对方 fork 的库是私有的
    coderabbit
        34
    coderabbit  
    OP
       2020-05-26 16:20:44 +08:00
    @dbw9580
    @oschina

    再说一次再说一次,不是我的仓库不是我的仓库不是我的仓库,泄露的不是我的帐号和密码。是别人的,别人的是私有项目,私有项目,私有项目。我不是他的成员我没有加入他的项目里面去!是他的配置文件里有帐号密码,阿里云给我发邮件。我打开邮件中的地址直接看到的内容。内容图片我打码发出来了!我没有登陆之前我确实看到了。我登陆后就无法查看资源了!@oschina 不可能在我发现到登陆这几十秒中对方就把仓库设置为私有这么巧的事儿???现在阿里云邮件中的地址我再打开已经提示 资源不存在或者没有访问权限!
    coderabbit
        35
    coderabbit  
    OP
       2020-05-26 16:24:49 +08:00
    @normalcoder 阿里云邮件打码的是对方仓库地址我肯定要打码。另一个打码是对方仓库配置文件里的帐号密码我也肯定要打码。那些叫我把地址贴出来的,真是看热闹不嫌事大!我没有登陆前确实看到并截图下来了!登陆后再看就是提示 资源不存在或者没有访问权限。难道我在发现截图到登陆几十秒对方就设置为私有仓库了???哪有这么巧的事儿?
    coderabbit
        36
    coderabbit  
    OP
       2020-05-26 16:38:19 +08:00
    @favourstreet 我知道为什么阿里云会给我发邮件!我登陆阿里云后台看了在 3 月 21 号就发邮件提醒我了,之前一直都是阿里云安全中心提示什么漏洞管理,我就一台渣渣服务器我也没管它!刚看了 2017 年我用了阿里云 oss,把 key 丢在项目里作为演示测试的。对方并没有删除这个 key 导致阿里云给我发邮件,我再邮件地址里打开看到了!然后看到里面的数据库帐号密码等信息!
    kanglo
        37
    kanglo  
       2020-05-26 16:39:55 +08:00
    你这算啥,我从 GitHub 导入的 v2ray 仓库直接给我删了
    leonardyang
        38
    leonardyang  
       2020-05-26 16:43:37 +08:00
    看描述,是链接跳转过去的页面能越权看到对方的私有仓库内容吧,这是个严重的越权漏洞了
    putaozhenhaochi
        39
    putaozhenhaochi  
       2020-05-26 16:46:06 +08:00 via Android
    炸出好多 OSCHINA 开发
    DDounx
        40
    DDounx  
       2020-05-26 16:48:08 +08:00
    讲道理,即使是私有的库,也不应该把私钥什么的放上去。lz 那个链接现在应该是没有权限进去了,如果是这样的话可以把链接发出来给码云的开发大佬看看。 @zoker
    murmur
        41
    murmur  
       2020-05-26 16:49:11 +08:00
    @putaozhenhaochi 这说明 gitee 有客服,而且还经常刷 v2,好事
    putaozhenhaochi
        42
    putaozhenhaochi  
       2020-05-26 16:52:58 +08:00 via Android
    @murmur 确实挺好的。 记得上次有个帖子说思否社区的。也是几位创始人都出现了。说明对用户还是很重视的
    normalcoder
        43
    normalcoder  
       2020-05-26 17:43:16 +08:00
    @kanglo 一般这种事情已发生大家就知道最近要开会了 😈。这种东西不公开就不会有问题。
    normalcoder
        44
    normalcoder  
       2020-05-26 17:45:44 +08:00
    @kanglo 一般这种事情一发生大家就知道最近要开会了 😈。这种东西不公开就不会有问题。
    ——————
    强迫症更正了个错别字...
    Ps:最近 So🐶的输入法真不好用,有啥好的推荐吗哈哈哈... XD
    techme
        45
    techme  
       2020-05-26 17:51:38 +08:00
    这是个 bug ?竟然是这种方式被发现
    Phariel
        46
    Phariel  
       2020-05-26 17:53:14 +08:00 via iPhone
    上网无隐私 咋就偏不信邪呢 私人仓库也是在线产品啊
    lzyliangzheyu
        47
    lzyliangzheyu  
       2020-05-26 17:58:56 +08:00
    自己一个人的东西本地自建了 gitea,公网 22 端口和 3000 端口映射,自带 sqllite3,反正用户只有我一个人,不涉及并发。。够用了
    kanglo
        48
    kanglo  
       2020-05-26 18:36:49 +08:00
    @normalcoder 不知道你是什么系统欸,我 windows 用的自带的微软拼音,linux 可以试试 rime
    cozof
        49
    cozof  
       2020-05-26 18:38:31 +08:00 via iPhone
    同#37 楼,之前也几个项目放码云,其中一个不知道哪天被删了,挺正常的一个私有项目,不是 v2ray 之类的。

    前段时间登录了下登录不了,发现下面一行小字提示要绑定手机号 就不用码云了,还是用 GitHub 吧。
    lyyhello
        50
    lyyhello  
       2020-05-26 20:18:06 +08:00
    我话几十万人民币买的教训 不能把 key 放在公网上面 即使是私有的
    bequt
        51
    bequt  
       2020-05-26 21:05:42 +08:00
    越权漏洞。。。。不知道企业那边还稳么,慌得一笔。
    binux
        52
    binux  
       2020-05-26 21:13:54 +08:00 via Android
    @coderabbit
    > 我登陆后就无法查看资源了
    那你退出登录再点一次链接还能看到不?
    sobigfish
        53
    sobigfish  
       2020-05-26 21:24:33 +08:00
    官方都让(授权)你发地址了, 发, 怕啥, 看热闹不嫌事大也是他的问题了
    pinews
        54
    pinews  
       2020-05-26 22:03:48 +08:00
    楼主是不是有多个账号?
    cco
        55
    cco  
       2020-05-27 09:12:11 +08:00
    你可能赶上了一个很难复现的漏洞。
    还有就是配置文件尽量不要上传到仓库,如果非要上传,请做好加密。
    locoz
        56
    locoz  
       2020-05-27 11:34:36 +08:00   ❤️ 2
    看了一天了,楼主真是挺奇怪的。在这种官方人员都在,并且也愿意看看是啥问题的情况下,既不留联系方式(哪怕是让官方人员给个联系方式都可以)又不给出链接,然后图里又看不出是否是私有仓库、是否是未登录状态,也没有说自己有没有试过是否可以复现...这个说重点的能力是真的不行,完全给不出有用的信息。

    单从这帖子里给出的信息来看,官方既没法得到准确的问题点、又没法得知 BUG 是否真实存在,还不知道是不是个可以复现的“BUG”,可以说是个提 BUG 的典型反面教材了。(甚至某些方面来讲更像是造谣...
    zoharSoul
        57
    zoharSoul  
       2020-06-04 16:21:32 +08:00
    叹号哥一击脱离不见了.
    coderabbit
        58
    coderabbit  
    OP
       2020-06-04 18:55:25 +08:00 via Android
    @binux 看不到了 阿里云也没有给我发邮件了!
    @locoz 我只是当时遇到了,当时我也不会发地址出来的!现在我也看不到了!官方也没私信我!我只是贴出了我邮件及看到的信息而已!
    @zoharSoul 现在我也看不到了 大家说我有别的账号 说我加入过我都没有!
    locoz
        59
    locoz  
       2020-06-04 19:05:03 +08:00
    @coderabbit #58
    1 、V2EX 没有私信功能...
    2 、官方要你提供信息确认,你没理他
    3 、下次记得留联系方式或者要官方人员留联系方式
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1067 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 19:13 · PVG 03:13 · LAX 11:13 · JFK 14:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.