当前位置: 首页 > article >正文

技术速递|GitHub 初学者指南:GitHub 安全入门

作者Kedasha Kerr排版Alan Wang学习如何使用 GitHub Advanced Security 保护你的项目并确保它们的安全性。欢迎回到《GitHub 初学者指南》第三季到目前为止今年我们已经介绍了 GitHub Issues 和 Projects以及 GitHub Actions。这一次我们将稍微讨论一下安全性以及 GitHub 提供了哪些工具来帮助你确保代码的安全。在本文结束时你将了解如何使用内置工具例如密钥扫描、Dependabot、代码扫描和 Copilot Autofix来修复你仓库中的漏洞。GitHub Issues 和 Projectshttps://youtu.be/c67GaAkf1BE?sigQm38vCKp0S8y66C/?wt.mc_id3reg_webpage_reactorGitHub Actionshttps://www.youtube.com/watch?vBQrohJ3PT7I/?wt.mc_id3reg_webpage_reactor为什么安全性很重要漏洞是你代码或所使用库中的弱点攻击者可以利用这些弱点。需要意识到一旦你将某个库导入到项目中你就继承了该库的所有风险即使这些存在漏洞的代码并不是你自己编写的。这就是为什么即使是很小或全新的项目也可能存在漏洞——几乎所有软件都依赖第三方包。GitHub 通过 GitHub Advanced SecurityGHAS让发现和修复这些问题变得前所未有的简单这是一个帮助你提升并维护代码质量的产品套件。在公共仓库中你可以使用 Dependabot、代码扫描、密钥扫描和 Copilot Autofix。如果你想了解更多不同功能可以查看我们关于 GHAS 的文档。或者继续阅读我们将带你逐步了解如何启用和使用其中的一些功能。GitHub Advanced SecurityGHAShttps://github.com/security/advanced-security?utm_sourceblog-episode-3utm_mediumblogutm_campaigngfb-s3-2026/?wt.mc_id3reg_webpage_reactor关于 GHAS 的文档https://docs.github.com/get-started/learning-about-github/about-github-advanced-security?utm_sourceblog-episode-3utm_mediumblogutm_campaigngfb-s3-2026/?wt.mc_id3reg_webpage_reactor启用安全功能第一步是确保 GHAS 已开启。进入你的仓库。点击页面顶部的Settings页签。在左侧栏中 “Security” 下选择Advanced Security。在 “Dependabot” 下启用 “Dependabot alerts” 和 “Dependabot security updates”。向下滚动到 “Code scanning” 部分。对于 “CodeQL analysis”选择Set up然后在上下文菜单中选择Default。会出现一个新窗口。选择Enable CodeQL无需更改任何设置。向下滚动到 “Secret Protection” 并启用它。这些工具默认在公共仓库中可用。如果你有私有仓库则需要 GHAS 许可证。在窗口顶部选择 Security 页签进入该仓库的安全主页。在这里你将看到你已启用的各种 GHAS 工具选项。你可以在这里查看暴露的密钥、存在漏洞的依赖项以及存在风险的代码路径的警报。现在让我们更详细地看看这些工具。如果你想查看各种警报的显示方式请记住我们还提供了本文的在线视频版本。本文的在线视频版本https://youtu.be/zhxXaFzzJYA?si2IQ2lHHNFyEEjguH/?wt.mc_id3reg_webpage_reactor使用密钥扫描GitHub 可以通过密钥扫描帮助你保护敏感信息。如果你不小心提交了 API key 或 token密钥扫描会在左侧栏的 Security 标签下的Secret scanning中标记出来。当你看到警报时点击具体警报的标题可以查看检测到的密钥以及它出现的位置。解决该暴露密钥的一种方法是将其撤销。撤销密钥意味着禁用旧的密钥使其无法再被使用。通常你需要在该密钥所属的平台上生成一个新密钥例如 Azure 或 Stripe。GitHub 无法自动为你撤销密钥。这一步需要你自己完成。不过密钥扫描会提供早期预警避免泄露的密钥被真正利用。在你撤销密钥后可以通过以下步骤关闭该密钥扫描警报在窗口右上角选择Close as。在上下文菜单中选择Revoked。点击上下文菜单底部绿色的Close alert按钮。什么是 DependabotDependabot 是一个代码扫描工具帮助你保持依赖项为最新状态。还记得我们之前提到的你会继承项目中引入的每个库的漏洞吗Dependabot 通过在发现项目依赖库存在漏洞时发出警报来帮助解决这个问题。要查看 Dependabot 警报请返回到仓库中的Security页签。当你点击某个 Dependabot 警报时它会带你进入对应的 pull request以便你更新你的库。在 pull request 页面中如果向下滚动你可以通过选择GitHub Advisory Database中的See advisory查看触发警报的具体安全公告。在 pull request 页面顶部点击绿色的Review security update按钮来审查版本更新。在合并建议更改之前你应该始终进行审查。如果一切看起来都没问题就可以继续合并该 pull request。Dependabot 会自动将 GitHub 安全公告转化为 pull request这样你就不需要手动跟踪常见漏洞与暴露。准备好进阶了吗前往 GitHub Skills尝试一些挑战了解更多关于 GitHub Advanced Security 的内容并提升你的技能。这些挑战是一种有趣且互动的学习安全知识的方式密钥扫描入门https://github.com/skills/introduction-to-secret-scanning?utm_sourceblog-episode-3utm_mediumblogutm_campaigngfb-s3-2026/?wt.mc_id3reg_webpage_reactor保护仓库的供应链安全https://github.com/skills/secure-repository-supply-chain?utm_sourceblog-episode-3utm_mediumblogutm_campaigngfb-s3-2026/?wt.mc_id3reg_webpage_reactorCodeQL 入门https://github.com/skills/introduction-to-codeql?utm_sourceblog-episode-3utm_mediumblogutm_campaigngfb-s3-2026/?wt.mc_id3reg_webpage_reactor你还可以查看 vulnerable-node 仓库以获得更多使用这些工具的实践经验。vulnerable-nodehttps://github.com/cr0hn/vulnerable-node?utm_sourceblog-episode-3utm_mediumblogutm_campaigngfb-s3-2026/?wt.mc_id3reg_webpage_reactor响应 CodeQL 警报CodeQL 是用于扫描代码并生成代码扫描警报的引擎你可以在 Security 页签下找到这些警报。CodeQL 并非代码扫描工具。它更强大因为它能够理解数据流展示输入从哪里开始以及最终流向哪里。因此代码扫描警报可以覆盖广泛的潜在场景。当你选择一个代码扫描警报时它会解释问题并在可能的情况下提供额外信息例如修复建议以及示例用来说明问题和可能的解决方案。当你理解了警报之后可以通过以下步骤使用 Copilot Autofix 来解决问题在警报顶部选择Generate fix按钮。Copilot 会建议一个补丁。审查更改并确认它满足你的需求。点击底部绿色的Commit to new branch按钮。在新的弹出窗口中选择Open a pull request选项然后点击Commit change。像处理任何其他 pull request 一样处理这个自动生成的 pull request进行审查并合并更改。请记住虽然 Copilot 可以加速安全修复但整个过程始终由你掌控。Copilot Autofixhttps://docs.github.com/code-security/responsible-use/responsible-use-autofix-code-scanning?utm_sourceblog-episode-3utm_mediumblogutm_campaigngfb-s3-2026/?wt.mc_id3reg_webpage_reactor接下来恭喜你现在已经学会如何使用 GitHub Advanced Security 来自信地检测并修复代码中的漏洞。公共仓库可以免费使用这些 GHAS 工具因此你可以从一开始就保护你的项目安全。你可以随时通过 GitHub Skills 或 ‘vulnerable-node’ 仓库来测试你的技能。如果你想获取更多信息我们还提供了大量文档。以下是一些可以帮助你入门的链接关于密钥扫描https://docs.github.com/code-security/concepts/secret-security/about-secret-scanning?utm_sourceblog-episode-3utm_mediumblogutm_campaigngfb-s3-2026/?wt.mc_id3reg_webpage_reactor关于 Dependabot 警报https://docs.github.com/code-security/concepts/supply-chain-security/about-dependabot-alerts?utm_sourceblog-episode-3utm_mediumblogutm_campaigngfb-s3-2026/?wt.mc_id3reg_webpage_reactor关于代码扫描警报https://docs.github.com/code-security/concepts/code-scanning/about-code-scanning-alerts?utm_sourceblog-episode-3utm_mediumblogutm_campaigngfb-s3-2026/?wt.mc_id3reg_webpage_reactor编码愉快

相关文章:

技术速递|GitHub 初学者指南:GitHub 安全入门

作者:Kedasha Kerr排版:Alan Wang学习如何使用 GitHub Advanced Security 保护你的项目,并确保它们的安全性。欢迎回到《GitHub 初学者指南》第三季!到目前为止,今年我们已经介绍了 GitHub Issues 和 Projects&#xf…...

GHelper终极指南:华硕笔记本轻量级性能控制工具完全解析

GHelper终极指南:华硕笔记本轻量级性能控制工具完全解析 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Strix, …...

Lean量化交易引擎:从零开始构建你的第一个自动交易策略

Lean量化交易引擎:从零开始构建你的第一个自动交易策略 【免费下载链接】Lean Lean Algorithmic Trading Engine by QuantConnect (Python, C#) 项目地址: https://gitcode.com/GitHub_Trending/le/Lean 想要进入量化交易的世界却不知从何下手?Le…...

告别卡顿与延迟:ET框架帧同步核心技术解密

告别卡顿与延迟:ET框架帧同步核心技术解密 【免费下载链接】ET Unity3D Client And C# Server Framework 项目地址: https://gitcode.com/GitHub_Trending/et/ET 你是否还在为多人对战游戏中的角色瞬移、技能不同步而烦恼?作为Unity3D客户端和C#服…...

NCMDump终极指南:3步快速解锁网易云音乐NCM加密文件

NCMDump终极指南:3步快速解锁网易云音乐NCM加密文件 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM加密文件无法在其他播放器使用而烦恼吗?NCMDump是一款强大的开源工具&#xff0…...

Citra模拟器终极指南:5步快速上手畅玩3DS经典游戏

Citra模拟器终极指南:5步快速上手畅玩3DS经典游戏 【免费下载链接】citra A Nintendo 3DS Emulator 项目地址: https://gitcode.com/GitHub_Trending/ci/citra 想要在电脑上重温《精灵宝可梦》、《塞尔达传说》等任天堂3DS经典游戏吗?Citra模拟器…...

Pico App ID配置全攻略:从注册到Unity集成

1. Pico开发者账号注册与准备 第一次接触Pico VR开发的朋友们,注册开发者账号是第一步。我刚开始用Pico开发时,发现国内和海外账号体系是分开的,这点要特别注意。国内开发者直接访问Pico开发者平台官网,点击右上角的"注册&qu…...

K8s面试官最爱问的5个冷门知识点,答对直接加薪!

K8s面试官最爱问的5个冷门知识点,答对直接加薪! 在Kubernetes技术面试中,大多数候选人能够流畅回答Pod、Deployment、Service等基础概念,但当面试官深入追问一些冷门却关键的设计机制时,往往成为区分普通工程师与高级专…...

j2mod深度解析:如何构建工业级Modbus通信系统的Java架构

j2mod深度解析:如何构建工业级Modbus通信系统的Java架构 【免费下载链接】j2mod Enhanced Modbus library implemented in the Java programming language 项目地址: https://gitcode.com/gh_mirrors/j2/j2mod 在工业自动化、物联网和SCADA系统中&#xff0c…...

如何3步掌握Akebi-GC:原神智能辅助工具的完整使用指南

如何3步掌握Akebi-GC:原神智能辅助工具的完整使用指南 【免费下载链接】Akebi-GC (Fork) The great software for some game that exploiting anime girls (and boys). 项目地址: https://gitcode.com/gh_mirrors/ak/Akebi-GC 还在为《原神》中重复的收集任务…...

OBS Studio实战:SRT推流配置与性能优化全解析

1. SRT协议与OBS推流基础认知 第一次接触SRT推流时,我被它复杂的参数配置搞得晕头转向。直到有次直播电竞比赛,RTMP推流出现严重卡顿,才真正体会到SRT的价值——当时切换SRT协议后,延迟直接从3秒降到0.8秒,观众弹幕瞬间…...

终极微博备份工具:一键将社交媒体内容导出为PDF文件

终极微博备份工具:一键将社交媒体内容导出为PDF文件 【免费下载链接】Speechless 把新浪微博的内容,导出成 PDF 文件进行备份的 Chrome Extension。 项目地址: https://gitcode.com/gh_mirrors/sp/Speechless 在数字时代,微博已成为我…...

Qwen3.5-27B多模态评测基准:TextVQA/MME/MMBench中文子集表现分析

Qwen3.5-27B多模态评测基准:TextVQA/MME/MMBench中文子集表现分析 1. 模型概述 Qwen3.5-27B是Qwen官方发布的视觉多模态理解模型,支持文本对话与图片理解双重能力。该模型在4张RTX 4090 D 24GB显卡环境下完成部署,提供完整的中文Web对话界面…...

sys-con 技术架构解析:Switch 第三方控制器支持的系统模块实现原理

sys-con 技术架构解析:Switch 第三方控制器支持的系统模块实现原理 【免费下载链接】sys-con Nintendo Switch sysmodule that allows support for third-party controllers 项目地址: https://gitcode.com/gh_mirrors/sy/sys-con sys-con 是一个为任天堂 Sw…...

从Prompt工程到AI原生架构:SITS2026专家划出的4条不可逾越的能力断层线

第一章:SITS2026专家解读:AI原生研发的核心挑战 2026奇点智能技术大会(https://ml-summit.org) 在SITS2026大会上,来自全球头部AI工程团队的架构师与研究员一致指出:AI原生研发并非简单地将LLM API嵌入现有系统,而是…...

三步解锁纯净文档:告别百度文库的付费与广告困扰

三步解锁纯净文档:告别百度文库的付费与广告困扰 【免费下载链接】baidu-wenku fetch the document for free 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wenku 你是否曾在百度文库上找到了完美的参考资料,却被付费提示、广告弹窗和复杂…...

Wonder3D完整指南:从单张图片到3D模型的终极AI建模方案

Wonder3D完整指南:从单张图片到3D模型的终极AI建模方案 【免费下载链接】Wonder3D Single Image to 3D using Cross-Domain Diffusion for 3D Generation 项目地址: https://gitcode.com/gh_mirrors/wo/Wonder3D Wonder3D是一款革命性的AI 3D建模工具&#x…...

使用Spring AI Alibaba构建智能体Agent赡

背景 在软件开发的漫长旅途中,"构建"这个词往往让人又爱又恨。爱的是,一键点击,代码变成产品,那是程序员最迷人的时刻;恨的是,维护那一堆乱糟糟的构建脚本,简直是噩梦。 在很多项目中…...

【SITS全球化布局深度解码】:奇点智能技术大会透露的3大战略转折点与2024出海实战路径

第一章:奇点智能技术大会:SITS系列品牌的全球化布局 2026奇点智能技术大会(https://ml-summit.org) SITS(Singularity Intelligence Technology Series)作为奇点智能技术大会核心IP,已形成覆盖亚太、欧洲与北美三大区…...

通义千问2.5-7B应用场景:快速搭建智能客服、代码助手、文案生成

通义千问2.5-7B应用场景:快速搭建智能客服、代码助手、文案生成 1. 模型概述 通义千问2.5-7B-Instruct是阿里云2024年9月发布的70亿参数指令微调模型,定位为"中等体量、全能型、可商用"的大语言模型。该模型在保持轻量化的同时,提…...

终极指南:3步学会使用Akebi-GC游戏辅助工具提升原神体验

终极指南:3步学会使用Akebi-GC游戏辅助工具提升原神体验 【免费下载链接】Akebi-GC (Fork) The great software for some game that exploiting anime girls (and boys). 项目地址: https://gitcode.com/gh_mirrors/ak/Akebi-GC 还在为《原神》中繁琐的神瞳收…...

大模型训练技术降维打击!YOLO26的MuSGD如何让小模型训练效率翻倍

在大模型狂飙的2026年,很多人都忽略了一个重要的事实:90%以上的工业级AI应用仍然运行在边缘设备上,依赖的是参数量不足100M的小模型。然而,小模型训练一直面临着"收敛慢、不稳定、泛化差"的三角困境——用SGD需要300轮以…...

终极GPU监控指南:为什么nvitop比nvidia-smi更强大?

终极GPU监控指南:为什么nvitop比nvidia-smi更强大? 【免费下载链接】nvitop An interactive NVIDIA-GPU process viewer and beyond, the one-stop solution for GPU process management. 项目地址: https://gitcode.com/gh_mirrors/nv/nvitop nv…...

AI原生团队启动失败率高达68%?关键不在技术,在于你漏掉了这5个组织级“认知锚点”

第一章:AI原生软件研发团队组建与人才培养 2026奇点智能技术大会(https://ml-summit.org) 构建AI原生软件研发团队,核心在于打破传统“AI支持开发”范式,转向“以模型为一等公民”的工程文化。这意味着团队成员不仅需掌握机器学习原理与大模…...

nimble 蓝牙开发二:BLE 协议栈核心组件 GAP/ATT/GATT 深度解析

1. BLE协议栈与Nimble架构全景透视 低功耗蓝牙(BLE)协议栈就像一座精心设计的建筑,每一层都有明确的职责分工。Nimble作为开源协议栈实现,其架构遵循蓝牙核心规范的同时,在资源占用和灵活性上做了大量优化。实测发现&a…...

数字孪生项目避坑指南:GIS数据对接Cesium三维地球的7个关键步骤

数字孪生项目避坑指南:GIS数据对接Cesium三维地球的7个关键步骤 在智慧城市和工业4.0的浪潮中,数字孪生技术正成为连接物理世界与数字世界的核心纽带。而将GIS地理信息数据无缝对接至Cesium三维地球平台,则是构建高保真数字孪生体的关键技术路…...

Java面试必问:ArrayList 和 LinkedList 区别:从底层到实战,彻底搞懂

ArrayList 和 LinkedList 区别:从底层到实战,彻底搞懂面试官:“ArrayList 和 LinkedList 有什么区别?” 你:“ArrayList 底层是动态数组,查询快、增删慢;LinkedList 底层是双向链表,…...

【Shell专项】数组与函数的使用

第四章 数组和函数4.1 数组 4.1.1 简介 变量:用一个固定的字符串,代替一个不固定字符串。数组:用一个固定的字符串,代替多个不固定字符串。 4.1.2 类型 普通数组:只能使用整数作为数组索引关联数组:可以使用…...

ICLR 2026 Oral | Q-RAG:当大家都在训练大模型学会搜索,它却选择训练检索器

最近看到一篇很有意思的工作:Q-RAG: Long Context Multi-Step Retrieval via Value-Based Embedder Training。 这篇论文最吸引我的地方,不是它又做了一个“更复杂的 Agent RAG”,而是它提出了一个非常反直觉、但又非常实用的思路: 当很多工作都在强化学习微调 LLM,让大模…...

从零搭建高安全低代码表单系统,手把手实现JWT动态权限校验+防CSRF提交+审计日志闭环,7天交付标准SaaS组件

第一章:从零构建高安全低代码表单系统概览 高安全低代码表单系统并非传统表单引擎的简单封装,而是融合身份鉴权、字段级加密、动态权限策略与不可篡改审计能力的一体化平台。其核心目标是在显著降低前端开发门槛的同时,满足金融、政务等强监管…...