codecamp

GitHub 漏洞悬赏计划法律安全港

摘要

  1. 我们希望您通过我们的漏洞悬赏计划负责任地披露漏洞,不希望研究人员在有诚意遵守我们的漏洞悬赏政策时担心法律后果。 我们无法约束任何第三方,因此不要假设这种保护适用于任何第三方。 如有疑问,请在采取您认为可能超出我们政策范围的任何具体行动之前先询问我们。
  2. 由于识别和非识别信息都可能使研究人员面临风险,因此我们限制与第三方分享信息的范围。 我们可能会将您报告中的非识别实质性信息提供给受影响的第三方,但必须在通知您并得到第三方不会对您提起法律诉讼的承诺之后才这样做。 我们只在您提供书面许可的情况下才会与第三方分享识别信息(姓名、电子邮件地址、电话号码等)。
  3. 如果您在参与漏洞悬赏计划时的安全研究违反了我们站点政策中的某些限制,可根据安全港条款获得有限的豁免。

1. 安全港条款

为鼓励研究和负责任地披露安全漏洞,对于意外或善意违反本政策的行为,我们不会提起民事或刑事诉讼,也不会通知执法机构。 我们认为,根据本政策进行的安全研究和漏洞披露活动,属于《计算机欺诈和滥用法案》、DMCA 及其他适用的计算机使用法律(例如 Cal. Penal Code 502(c))下的“授权”行为。 如果您在本漏洞悬赏计划的范围内绕过我们用来保护应用程序的技术措施,我们放弃对您提出任何潜在 DMCA 索赔的权利。

请注意,如果您的安全研究涉及第三方(不是我们)的网络、系统、信息、应用程序、产品或服务,由于我们无法约束第三方,因此他们可能会提起法律诉讼或通知执法机构。 我们不能也不会以其他实体的名义授权安全研究,对于任何第三方针对您的行动提起的诉讼,我们不会以任何方式为您提供辩护、赔偿或其他形式的保护。

希望您一如既往地遵守所有适用于您的法律,不要破坏或损坏超出本漏洞悬赏计划允许范围的任何数据。

在采取可能与本政策不一致或本政策未明确说明的行动之前,请联系我们。 我们保留单方面确定违反本政策的行为是否属于意外或善意的权利,而在采取任何行动之前主动联系我们是影响该决定的重要因素。 如有疑问,先问我们!

2. 第三方安全港

如果您通过我们漏洞悬赏计划提交的报告涉及第三方服务,我们将限制与任何受影响的第三方分享信息的范围。 我们可能会将您报告中的非识别内容分享给受影响的第三方,但必须在将我们的意图告知您,并得到第三方不会针对您的报告对您提起法律诉讼或主动联系执法机构的书面承诺之后,我们才这样做。 未经您的事先书面许可,我们不会与任何受影响的第三方分享您的身份识别信息。

请注意,我们不能以第三方的名义授权超出范围的测试,并且这种测试也超出了我们政策的范围。 在对第三方或其服务进行任何测试之前,请参阅他们的漏洞悬赏政策(如果他们有),也可以直接联系或通过法律代表联系他们。 这不是也不应理解为我们同意,对于任何第三方针对您的行动提起的诉讼,以任何方式为您提供辩护、赔偿或其他形式的保护。

即便如此,但如果因为您参与本漏洞悬赏计划并充分遵守我们的漏洞悬赏政策(即未故意或恶意违反),第三方(包括执法机构)对您提起了法律诉讼,我们仍会采取措施,让他们知道您采取的行动符合本政策。 尽管我们认为,您提交的报告既是机密文件,也可能是特权文件,并且在大多数情况下可以防止强制披露,但请注意,即使我们有异议,法院仍可以命令我们与第三方分享该信息。

3. 其他站点政策的有限豁免

如果您的安全研究活动与我们相关站点政策中的某些限制不一致,但符合我们漏洞悬赏计划的条款,我们将仅限于允许您在本漏洞悬赏计划下进行安全研究的目的而豁免这些限制。 如上文所述,如有疑问,先问我们!

GitHub 子处理器和 Cookie
GitHub 负责任地披露安全漏洞
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

GitHub 身份验证

在 GitHub 上管理订阅和通知

在 GitHub 上管理活动的订阅

GitHub 组织和团队

GitHub 管理对组织仓库的 Git 访问

GitHub 计费和付款

GitHub 使用议题和拉取请求进行协作

GitHub 在具有代码质量功能的仓库上进行协作

管理在 GitHub 上的工作

GitHub 建立强大的社区

GitHub 管理仓库

GitHub 自定义 GitHub 工作流程

在 GitHub Marketplace 中购买并安装应用程序

通过 GitHub Jobs 寻找人才

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }