【Java】我在服务器上执行了 rm -rf *

我在服务器上执行了 rm -rf *

程序员的那些事发布于 23 分钟前

前情提要

前段时间,我在一个非公开的 Bug 赏金项目里发现了一个严重的漏洞,这个漏洞可以允许远程执行代码。在我提交漏洞报告的几个小时后,我收到了第一封邮件回复,他们说会尽快确认漏洞然后再和我联系。到目前为止一切都是正常的。但是第二封邮件的回复开始了整个惊心动魄的故事,就像多米诺骨牌效应一样把更多的问题暴露了出来。

社区关于这个故事的反应是这样的:

https://twitter.com/secalert/...
【Java】我在服务器上执行了 rm -rf *

线上会谈前的邮件往来

我找出了这个远程代码执行的漏洞,并且在报告里用 5 个命令来演示 POC(Proof Of Concept)。因为我不想在 POC 里造成任何破坏,所以我决定用下面这几个命令:

1. uname -a

2. id

3. df -h

4. ls -alF

5. cat /etc/hosts

第 1 封邮件回复说他们会认真排查报告里说到的问题。

但是第 2 封邮件的回复是这样的

我回复他们我随时可以来帮助他们解决问题。

接着他们第 3 封邮件的回复是这样的:

最后第 4 封邮件的回复是这样的:

确认漏洞修复并且提出线上会谈

我确认了他们的漏洞已经修复了,接着向他们提出要不要进行一次线上会谈来聊聊这个案例,因为这种事情很容易发生在初学者身上,一起聊一聊的话可以分享这些踩过的坑来防止其他人再犯同样的错误。让我很惊喜的是他们答应了,事实证明无论是他们还是他们的公司都不是徒有虚名。

当事人愿意出来解释前因后果

首先,我要借这个机会来感谢两位当事人工程师愿意来和我线上会谈,并同意让我引用之前沟通的内容,这样可以让其他人更清楚的了解整件事的前因后果。

因为畏惧网络暴力和一些不好的评论,当事人要求匿名。

当然,我尊重他们的要求。下面我会用“工程师老甲”和“初级工程师张三”来指代他们。

线上会谈经过

@Dave

@Dave 问 “初级工程师张三”:

@张三:

@Dave:

@Dave 问 “工程师老甲”:

@老甲:

@Dave

最后感想

我曾幻想着那个故障没有发生。但是,我们都是普通人,因为我们想帮上忙,所以难免会犯重大的错。我们每个人都曾在某个节点犯了这样那样地错。只要我们从中学到了东西,我们就会一直变得更好。

希望这两位工程师的分享,可以帮助其他人预防此类错误。

java

阅读 13更新于 4 分钟前

本作品系原创,采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议

avatar

程序员的那些事

Hello World!

1 声望

0 粉丝

0 条评论

得票时间

avatar

程序员的那些事

Hello World!

1 声望

0 粉丝

宣传栏

前情提要

前段时间,我在一个非公开的 Bug 赏金项目里发现了一个严重的漏洞,这个漏洞可以允许远程执行代码。在我提交漏洞报告的几个小时后,我收到了第一封邮件回复,他们说会尽快确认漏洞然后再和我联系。到目前为止一切都是正常的。但是第二封邮件的回复开始了整个惊心动魄的故事,就像多米诺骨牌效应一样把更多的问题暴露了出来。

社区关于这个故事的反应是这样的:

https://twitter.com/secalert/...
【Java】我在服务器上执行了 rm -rf *

线上会谈前的邮件往来

我找出了这个远程代码执行的漏洞,并且在报告里用 5 个命令来演示 POC(Proof Of Concept)。因为我不想在 POC 里造成任何破坏,所以我决定用下面这几个命令:

1. uname -a

2. id

3. df -h

4. ls -alF

5. cat /etc/hosts

第 1 封邮件回复说他们会认真排查报告里说到的问题。

但是第 2 封邮件的回复是这样的

我回复他们我随时可以来帮助他们解决问题。

接着他们第 3 封邮件的回复是这样的:

最后第 4 封邮件的回复是这样的:

确认漏洞修复并且提出线上会谈

我确认了他们的漏洞已经修复了,接着向他们提出要不要进行一次线上会谈来聊聊这个案例,因为这种事情很容易发生在初学者身上,一起聊一聊的话可以分享这些踩过的坑来防止其他人再犯同样的错误。让我很惊喜的是他们答应了,事实证明无论是他们还是他们的公司都不是徒有虚名。

当事人愿意出来解释前因后果

首先,我要借这个机会来感谢两位当事人工程师愿意来和我线上会谈,并同意让我引用之前沟通的内容,这样可以让其他人更清楚的了解整件事的前因后果。

因为畏惧网络暴力和一些不好的评论,当事人要求匿名。

当然,我尊重他们的要求。下面我会用“工程师老甲”和“初级工程师张三”来指代他们。

线上会谈经过

@Dave

@Dave 问 “初级工程师张三”:

@张三:

@Dave:

@Dave 问 “工程师老甲”:

@老甲:

@Dave

最后感想

我曾幻想着那个故障没有发生。但是,我们都是普通人,因为我们想帮上忙,所以难免会犯重大的错。我们每个人都曾在某个节点犯了这样那样地错。只要我们从中学到了东西,我们就会一直变得更好。

希望这两位工程师的分享,可以帮助其他人预防此类错误。

以上是 【Java】我在服务器上执行了 rm -rf * 的全部内容, 来源链接: utcz.com/a/107115.html

回到顶部