このページの本文へ

FIXER cloud.config Tech Blog

Microsoft Application Inspectorでソースコードを解析してみよう

2020年01月31日 11時00分更新

文● 石川 順平/FIXER

  • この記事をはてなブックマークに追加
  • 本文印刷

 本記事はFIXERが提供する「cloud.config Tech Blog」に掲載された「Microsoft Application Inspectorでソースコードを解析してみよう 」を再編集したものです。

 こんにちは、風邪に悩まされている石川です。

 先日、MicrosoftよりApplication Inspectorがリリースされました。ソースコードの解析を行ってくれるツールのようです。早速、使ってみることにします。

 Microsoftのリリース記事はこちら

1.ダウンロードする

 GitHubのリポジトリからダウンロードしてきましょう。

 Releasesから実行する環境にあったものを取得するといいと思います。

2.動かす

 日頃扱ってる環境がWindowsなのでWindows用のzipをDLしてきて展開します。コマンドラインツールなのでコマンドラインから実行します。

PS C:\Users\ishikawa.jumpei\Documents\App\ApplicationInspector_1.0.21> .\AppInspector.exe
Microsoft Application Inspector 1.0.21
AppInspector 1.0.21
(c) Microsoft Corporation. All rights reserved

ERROR(S):
No verb selected.

analyze Inspect source directory/file/compressed file (.tgz|zip) against defined characteristics

tagdiff Compares unique tag values between two source paths

tagtest Test presence of smaller set or custom tags in source (compare or verify modes)

exporttags Export default unique rule tags to view what features may be detected

verifyrules Verify rules syntax is valid

help Display more information on a specific command.

version Display version information.

 実際にソースディレクトリの解析を行うと以下のような感じになります。

PS C:\Users\ishikawa.jumpei\Documents\App\ApplicationInspector_1.0.21> .\AppInspector.exe analyze -s C:\Users\ishikawa.jumpei\source\repos\*********\
Microsoft Application Inspector 1.0.21
Analyze command running
100% source files processed
Preparing report
Analyze command completed

 で、肝心の解析結果はWebページとして表示されます。

 ASP.NETのWebApiなのでC#のソースファイルが検出されているのが確認できます。package.jsonとかは付随するjsonファイルが検出されているのかな……。

 続いてFeaturesページを見てみます。

 コード内から検出された要素がハイライト表示されているようですね。

 画像では

・Build – Visual Studioでビルドを行っている
・Sourcecode Repository – ソースコードを管理するリポジトリがある
・Development framework – 何れかのフレームワークを使用している

 というのが確認できます。

 逆にグレーアウトしているものは使われていないということになります。Testing frameworkは色付けなきゃなぁと思いつつ手を付けれていません。

 少し戻ってSummaryページのTags Listでは検出された要素が信頼度とセキュリティ的な重要度と一緒に一覧表示されます。

3.掘り下げる

 気になったので検出ルールのファイルを確認してみます。

 zipを展開した中にあるrulesから適当なファイルを開いてみます。

 regex-wordとあるように正規表現でキーワードを検出しそれを要素のタグと紐づけているようですね。

 ということはルールを書くと検出対象の追加もできそうです。

 ここではやりませんが……。

まとめ

 今回は手元のソースディレクトリを解析してみましたが、GitHubで公開されてるコードを実行する前に解析に解析にかけてみてどういうことを行っているか確認する、といった感じで使うのもアリなのかなと思います。

 MicrosoftからリリースされたApplication Inspectorを触ってみた記事でした。

 石川 順平/FIXER

 九州のとある高専卒のFIXER1年目。すき間時間でbotを作ったりAZ系の資格の勉強をしたりしています。まだまだAzure初心者です。趣味はゲームやったりバイクで出かけたりすることで最近バイクを買いました。ゲームは某MMORPGをやったりしています。

[転載元]
 Microsoft Application Inspectorでソースコードを解析してみよう

カテゴリートップへ