SlideShare a Scribd company logo
1 of 15
Download to read offline
Security Advisories Checker on
(Travis|Circle) CI
PHP BLT#2 @serima
@serima
• PHP Developer @ Zappallas
• mag2 -> GREE -> Zappallas
• http://serima.co/blog
• Recent topics
• WordPress on PHP 7, HTTP/2
• Setup Sakura-VPS with Ansible
• 最近の興味
• 二酸化炭素濃度の計測(まだやってない!)
SensioLabs Security Advisories Checker
• SensioLabs 社製のライブラリ脆弱性チェッカー
SensioLabs
• Symfony / Twig / Silex などを開発しているフランスの
会社
• 最近だと、プロファイラツール blackfire.io をリリース
した
composer.lock で判定
• Online Checker
• ウェブ上で composer.lock をアップロード
• CLI Checker
• CLI Tool をダウンロードしてコマンドライン実行
• Web API
• SensioLabs 上にエンドポイントが用意されている
継続的脆弱性チェック
• 各種インタフェースが提供されているので、CI に組み
込み、継続的脆弱性チェックが簡単に可能
How to integrate
• composer require sensiolabs/security-checker
• composer update
• git add composer.json composer.lock
• git commit -m ‘Integrate security-checker’
TravisCI - .travis.yml
language: php
php:
- 5.6
before_script:
- composer self-update
- composer install
- chmod -R 777 storage
script:
- vendor/bin/security-checker security:check
- phpunit
CircleCI - circle.yml
machine:
timezone:
Asia/Tokyo
php:
version: 5.6.14
test:
override:
- vendor/bin/security-checker security:check
- vendor/bin/phpunit
Test
• swiftmailer/swiftmailer は 5.2.1 未満のバージョンに脆
弱性がある
• ためしに 5.0.0 を

インストールするよう

指定してみる
Test
• ちゃんと fail しました
• 脆弱性の内容も表示されています
Test
• 最新版を入れるように設定して再度チャレンジ
• ちゃんと green になりました
脆弱性データベース
• このリポジトリに登録されているものが脆弱性データベー
スとして使われている
• https://github.com/FriendsOfPHP/security-
advisories
• This database must not serve as the primary
source of information for security issues, it is not
authoritative for any referenced software, but it
allows to centralize information for convenience
and easy consumption.
まとめ
• ほぼコストゼロでライブラリの脆弱性チェックが可能
になるので、入れておいて損はないです
• が、先程も言ったとおり完全に信頼してしまわないよ
うに注意🃏
• JVN など他のデータベースは別途チェックしましょう
• https://github.com/serima/security-checker-on-lumen
• サンプルを置いておきました
おわり🍔

More Related Content

What's hot

最近のPerlバイナリマネージャー Perl 編
最近のPerlバイナリマネージャー Perl 編最近のPerlバイナリマネージャー Perl 編
最近のPerlバイナリマネージャー Perl 編
Tokuhiro Matsuno
 
JAWSUG版 PostgreSQL on Amazon EC2の可能性
JAWSUG版 PostgreSQL on Amazon EC2の可能性JAWSUG版 PostgreSQL on Amazon EC2の可能性
JAWSUG版 PostgreSQL on Amazon EC2の可能性
Serverworks Co.,Ltd.
 
50分で掴み取る ASP.NET Web API パターン&テクニック
50分で掴み取る ASP.NET Web API パターン&テクニック50分で掴み取る ASP.NET Web API パターン&テクニック
50分で掴み取る ASP.NET Web API パターン&テクニック
miso- soup3
 

What's hot (20)

Vagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオンVagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオン
 
Vagrant+Ansibleで検証環境を簡単構築
Vagrant+Ansibleで検証環境を簡単構築Vagrant+Ansibleで検証環境を簡単構築
Vagrant+Ansibleで検証環境を簡単構築
 
Ansible/Vagrantでアドテク環境を最速構築
Ansible/Vagrantでアドテク環境を最速構築Ansible/Vagrantでアドテク環境を最速構築
Ansible/Vagrantでアドテク環境を最速構築
 
composer-scriptsについて
composer-scriptsについてcomposer-scriptsについて
composer-scriptsについて
 
Jenkins + awsで並列テスト
Jenkins + awsで並列テストJenkins + awsで並列テスト
Jenkins + awsで並列テスト
 
Rails解説セミナー: Railsのアップグレード編
Rails解説セミナー: Railsのアップグレード編Rails解説セミナー: Railsのアップグレード編
Rails解説セミナー: Railsのアップグレード編
 
前略,Xamarin.Mac使いより
前略,Xamarin.Mac使いより前略,Xamarin.Mac使いより
前略,Xamarin.Mac使いより
 
[jjug] Java と Benchmark
[jjug] Java と Benchmark[jjug] Java と Benchmark
[jjug] Java と Benchmark
 
Chef入門
Chef入門Chef入門
Chef入門
 
Rails解説セミナー: リリースノート解説編
Rails解説セミナー: リリースノート解説編Rails解説セミナー: リリースノート解説編
Rails解説セミナー: リリースノート解説編
 
最近のPerlバイナリマネージャー Perl 編
最近のPerlバイナリマネージャー Perl 編最近のPerlバイナリマネージャー Perl 編
最近のPerlバイナリマネージャー Perl 編
 
Ansible softlayer
Ansible softlayer Ansible softlayer
Ansible softlayer
 
130412 kayac-cinnamon
130412 kayac-cinnamon130412 kayac-cinnamon
130412 kayac-cinnamon
 
ZabbixとVulsをDocker上で連携
ZabbixとVulsをDocker上で連携ZabbixとVulsをDocker上で連携
ZabbixとVulsをDocker上で連携
 
【LT】 怖くない恐怖のScala.js
【LT】 怖くない恐怖のScala.js【LT】 怖くない恐怖のScala.js
【LT】 怖くない恐怖のScala.js
 
仮想マシンを使った開発環境の簡単共有方法
仮想マシンを使った開発環境の簡単共有方法 仮想マシンを使った開発環境の簡単共有方法
仮想マシンを使った開発環境の簡単共有方法
 
進撃のSbt
進撃のSbt進撃のSbt
進撃のSbt
 
AnsibleをWerckerでCIして
テストが終わると
本番環境が出来てる話
AnsibleをWerckerでCIして
テストが終わると
本番環境が出来てる話AnsibleをWerckerでCIして
テストが終わると
本番環境が出来てる話
AnsibleをWerckerでCIして
テストが終わると
本番環境が出来てる話
 
JAWSUG版 PostgreSQL on Amazon EC2の可能性
JAWSUG版 PostgreSQL on Amazon EC2の可能性JAWSUG版 PostgreSQL on Amazon EC2の可能性
JAWSUG版 PostgreSQL on Amazon EC2の可能性
 
50分で掴み取る ASP.NET Web API パターン&テクニック
50分で掴み取る ASP.NET Web API パターン&テクニック50分で掴み取る ASP.NET Web API パターン&テクニック
50分で掴み取る ASP.NET Web API パターン&テクニック
 

Similar to Security Advisories Checker on Travis/Circle CI

Firefoxの開発プロセス
Firefoxの開発プロセスFirefoxの開発プロセス
Firefoxの開発プロセス
Makoto Kato
 
継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキング継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキング
Takayuki Kondou
 
Fighting advanced malware using machine learning (Japanese)
Fighting advanced malware using machine learning (Japanese)Fighting advanced malware using machine learning (Japanese)
Fighting advanced malware using machine learning (Japanese)
FFRI, Inc.
 
The Amazing Toolman - Mastering the tools and propose a hackable "Swiss Army ...
The Amazing Toolman - Mastering the tools and propose a hackable "Swiss Army ...The Amazing Toolman - Mastering the tools and propose a hackable "Swiss Army ...
The Amazing Toolman - Mastering the tools and propose a hackable "Swiss Army ...
SYUE-SIANG SU
 
高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと
MITSUNARI Shigeo
 

Similar to Security Advisories Checker on Travis/Circle CI (20)

Klocwork C/C++解析チューニング 概要
Klocwork C/C++解析チューニング 概要Klocwork C/C++解析チューニング 概要
Klocwork C/C++解析チューニング 概要
 
CI/CDパイプラインを定着させる闘い @九州インフラ交流勉強会(Kixs) Vol.006
CI/CDパイプラインを定着させる闘い @九州インフラ交流勉強会(Kixs) Vol.006CI/CDパイプラインを定着させる闘い @九州インフラ交流勉強会(Kixs) Vol.006
CI/CDパイプラインを定着させる闘い @九州インフラ交流勉強会(Kixs) Vol.006
 
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけねGitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
 
Klocwork カスタムチェッカー紹介
Klocwork カスタムチェッカー紹介Klocwork カスタムチェッカー紹介
Klocwork カスタムチェッカー紹介
 
Firefoxの開発プロセス
Firefoxの開発プロセスFirefoxの開発プロセス
Firefoxの開発プロセス
 
継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキング継続的インテグレーション3分クッキング
継続的インテグレーション3分クッキング
 
このべん第二回 ~「できない子ほどかわいくしたい!ConoHa補完計画」勉強会
このべん第二回 ~「できない子ほどかわいくしたい!ConoHa補完計画」勉強会このべん第二回 ~「できない子ほどかわいくしたい!ConoHa補完計画」勉強会
このべん第二回 ~「できない子ほどかわいくしたい!ConoHa補完計画」勉強会
 
VAddy - CI勉強会 fukuoka
VAddy - CI勉強会 fukuokaVAddy - CI勉強会 fukuoka
VAddy - CI勉強会 fukuoka
 
Android 開発, 運用時に使いたいライブラリやサービスの紹介
Android 開発, 運用時に使いたいライブラリやサービスの紹介Android 開発, 運用時に使いたいライブラリやサービスの紹介
Android 開発, 運用時に使いたいライブラリやサービスの紹介
 
Composer
 Composer Composer
Composer
 
Fighting advanced malware using machine learning (Japanese)
Fighting advanced malware using machine learning (Japanese)Fighting advanced malware using machine learning (Japanese)
Fighting advanced malware using machine learning (Japanese)
 
OSSで作るOpenStack監視システム
OSSで作るOpenStack監視システムOSSで作るOpenStack監視システム
OSSで作るOpenStack監視システム
 
The Amazing Toolman - Mastering the tools and propose a hackable "Swiss Army ...
The Amazing Toolman - Mastering the tools and propose a hackable "Swiss Army ...The Amazing Toolman - Mastering the tools and propose a hackable "Swiss Army ...
The Amazing Toolman - Mastering the tools and propose a hackable "Swiss Army ...
 
高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと高速な暗号実装のためにしてきたこと
高速な暗号実装のためにしてきたこと
 
Openness, Innovation and Opptunity
Openness, Innovation and OpptunityOpenness, Innovation and Opptunity
Openness, Innovation and Opptunity
 
A2 SORACOM API使いこなしレシピ集 | SORACOM Technology Camp 2020
A2 SORACOM API使いこなしレシピ集 | SORACOM Technology Camp 2020A2 SORACOM API使いこなしレシピ集 | SORACOM Technology Camp 2020
A2 SORACOM API使いこなしレシピ集 | SORACOM Technology Camp 2020
 
静的解析Klocwork とJenkins CIの連携
静的解析Klocwork とJenkins CIの連携静的解析Klocwork とJenkins CIの連携
静的解析Klocwork とJenkins CIの連携
 
ビルドサーバで使うDocker
ビルドサーバで使うDockerビルドサーバで使うDocker
ビルドサーバで使うDocker
 
Pythonを使った簡易診断スクリプトの作り方
Pythonを使った簡易診断スクリプトの作り方Pythonを使った簡易診断スクリプトの作り方
Pythonを使った簡易診断スクリプトの作り方
 
Getting Started With Ore-Ore Swift Standard Library +
Getting Started With Ore-Ore Swift Standard Library +Getting Started With Ore-Ore Swift Standard Library +
Getting Started With Ore-Ore Swift Standard Library +
 

More from Ryo Shibayama

More from Ryo Shibayama (15)

倒れても進捗
倒れても進捗倒れても進捗
倒れても進捗
 
CircleCI 導入への入門
CircleCI 導入への入門CircleCI 導入への入門
CircleCI 導入への入門
 
エンジニア採用と PHP #phpconfuk_rej
エンジニア採用と PHP #phpconfuk_rejエンジニア採用と PHP #phpconfuk_rej
エンジニア採用と PHP #phpconfuk_rej
 
Start OSS Contribution With What You Know / できることから始める OSS Contribution
Start OSS Contribution With What You Know / できることから始める OSS ContributionStart OSS Contribution With What You Know / できることから始める OSS Contribution
Start OSS Contribution With What You Know / できることから始める OSS Contribution
 
チームから気軽に始めるピアボーナス
チームから気軽に始めるピアボーナスチームから気軽に始めるピアボーナス
チームから気軽に始めるピアボーナス
 
ソフトウェアエンジニアとしてのワークアズライフ
ソフトウェアエンジニアとしてのワークアズライフソフトウェアエンジニアとしてのワークアズライフ
ソフトウェアエンジニアとしてのワークアズライフ
 
Try to use chromeless on AWS Lambda
Try to use chromeless on AWS LambdaTry to use chromeless on AWS Lambda
Try to use chromeless on AWS Lambda
 
CircleCI 2.0 でビルド時間を大幅に短縮する
CircleCI 2.0 でビルド時間を大幅に短縮するCircleCI 2.0 でビルド時間を大幅に短縮する
CircleCI 2.0 でビルド時間を大幅に短縮する
 
OSS Contribution through CircleCI 2.0
OSS Contribution through CircleCI 2.0OSS Contribution through CircleCI 2.0
OSS Contribution through CircleCI 2.0
 
PHP-MLを使用して気軽に機械学習にトライしてみる
PHP-MLを使用して気軽に機械学習にトライしてみるPHP-MLを使用して気軽に機械学習にトライしてみる
PHP-MLを使用して気軽に機械学習にトライしてみる
 
Carbon と Chronos から見る OSS 運営
Carbon と Chronos から見る OSS 運営Carbon と Chronos から見る OSS 運営
Carbon と Chronos から見る OSS 運営
 
ElasticBeanstalk で新規事業を爆速ローンチする
ElasticBeanstalk で新規事業を爆速ローンチするElasticBeanstalk で新規事業を爆速ローンチする
ElasticBeanstalk で新規事業を爆速ローンチする
 
Amazon inspector で自動セキュリティ診断
Amazon inspector で自動セキュリティ診断Amazon inspector で自動セキュリティ診断
Amazon inspector で自動セキュリティ診断
 
WordPress on PHP7 on CentOS7 on Saraku-VPS
WordPress on PHP7 on CentOS7 on Saraku-VPSWordPress on PHP7 on CentOS7 on Saraku-VPS
WordPress on PHP7 on CentOS7 on Saraku-VPS
 
第87回PHP勉強会 LT 知って得するかもしれないテキスト処理コマンドのお話
第87回PHP勉強会 LT 知って得するかもしれないテキスト処理コマンドのお話第87回PHP勉強会 LT 知って得するかもしれないテキスト処理コマンドのお話
第87回PHP勉強会 LT 知って得するかもしれないテキスト処理コマンドのお話
 

Security Advisories Checker on Travis/Circle CI