CINXE.COM
Features · Security · GitHub
<!DOCTYPE html> <html lang="en"> <head><script type="text/javascript" src="/_static/js/bundle-playback.js?v=HxkREWBo" charset="utf-8"></script> <script type="text/javascript" src="/_static/js/wombat.js?v=txqj7nKC" charset="utf-8"></script> <script>window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script> <script type="text/javascript" src="/_static/js/ruffle/ruffle.js"></script> <script type="text/javascript"> __wm.init("https://web.archive.org/web"); __wm.wombat("https://github.com/features/security","20211009124657","https://web.archive.org/","web","/_static/", "1633783617"); </script> <link rel="stylesheet" type="text/css" href="/_static/css/banner-styles.css?v=S1zqJCYt" /> <link rel="stylesheet" type="text/css" href="/_static/css/iconochive.css?v=3PDvdIFv" /> <!-- End Wayback Rewrite JS Include --> <meta charset="utf-8"> <link rel="dns-prefetch" href="https://web.archive.org/web/20211009124657/https://github.githubassets.com/"> <link rel="dns-prefetch" href="https://web.archive.org/web/20211009124657/https://avatars.githubusercontent.com/"> <link rel="dns-prefetch" href="https://web.archive.org/web/20211009124657/https://github-cloud.s3.amazonaws.com/"> <link rel="dns-prefetch" href="https://web.archive.org/web/20211009124657/https://user-images.githubusercontent.com/"> <link rel="preconnect" href="https://web.archive.org/web/20211009124657/https://github.githubassets.com/" crossorigin> <link rel="preconnect" href="https://web.archive.org/web/20211009124657/https://avatars.githubusercontent.com/"> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211009124657cs_/https://github.githubassets.com/assets/light-7785c2ed2dc3d8efc6d13bd98db6ed5a.css"/><link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211009124657cs_/https://github.githubassets.com/assets/dark-b84802e80a0a2b580afd75f71e5138fb.css"/><link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211009124657cs_/https://github.githubassets.com/assets/dark_dimmed-29014aa76cdc4b840cf5dbbbdac91c63.css"/><link data-color-theme="light" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/light-7785c2ed2dc3d8efc6d13bd98db6ed5a.css"/><link data-color-theme="dark" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark-b84802e80a0a2b580afd75f71e5138fb.css"/><link data-color-theme="dark_dimmed" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_dimmed-29014aa76cdc4b840cf5dbbbdac91c63.css"/><link data-color-theme="dark_high_contrast" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_high_contrast-065761f0a7ce9ae41711aacb782c7923.css"/><link data-color-theme="dark_colorblind" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_colorblind-78716b628f01939e0e2fbf49f36c6cde.css"/><link data-color-theme="light_colorblind" crossorigin="anonymous" media="all" integrity="" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_colorblind-e01d3338718a085dd586276e3743f7b5.css"/> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211009124657cs_/https://github.githubassets.com/assets/frameworks-2272b4c8c27d8bad6d5e05a835a136ec.css"/> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211009124657cs_/https://github.githubassets.com/assets/behaviors-e22a14755244684224a83526beda0d70.css"/> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211009124657cs_/https://github.githubassets.com/assets/site-a4d7c46eeefdfa32709a47eb150b9b19.css"/> <link crossorigin="anonymous" media="all" integrity="" rel="stylesheet" href="https://web.archive.org/web/20211009124657cs_/https://github.githubassets.com/assets/feature-security-68ca34ac5fc2d5bbd69ecf7c24870af8.css"/> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" src="https://web.archive.org/web/20211009124657js_/https://github.githubassets.com/assets/environment-6dde468e.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" src="https://web.archive.org/web/20211009124657js_/https://github.githubassets.com/assets/chunk-frameworks-37f6f219.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" src="https://web.archive.org/web/20211009124657js_/https://github.githubassets.com/assets/chunk-vendor-5e210fe5.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" src="https://web.archive.org/web/20211009124657js_/https://github.githubassets.com/assets/behaviors-bc1bc65c.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-advanced.js" data-src="https://github.githubassets.com/assets/chunk-advanced-16fd0819.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-animate-on-scroll.js" data-src="https://github.githubassets.com/assets/chunk-animate-on-scroll-e6d58a4a.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-band.js" data-src="https://github.githubassets.com/assets/chunk-band-4d99b241.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-codemirror.js" data-src="https://github.githubassets.com/assets/chunk-codemirror-206efe5f.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-color-modes.js" data-src="https://github.githubassets.com/assets/chunk-color-modes-a25e72ef.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-community-contributions.js" data-src="https://github.githubassets.com/assets/chunk-community-contributions-7642fe59.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-confetti.js" data-src="https://github.githubassets.com/assets/chunk-confetti-0dba4ce1.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-contributions-spider-graph.js" data-src="https://github.githubassets.com/assets/chunk-contributions-spider-graph-c6b33165.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-copy.js" data-src="https://github.githubassets.com/assets/chunk-copy-be9b764d.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-delayed-loading-element.js" data-src="https://github.githubassets.com/assets/chunk-delayed-loading-element-6ab7e530.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-drag-drop.js" data-src="https://github.githubassets.com/assets/chunk-drag-drop-ea3fe848.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-edit-hook-secret-element.js" data-src="https://github.githubassets.com/assets/chunk-edit-hook-secret-element-55249df9.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-edit.js" data-src="https://github.githubassets.com/assets/chunk-edit-12ba9916.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-emoji-picker-element.js" data-src="https://github.githubassets.com/assets/chunk-emoji-picker-element-6a2a8c20.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-failbot.js" data-src="https://github.githubassets.com/assets/chunk-failbot-8f5bcdda.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-feature-callout-element.js" data-src="https://github.githubassets.com/assets/chunk-feature-callout-element-664bc094.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-filter-input.js" data-src="https://github.githubassets.com/assets/chunk-filter-input-3accc4ff.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-get-repo-element.js" data-src="https://github.githubassets.com/assets/chunk-get-repo-element-055ef053.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-insights-query.js" data-src="https://github.githubassets.com/assets/chunk-insights-query-26ec0b41.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-invitations.js" data-src="https://github.githubassets.com/assets/chunk-invitations-e16abc17.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-jump-to.js" data-src="https://github.githubassets.com/assets/chunk-jump-to-814f6895.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-keyboard-shortcuts-helper.js" data-src="https://github.githubassets.com/assets/chunk-keyboard-shortcuts-helper-1bf0c8f8.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-launch-code-element.js" data-src="https://github.githubassets.com/assets/chunk-launch-code-element-deaf4281.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-line-chart.js" data-src="https://github.githubassets.com/assets/chunk-line-chart-9b657023.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-line.js" data-src="https://github.githubassets.com/assets/chunk-line-3b34086a.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-metric-selection-element.js" data-src="https://github.githubassets.com/assets/chunk-metric-selection-element-ec6ed536.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-notification-list-focus.js" data-src="https://github.githubassets.com/assets/chunk-notification-list-focus-ee1674df.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-overview.js" data-src="https://github.githubassets.com/assets/chunk-overview-e9e9c2c8.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-premium-runners.js" data-src="https://github.githubassets.com/assets/chunk-premium-runners-a30e1062.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-presence-avatars.js" data-src="https://github.githubassets.com/assets/chunk-presence-avatars-c1796ffd.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-profile-pins-element.js" data-src="https://github.githubassets.com/assets/chunk-profile-pins-element-e0edc030.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-profile.js" data-src="https://github.githubassets.com/assets/chunk-profile-860a1228.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-pulse-authors-graph-element.js" data-src="https://github.githubassets.com/assets/chunk-pulse-authors-graph-element-156bb9f6.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-readme-toc-element.js" data-src="https://github.githubassets.com/assets/chunk-readme-toc-element-9ce3fc6c.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-ref-selector.js" data-src="https://github.githubassets.com/assets/chunk-ref-selector-ae195a76.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-remote-clipboard-copy.js" data-src="https://github.githubassets.com/assets/chunk-remote-clipboard-copy-3a84012a.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-responsive-underlinenav.js" data-src="https://github.githubassets.com/assets/chunk-responsive-underlinenav-f570efe8.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-runner-groups.js" data-src="https://github.githubassets.com/assets/chunk-runner-groups-f04848e7.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-series-table.js" data-src="https://github.githubassets.com/assets/chunk-series-table-7c3340d6.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-severity-calculator-element.js" data-src="https://github.githubassets.com/assets/chunk-severity-calculator-element-6e348ff1.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-slug.js" data-src="https://github.githubassets.com/assets/chunk-slug-4811ceee.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-sortable-behavior.js" data-src="https://github.githubassets.com/assets/chunk-sortable-behavior-3d65f853.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-stacked-area-chart.js" data-src="https://github.githubassets.com/assets/chunk-stacked-area-chart-0b75371e.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-stacks-input-config-view.js" data-src="https://github.githubassets.com/assets/chunk-stacks-input-config-view-af8ddac1.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-tag-input.js" data-src="https://github.githubassets.com/assets/chunk-tag-input-0c44113f.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-three.module.js" data-src="https://github.githubassets.com/assets/chunk-three.module-fa087020.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-tip.js" data-src="https://github.githubassets.com/assets/chunk-tip-9d268899.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-toast.js" data-src="https://github.githubassets.com/assets/chunk-toast-58af155f.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-tweetsodium.js" data-src="https://github.githubassets.com/assets/chunk-tweetsodium-89199ca4.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-unveil.js" data-src="https://github.githubassets.com/assets/chunk-unveil-7ef70e39.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-user-status-submit.js" data-src="https://github.githubassets.com/assets/chunk-user-status-submit-85733ec1.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" data-module-id="./chunk-webgl-warp.js" data-src="https://github.githubassets.com/assets/chunk-webgl-warp-c109e35c.js"></script> <script crossorigin="anonymous" defer="defer" integrity="" type="application/javascript" src="https://web.archive.org/web/20211009124657js_/https://github.githubassets.com/assets/marketing-60f8a4d2.js"></script> <meta name="viewport" content="width=device-width"> <title>Features · Security · GitHub</title> <meta name="description" content="Build on a secure foundation."> <link rel="search" type="application/opensearchdescription+xml" href="/web/20211009124657/https://github.com/opensearch.xml" title="GitHub"> <link rel="fluid-icon" href="https://github.com/fluidicon.png" title="GitHub"> <meta property="fb:app_id" content="1401488693436528"> <meta name="apple-itunes-app" content="app-id=1477376905"/> <meta name="twitter:image:src" content="https://github.githubassets.com/images/modules/site/social-cards/security.jpg?v=2"/><meta name="twitter:site" content="@github"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Features • Security"/><meta name="twitter:description" content="Build on a secure foundation."/> <meta property="og:image" content="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/social-cards/security.jpg?v=2"/><meta property="og:image:alt" content="Build on a secure foundation."/><meta property="og:site_name" content="GitHub"/><meta property="og:type" content="object"/><meta property="og:title" content="Features • Security"/><meta property="og:url" content="https://web.archive.org/web/20211009124657/https://github.com/features/security"/><meta property="og:description" content="Build on a secure foundation."/> <link rel="assets" href="https://github.githubassets.com/"> <meta name="request-id" content="CA9E:0FE9:6C34A4:8325DF:61618F41" data-pjax-transient="true"/><meta name="html-safe-nonce" content="1cce36602947bf7576fe81a87ad7958c62e26fcb2809ebc8f8d11e84dce204f9" data-pjax-transient="true"/><meta name="visitor-payload" content="eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDQTlFOjBGRTk6NkMzNEE0OjgzMjVERjo2MTYxOEY0MSIsInZpc2l0b3JfaWQiOiIzMzcyOTQ4MjY0MjY2NjAwMjU3IiwicmVnaW9uX2VkZ2UiOiJzZWEiLCJyZWdpb25fcmVuZGVyIjoic2VhIn0=" data-pjax-transient="true"/><meta name="visitor-hmac" content="db0f6cbb69970d486847f3f2ce3713ba5189886a3badd4099639c83985e995e7" data-pjax-transient="true"/> <meta name="github-keyboard-shortcuts" content="" data-pjax-transient="true"/> <meta name="selected-link" value="/features/security" data-pjax-transient> <meta name="google-site-verification" content="c1kuD-K2HIVF635lypcsWPoD4kilo5-jA_wBFyT4uMY"> <meta name="google-site-verification" content="KT5gs8h0wvaagLKAVWq8bbeNwnZZK1r1XQysX3xurLU"> <meta name="google-site-verification" content="ZzhVyEFwb7w3e0-uOTltm8Jsck2F5StVihD0exw2fsA"> <meta name="google-site-verification" content="GXs5KoUUkNCoaAZn7wPN-t01Pywp9M3sEjnt_3_ZWPc"> <meta name="octolytics-host" content="collector.githubapp.com"/><meta name="octolytics-app-id" content="github"/><meta name="octolytics-event-url" content="https://collector.githubapp.com/github-external/browser_event"/> <meta name="hostname" content="github.com"> <meta name="user-login" content=""> <meta name="expected-hostname" content="github.com"> <meta name="enabled-features" content="BRANCH_PROTECTION_RULE_WEBHOOK,MARKETPLACE_PENDING_INSTALLATIONS,FILE_UPLOAD_CURSOR_POSITION"> <meta http-equiv="x-pjax-version" content="fa383f2b9f4b35934b9c57d321906f253b00049efb923f8a478f79f62967f1cd"> <meta http-equiv="x-pjax-csp-version" content="b315056c7cb9ba16d6b440bd29664162d4b5d2c51a76c220b062266a876823bf"> <meta http-equiv="x-pjax-css-version" content="3182a3bf7633f01c6771e993a3035aa64a654dd728e1d7a6ad3a2c608a4f93c5"> <meta http-equiv="x-pjax-js-version" content="5f375779055478e8484becd6876d3732a791b775de01a541400e88c653691bb8"> <link rel="preload" href="https://web.archive.org/web/20211009124657/https://github.githubassets.com/static/fonts/alliance/Alliance-No-1-ExtraBold.woff2" as="font" type="font/woff" crossorigin> <link rel="preload" href="https://web.archive.org/web/20211009124657/https://github.githubassets.com/static/fonts/alliance/Alliance-No-1-Regular.woff2" as="font" type="font/woff" crossorigin> <meta name="browser-stats-url" content="https://api.github.com/_private/browser/stats"> <meta name="browser-errors-url" content="https://api.github.com/_private/browser/errors"> <meta name="browser-optimizely-client-errors-url" content="https://api.github.com/_private/browser/optimizely_client/errors"> <link rel="mask-icon" href="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/pinned-octocat.svg" color="#000000"> <link rel="alternate icon" class="js-site-favicon" type="image/png" href="https://github.githubassets.com/favicons/favicon.png"> <link rel="icon" class="js-site-favicon" type="image/svg+xml" href="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/favicons/favicon.svg"> <meta name="theme-color" content="#1e2327"> <link rel="manifest" href="/web/20211009124657/https://github.com/manifest.json" crossorigin="use-credentials"> </head> <body class="logged-out env-production page-responsive" style="word-wrap: break-word;"> <div class="position-relative js-header-wrapper "> <a href="#start-of-content" class="px-2 py-4 color-bg-info-inverse color-text-white show-on-focus js-skip-to-content">Skip to content</a> <span data-view-component="true" class="progress-pjax-loader js-pjax-loader-bar Progress position-fixed width-full"> <span style="width: 0%;" data-view-component="true" class="Progress-item progress-pjax-loader-bar color-bg-info-inverse"></span> </span> <header class="Header-old header-logged-out js-details-container Details position-relative f4 py-2" role="banner"> <div class="container-xl d-lg-flex flex-items-center p-responsive"> <div class="d-flex flex-justify-between flex-items-center"> <a class="mr-4" href="https://web.archive.org/web/20211009124657/https://github.com/" aria-label="Homepage" data-ga-click="(Logged out) Header, go to homepage, icon:logo-wordmark"> <svg height="32" aria-hidden="true" viewbox="0 0 16 16" version="1.1" width="32" data-view-component="true" class="octicon octicon-mark-github color-text-white"> <path fill-rule="evenodd" d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"></path> </svg> </a> <div class="d-lg-none css-truncate css-truncate-target width-fit p-2"> </div> <div class="d-flex flex-items-center"> <a href="/web/20211009124657/https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2Ffeatures%2Fsecurity&source=header" class="d-inline-block d-lg-none f5 color-text-white no-underline border color-border-tertiary rounded-2 px-2 py-1 mr-3 mr-sm-5" data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="72de2bde0fc156bd6dd02581779e9d65fd00595ece541447b5569dc05a47bf46"> Sign up </a> <button aria-label="Toggle navigation" aria-expanded="false" type="button" data-view-component="true" class="js-details-target btn-link d-lg-none mt-1"> <svg aria-hidden="true" height="24" viewbox="0 0 16 16" version="1.1" width="24" data-view-component="true" class="octicon octicon-three-bars color-text-white"> <path fill-rule="evenodd" d="M1 2.75A.75.75 0 011.75 2h12.5a.75.75 0 110 1.5H1.75A.75.75 0 011 2.75zm0 5A.75.75 0 011.75 7h12.5a.75.75 0 110 1.5H1.75A.75.75 0 011 7.75zM1.75 12a.75.75 0 100 1.5h12.5a.75.75 0 100-1.5H1.75z"></path> </svg> </button> </div> </div> <div class="HeaderMenu HeaderMenu--logged-out position-fixed top-0 right-0 bottom-0 height-fit position-lg-relative d-lg-flex flex-justify-between flex-items-center flex-auto"> <div class="d-flex d-lg-none flex-justify-end border-bottom color-bg-secondary p-3"> <button aria-label="Toggle navigation" aria-expanded="false" type="button" data-view-component="true" class="js-details-target btn-link"> <svg aria-hidden="true" height="24" viewbox="0 0 24 24" version="1.1" width="24" data-view-component="true" class="octicon octicon-x color-icon-secondary"> <path fill-rule="evenodd" d="M5.72 5.72a.75.75 0 011.06 0L12 10.94l5.22-5.22a.75.75 0 111.06 1.06L13.06 12l5.22 5.22a.75.75 0 11-1.06 1.06L12 13.06l-5.22 5.22a.75.75 0 01-1.06-1.06L10.94 12 5.72 6.78a.75.75 0 010-1.06z"></path> </svg> </button> </div> <nav class="mt-0 px-3 px-lg-0 mb-5 mb-lg-0" aria-label="Global"> <ul class="d-lg-flex list-style-none"> <li class="d-block d-lg-flex flex-lg-nowrap flex-lg-items-center border-bottom border-lg-bottom-0 mr-0 mr-lg-3 edge-item-fix position-relative flex-wrap flex-justify-between d-flex flex-items-center "> <details class="HeaderMenu-details details-overlay details-reset width-full"> <summary class="HeaderMenu-summary HeaderMenu-link px-0 py-3 border-0 no-wrap d-block d-lg-inline-block"> Why GitHub? <svg x="0px" y="0px" viewbox="0 0 14 8" xml:space="preserve" fill="none" class="icon-chevon-down-mktg position-absolute position-lg-relative"> <path d="M1,1l6.2,6L13,1"></path> </svg> </summary> <div class="dropdown-menu flex-auto rounded px-0 mt-0 pb-4 p-lg-4 position-relative position-lg-absolute left-0 left-lg-n4"> <a href="/web/20211009124657/https://github.com/features" class="py-2 lh-condensed-ultra d-block Link--primary no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Features">Features <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a> <ul class="list-style-none f5 pb-3"> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/mobile" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover">Mobile <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/features/actions" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover">Actions <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/features/codespaces" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover">Codespaces <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/features/packages" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover">Packages <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/features/security" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover">Security <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/features/code-review/" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover">Code review <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/features/issues/" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover">Issues <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/features/integrations" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover">Integrations <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> </ul> <ul class="list-style-none mb-0 border-lg-top pt-lg-3"> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/sponsors" class="py-2 lh-condensed-ultra d-block no-underline Link--primary no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Sponsors">GitHub Sponsors <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/customer-stories" class="py-2 lh-condensed-ultra d-block no-underline Link--primary no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Customer stories">Customer stories<span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> </ul> </div> </details> </li> <li class="border-bottom border-lg-bottom-0 mr-0 mr-lg-3"> <a href="/web/20211009124657/https://github.com/team" class="HeaderMenu-link no-underline py-3 d-block d-lg-inline-block" data-ga-click="(Logged out) Header, go to Team">Team</a> </li> <li class="border-bottom border-lg-bottom-0 mr-0 mr-lg-3"> <a href="/web/20211009124657/https://github.com/enterprise" class="HeaderMenu-link no-underline py-3 d-block d-lg-inline-block" data-ga-click="(Logged out) Header, go to Enterprise">Enterprise</a> </li> <li class="d-block d-lg-flex flex-lg-nowrap flex-lg-items-center border-bottom border-lg-bottom-0 mr-0 mr-lg-3 edge-item-fix position-relative flex-wrap flex-justify-between d-flex flex-items-center "> <details class="HeaderMenu-details details-overlay details-reset width-full"> <summary class="HeaderMenu-summary HeaderMenu-link px-0 py-3 border-0 no-wrap d-block d-lg-inline-block"> Explore <svg x="0px" y="0px" viewbox="0 0 14 8" xml:space="preserve" fill="none" class="icon-chevon-down-mktg position-absolute position-lg-relative"> <path d="M1,1l6.2,6L13,1"></path> </svg> </summary> <div class="dropdown-menu flex-auto rounded px-0 pt-2 pb-0 mt-0 pb-4 p-lg-4 position-relative position-lg-absolute left-0 left-lg-n4"> <ul class="list-style-none mb-3"> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/explore" class="py-2 lh-condensed-ultra d-block Link--primary no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Explore">Explore GitHub <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> </ul> <h4 class="color-text-tertiary text-normal text-mono f5 mb-2 border-lg-top pt-lg-3">Learn and contribute</h4> <ul class="list-style-none mb-3"> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/topics" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Topics">Topics <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/collections" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Collections">Collections <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/trending" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Trending">Trending <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="https://web.archive.org/web/20211009124657/https://lab.github.com/" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Learning lab">Learning Lab <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="https://web.archive.org/web/20211009124657/https://opensource.guide/" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Open source guides">Open source guides <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> </ul> <h4 class="color-text-tertiary text-normal text-mono f5 mb-2 border-lg-top pt-lg-3">Connect with others</h4> <ul class="list-style-none mb-0"> <li class="edge-item-fix"><a href="https://web.archive.org/web/20211009124657/https://github.com/readme" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover">The ReadME Project <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="https://web.archive.org/web/20211009124657/https://github.com/events" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Events">Events <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="https://web.archive.org/web/20211009124657/https://github.community/" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Community forum">Community forum <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="https://web.archive.org/web/20211009124657/https://education.github.com/" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to GitHub Education">GitHub Education <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="https://web.archive.org/web/20211009124657/https://stars.github.com/" class="py-2 pb-0 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to GitHub Stars Program">GitHub Stars program <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> </ul> </div> </details> </li> <li class="border-bottom border-lg-bottom-0 mr-0 mr-lg-3"> <a href="/web/20211009124657/https://github.com/marketplace" class="HeaderMenu-link no-underline py-3 d-block d-lg-inline-block" data-ga-click="(Logged out) Header, go to Marketplace">Marketplace</a> </li> <li class="d-block d-lg-flex flex-lg-nowrap flex-lg-items-center border-bottom border-lg-bottom-0 mr-0 mr-lg-3 edge-item-fix position-relative flex-wrap flex-justify-between d-flex flex-items-center "> <details class="HeaderMenu-details details-overlay details-reset width-full"> <summary class="HeaderMenu-summary HeaderMenu-link px-0 py-3 border-0 no-wrap d-block d-lg-inline-block"> Pricing <svg x="0px" y="0px" viewbox="0 0 14 8" xml:space="preserve" fill="none" class="icon-chevon-down-mktg position-absolute position-lg-relative"> <path d="M1,1l6.2,6L13,1"></path> </svg> </summary> <div class="dropdown-menu flex-auto rounded px-0 pt-2 pb-4 mt-0 p-lg-4 position-relative position-lg-absolute left-0 left-lg-n4"> <a href="/web/20211009124657/https://github.com/pricing" class="pb-2 lh-condensed-ultra d-block Link--primary no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Pricing">Plans <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a> <ul class="list-style-none mb-3"> <li class="edge-item-fix"><a href="/web/20211009124657/https://github.com/pricing#feature-comparison" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Compare plans">Compare plans <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> <li class="edge-item-fix"><a href="https://web.archive.org/web/20211009124657/https://github.com/enterprise/contact" class="py-2 lh-condensed-ultra d-block Link--secondary no-underline f5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Contact Sales">Contact Sales <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> </ul> <ul class="list-style-none mb-0 border-lg-top pt-lg-3"> <li class="edge-item-fix"><a href="https://web.archive.org/web/20211009124657/https://education.github.com/" class="py-2 pb-0 lh-condensed-ultra d-block no-underline Link--primary no-underline h5 Bump-link--hover" data-ga-click="(Logged out) Header, go to Education">Education <span class="Bump-link-symbol float-right text-normal color-text-tertiary pr-3">→</span></a></li> </ul> </div> </details> </li> </ul> </nav> <div class="d-lg-flex flex-items-center px-3 px-lg-0 text-center text-lg-left"> <div class="d-lg-flex min-width-0 mb-3 mb-lg-0"> <div class="header-search flex-auto js-site-search position-relative flex-self-stretch flex-md-self-auto mb-3 mb-md-0 mr-0 mr-md-3 js-jump-to"> <div class="position-relative"> <!-- '"` --><!-- </textarea></xmp> --></option></form><form class="js-site-search-form" role="search" aria-label="Site" data-unscoped-search-url="/search" action="/web/20211009124657/https://github.com/search" accept-charset="UTF-8" method="get"> <label class="form-control input-sm header-search-wrapper p-0 js-chromeless-input-container header-search-wrapper-jump-to position-relative d-flex flex-justify-between flex-items-center"> <input type="text" class="form-control input-sm header-search-input jump-to-field js-jump-to-field js-site-search-focus " data-hotkey="s,/" name="q" data-test-selector="nav-search-input" placeholder="Search GitHub" data-unscoped-placeholder="Search GitHub" data-scoped-placeholder="Search" autocapitalize="off" role="combobox" aria-haspopup="listbox" aria-expanded="false" aria-autocomplete="list" aria-controls="jump-to-results" aria-label="Search GitHub" data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations" spellcheck="false" autocomplete="off"> <input type="hidden" data-csrf="true" class="js-data-jump-to-suggestions-path-csrf" value="c62osgS+52s/Wku4ov6G2WzGX1zlhxQggu6AtNoKA7L61d0E37vzw5itAuE36H4Xhi9f9exPsycuwJ6qckr1jQ=="/> <input type="hidden" class="js-site-search-type-field" name="type"> <svg xmlns="http://www.w3.org/2000/svg" width="22" height="20" aria-hidden="true" class="mr-1 header-search-key-slash"><path fill="none" stroke="#979A9C" opacity=".4" d="M3.5.5h12c1.7 0 3 1.3 3 3v13c0 1.7-1.3 3-3 3h-12c-1.7 0-3-1.3-3-3v-13c0-1.7 1.3-3 3-3z"></path><path fill="#979A9C" d="M11.8 6L8 15.1h-.9L10.8 6h1z"></path></svg> <div class="Box position-absolute overflow-hidden d-none jump-to-suggestions js-jump-to-suggestions-container"> <ul class="d-none js-jump-to-suggestions-template-container"> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-suggestion" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="suggestion"> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg title="Repository" aria-label="Repository" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0"> <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path> </svg> <svg title="Project" aria-label="Project" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0"> <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path> </svg> <svg title="Search" aria-label="Search" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0"> <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path> </svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="/web/20211009124657im_/https://github.com/features/security" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub"> Search </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> </ul> <ul class="d-none js-jump-to-no-results-template-container"> <li class="d-flex flex-justify-center flex-items-center f5 d-none js-jump-to-suggestion p-2"> <span class="color-text-secondary">No suggested jump to results</span> </li> </ul> <ul id="jump-to-results" role="listbox" class="p-0 m-0 js-navigation-container jump-to-suggestions-results-container js-jump-to-suggestions-results-container"> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-scoped-search d-none" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="scoped_search"> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg title="Repository" aria-label="Repository" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0"> <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path> </svg> <svg title="Project" aria-label="Project" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0"> <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path> </svg> <svg title="Search" aria-label="Search" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0"> <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path> </svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="/web/20211009124657im_/https://github.com/features/security" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub"> Search </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-owner-scoped-search d-none" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="owner_scoped_search"> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg title="Repository" aria-label="Repository" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0"> <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path> </svg> <svg title="Project" aria-label="Project" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0"> <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path> </svg> <svg title="Search" aria-label="Search" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0"> <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path> </svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="/web/20211009124657im_/https://github.com/features/security" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub"> Search </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-global-search d-none" role="option"> <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="global_search"> <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none"> <svg title="Repository" aria-label="Repository" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0"> <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path> </svg> <svg title="Project" aria-label="Project" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0"> <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path> </svg> <svg title="Search" aria-label="Search" role="img" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0"> <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path> </svg> </div> <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="/web/20211009124657im_/https://github.com/features/security" width="28" height="28"> <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target"> </div> <div class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none js-jump-to-badge-search"> <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub"> Search </span> <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub"> All GitHub </span> <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span> </div> <div aria-hidden="true" class="border rounded-1 flex-shrink-0 color-bg-tertiary px-1 color-text-tertiary ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump"> Jump to <span class="d-inline-block ml-1 v-align-middle">↵</span> </div> </a> </li> </ul> </div> </label> </form> </div> </div> </div> <div class="position-relative mr-3 mb-4 mb-lg-0 d-inline-block"> <a href="/web/20211009124657/https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Ffeatures%2Fsecurity" class="HeaderMenu-link flex-shrink-0 no-underline" data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header menu","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="227b227a3e495c6f8db8423dfbd99bf0fb0abca34de9b5d98c0ae1d2d8bb9860" data-ga-click="(Logged out) Header, clicked Sign in, text:sign-in"> Sign in </a> </div> <a href="/web/20211009124657/https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2Ffeatures%2Fsecurity&source=header" class="HeaderMenu-link flex-shrink-0 d-inline-block no-underline border color-border-tertiary rounded px-2 py-1" data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header menu","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="227b227a3e495c6f8db8423dfbd99bf0fb0abca34de9b5d98c0ae1d2d8bb9860" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Sign up","action":"click to sign up for account","label":"ref_page:/features/security;ref_cta:Sign up;ref_loc:header logged out","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="0e2381d4ac5e1f4af078b0e61f5ce665fb9aa15bfc41763282b0343982af7afc"> Sign up </a> </div> </div> </div> </header> </div> <div id="start-of-content" class="show-on-focus"></div> <div data-pjax-replace id="js-flash-container"> <template class="js-flash-template"> <div class="flash flash-full {{ className }}"> <div class=" px-2"> <button class="flash-close js-flash-close" type="button" aria-label="Dismiss this message"> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x"> <path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"></path> </svg> </button> <div>{{ message }}</div> </div> </div> </template> </div> <include-fragment class="js-notification-shelf-include-fragment" data-base-src="https://github.com/notifications/beta/shelf"></include-fragment> <div class="application-main " data-commit-hovercards-enabled data-discussion-hovercards-enabled data-issue-and-pr-hovercards-enabled> <main class="font-mktg"> <div class="overflow-hidden"> <div class="py-4 px-3 px-md-5 d-flex color-bg-primary color-shadow-small f5-mktg"> <a class="Link--primary text-bold flex-auto" href="/web/20211009124657/https://github.com/features/security/">Security</a> <a class="d-none d-sm-block Link--muted pl-4" href="/web/20211009124657/https://github.com/features/security/">Overview</a> <a class="Link--muted pl-4" href="/web/20211009124657/https://github.com/features/security/code">Code</a> <a class="Link--muted pl-4" href="/web/20211009124657/https://github.com/features/security/software-supply-chain">Supply-chain</a> </div> <div class="js-build-in-trigger bg-gray-dark-mktg position-relative pt-11 pt-md-12 pb-8 pb-md-9 security-hero-container" style="background-image: radial-gradient(61.69% 146.73% at 71.33% 58.36%, #001536 18.75%, #040D21 100%); background-color: #011311;"> <div class="security-hero-illo-container container-xl position-absolute top-0 right-0 height-full"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/hero-bg.webp" type="image/webp"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/hero-bg.svg" class="position-absolute height-full top-0 security-hero-illo-img security-hero-illo-bg js-build-in" alt=""> </picture> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" height="931" viewbox="0 0 1430 931" width="1430" class="position-absolute height-full top-0 security-hero-illo-img security-hero-illo-lines width-auto js-build-in"><filter id="a" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="8.99962" width="148.528" x="-2.01318" y="251.653"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="1"></fegaussianblur></filter><filter id="b" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="259.701" width="59.2999" x="478.514" y="267.559"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="1"></fegaussianblur></filter><filter id="c" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="319.297" width="80.8881" x="533.657" y="154.888"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="1"></fegaussianblur></filter><filter id="d" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="170.256" width="48.9666" x="482.517" y="44.8718"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="1"></fegaussianblur></filter><filter id="e" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="9" width="131" x="617" y="240.652"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="2"></fegaussianblur></filter><filter id="f" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="14.1517" width="155.034" x="1082.98" y="216.5"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="2"></fegaussianblur></filter><filter id="g" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="27.3455" width="345.566" x="75.467" y="102.653"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="1"></fegaussianblur></filter><filter id="h" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="79.0099" width="40.2607" x="584.269" y="269.754"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="2"></fegaussianblur></filter><filter id="i" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="527.514" width="68.322" x="1036.5" y="384.546"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="2"></fegaussianblur></filter><filter id="j" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="275.734" width="73.4721" x="529.514" y="387.535"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="2"></fegaussianblur></filter><filter id="k" color-interpolation-filters="sRGB" filterunits="userSpaceOnUse" height="219.579" width="280.319" x="588.926" y="741.505"><feflood flood-opacity="0" result="BackgroundImageFix"></feflood><feblend in="SourceGraphic" in2="BackgroundImageFix" mode="normal" result="shape"></feblend><fegaussianblur result="effect1_foregroundBlur" stddeviation="2"></fegaussianblur></filter><lineargradient id="l"><stop offset="0" stop-color="#fff"></stop><stop offset="1" stop-color="#fff" stop-opacity="0"></stop></lineargradient><lineargradient id="m" gradientunits="userSpaceOnUse" x1="113.001" x2="20.0005" xlink:href="#l" y1="246.152" y2="259.152"></lineargradient><lineargradient id="n" gradientunits="userSpaceOnUse" x1="457.5" x2="499" xlink:href="#l" y1="247.152" y2="380.152"></lineargradient><lineargradient id="o" gradientunits="userSpaceOnUse" x1="263" x2="297" xlink:href="#l" y1="172.92" y2="53.9199"></lineargradient><lineargradient id="p" gradientunits="userSpaceOnUse" x1="481" x2="535" xlink:href="#l" y1="450" y2="264"></lineargradient><lineargradient id="q" gradientunits="userSpaceOnUse" x1="624.001" x2="644.501" xlink:href="#l" y1="303.438" y2="494.438"></lineargradient><lineargradient id="r" gradientunits="userSpaceOnUse" x1="470.026" x2="500.394" xlink:href="#l" y1="199" y2="97.6095"></lineargradient><lineargradient id="s" gradientunits="userSpaceOnUse" x1="741.001" x2="634.501" xlink:href="#l" y1="657.652" y2="723.688"></lineargradient><lineargradient id="t" gradientunits="userSpaceOnUse" x1="1068.5" x2="744.501" xlink:href="#l" y1="666.687" y2="676.687"></lineargradient><lineargradient id="u" gradientunits="userSpaceOnUse" x1="591" x2="953.5" y1="731" y2="821.687"><stop offset="0" stop-color="#fff" stop-opacity="0"></stop><stop offset=".391097" stop-color="#fff" stop-opacity=".72"></stop><stop offset="1" stop-color="#fff" stop-opacity="0"></stop></lineargradient><lineargradient id="v" gradientunits="userSpaceOnUse" x1="468" x2="370" xlink:href="#l" y1="809.652" y2="871.152"></lineargradient><lineargradient id="w" gradientunits="userSpaceOnUse" x1="1259" x2="1078.5" xlink:href="#l" y1="363.477" y2="448.687"></lineargradient><lineargradient id="x" gradientunits="userSpaceOnUse" x1="864.563" x2="864.563" xlink:href="#l" y1="-.849121" y2="182.501"></lineargradient><lineargradient id="y" gradientunits="userSpaceOnUse" x1="1070" x2="1199" xlink:href="#l" y1="40.1523" y2="155.152"></lineargradient><lineargradient id="z" gradientunits="userSpaceOnUse" x1="614.001" x2="333.001" y1="71.2146" y2="99.2148"><stop offset="0" stop-color="#fff"></stop><stop offset=".139357" stop-color="#fff" stop-opacity=".860643"></stop><stop offset="1" stop-color="#fff" stop-opacity="0"></stop></lineargradient><lineargradient id="A" gradientunits="userSpaceOnUse" x1="532" x2="203" xlink:href="#l" y1="79.1509" y2="141.15"></lineargradient><lineargradient id="B" gradientunits="userSpaceOnUse" x1="591" x2="599.5" xlink:href="#l" y1="268.152" y2="347.152"></lineargradient><lineargradient id="C" gradientunits="userSpaceOnUse" x1="1072.5" x2="1072" xlink:href="#l" y1="386.152" y2="662.002"></lineargradient><lineargradient id="D" gradientunits="userSpaceOnUse" x1="509.25" x2="509.25" xlink:href="#l" y1="381.652" y2="649.152"></lineargradient><lineargradient id="E" gradientunits="userSpaceOnUse" x1="1242.5" x2="1242.5" xlink:href="#l" y1="480.152" y2="516.002"></lineargradient><lineargradient id="F" gradientunits="userSpaceOnUse" x1="819" x2="638" xlink:href="#l" y1="757.697" y2="859.697"></lineargradient><lineargradient id="G" gradientunits="userSpaceOnUse" x1="683.001" x2="952.001" xlink:href="#l" y1="740.152" y2="919.697"></lineargradient><clippath id="H"><path d="m0 0h1430v931h-1430z"></path></clippath><g clip-path="url(#H)"><g filter="url(#a)"><path d="m144.501 254.152-144.50038965 4" stroke="url(#m)" stroke-dasharray="2 5"></path></g><path d="m326.5 247.152h28.808c13.341 0 22.942 12.814 19.195 25.618l-12.774 43.644c-1.868 6.381 2.896 12.774 9.544 12.809l174.727.929" stroke="url(#n)" stroke-dasharray="2 5"></path><path d="m330.439 30-53.439 149.92" stroke="url(#o)" stroke-dasharray="2 5" stroke-width="1.3"></path><g filter="url(#b)" opacity=".4"><path d="m481 525.141 53.445-217.533c3.269-13.304-2.891-27.132-14.967-33.602l-7.478-4.006" stroke="url(#p)" stroke-dasharray="2 5"></path></g><g filter="url(#c)" opacity=".4"><path d="m602 157-65.375 285.091c-2.71 11.818 5.634 23.309 17.711 24.39l58.164 5.207" stroke="url(#q)" stroke-dasharray="2 5"></path></g><g filter="url(#d)" opacity=".3"><path d="m485 213 44-166" stroke="url(#r)" stroke-dasharray="2 5"></path></g><g filter="url(#e)"><path d="m621 245.152h123" stroke="#0d449e" stroke-dasharray="2 5"></path></g><g filter="url(#f)"><path d="m1087 226.152 147-5.152" stroke="#fff" stroke-dasharray="2 5"></path></g><g stroke-dasharray="2 5"><path d="m928 180.152 14.348-86.4471c2.118-12.7565-8.245-24.1388-21.144-23.2246l-183.704 13.0197" stroke="#fff"></path><path d="m621.5 725.688 94.421 11.173c10.248 1.212 19.736-5.571 21.904-15.66l24.175-112.504" stroke="url(#s)"></path><path d="m795.5 622.688-6.22 34.832c-2.041 11.434 6.054 22.197 17.606 23.407l182.114 19.073" stroke="url(#t)"></path><path d="m578 771 228.026 33.235c10.606 1.545 20.545-5.544 22.536-16.076l7.497-39.651c1.942-10.268 11.46-17.31 21.846-16.164l178.095 19.656" stroke="url(#u)"></path><path d="m454 942 27-117" stroke="url(#v)"></path><path d="m1065.33 417.2 275.76 13.463c10.95.534 20.29-7.843 20.94-18.784l3.97-66.402" stroke="url(#w)"></path><path d="m1326 343-14 174" opacity=".5" stroke="#fff"></path><path d="m881.994-.849121-34.863 183.350121" stroke="url(#x)"></path><path d="m944.5 85.6525 9.846-58.6782c1.551-9.2446 9.315-16.1716 18.675-16.6631l462.979-24.3112" stroke="url(#y)"></path><path d="m121 127 415.915-30.6536" stroke="url(#z)"></path></g><g filter="url(#g)"><path d="m77.4996 127.5 341.5014-22.348" stroke="url(#A)" stroke-dasharray="2 5"></path></g><g filter="url(#h)" opacity=".6"><path d="m611 344.652 8.557-37.404c2.029-8.867-2.181-17.985-10.245-22.192l-20.812-10.859" stroke="url(#B)" stroke-dasharray="2 5"></path></g><g filter="url(#i)" opacity=".6"><path d="m1041 908 59.24-490.418c1.05-8.677-3.66-17.03-11.63-20.627l-17.61-7.953" stroke="url(#C)" stroke-dasharray="2 5"></path></g><g filter="url(#j)" opacity=".8"><path d="m598.5 391.652-64.5 267.5" stroke="url(#D)" stroke-dasharray="2 5"></path></g><path d="m1060 477 364 23" stroke="url(#E)" stroke-dasharray="2 5"></path><g filter="url(#k)" opacity=".8"><path d="m839 957 25.566-149.867c1.885-11.05-5.679-21.492-16.766-23.145l-254.8-37.988" stroke="url(#F)" stroke-dasharray="2 5"></path></g><path d="m1137 902.348-392.775-60.536c-16.978-2.616-28.296-18.927-24.805-35.746l14.231-68.566" stroke="url(#G)" stroke-dasharray="2 5"></path></g></svg> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/hero-main.webp" type="image/webp"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/hero-main.svg" class="position-absolute height-full top-0 security-hero-illo-img security-hero-illo-main js-build-in" width="1298" height="931" alt="" aria-hidden="true"> </picture> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/hero-corner.webp" type="image/webp"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/hero-corner.svg" class="position-absolute height-full top-0 security-hero-illo-img security-hero-illo-foreground js-build-in" width="1298" height="931" alt="" aria-hidden="true"> </picture> </div> <div class="position-relative z-1 container-xl mx-auto px-3 pt-6 py-md-12 height-full d-flex flex-column flex-justify-center"> <div class="mx-auto mx-md-0 col-12 col-md-11 col-lg-7 py-7 py-md-8 text-center text-md-left"> <h1 class="h1-mktg mb-4 color-text-white">Secure at every step</h1> <h4 class="text-normal f2-mktg mb-6 col-12 col-md-10 lh-condensed mx-auto mx-md-0 text-gray-light-mktg"> <span class="color-text-white">Ship secure applications within the GitHub flow</span>: Stay ahead of security issues, leverage the security community’s expertise, and use open source securely. </h4> <a class="btn-mktg mr-md-2 mb-3 btn-large-mktg btn-inverted-mktg" href="https://web.archive.org/web/20211009124657/https://resources.github.com/whitepapers/Application-security-guide/">Download the guide</a> <a class="btn-mktg btn-large-mktg btn-transparent color-text-white mb-3 ml-md-2 js-override-utm-params" href="/web/20211009124657/https://github.com/enterprise/contact?utm_source=github&utm_medium=site&utm_campaign=adv-security&ref_page=/features/security&ref_cta=Contact%20Sales&ref_loc=hero">Contact sales</a> </div> </div> </div> </div> <div class="overflow-hidden px-3 pb-10"> <div class="container-xl"> <div class="river-mktg js-build-in-trigger d-flex flex-column gutter gutter-spacious flex-lg-items-center my-3 my-sm-7 my-md-8 position-relative mt-md-12 flex-lg-row-reverse pb-4 pb-md-7" data-build-in-stagger="100"> <div class="pattern-container position-absolute z-n1 overflow-hidden" style="width: 200%; left: -50%;"> <div class="container-xl position-relative height-full d-none d-md-block"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/grid2.svg" class="position-absolute col-9-max z-n1" style="left: -50px; opacity: 0.7;" aria-hidden="true" alt=""> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/glows/3.svg" class="position-absolute col-9-max z-n1" style="left: -190px;" aria-hidden="true" alt=""> </div> </div> <div class="col-12 py-3 js-build-in-item col-lg-6 build-in-slideX-left"> <div class="pl-lg-4"> <p class="color-fg-default h3-mktg mb-3">Get security feedback with every git push</p> <p class="f3-mktg color-fg-muted col-6-max">Scan code as it’s created. Get accurate, <em>actionable security reviews</em> within the developer workflow.</p> </div> </div> <div class="col-12 py-3 col-lg-6"> <div class="position-relative"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/cmake-window.webp" type="image/webp"></source> <img class="col-12 height-auto rounded box-shadow-mktg-xl" width="1230" height="652" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/cmake-window.png"/> </picture> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/cmake-steps.webp" type="image/webp"></source> <img class="position-absolute top-8 security-illo-cmake-steps height-auto js-build-in-item build-in-scale-fade" width="1584" height="610" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/cmake-steps.png"/> </picture> </div> </div> </div> <div class="river-mktg js-build-in-trigger d-flex flex-column gutter gutter-spacious flex-lg-items-center my-3 my-sm-7 my-md-8 position-relative flex-lg-row-reverse pb-4 pb-md-7" data-build-in-stagger="100"> <div class="col-12 py-3 js-build-in-item col-lg-6 build-in-slideX-left"> <div class="pl-lg-4"> <p class="f3-mktg color-fg-muted col-6-max"><em>See security issues in your pull requests</em> as part of your code review process. Prevent new vulnerabilities from making it onto main.</p> </div> </div> <div class="col-12 py-3 col-lg-6"> <div class="position-relative"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/terminal.webp" type="image/webp"></source> <img class="col-8 height-auto position-relative top-n4 rounded box-shadow-mktg-xl js-build-in-item build-in-slideX-right mb-7" width="864" height="656" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/terminal.png"/> </picture> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/code-scanning.webp" type="image/webp"></source> <img class="position-absolute rounded border col-9 height-auto top-3 right-0 box-shadow-mktg-xl js-build-in-item build-in-slideX-left" width="1044" height="758" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/code-scanning.png?v=2"/> </picture> </div> </div> </div> <div class="river-mktg js-build-in-trigger d-flex flex-column gutter gutter-spacious flex-lg-items-center my-3 my-sm-7 my-md-8 position-relative flex-lg-row-reverse pb-4 pb-md-7" data-build-in-stagger="100"> <div class="col-12 py-3 js-build-in-item col-lg-6 build-in-slideX-left"> <div class="pl-lg-4"> <p class="f3-mktg color-fg-muted col-6-max"><em>Find high-priority, exploitable security issues</em> in your code. View your exposure across your codebases and focus on the vulnerabilities that matter.</p> </div> </div> <div class="col-12 py-3 col-lg-6"> <div class="position-relative"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/issues.webp" type="image/webp"></source> <img class="width-full height-auto border rounded-2 box-shadow-mktg-xl js-build-in-item build-in-slideX-left" width="1276" height="472" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/issues.png?v=2"/> </picture> </div> </div> </div> <div class="river-mktg js-build-in-trigger d-flex flex-column gutter gutter-spacious flex-lg-items-center my-3 my-sm-7 my-md-8 position-relative flex-lg-row-reverse pb-4 pb-md-7" data-build-in-stagger="100"> <div class="col-12 py-3 js-build-in-item col-lg-6 build-in-slideX-left"> <div class="pl-lg-4"> <p class="f3-mktg color-fg-muted col-6-max"><em>Create custom queries</em> to easily find and prevent variants of new security concerns. Use them alongside the 2,000+ CodeQL queries from GitHub and the community. <em>Integrate third party scanning engines</em> to view results from all your security tools in a single interface. Export results through a single API.</p> <a class="link-bump-mktg mr-3 text-semibold color-text-primary no-underline d-inline-block f3-mktg pt-3 pb-4" href="/web/20211009124657/https://github.com/features/security/code"> <span class="position-relative link-bump-inner-mktg">Secure your code <span class="link-bump-symbol-large"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="16" height="16" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </span></span> </a> <div class="border rounded d-flex flex-column mb-6 mb-md-0 color-bg-default mt-4 mr-lg-4"> <a class="link-bump-mktg position-relative read-more-link d-flex flex-column px-3 Link--secondary no-underline" href="https://web.archive.org/web/20211009124657/https://github.blog/2020-08-27-secure-at-every-step-putting-devsecops-into-practice-with-code-scanning/"> <p class="f6-mktg text-mono text-normal text-uppercase mt-3 mb-0 color-fg-subtle">Read</p> <h3 class="f4-mktg text-medium mb-3 color-fg-default">Putting DevSecOps into practice with code scanning <span class="Bump-link-symbol"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="16" height="16" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </span></h3> </a> <a class="link-bump-mktg position-relative read-more-link d-flex flex-column px-3 Link--secondary no-underline" href="https://web.archive.org/web/20211009124657/https://docs.github.com/en/code-security/secure-coding"> <p class="f6-mktg text-mono text-normal text-uppercase mt-3 mb-0 color-fg-subtle">Read</p> <h3 class="f4-mktg text-medium mb-3 color-fg-default">Finding security vulnerabilities and errors in your code <span class="Bump-link-symbol"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="16" height="16" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </span></h3> </a> </div> </div> </div> <div class="col-12 py-3 col-lg-6 flex-self-start"> <div class="position-relative"> <div class="d-flex flex-md-justify-end"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/vscode.webp" type="image/webp"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/vscode.png" class="rounded box-shadow-mktg-xl position-relative top-md-n7 js-build-in-item build-in-slideX-left security-vscode-illo" alt="" aria-hidden="true" loading="lazy" decoding="async" height="665"> </picture> </div> </div> </div> </div> <div class="river-mktg js-build-in-trigger d-flex flex-column gutter gutter-spacious flex-lg-items-center my-3 my-sm-7 my-md-8 position-relative flex-lg-row pb-4 pb-md-7" data-build-in-stagger="100"> <div class="pattern-container position-absolute z-n1 overflow-hidden" style="width: 200%; left: -50%;"> <div class="container-xl position-relative height-full d-none d-md-block"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/grid1.svg" class="position-absolute col-8-max z-n1" style="right: -100px; opacity: 0.7;" aria-hidden="true" alt="" loading="lazy" decoding="async"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/glows/2.svg" class="position-absolute col-9-max z-n1" style="right: -150px;" aria-hidden="true" alt="" loading="lazy" decoding="async"> </div> </div> <div class="col-12 py-3 js-build-in-item col-lg-6 build-in-slideX-right"> <div class="pr-lg-4"> <p class="color-fg-default h3-mktg mb-3">Respond quickly to vulnerabilities in your supply chain</p> <p class="f3-mktg color-fg-muted col-6-max">Understand your supply chain and how dependencies impact the security of your code.</p> </div> </div> <div class="col-12 py-3 col-lg-6"> <div class="position-relative"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/dependency-graph-bg.webp" type="image/webp"></source> <img class="col-12 height-auto rounded box-shadow-mktg-xl" width="1230" height="792" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/dependency-graph-bg.png"/> </picture> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/dependency-graph-list.webp" type="image/webp"></source> <img class="col-11 height-auto position-absolute top-8 border js-build-in-item build-in-scale-fade rounded box-shadow-mktg-xl left-0 right-0 mx-auto" width="1166" height="768" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/dependency-graph-list.png?v=2"/> </picture> </div> </div> </div> <div class="river-mktg js-build-in-trigger d-flex flex-column gutter gutter-spacious flex-lg-items-center my-3 my-sm-7 my-md-8 position-relative flex-lg-row pb-4 pb-md-7" data-build-in-stagger="100"> <div class="col-12 py-3 js-build-in-item col-lg-6 build-in-slideX-right"> <div class="pr-lg-4"> <p class="f3-mktg color-fg-muted col-6-max"><em>Easily see what dependencies have changed</em> in a pull request and stay secure.</p> </div> </div> <div class="col-12 py-3 col-lg-6"> <div class="position-relative"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/dependabot-repo.webp" type="image/webp"></source> <img class="rounded-2 width-full height-auto box-shadow-mktg-xl border color-border-primary mt-7 mt-md-8" width="1234" height="544" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/dependabot-repo.png"/> </picture> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/dependabot-repo.webp" type="image/webp"></source> <img class="position-absolute left-n2 left-md-n7 top-0 col-11 height-auto rounded-2 box-shadow-mktg-xl js-build-in-item build-in-slideX-right" width="1214" height="276" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/dependabot-repo.png"/> </picture> </div> </div> </div> <div class="river-mktg js-build-in-trigger d-flex flex-column gutter gutter-spacious flex-lg-items-center my-3 my-sm-7 my-md-8 position-relative flex-lg-row pb-4 pb-md-7" data-build-in-stagger="100"> <div class="col-12 py-3 js-build-in-item col-lg-6 build-in-slideX-right"> <div class="pr-lg-4"> <p class="f3-mktg color-fg-muted col-6-max">Automatically monitor your dependencies for known vulnerabilities, and <em>apply suggested fixes with automated pull requests.</em></p> <a class="link-bump-mktg mr-3 text-semibold color-text-primary no-underline d-inline-block f3-mktg pt-3 pb-4" href="/web/20211009124657/https://github.com/features/security/software-supply-chain"> <span class="position-relative link-bump-inner-mktg">Secure your supply chain <span class="link-bump-symbol-large"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="16" height="16" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </span></span> </a> <div class="border rounded d-flex flex-column mb-6 mb-md-0 color-bg-default mt-4 mr-lg-4"> <a class="link-bump-mktg position-relative read-more-link d-flex flex-column px-3 Link--secondary no-underline" href="https://web.archive.org/web/20211009124657/https://docs.github.com/en/free-pro-team@latest/github/visualizing-repository-data-with-graphs/about-the-dependency-graph"> <p class="f6-mktg text-mono text-normal text-uppercase mt-3 mb-0 color-fg-subtle">Read</p> <h3 class="f4-mktg text-medium mb-3 color-fg-default">How GitHub’s dependency graph is generated <span class="Bump-link-symbol"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="16" height="16" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </span></h3> </a> </div> </div> </div> <div class="col-12 py-3 col-lg-6"> <div class="position-relative"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/pr-bg.webp" type="image/webp"></source> <img class="mb-9 rounded-2 col-11 height-auto box-shadow-mktg-xl border color-border-primary mx-auto d-block" width="1116" height="900" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/pr-bg.png"/> </picture> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/pr-comment.webp" type="image/webp"></source> <img class="position-absolute rounded-2 border color-border-primary right-0 top-8 top-md-11 col-11 height-auto js-build-in-item build-in-slideX-left" width="1196" height="882" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/pr-comment.png"/> </picture> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/dependabot-icon.webp" type="image/webp"></source> <img class="position-absolute left-0 top-8 top-md-11 js-build-in-item build-in-scale-fade" width="40" height="40" style="width: 7%; height: auto;" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/dependabot-icon.png"/> </picture> </div> </div> </div> <div class="river-mktg js-build-in-trigger d-flex flex-column gutter gutter-spacious flex-lg-items-center my-3 my-sm-7 my-md-8 position-relative flex-lg-row-reverse pb-4 pb-md-7" data-build-in-stagger="100"> <div class="pattern-container position-absolute z-n1 overflow-hidden" style="width: 200%; left: -50%;"> <div class="container-xl position-relative height-full d-none d-md-block"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/grid2.svg" class="position-absolute col-9-max z-n1" style="left: -190px; top: -80px; opacity: 0.7;" width="1192" height="830" aria-hidden="true" alt="" loading="lazy" decoding="async"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/glows/1.svg" class="position-absolute col-9-max z-n1 height-auto" style="left: -190px; top: -80px;" aria-hidden="true" width="1002" height="785" alt="" loading="lazy" decoding="async"> </div> </div> <div class="col-12 py-3 js-build-in-item col-lg-6 build-in-slideX-left"> <div class="pl-lg-4"> <p class="color-fg-default h3-mktg mb-3">Keep secrets out of your code</p> <p class="f3-mktg color-fg-muted col-6-max">GitHub watches your repositories and notifies you of secrets issued by <em>45+ leading secret providers.</em></p> <div class="border rounded d-flex flex-column mb-6 mb-md-0 color-bg-default mt-4 mr-lg-4"> <a class="link-bump-mktg position-relative read-more-link d-flex flex-column px-3 Link--secondary no-underline" href="https://web.archive.org/web/20211009124657/https://github.blog/2020-08-06-achieving-devsecops-maturity-with-a-developer-first-community-driven-approach/"> <p class="f6-mktg text-mono text-normal text-uppercase mt-3 mb-0 color-fg-subtle">Read</p> <h3 class="f4-mktg text-medium mb-3 color-fg-default">Achieving DevSecOps maturity with a developer-first, community-driven approach <span class="Bump-link-symbol"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="16" height="16" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </span></h3> </a> </div> </div> </div> <div class="col-12 py-3 col-lg-6"> <div class="position-relative"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/secrets-scanning.webp" type="image/webp"></source> <img class="col-10 height-auto mb-9 rounded box-shadow-mktg-xl position-relative z-1 border js-build-in-item build-in-slideX-right" width="1128" height="402" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/secrets-scanning.png"/> </picture> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/secrets-logos.webp" type="image/webp"></source> <img class="position-absolute rounded border col-11 height-auto bottom-0 right-0 box-shadow-mktg-xl border js-build-in-item build-in-slideX-left" width="1426" height="394" loading="lazy" decoding="async" aria-hidden="true" alt="" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/secrets-logos.png"/> </picture> </div> </div> </div> <div class="river-mktg js-build-in-trigger d-flex flex-column gutter gutter-spacious flex-lg-items-center my-3 my-sm-7 my-md-8 position-relative flex-lg-row pb-4 pb-md-7" data-build-in-stagger="100"> <div class="pattern-container position-absolute z-n1 overflow-hidden" style="width: 200%; left: -50%;"> <div class="container-xl position-relative height-full d-none d-md-block"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/grid3.svg" class="position-absolute col-8-max z-n1" style="right: -80px; top: 0; opacity: 0.7;" aria-hidden="true" alt="" loading="lazy" decoding="async"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/glows/4.svg" class="position-absolute col-9-max z-n1" style="right: -170px; top: 0" aria-hidden="true" alt="" loading="lazy" decoding="async"> </div> </div> <div class="col-12 py-3 js-build-in-item col-lg-6 build-in-slideX-right"> <div class="pr-lg-4"> <p class="color-fg-default h3-mktg mb-3">Build on a secure foundation</p> <p class="f3-mktg color-fg-muted col-6-max">Our team goes beyond industry standards to secure GitHub. And delivers features that help you do the same. <em>Configure role-based access, auditing, and permissions</em> to turn security best practices into better development processes.</p> </div> </div> <div class="col-12 py-3 col-lg-6"> <div class="position-relative"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/roles-window.webp?v=2" type="image/webp"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/roles-window.png?v=2" class="rounded-2 col-11 box-shadow-mktg-xl border color-border-primary position-relative mt-3" alt="" aria-hidden="true"> </picture> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/roles-popover.svg" class="position-absolute right-0 right-md-4 top-7 build-in-scale-down js-build-in-item col-7" alt="" aria-hidden="true"> </div> </div> </div> </div> </div> <div class="overflow-hidden"> <div class="position-relative z-1 mx-auto box-shadow-default-mktg wide-block pt-5 pt-md-0 overflow-hidden color-bg-default " data-color-mode="dark" data-light-theme="light" data-dark-theme="dark"> <div class="container-xl p-responsive"> <div class="col-12 offset-md-1 pt-8 pt-md-9 pb-6 pb-md-11 d-flex flex-column gutter gutter-spacious"> <div class="col-12 col-md-5 px-3 px-md-0 mt-3 mb-4 mb-md-0 d-flex flex-column flex-justify-center position-relative"> <h4 class="h3-mktg mb-3 text-gradient-red-orange mb-4 mb-md-6 pb-3">Be part of the world’s largest security community.</h4> <p class="f3-mktg color-fg-muted mb-5 pr-md-5 mb-lg-0 col-5-max security-body"> Understand your dependence on the software supply chain, and how you can contribute back. </p> </div> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/globe-bg.webp" type="image/webp"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/globe-bg.jpg" aria-hidden="true" class="position-absolute right-0 top-0 z-n1 d-none d-md-block" height="750" width="840" loading="lazy" decoding="async"> </picture> <div class="col-12 px-3 px-md-0 mt-3 mb-5 mb-md-0 d-flex flex-row flex-wrap flex-md-nowrap flex-justify-between position-relative river-mktg"> <div class="d-flex flex-column flex-justify-center js-build-in build-in-slideX-left pr-md-5"> <p class="col-12 color-fg-muted col-md-5 f3-mktg mb-5 col-5-max"> Collaborate with the security community on GitHub and with the <a href="https://web.archive.org/web/20211009124657/https://openssf.org/">Open Source Security Foundation (OpenSSF)</a> </p> </div> <div class="col-12 col-md-6 position-relative "> <div class="width-full position-relative d-flex flex-column mb-7 js-build-in-trigger" data-build-in-stagger="50" style="height: 330px"> <div class="position-relative flex-self-center js-build-in-item build-in-slideX-right"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/avatars/leitsuch.webp" type="image/webp"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/avatars/leitsuch.jpg" loading="lazy" width="77" class="circle" alt="Photo of security community member Jonathan Leitschuh"> </picture> <a href="https://web.archive.org/web/20211009124657/https://github.com/advisories/GHSA-763g-fqq7-48wg" class="d-block rounded-2 color-bg-overlay box-shadow-card-dark-mktg px-3 py-2 no-underline position-relative left-6 top-n2 mt-n3" style="max-width: 320px;"> <span class="d-block f5-mktg color-fg-default">XML external entity (XXE) processing</span> <span class="d-block f6-mktg color-fg-muted mb-1">CVE-2019-10782 • Jonathan Leitschuh</span> </a> </div> <div class="position-relative flex-self-start js-build-in-item build-in-slideX-right"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/avatars/gianni.webp" type="image/webp"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/avatars/gianni.jpg" loading="lazy" width="77" class="circle" alt="Photo of security community member Jonathan Leitschuh"> </picture> <a href="https://web.archive.org/web/20211009124657/https://securitylab.github.com/advisories/GHSL-2020-026-lua-openssl/" class="d-block rounded-2 color-bg-overlay box-shadow-card-dark-mktg px-3 py-2 no-underline position-relative left-6 top-n2 mt-n3" style="max-width: 320px;"> <span class="d-block f5-mktg color-fg-default">Incorrect use of X509_check_host</span> <span class="d-block f6-mktg color-fg-muted mb-1">CVE-2020-9432 • lua-openssl • Agustin Gianni</span> </a> </div> <div class="position-relative flex-self-end js-build-in-item build-in-slideX-right"> <picture> <source srcset="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/avatars/staicu.webp" type="image/webp"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/security/avatars/staicu.jpg" loading="lazy" width="77" class="circle" alt="Photo of security community member Jonathan Leitschuh"> </picture> <a href="https://web.archive.org/web/20211009124657/https://github.com/advisories/GHSA-h466-j336-74wx" class="d-block rounded-2 color-bg-overlay box-shadow-card-dark-mktg px-3 py-2 no-underline position-relative left-6 top-n2 mt-n3" style="max-width: 320px;"> <span class="d-block f5-mktg color-fg-default">Prototype pollution in mpath package</span> <span class="d-block f6-mktg color-fg-muted mb-1">CVE-2018-16490 • Cristian-Alexandru Staicu</span> </a> </div> </div> </div> </div> <div class="col-12 px-3 px-md-0 mt-3 mb-5 mb-md-0 d-flex flex-row flex-wrap flex-md-nowrap flex-justify-between position-relative river-mktg"> <div class="d-flex flex-column flex-justify-center js-build-in build-in-slideX-left pr-md-5"> <p class="col-12 color-fg-muted col-md-5 f3-mktg mb-5 col-5-max"> Report security issues, share security knowledge and <em>grow with the community</em>. Contribute to <em>open source code scanning queries</em> written by GitHub and leading security researchers. </p> <a class="link-bump-mktg mr-3 text-semibold color-text-primary no-underline d-inline-block f3-mktg pt-3 pb-4" href="https://web.archive.org/web/20211009124657/https://securitylab.github.com/"> <span class="position-relative link-bump-inner-mktg">Meet the GitHub Security Lab <span class="link-bump-symbol-large"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="16" height="16" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </span></span> </a> <div class="border rounded d-flex flex-column mb-6 mb-md-0 color-bg-default mt-4 mr-lg-4"> <a class="link-bump-mktg position-relative read-more-link d-flex flex-column px-3 Link--secondary no-underline" href="https://web.archive.org/web/20211009124657/https://securitylab.github.com/research"> <p class="f6-mktg text-mono text-normal text-uppercase mt-3 mb-0 color-fg-subtle">Read</p> <h3 class="f4-mktg text-medium mb-3 color-fg-default">GitHub Security Lab’s research blog <span class="Bump-link-symbol"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="16" height="16" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </span></h3> </a> </div> </div> <div class="col-12 col-md-6 position-relative "> <div class="width-full position-relative d-flex flex-column mt-8 mt-md-0"> <div class="d-flex flex-column rounded-2 mb-1 color-bg-overlay box-shadow-card-dark-mktg js-build-in-trigger" data-build-in-stagger="100"> <a href="/web/20211009124657/https://github.com/" class="px-3 py-2 no-underline d-flex flex-row flex-items-center js-build-in-item build-in-slideX-right "> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-git-pull-request"> <path fill-rule="evenodd" d="M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z"></path> </svg> <div class="ml-2"> <span class="d-block f5-mktg color-fg-default">Python: Small fixes for typeTracker</span> <span class="d-block f6-mktg color-fg-muted mb-1">#4207 opened 2 hours ago by RasmusWL・Approved</span> </div> </a> <a href="/web/20211009124657/https://github.com/" class="px-3 py-2 no-underline d-flex flex-row flex-items-center js-build-in-item build-in-slideX-right border-top border-white-fade"> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-git-pull-request"> <path fill-rule="evenodd" d="M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z"></path> </svg> <div class="ml-2"> <span class="d-block f5-mktg color-fg-default">JS: Fix inconsistencies in `js/unsafe-jquery-plugin`</span> <span class="d-block f6-mktg color-fg-muted mb-1">#4206 opened 3 hours ago by erik-krogh・Review required</span> </div> </a> <a href="/web/20211009124657/https://github.com/" class="px-3 py-2 no-underline d-flex flex-row flex-items-center js-build-in-item build-in-slideX-right border-top border-white-fade"> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-git-pull-request"> <path fill-rule="evenodd" d="M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z"></path> </svg> <div class="ml-2"> <span class="d-block f5-mktg color-fg-default">C#:Add stable order for generated accessors in printed AST</span> <span class="d-block f6-mktg color-fg-muted mb-1">#4205 opened 3 hours ago by tamasvajk・Review required</span> </div> </a> <a href="/web/20211009124657/https://github.com/" class="px-3 py-2 no-underline d-flex flex-row flex-items-center js-build-in-item build-in-slideX-right border-top border-white-fade"> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-git-pull-request"> <path fill-rule="evenodd" d="M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z"></path> </svg> <div class="ml-2"> <span class="d-block f5-mktg color-fg-default">C++: Support `!= constant` in range analysis</span> <span class="d-block f6-mktg color-fg-muted mb-1">#4204 opened 3 hours ago by jbj・Review required</span> </div> </a> </div> <a class="link-bump-mktg mr-3 text-semibold color-text-primary no-underline d-inline-block f4-mktg pt-2 pb-3" href="https://web.archive.org/web/20211009124657/https://github.com/github/codeql/pulls"> <span class="position-relative link-bump-inner-mktg">See all code scanning query PRs <span class=""><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="16" height="16" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </span></span> </a> </div> </div> </div> </div> </div> </div> </div> <div class="color-bg-subtle py-5 py-md-6 mt-6 mt-md-12 "> <div class="container-xl mx-auto p-responsive text-left mt-5"> <h2 class="h5-mktg mb-2">Best practices for more secure software</h2> <div class="d-md-flex flex-wrap flex-justify-center gutter my-5 my-md-6"> <div class="d-flex col-md-4 pb-5 pb-md-0 mb-5 flex-justify-between"> <a href="https://web.archive.org/web/20211009124657/https://resources.github.com/whitepapers/Application-security-guide/" class="d-flex flex-column flex-justify-between no-underline box-shadow-card-border-mktg rounded-2 width-full resource-card link-bump-mktg color-bg-default p-5"> <p class="f6-mktg text-mono text-normal text-uppercase mb-1" style="letter-spacing: 0.05em; opacity: 0.75">The complete guide</p> <h3 class="mb-3 h6-mktg">Developer-first application security</h3> <p class="color-fg-muted f4-mktg my-auto">Take an in-depth look at the current state of application security.</p> <div class="f1-mktg position-relative left-n2"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="24" height="24" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </div> </a> </div> <div class="d-flex col-md-4 pb-5 pb-md-0 mb-5 flex-justify-between"> <a href="https://web.archive.org/web/20211009124657/https://resources.github.com/whitepapers/DevSecOps-government-agency-guide/" class="d-flex flex-column flex-justify-between no-underline box-shadow-card-border-mktg rounded-2 width-full resource-card link-bump-mktg color-bg-default p-5"> <p class="f6-mktg text-mono text-normal text-uppercase mb-1" style="letter-spacing: 0.05em; opacity: 0.75">Industry spotlight</p> <h3 class="mb-3 h6-mktg">The government agency's guide to DevSecOps</h3> <p class="color-fg-muted f4-mktg my-auto">Learn how to write more secure code from the start with DevSecOps.</p> <div class="f1-mktg position-relative left-n2"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="24" height="24" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </div> </a> </div> <div class="d-flex col-md-4 pb-5 pb-md-0 mb-5 flex-justify-between"> <a href="https://web.archive.org/web/20211009124657/https://resources.github.com/whitepapers/Three-AppSec-pitfalls-security/" class="d-flex flex-column flex-justify-between no-underline box-shadow-card-border-mktg rounded-2 width-full resource-card link-bump-mktg color-bg-default p-5"> <p class="f6-mktg text-mono text-normal text-uppercase mb-1" style="letter-spacing: 0.05em; opacity: 0.75">How-to</p> <h3 class="mb-3 h6-mktg">Avoid AppSec pitfalls</h3> <p class="color-fg-muted f4-mktg my-auto">Explore common application security pitfalls and how to avoid them.</p> <div class="f1-mktg position-relative left-n2"><svg xmlns="http://www.w3.org/2000/svg" class="octicon octicon-chevrow" width="24" height="24" viewbox="0 0 16 16" fill="none"><path fill="currentColor" d="M7.28033 3.21967C6.98744 2.92678 6.51256 2.92678 6.21967 3.21967C5.92678 3.51256 5.92678 3.98744 6.21967 4.28033L7.28033 3.21967ZM11 8L11.5303 8.53033C11.8232 8.23744 11.8232 7.76256 11.5303 7.46967L11 8ZM6.21967 11.7197C5.92678 12.0126 5.92678 12.4874 6.21967 12.7803C6.51256 13.0732 6.98744 13.0732 7.28033 12.7803L6.21967 11.7197ZM6.21967 4.28033L10.4697 8.53033L11.5303 7.46967L7.28033 3.21967L6.21967 4.28033ZM10.4697 7.46967L6.21967 11.7197L7.28033 12.7803L11.5303 8.53033L10.4697 7.46967Z"></path><path class="octicon-chevrow-stem" stroke="currentColor" d="M1.75 8H11" stroke-width="1.5" stroke-linecap="round"></path></svg> </div> </a> </div> </div> </div> </div> <div class="overflow-hidden py-8 px-3 color-bg-default" data-color-mode="dark" data-light-theme="light" data-dark-theme="dark"> <div class="container-xl"> <div class="pt-8 pb-7 pb-md-8 d-flex flex-column flex-items-center flex-lg-column text-center"> <h1 class="h1-mktg mx-auto col-8-max color-fg-default">Secure software from the start</h1> <p class="f3-mktg col-7-max mx-auto mt-4 color-fg-muted">Whether you’re contributing to an open source project or choosing new tools for your team, your security needs are covered.</p> <div class="mt-4 mt-md-6 mb-4 position-relative"> <a class="btn-mktg btn-inverted-mktg btn-large-mktg mb-3" href="/web/20211009124657/https://github.com/join?plan=free&ref_cta=Create%2520a%2520free%2520account&ref_loc=Security%2520footer&ref_page=%2Ffeatures%2Fsecurity&source=features-security-footer">Create a free account</a> <a class="btn-mktg btn-large-mktg mb-3 btn-transparent ml-md-2 js-override-utm-params" href="/web/20211009124657/https://github.com/enterprise/contact?utm_source=github&utm_medium=site&utm_campaign=adv-security&ref_page=/features/security&ref_cta=Contact%20Sales&ref_loc=footer">Contact sales</a> </div> </div> </div> </div> </main> </div> <footer class="footer pt-6 position-relative"> <div class="container-xl p-responsive"> <div class="d-flex flex-wrap py-5 mb-5"> <div class="col-12 col-lg-4 mb-5"> <a href="/web/20211009124657/https://github.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to home","label":"text:home","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="c13ea72088113199221cd9ede4ffc75bfbd6794369360a2063ebafc890e8cd52" class="color-text-primary" aria-label="Go to GitHub homepage"> <img class="footer-logo-mktg" src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/icons/footer/github-logo.svg" width="84" height="30" loading="lazy" decoding="async" alt="GitHub"> </a> </div> <div class="col-6 col-sm-3 col-lg-2 mb-6 mb-md-2 pr-3 pr-lg-0 pl-lg-4"> <h2 class="h5 mb-3 text-mono color-text-tertiary text-normal">Product</h2> <ul class="list-style-none color-text-secondary f5"> <li class="lh-condensed mb-3"><a href="/web/20211009124657/https://github.com/features" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to features","label":"text:features","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="f87d1c66c0cd6d593ef4499c608ecc0b356a288d63c12d9f7b18884a1ff3eab2" class="Link--secondary">Features</a></li> <li class="lh-condensed mb-3"><a href="/web/20211009124657/https://github.com/security" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to security","label":"text:security","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="fbbded352a1b050aa66dae8719093f92e50e50504115842266147f292d1ab4de" class="Link--secondary">Security</a></li> <li class="lh-condensed mb-3"><a href="/web/20211009124657/https://github.com/team" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to team","label":"text:team","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="24e5b467feef3f36919b96f52485563175e9be897f8f014c721d005f6467fc8c" class="Link--secondary">Team</a></li> <li class="lh-condensed mb-3"><a href="/web/20211009124657/https://github.com/enterprise" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to enterprise","label":"text:enterprise","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="b22b592f049ce87217375a9cb159d152d9d56989dda7822797abbe98be9859e7" class="Link--secondary">Enterprise</a></li> <li class="lh-condensed mb-3"><a href="/web/20211009124657/https://github.com/customer-stories?type=enterprise" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to customer stories","label":"text:customer stories","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="5cf62913aaa6819a16a759bfc55ce8ab43ca0f70ec9c811e759bd1caf09afc93" class="Link--secondary">Customer stories</a></li> <li class="lh-condensed mb-3"><a href="/web/20211009124657/https://github.com/readme" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to the readme project","label":"text:the readme project","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="d06ef78c977fab8d2e2e9fd00c7dfa8f2d2211eb3109686d7aa67e3142703021" class="Link--secondary">The ReadME Project</a></li> <li class="lh-condensed mb-3"><a href="/web/20211009124657/https://github.com/pricing" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to pricing","label":"text:pricing","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="7a96ab6056db3247cad1760df690ecf9230fe6eb496098df1502462baa878206" class="Link--secondary">Pricing</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://resources.github.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to resources","label":"text:resources","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="9c83d58f28f7a42d26c267095d93c25115d457998e8e1e6c87a1d846c4baab9a" class="Link--secondary">Resources</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://github.com/github/roadmap" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to roadmap","label":"text:roadmap","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="f677ca06a063ab002e66533df85f2cc7b9eae00ff328858925dff38b0896dd55" class="Link--secondary">Roadmap</a></li> </ul> </div> <div class="col-6 col-sm-3 col-lg-2 mb-6 mb-md-2 pr-3 pr-md-0 pl-md-4"> <h2 class="h5 mb-3 text-mono color-text-tertiary text-normal">Platform</h2> <ul class="list-style-none f5"> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://docs.github.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to api","label":"text:api","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="70a616309f31e573c76fc9bbe3dc69777e8f3726c6ccd3e829e2c9e854daf046" class="Link--secondary">Developer API</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://partner.github.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to partner","label":"text:partner","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="c50698565f7943f3724d335b8f4fa3697a98a89b59563c08e92ea3a26e0f3b4d" class="Link--secondary">Partners</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://atom.io/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to atom","label":"text:atom","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="295b719791bd1a1de6eab294532e2cdd8752afaeb30b324bc99b8aeee26944ab" class="Link--secondary">Atom</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://www.electronjs.org/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to electron","label":"text:electron","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="6666e85e2a024962b22f51c3a24633efe6c076a8f464d41a304a0420e7159b84" class="Link--secondary">Electron</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://desktop.github.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to desktop","label":"text:desktop","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="3d44ddcf754fc65d3287ded9813efef3bd854dc40bddd267efaffcff04958117" class="Link--secondary">GitHub Desktop</a></li> </ul> </div> <div class="col-6 col-sm-3 col-lg-2 mb-6 mb-md-2 pr-3 pr-md-0 pl-md-4"> <h2 class="h5 mb-3 text-mono color-text-tertiary text-normal">Support</h2> <ul class="list-style-none f5"> <li class="lh-condensed mb-3"><a data-ga-click="Footer, go to help, text:Docs" class="Link--secondary " href="https://web.archive.org/web/20211009124657/https://docs.github.com/">Docs</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://github.community/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to community","label":"text:community","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="6f7d327d9ec465c1b31c51a8c5e52cae3bf8bdbe52b645f9c3ec53414937afd4" class="Link--secondary">Community Forum</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://services.github.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to professional services","label":"text:professional services","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="1727d3c3e77ac670e0b9ea831130c2be012560b9a35019317b884d16f227bd2c" class="Link--secondary">Professional Services</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://lab.github.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to learning lab","label":"text:learning lab","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="4834af39f9b9841ba6113edc8b2377529269d848af964a9377cfaf3d83e25ab3" class="Link--secondary">Learning Lab</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://www.githubstatus.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to status","label":"text:status","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="3ec20b2adfa73fa3a43af0593e1861beb17bbcac483604023187a671f46d5f44" class="Link--secondary">Status</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://support.github.com/?tags=dotcom-footer" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to contact","label":"text:contact","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="7ca4d9ce7d649fa538cbea16ec344f8c322c6ea396a02d842799fdb4231d2a7a" class="Link--secondary">Contact GitHub</a></li> </ul> </div> <div class="col-6 col-sm-3 col-lg-2 mb-6 mb-md-2 pr-3 pr-md-0 pl-md-4"> <h2 class="h5 mb-3 text-mono color-text-tertiary text-normal">Company</h2> <ul class="list-style-none f5"> <li class="lh-condensed mb-3"><a data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to about","label":"text:about","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="902844bd413643013dc3f3a1293f427faacfa0ea4f960b73334ea3f8b725de40" class="Link--secondary" href="https://web.archive.org/web/20211009124657/https://github.com/about">About</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://github.blog/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to blog","label":"text:blog","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="73e39b81c8f24598782aa67d779591707ed7daf412ef073fc8b390a621b564d2" class="Link--secondary">Blog</a></li> <li class="lh-condensed mb-3"><a href="/web/20211009124657/https://github.com/about/careers" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to careers","label":"text:careers","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="5444f48cd3c56a35bd6d380ca72e2388a60d4fccb85f472323424010e1231222" class="Link--secondary">Careers</a></li> <li class="lh-condensed mb-3"><a href="/web/20211009124657/https://github.com/about/press" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to press","label":"text:press","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="9d72360ebaa6d5a56d0b1f993a07b74bd64e576bd2cc26f25f2a44b9c2486705" class="Link--secondary">Press</a></li> <li class="lh-condensed mb-3"><a href="/web/20211009124657/https://github.com/about/diversity" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to diversity","label":"text:Inclusion","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="8484ffd162ebc3c148bc040c79abe4d8b7be28e81aaa50a753c97015c79992b2" class="Link--secondary">Inclusion</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://socialimpact.github.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to social impact","label":"text:social impact","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="15472f23288aeaf1fffef4d3883cfc749f4798f811fc070b974d63902e8de715" class="Link--secondary">Social Impact</a></li> <li class="lh-condensed mb-3"><a href="https://web.archive.org/web/20211009124657/https://shop.github.com/" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to shop","label":"text:shop","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="877f9fb9915eac153d92214b34b29ecd75787a58371b48711417deca6308bbec" class="Link--secondary">Shop</a></li> </ul> </div> </div> </div> <div class="color-bg-secondary"> <div class="container-xl p-responsive f6 py-4 d-sm-flex flex-justify-between flex-row-reverse flex-items-center"> <ul class="list-style-none d-flex flex-items-center mb-3 mb-sm-0 lh-condensed-ultra"> <li class="mr-3"> <a href="https://web.archive.org/web/20211009124657/https://twitter.com/github" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to Twitter","label":"text:twitter","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="c24dc71a5bbe76d34743641b2ef4a976f0a5d97bccbda99af103b4a8f987870b" class="color-gray-4"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/icons/footer/twitter.svg" height="18" width="22" class="d-block" loading="lazy" decoding="async" alt="Twitter icon"> <span class="sr-only">GitHub on Twitter</span> </a> </li> <li class="mr-3"> <a href="https://web.archive.org/web/20211009124657/https://www.facebook.com/GitHub" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to Facebook","label":"text:facebook","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="4fd7e3c32a51743633a950a8edbc518f4d75e14875117f0ed1ed1ff241700815" class="color-gray-4"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/icons/footer/facebook.svg" width="18" height="18" class="d-block" loading="lazy" decoding="async" alt="Facebook icon"> <span class="sr-only">GitHub on Facebook</span> </a> </li> <li class="mr-3"> <a href="https://web.archive.org/web/20211009124657/https://www.youtube.com/github" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to YouTube","label":"text:youtube","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="0ad075569f296eef12c78ad52e3aa4fd0024a90feb114e8dee5aade5b9c5d458" class="color-gray-4"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/icons/footer/youtube.svg" width="23" height="16" class="d-block" loading="lazy" decoding="async" alt="YouTube icon"> <span class="sr-only">GitHub on YouTube</span> </a> </li> <li class="mr-3 flex-self-start"> <a href="https://web.archive.org/web/20211009124657/https://www.linkedin.com/company/github" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to Linkedin","label":"text:linkedin","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="760117251c18d62032ef069c2c442da09567dc358f48cf12cf413b0b44338e73" class="color-gray-4"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/icons/footer/linkedin.svg" width="19" height="18" class="d-block" loading="lazy" decoding="async" alt="Linkedin icon"> <span class="sr-only">GitHub on LinkedIn</span> </a> </li> <li> <a href="https://web.archive.org/web/20211009124657/https://github.com/github" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to github's org","label":"text:github","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="24c488680bbc4ffcf075ff43d88b20e1ca7d5cd652361f5444421769b7384ce7" class="color-gray-4"> <img src="https://web.archive.org/web/20211009124657im_/https://github.githubassets.com/images/modules/site/icons/footer/github-mark.svg" width="20" height="20" class="d-block" loading="lazy" decoding="async" alt="GitHub mark"> <span class="sr-only">GitHub’s organization on GitHub</span> </a> </li> </ul> <ul class="list-style-none d-flex flex-wrap color-text-secondary"> <li class="mr-3">© 2021 GitHub, Inc.</li> <li class="mr-3"><a href="https://web.archive.org/web/20211009124657/https://docs.github.com/en/github/site-policy/github-terms-of-service" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to terms","label":"text:terms","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="a45762cb4bf3553b9e7207991d967c3fcb0783c8a19bb8603c86627863ef289a" class="Link--secondary">Terms</a></li> <li class="mr-3"><a href="https://web.archive.org/web/20211009124657/https://docs.github.com/en/github/site-policy/github-privacy-statement" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to privacy","label":"text:privacy","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="5306d0204b08d5734d39c579e80b9f5cec27d344c4bd640a9f4fe4eac4f02120" class="Link--secondary">Privacy</a></li> <li class="mr-3"><a href="/web/20211009124657/https://github.com/site-map" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to site map","label":"text:site map","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="691f22d92343f67a8417b06729e4efae3cca0b01f760a9deda72c6e7a180cd1d" class="Link--secondary">Site Map</a></li> <li><a href="/web/20211009124657/https://github.com/git-guides" data-hydro-click="{"event_type":"analytics.event","payload":{"category":"Footer","action":"go to Git Guides","label":"text:What is Git?","originating_url":"https://github.com/features/security","user_id":null}}" data-hydro-click-hmac="808aec1b8a0cf07fbbf4508be10b17f168248ee616371b36152400d98fcbda69" class="Link--secondary">What is Git?</a></li> </ul> </div> </div> </footer> <div id="ajax-error-message" class="ajax-error-message flash flash-error" hidden> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert"> <path fill-rule="evenodd" d="M8.22 1.754a.25.25 0 00-.44 0L1.698 13.132a.25.25 0 00.22.368h12.164a.25.25 0 00.22-.368L8.22 1.754zm-1.763-.707c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0114.082 15H1.918a1.75 1.75 0 01-1.543-2.575L6.457 1.047zM9 11a1 1 0 11-2 0 1 1 0 012 0zm-.25-5.25a.75.75 0 00-1.5 0v2.5a.75.75 0 001.5 0v-2.5z"></path> </svg> <button type="button" class="flash-close js-ajax-error-dismiss" aria-label="Dismiss error"> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x"> <path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"></path> </svg> </button> You can’t perform that action at this time. </div> <div class="js-stale-session-flash flash flash-warn flash-banner" hidden> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert"> <path fill-rule="evenodd" d="M8.22 1.754a.25.25 0 00-.44 0L1.698 13.132a.25.25 0 00.22.368h12.164a.25.25 0 00.22-.368L8.22 1.754zm-1.763-.707c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0114.082 15H1.918a1.75 1.75 0 01-1.543-2.575L6.457 1.047zM9 11a1 1 0 11-2 0 1 1 0 012 0zm-.25-5.25a.75.75 0 00-1.5 0v2.5a.75.75 0 001.5 0v-2.5z"></path> </svg> <span class="js-stale-session-flash-signed-in" hidden>You signed in with another tab or window. <a href="">Reload</a> to refresh your session.</span> <span class="js-stale-session-flash-signed-out" hidden>You signed out in another tab or window. <a href="">Reload</a> to refresh your session.</span> </div> <template id="site-details-dialog"> <details class="details-reset details-overlay details-overlay-dark lh-default color-text-primary hx_rsm" open> <summary role="button" aria-label="Close dialog"></summary> <details-dialog class="Box Box--overlay d-flex flex-column anim-fade-in fast hx_rsm-dialog hx_rsm-modal"> <button class="Box-btn-octicon m-0 btn-octicon position-absolute right-0 top-0" type="button" aria-label="Close dialog" data-close-dialog> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x"> <path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"></path> </svg> </button> <div class="octocat-spinner my-6 js-details-dialog-spinner"></div> </details-dialog> </details> </template> <div class="Popover js-hovercard-content position-absolute" style="display: none; outline: none;" tabindex="0"> <div class="Popover-message Popover-message--bottom-left Popover-message--large Box color-shadow-large" style="width:360px;"> </div> </div> <template id="snippet-clipboard-copy-button"> <div class="zeroclipboard-container position-absolute right-0 top-0"> <clipboard-copy aria-label="Copy" class="ClipboardButton btn js-clipboard-copy m-2 p-0 tooltipped-no-delay" data-copy-feedback="Copied!" data-tooltip-direction="w"> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-copy js-clipboard-copy-icon m-2"> <path fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path><path fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path> </svg> <svg aria-hidden="true" height="16" viewbox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-check js-clipboard-check-icon color-text-success d-none m-2"> <path fill-rule="evenodd" d="M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z"></path> </svg> </clipboard-copy> </div> </template> </body> </html> <!-- FILE ARCHIVED ON 12:46:57 Oct 09, 2021 AND RETRIEVED FROM THE INTERNET ARCHIVE ON 20:45:08 Nov 28, 2024. JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE. ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C. SECTION 108(a)(3)). --> <!-- playback timings (ms): captures_list: 1.576 exclusion.robots: 0.056 exclusion.robots.policy: 0.034 esindex: 0.024 cdx.remote: 25.146 LoadShardBlock: 295.33 (6) PetaboxLoader3.datanode: 118.397 (7) PetaboxLoader3.resolve: 333.036 (2) load_resource: 261.981 -->