GitHub CodeQLに標準CERT C++とAUTOSAR C++を実装

ギットハブ・ジャパン合同会社

ISO 26262 Part 6プロセス準拠の実証を必要とする開発者を支援し、より安全なソフトウェア開発を実現



オープンソースプロジェクトおよびビジネスユースを含む、ソフトウェアの開発プラットフォームを提供するGitHub, Inc.(本社:米国サンフランシスコ)は、6月20日(米国時間)に、ソースコードのセマンティック解析を行うCodeQLに標準CERT C++とAUTOSAR C++を実装したことを発表しました。これにより、ISO 26262 Part 6プロセスに準拠していることの実証を必要とする開発者を支援し、より安全なソフトウェア開発への貢献を拡大させます。

自動車分野における最新の技術革新は、自動車の製造方法における大規模なデジタルトランスフォーメーション(DX)を引き起こしました。現代の自動車は、世界中のドライバーが日常的に利用する数百万行におよぶソースコードが相互接続されたシステムによって構成されています。自動車分野におけるソフトウェア開発は、より良いユーザー体験を提供するためのイノベーションを起こすと同時に、最高の品質と安全管理を確保するという責任も負っています。

これらソフトウェアの安全性と信頼性を確保するために、各ソフトウェアコンポーネントが重大な障害の引き金となるような問題が発生しないようにISO 26262などのガバナンス標準が構築されました。さらに最近では、このソフトウェアに起因するサイバーセキュリティ関連インシデントのリスクを最小化するために、ISO 21434を通じてこの規制を拡大しました。

このたび、GitHubはウーブン・プラネット・ホールディングス株式会社と連携し、CERT C++ およびAUTOSAR C++の規格を実装したCodeQLクエリをリリースしました。 これらのクエリは、ISO 26262 Part 6プロセスへの準拠を支援します。

GitHubが提供するCode Scanningは、CodeQL分析エンジンを活用し、脆弱なソースコードがMergeされリリースされる前に、ソースコードのセキュリティバグを発見し、Pull Requestが作成された際に警告を表示します。これらのチェック工程をGitHubに実装することで、自動車向けソフトウェア開発チームはコラボレーションや俊敏性を犠牲にすることなく、コンプライアンスに準拠した安全なソフトウェアを開発することができます。

GitHubは、オープンソースを活用したグローバルなイノベーションとコラボレーションの促進に向けて尽力しています。その一環として、今回リリースしたCodeQLクエリをオープンソース化する予定です。GitHubは、オープンソースのメンテナーや開発者がISO 26262のコーディング規約の要件に準拠したソフトウェアでイノベーションを起こす環境を提供することで、組込みソフトウェア開発におけるイノベーションを加速させることができると考えています。

静的解析がISO規格の要求事項を満たす要件
ソフトウェア解析ツールは、それだけで自動車向けのISO 26262への準拠を完全に保証することはできませんが、「ソフトウェアレベルにおける製品開発」をカバーするPart 6への準拠を証明しようとする開発者を支援することは可能です。規格のPart 6は、道路走行車の機能安全を確保することを目的とし、ソフトウェアの設計と実装の正しさを検証するものです。GitHubのCode Scanningを利用することで、開発者はセキュリティバグや重大な欠陥がコードに混入した瞬間に発見し、修正することができます。CERT C++およびAUTOSAR C++、C++11、14のコーディング規約違反に対して、GitHub Code Scanningとその拡張機能を使用することで、自動的にこれらの違反項目検知できます。

CodeQLクエリ改善への貢献 
CodeQLクエリの機能を拡張したい場合、CodeQLパックに貢献することで、世界に公開することができます。 公開されたCodeQLパックは、他の人と簡単に共有でき、CI/CDパイプラインで実行することができます。もし汎用的ですべてのリポジトリにあらゆる状況で適用できると思うクエリをお持ちの開発者の方がいらっしゃれば、ぜひ改善への貢献をお願いします。そのクエリをオープンソースのCodeQLクエリリポジトリ(https://github.com/github/codeql)に提供することで、GitHub Code Scanningが有効になっているすべてのリポジトリ上のすべてのPull Requestに対してクエリが実行されるようになります。

Code scanningの使い方
ソースコード上で新しいCodeQLクエリを使用するには、リポジトリのSecurityタブでCode Scanningを設定します。これにより、そのリポジトリのスキャンを開始するための簡単なワークフローが表示されます。


GitHubのコーディング規約とセキュリティ機能
GitHubは、クラウドネイティブなソフトウェア開発プラットフォームのリーダーであり、世界で8,300万人以上の開発者がオープンソースとインナーソースを使用したコラボレーションが実現できるよう支援しています。GitHubは、開発者のエクスペリエンス向上に妥協することなく、より安全でセキュアなソフトウェアの開発を支援することに取り組んでおります。GitHub のセキュリティ機能をリポジトリで有効化する方法については、スタートガイド(https://docs.github.com/ja/code-security/getting-started/github-security-features)をご覧ください。

 
GitHub Blog
英語:https://github.blog/2022-06-20-adding-support-for-coding-standards-autosar-c-and-cert-c/
日本語:
https://github.blog/jp/2022-06-23-adding-support-for-coding-standards-autosar-c-and-cert-c/
 

GitHubに関する情報は、こちらからもご覧いただけます。
Blog:    (英語)  https://github.blog       (日本語)  https://github.blog/jp
Twitter:    (英語)  @github( https://twitter.com/github )   
    (日本語)  @GitHubJapan( https://twitter.com/githubjapan )


【GitHub について】https://github.co.jp
GitHubは「開発者ファースト」の思想のもと、開発者のコラボレーションおよび困難な問題解決、世界にとって重要なテクノロジーの創出を促進させるための開発環境を提供しています。また、ソフトウェアを起点とする新たな未来を創造し、世界に変化をもたらすため、個人または企業規模に関わらず、ベストなコラボレーションができるコミュニティの拡大を支援しています。
安全なソフトウェア開発には、日常のワークフローの中でできる限り早いタイミングで脆弱性を発見し、対処できる仕組みづくりが重要です。GitHubは、企業とオープンソースのメンテナーが、ソフトウェア開発のライフサイクル全体を通じて、安全にコーディングできるようにするツールとプロセスを構築しています。
GitHubは、開発者がコードを開発、共有、そしてリリースする場です。学生や趣味で開発を行う人、コンサルタント、エンタープライズの開発者、経営者など、初心者から高い専門性をもつ世界8,300万人以上の方々および400万以上のOrganizationに利用されています。GitHubは単なるソースコードを共有する場ではありません。GitHubはオープンソースコラボレーションの源としてさまざまなソリューションを提供します。

【製品/サービスに関するお問い合わせ先】
ギットハブ・ジャパン営業およびサポート窓口 
Email: jp-sales@github.com

その他のリリース

話題のリリース

機能と特徴

お知らせ