推荐关注:

美女秘书芷晴GitH.ub开源[敏感词汇屏蔽]码分析引擎CodeQL同步启动3000美元漏洞奖励计划

收集整理:九站网 更新时间:20191202 文章来源:雷锋网

美女秘书芷晴GitH...ub在全球开发者大会上宣布启动了一个名为“安全实验室(SecurityLab)”的新社区计划。该计划中,GitH...ub不仅开源了[敏感词汇屏蔽]码

美女秘书芷晴GitH..ub在全球开发者大会上宣布启动了一个名为“安全实验室(SecurityLab)”的新社区计划。该计划中,GitH..ub不仅开源了[敏感词汇屏蔽]码分析引擎CodeQL,还设置了奖励金最高为3000美元的漏洞奖励计划。

美女秘书芷晴GitH..ub安全实验室的任务是启发并赋能全球安全研究社区,保护全球[敏感词汇屏蔽]码的安全;意将进一步解决[敏感词汇屏蔽]码安全难题,完善开源社区不足,为开源社区的优质[敏感词汇屏蔽]码贡献打下良好基础。这一计划也得到了很多大牛企业为[敏感词汇屏蔽]表的支持,包括Microsoft,Google,Intel 等,现雷锋网AI开发者将这一社区具体内容整理编辑如下。

美女秘书芷晴

美女秘书芷晴安全漏洞的火眼金睛CodeQL

美女秘书芷晴CodeQL是GitH..ub刚推出的一款新开源工具。这是一款语义[敏感词汇屏蔽]码分析引擎,旨在查找大量[敏感词汇屏蔽]码中同一漏洞的不同版本。

美女秘书芷晴CodeQL可以帮助我们跨[敏感词汇屏蔽]码库发现漏洞;允许我们像查询数据一样查询[敏感词汇屏蔽]码、编写查询以查找漏洞的所有变体,并将其永久消除;共享该查询结果以帮助其他人消除漏洞。

美女秘书芷晴

美女秘书芷晴其中,QL是查询语言,也是CodeQL的基础,专用于分析[敏感词汇屏蔽]码。这是一种逻辑编程语言,因此它由逻辑公式组成。QL使用公共逻辑连接词(如and,or,和not)、量词(如forall和exists)、以及其他重要的逻辑概念。查询语句示例如下(实现将null添加到集合):

美女秘书芷晴importj[敏感词汇屏蔽]a

美女秘书芷晴fromMethodAccesscall,Methodadd

where

  call.getMethod().overrides*(add)and

  add.hasName("add")and

  add.getDeclaringType().getSourceDeclaration().hasQualifiedName("j[敏感词汇屏蔽]a.util","Collection")and

  call.getAnArgument()instanceofNullLiteral

selectcall

QL还支持递归和聚合,这允许我们可以使用简单的语法编写复杂的递归查询并直接使用函数库,比如:count,sum和[敏感词汇屏蔽]erage。

因此,使用CodeQL编写的查询可以发现漏洞及重要安全漏洞的变体。而除了GitH..ub平台外,CodeQL也已经应用于其它平台的漏洞[敏感词汇屏蔽]码扫描活动中,如Mozilla。

更多关于QL

https://help.semmle.com/QL/learn-ql/

CodeQL该如何使用?

在线查询

我们可以使用LGTM平台(https://lgtm.com/query/rule:1823453799/lang:j[敏感词汇屏蔽]a/)上的CodeQL查询控制台,在流行的开源[敏感词汇屏蔽]码库上直接运行实际查询。

LGTM平台界面,直接编写需要查询的[敏感词汇屏蔽]码

当了解发现有漏洞的模式后,我们就能在整个[敏感词汇屏蔽]码库中查找出类似的情况。在下面的示例中,我们使用了内置的CodeQL库对不安全的反序列化模式进行编码,以进行数据流和污点跟踪。

UnsafeDeserialization.ql

fromDataFlow::PathNodesource,DataFlow::PathNodesink,UnsafeDeserializationConfigconf

whereconf.hasFlowPath(source,sink)

selectsink.getNode().(UnsafeDeserializationSink).getMethodAccess(),source,sink,

  "Unsafedeserializationof$@.",source.getNode(),"userinput"

本地查询

如果需要在本地编写和运行查询,可以通过安装 VisualStudio Code的CodeQL扩展而实现。

在VisualStudio中写入和运行查询[敏感词汇屏蔽]码

安装CodeQL扩展后,具体操作步骤为:

1.获取CodeQL数据库

在LGTM.com上搜索要研究的开源项目,然后导入项目页面;

将所下载的和项目本身的CodeQL数据库添加到VS[敏感词汇屏蔽]码中,实现对这些指令的使用;

2.查询[敏感词汇屏蔽]码并查找漏洞

复制CodeQLstarter工作区并在VSCode中打开它;

通过右键单击查询并选择“运行查询”来运行查询;

有关详细信息,请参阅文档:

https://help.semmle.com/codeql/codeql-for-vscode.html

查询开源[敏感词汇屏蔽]码库

根据OSI批准的开源许可证相关规定,我们可以为符合条件的任何项目创建CodeQL数据库。

CodeQL分析依赖于从[敏感词汇屏蔽]码中提取关系数据,并使用它来构建CodeQL数据库(https://help.semmle.com/codeql/glossary.html#codeql-database)——该目录包含在[敏感词汇屏蔽]码上运行查询所需的所有数据。

在生成CodeQL数据库之前,您需要:

安装并设置CodeQLCLI。(有关更多信息,参见下面的CodeQLCLI入门)

迁出要分析的[敏感词汇屏蔽]码库的版本。该目录应已准备好建立,并已安装所有依赖项。

查询开源[敏感词汇屏蔽]码库示例

但需要注意的是,GitH..ubCodeQL只能用于在OSI批准的开源许可下发布的[敏感词汇屏蔽]码库,或者用于执行学术研究。它不能用于自动化分析、持续集成或持续交付,无论是作为正常软件工程过程的一部分还是其他。

CodeQL扩展详细文档:

https://help.semmle.com/codeql/codeql-for-vscode.html

本地查询下载地址:

https://marketplace.visualstudio.com/items?itemName=github.vscode-codeql

CodeQLCLI入门:

https://help.semmle.com/codeql/codeql-cli/procedures/get-started.html

CodeQL“捕获标志”挑战

如果你想挑战漏洞搜索技能并快速学习SemmleCodeQL,可以尝试完成给出的任务,即通过使用CodeQL来找到jQuery插件的变体——这些变体会使客户机暴露于未记录的XSS(跨站点脚本)漏洞。

具体而言,jQuery是一个非常流行的、但很旧的开源J[敏感词汇屏蔽]aScript库,旨在简化H..TML文档遍历和操作、事件处理、动画和Ajax等工作。截至2019年5月,jQuery在1000万最受欢迎网站中的使用率为73%。jQuery库支持模块化插件,世界各地的开发人员已经实现了数千个插件,无缝地扩展了jQuery的功能。

而Bootstrap则是一个广泛使用jQuery插件机制的流行库;但是Bootstrap中的jQuery插件过去是以一种不安全的方式实现,这可能会使Bootstrap的用户容易受到跨站点脚本(XSS)攻击。

这是指攻击者使用web应用程序向其他最终用户发送恶意[敏感词汇屏蔽]码(通常是以浏览器端脚本的形式);而这些恶意脚本可以访问浏览器保留并与该站点一起使用的任何cookie、会话标记或其他敏感信息。

因此,在整个查找过程中,你需要使用分步指南编写查询,从而查找引导中未安全实现的jQuery插件。完成后将答案发送至ctf@github.com则可获得获奖机会。GitH..ub将选出2019年12月31日前收到的两个最佳CodeQL查询获得大奖;还将选择10个额外的CodeQL查询来赢得其它奖品。

查看以前的挑战:

https://securitylab.github.com/ctf/jquery

提升安全的更广泛计划

另外,最近GitH..ub还成为授权的CVE编号发布机构,即它能够为漏洞发布CVE编号。这一功能已经增加至“安全建议”服务功能中。漏洞修复后,项目所有人就可以发布安全公告,而GitH..ub将向所有使用原来维护人员的[敏感词汇屏蔽]码的易受攻击版本的上游项目所有人;但在发布安全公告前,项目所有人同时可以直接向GitH..ub请求并收到CVE编号。

当然,除了[敏感词汇屏蔽]表荣誉的CVE之外,Github也发起了奖金机制,使用CodeQL进行挖掘新漏洞的安全研究员可以最高获得2500美元的赏金;如果编写的CodeQL查询[敏感词汇屏蔽]码质量够高,甚至还能被授予3000美元的奖励。

赏金详细规则:

https://securitylab.github.com/bounties

除了新推出的安全实验室外,GitH..ub还推出了“GitH..ub安全公告数据库”,用于收集平台上能找到的所有安全公告,可以为大家追踪在GitH..ub托管项目中找到的安全漏洞问题提供更大的便利空间。

最后,GitH..ub还更新了TokenScanning自有服务。它能够扫描用户项目中不慎在源[敏感词汇屏蔽]码中遗留的API密钥和令牌。该服务此前能够为20种服务检测API令牌,而新版本能够检测的格式又增加四个厂商:GoCardless、H..ashiCorp、Postman和腾讯云。

Github地址:

https://securitylab.github.com/tools/codeql/

美女秘书芷晴GitH.ub开源[敏感词汇屏蔽]码分析引擎CodeQL同步启动3000美元漏洞奖励计划》一文由九站网收集整理,不代表本站支持本文观点,如有疑问请与我们取得联系

热门频道推荐 建站经验 策划盈利 搜索优化 业界动态 境外动态 网络评论 传媒播报 产品运营 交互设计 网站推广 免费资源 网络游戏 网页游戏 电商要闻 电商分析 移动通讯 数码咨讯 移动应用 数码评测 创业模式 创业资本 创业点评 创业经验 电商淘客 电商微商

九站草根门户 服务草根站长 集结网络群体的力量!
免责申明:本站为非盈利性网站,网站所载文章除申明原创皆来源于网络,其版权归原作者所有。如无意侵犯您的权益,请及时与我们联系,我们将在第一时间处理您的诉求。
PHP程序订制开发,九站系统销售联系QQ 1142088012 蜀ICP备06021074号 Copyright 2011-2016 © Www.O9z.Net .All Rights Reserved