47

Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub
Page 2: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Secure DevelopmentExtending GitHub to meet your Open Source Policy

Page 3: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Jamie Jones! @jbjonesjr

• GitHub for two and a half years• Previously Developer, Technical Lead &

Configuration Manager with Security-conscious Federal agencies.

• Casual Open Source enthusiast• Former Colonial Reenactor.

GitHub Solutions Lead, Public Sector

Page 4: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Not just open source codebut public development

Page 5: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

GitHub + Secure Workflows= Secure Development

Page 6: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

❖ GitHub ❖ Hosting ❖ Features

❖ Workflow ❖ GitHub Flow ❖ Compliance

❖ Extend ❖ GitHub API ❖ Probot

Page 7: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Hosting

GitHub

Page 8: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Team

Includes: Organization account

Unlimited public repositoriesUnlimited private repositoriesTeam and user permissions

Business

Hosted on GitHub.com

Organization accountSAML single sign-on

User provisioning24/5 support with 8-hour

response time

99.95% Uptime SLA

GitHubEnterprise

Multiple organizationsSAML, LDAP, and CAS

User provisioning24/7 support for urgent issues

Advanced auditing

Host on your servers, AWS,

Azure, or GCP

Page 9: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Uptime SLA

Top-Tier Support

GitHub Hosted

Corporate Identity Provider

GitHub for Business, Hosted

Page 10: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Rich Logging/Audit

Organization Support

Your Environment

Corporate Identity Provider

GitHub Enterprise

Page 11: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Security features built-in

GitHub

Page 12: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Pull Requests and Code Review

• Collaborative

• Code & human activity

• Code Review built-in

• Quick reactions

• Rich text markup

• Audit & traceability

Page 13: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Code Review as assistance

Page 14: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Code Review as documentation

Page 15: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Restrict with required approvals

Page 16: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Status Checks tracking history

Page 17: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Securing your project’s dependencies

Page 18: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

• Code Review

• Unit/Integration testing , Static Code Analysis support

• Audit and traceability

• Dependency Protection

• Secret publishing prevention

• Configuration Manager approvals

• More 👀

GitHub has Security built in

Page 19: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

WorkflowGitHub Flow

Page 20: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

GitHub Flow

Page 21: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

• Continuous Delivery

• Collaboration (DevOps? DevSecOps?) enabled end-to-end automation  across environments

• Automate Quality and Security Testing

• Integrations and solutions for not just code

• Repeatable and Dependable

• Supports long-running changes and zero-day patching

Improving quality with GitHubFlow

Page 22: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Minimizing Information imbalance

Page 23: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub
Page 24: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

!

Page 25: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Code Review as security checks

Identifying Regular Expressions that might not lead to the expected validations.

Page 26: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Workflow preventing merges

Page 27: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

WorkflowCompliance

Page 28: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

• What code is running in production? • Do you have traceability from testing to deployment? • Can you better integrate security and processes without

impacting developer velocity? • How do you document your change management process

today?

It’s not about eliminating risk, it’s managing it

Page 29: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Let’s talk about compliance

NIST 800-53 ISO 27001

IA-3,4,5 A.9.2.1, A.9.2.4, A.9.3.1, A.9.4.3

AU-6,12 A.12.4.1, A.12.4.3, A.16.1.2, A.16.1.4

SC-2,5,6,8 A.8.2.3, A.13.1.1, A.13.2.1, A.13.2.3, A.14.1.2, A.14.1.3

SA-10,11 A.12.1.2, A.14.2.2, A.14.2.4, A.14.2.7, A.14.2.8

RA-5 A.12.6.1

Page 30: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Project Boise

ATO in an

Instant

Safer Software Sooner

ATO in a Day

Boise

Page 31: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Extend GitHub

Page 32: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Identify process (and automate)

Page 33: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Extend GitHubAPI Introduction

Page 34: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Rest API WebHooksGraphQL GitHub Apps

Page 35: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub
Page 36: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Rest API WebHooksGraphQL

SDK

GitHub Apps

Page 37: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub
Page 38: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub
Page 39: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Extend GitHubProbot

Page 40: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Probot is a bot framework for GitHub. It’s the glue for interacting with GitHub, and everything else…

https://probot.github.io

Page 41: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Rest API WebHooksGraphQL

SDK

GitHub Apps

Page 42: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

https://probot.github.io/probot/latest/index.html

Probot enables

• Webhook & event

registration

• GitHub authentication &

integrated SDK via secure

GitHub Apps

• Simplified API interaction

with syntactical sugar

Page 43: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

module.exports = function(robot) { robot.on('issues.opened', async context => { // Get template from the repository const data = await context.github.repos.getContent(context.repo({path: ‘.github/ ISSUE_REPLY_TEMPLATE.md'})); const template = new Buffer(data.content, ‘base64').toString(); // Reply with the contents of the template return context.github.issues.createComment(context.issue({body: template})); }); }

Autoresponder app

https://github.com/probot/autoresponder/

4 Lines of code

Page 44: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Open Shift Branches

https://github.com/jbjonesjr/probot-openshift-github-branches

A probot app that utilizes the existing GitHub and OpenShift APIs to build a best of breed integration.

https://probot.github.io

Page 45: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

production

test/qa

development A|B Testing A|B Testing

Continuous Delivery with GitHub and OpenShift

Page 46: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Upcoming Webinar : November 14th, 2017

EXTENDING WITH GITHUB: EASY INTEGRATIONS WITH PROBOThttps://githubuniverse.com

KEEP YOUR PROJECTS SECURED WITH THE DEPENDENCY GRAPH & SECURITY ALERTS

Page 47: Secure Development - Open Source Strategy Forum 14, 2017  · • Can you better integrate security and processes without ... Rest API GraphQL WebHooks SDK GitHub Apps. Extend GitHub

Queue and Aye!

! @jbjonesjr

[email protected] https://www.linkedin.com/in/jbjonesjr/