
Contrast CodeSecについて
Contrast CodeSecとは、Contrast の企業向けに開発された優れたアプリケーションセキュリティを、アプリケーション開発者に無償で提供。
CodeSec概要:
- CodeSec Scan: Java、Javascript及び .NETで開発されたコードの脆弱性を高速且つ高精度に検出
- CodeSec Serverless: AWS Lambda関数 (Java および Python)に最適化されたアプリケーションセキュリティ
- CodeSec SCA: OSSの脆弱性を検出(2022年夏リリース予定)
上記全ての機能は、シンプルなコマンドラインインターフェース(CLI)から、またはCodeSecスキャン用のGitHub Actionで利用可能。
ステップ1 – インストール
コマンドプロンプトまたはターミナルを開いて、NPM または Homebrewによりインストール
(Contrast CodeSecは、Node.js v.16.13.2以降、且つv.17より前のバージョンに対応しています。)
ステップ 2 – 認証
お持ちのGitHub または Googleアカウントを使用して認証
contrast auth
ステップ 3 – スキャン
脆弱性を検出
以下のコマンドを使用し、Java、Javascriptまたは .NET のコードにSASTスキャンを実行
contrast lambda
AWS Policy
Make sure you have the following AWS permissions enabled:
- Lambda: GetFunction, GetLayerVersion
- IAM: GetRolePolicy, GetPolicy, GetPolicyVersion, ListRolePolicies, ListAttachedRolePolicies
Here is an example AWS policy:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"iam:GetPolicyVersion",
"iam:GetPolicy",
"lambda:GetLayerVersion",
"lambda:GetFunction",
"iam:ListAttachedRolePolicies",
"iam:ListRolePolicies",
"iam:GetRolePolicy"
],
"Resource": [
"arn:aws:lambda:*:YOUR_ACCOUNT:layer:*:*",
"arn:aws:lambda:*:YOUR_ACCOUNT:function:*",
"arn:aws:iam::YOUR_ACCOUNT:role/*",
"arn:aws:iam::YOUR_ACCOUNT:policy/*"
]
}
]
}
AWS Credentials
The Contrast CLI can find your AWS credentials in one of the following ways:
- Configured in your user profile (usually
~/.aws/credentials
) - Using the
--profile
flag (contrast lambda --profile myProfile
) - Using
AWS_DEFAULT_REGION
,AWS_ACCESS_KEY_ID
andAWS_SECRET_ACCESS_KEY
environment variables
For more information on how to use the lambda
command, run contrast help
.
contrast lambda --function-name myFunctionName
contrast lambda -f myFunctionName --region eu-central-1
contrast lambda -f myFunctionName --region eu-central-1 --profile myDevProfile
contrast lambda -f myFunctionName -v -j -r eu-central-1 -p myDevProfile
contrast lambda --function-name myFunctionName --verbose --json-output --region eu-central-1 --profile myDevProfile