タグ付けされた質問 「security」

ITセキュリティ、情報セキュリティ、DevSecOpsに関する質問。

5
.tfおよび.tfstateで秘密を管理するにはどうすればよいですか?
Terraform MySQLプロバイダーを使用して、mysqlユーザーのリストを保持し、新しいテスト環境を作成するのに便利です。ファイルの両方平文でのMySQLのパスワードを保存するように見えます。.tf.tfstate .tfについて: 私の理解では、.tfファイルはリビジョン管理に存在し、チームによって維持されています。秘密が存在する場合、その慣行はどのように異なります.tfか?これらの値をまったく暗号化することは可能ですか? .tfstateについて: .tfstateTerraform applyを実行した後、どこかに安全に保存できますが、このユースケースではまったく保存しない方が望ましいでしょうか。

6
本番環境でdockerを実行するときに考慮すべきベストで包括的なプラクティスは何ですか?
最後に、Dockerに非常に興味があるため、重要な顧客データを含むオンラインのビジネスクリティカルな実稼働システムをDocker Swarmに移動したいと考えています。すでにそうしている人もいるかもしれません。他の組織は、ルートモードで実行されているプロダクションプロセスを禁止するポリシーによってそれを買う余裕はありません。 Docker実稼働環境で考慮するビルディングブロックのチェックリストは何ですか?それらのすべてを必要とするわけではありませんが、それらすべてを評価することが重要です。 免責事項:「大きな無限リスト」を回避するためのSEポリシーがあることは知っていますが、このチェックリストは非常に大きくすることはできません...とにかく無限です。 だから-これらのビルディングブロックは何ですか? まだ展開されていない場合は、高度なセキュリティ設定(強化カーネル、SELinuxなど)でLinuxホストシステムを実行することを検討してください。 高山、busybox、またはスクラッチなどの小さなDockerベースイメージの使用を検討してください。たとえば、空のベースイメージから始めます。 ルート以外のユーザー設定を使用する コンテナに付与されている既に縮小されているカーネル機能のセットをさらに削減するために慎重に評価する プロセスを起動するコンテナごとに実行可能なバイナリを1つだけ持つことを検討します。理想的には静的にリンクします シェルアクセスを取得するためにシステムを破壊したい人は、コンテナがすべてのシェルを無効にしていることがわかったのではないかと思うかもしれません 可能な場合にのみ読み取り専用ボリュームをマウントする 質問:他に何ですか?

4
ansible-vaultパスワードを置く場所
私たちは、gitでパスワードやキーの漏洩を防ぐために、プロジェクトでansible vaultを使用することを計画しています。 考えは、すべての機密データをプレーンファイルに入れ、パスワードを使用してansible-vaultでこのファイルを暗号化してからgitにプッシュすることです。 ファイルを復号化するには、ボールトのパスワードをansibleに渡す必要があります。3つの可能性について考えています。 サーバー環境変数内に保存します ansible-playbookコマンドのオプションとして渡します バージョン非対応のファイルに保存します。 ansible-vaultパスワードを保存するための最良の(そして安全な)方法である他のオプションはありますか?

2
SecOpsとは?
最初にSecOpsという言葉を聞いたとき、DevOpsが開発者と運用チームを統合するのとほぼ同じ方法で、セキュリティと運用チームを接続することを目的とする管理アプローチと考えました。 しかし、セキュリティはDevOpsパズルの一部ではありませんか? DevOpsには、コンポーネントの監視、バージョン管理、ベンチマーク、コードレビュー、継続的な監視などのプロセスが既に含まれています。 SecOpsはDevOpsチームに他に何を追加できますか?

5
Dockerコンテナの内部へのアクセスを禁止するにはどうすればよいですか?
Dockerイメージの形式で顧客にアプリを配信したい。ただし、エンドユーザーがコンテナ内の何かを変更しないようにすることが重要です。ユーザーは、コンテナを実行/停止し、ネットワーク経由でコンテナとやり取りすることのみが可能です。 コンテナの内部へのアクセスを禁止することは可能ですか?コンテナが作成したイメージの整合性を検証することは可能ですか?
14 docker  security 

2
アプリケーションに必要な資格情報を保存する方法は?
資格情報をバージョン管理(git)に保存することは悪いことだと誰もが言っています。したがって、はるかに優れた資格情報を格納する他の方法が必要です。 アプリケーションは、依存するサービスを使用するためにどこかから資格情報を受け取る必要があります。これらの資格情報は通常、構成ファイルに格納されます。各サーバーを手動で入力してそのファイルを作成することは問題外です。サーバーが人間の介入なしに行き来するためです。 アプリケーションの資格情報を管理する方法は?

2
暗号化された秘密をserverless.comプロジェクトのコードに格納する方法は?
serverless.comで、AWS Lambda関数にシークレットを公開する最も簡単な方法は、それをserverless.ymlファイルに保存することです(たとえば、KMSで暗号化されます)。 しかし、暗号化された秘密をGitにコミットすることは、世界で最高のものではありません。シークレットを変更する必要がある場合は、コードの変更が必要です。 しかし、セキュリティだけの観点から、より良い代替策は何ですか?たとえば、シークレットをS3(暗号化)に保存し、Lambdaがその場所とKMSキーにアクセスできるようにすることができますが、実際には意味のある方法でより優れていますか?

4
Google Cloud Load Balancerでポートを開く
デフォルトでは、Google Cloudロードバランサーは多くのポートを不必要に公開しているようです。80/443のみを公開する方法が見つかりませんでした。ロードバランサーの1つを作成するたびに、nmapに次のポートが表示されます。 PORT STATE SERVICE 25/tcp open smtp 80/tcp open http 110/tcp open pop3 143/tcp open imap 443/tcp open https 465/tcp open smtps 587/tcp open submission 993/tcp open imaps 995/tcp open pop3s 1720/tcp open H.323/Q.931 8080/tcp open http-proxy 25、465、587、993、995をブロックする方法はありますか? この質問は、ファイアウォールではなくGCPロードバランサに関するものであることに注意してください。

2
Jenkinsのsudoを使用するのは悪いことですか?
Publish Over SSHプラグインを使用して、アプリJenkinsをさまざまな環境にデプロイします。一部のデプロイジョブは、環境の準備や、アプリサーバーシステムサービスの停止や再起動などを行います。これらのコマンドの一部にはが必要ですsudo。 リモートのパブリッシュおよび実行のJenkinsジョブ内でsudoを要求することがセキュリティ上の悪い習慣になる可能性があるかどうか、私は興味があります。ターゲットホストのセキュリティポリシーを変更して、sudoなしで必要な機能を実行できるようにする必要がありますか?
11 jenkins  security 

3
クラウドでの管理されていないハードウェアセキュリティモジュール(HSM)の実行
パブリッククラウドにハードウェアセキュリティモジュールを配置することが可能かどうか、つまりGoogle、Amazon、Azureを使用できるかどうかを尋ねたことも、尋ねられたこともないことを認めなければなりません。 誰かが組織が完全に管理するHSMを使用できるようにするためのテクニックを見つけましたか? クラウドとHSMの2つの概念は基本的に互いに矛盾しているように見えます。クラウドは一般に「アウトソーシング」またはオペレーティングサービスのリスクをクラウドサービスプロバイダーに転送するためです。 AzureとAWSで見られるように、フルマネージドHSMに関しては明らかに中立的な立場があります。 Azure KeyVault:Key Vaultを使用すれば、HSMとキー管理ソフトウェアのプロビジョニング、構成、パッチ適用、保守を行う必要はありません。新しいボールトとキーをプロビジョニングして(または独自のHSMからキーをインポートして)、キー、シークレット、ポリシーを一元管理します。 AWS CloudHSM:AWS CloudHSMは、クラウドベースのハードウェアセキュリティモジュール(HSM)で、AWSクラウドで独自の暗号化キーを簡単に生成して使用できます。CloudHSMを使用すると、FIPS 140-2レベル3検証済みHSMを使用して独自の暗号化キーを管理できます。 さらに、キー管理に対する非HSMベースのソリューションがいくつかあります。 クラウドキー管理(Google):Cloud KMSはクラウドでホストされるキー管理サービスで、オンプレミスと同じ方法でクラウドサービスの暗号化を管理できます。AES256暗号化キーを生成、使用、ローテーション、破棄できます。Cloud KMSはIAMおよびCloud Audit Loggingと統合されているため、個々のキーに対する権限を管理し、それらがどのように使用されるかを監視できます。Cloud KMSを使用して、Google Cloud Platformに保存する必要がある秘密やその他の機密データを保護します。 すべてのクラウドマーケットプレイスで利用可能なさまざまなセキュリティアプライアンス。 誰かが組織が完全に管理するHSMを使用できるようにするためのテクニックを見つけましたか?

4
Ansible-プライベートgitリポジトリ-SSHエージェントの転送とプライベートSSHキーのコピー
私は最近、Ansibleをいじり始めました。DevOpsに関する経験はあまりなく、複雑なシナリオを処理する必要はまったくありませんでした。現在の展開ツールであるDeployer PHPを置き換えるために、Ansibleプレイブックの作成を開始しました。残念ながら、gitリポジトリのクローン作成に行き詰まっています。今、私はgitリポジトリへのアクセスを有効にするために公開鍵を追加する必要があることを知っています。 SSHエージェント転送を使用する必要がありますか(この方法でローカルSSHキーを使用できます)、またはプライベートSSHキー(暗号化、ソース管理に追加)をansibleプロジェクト内に保存し、Ansibleを使用してターゲットノードにコピーする必要がありますか?質問が非常に広範囲にわたる可能性があることを知っているので、私にとって興味深いのは、両方のアプローチのセキュリティへの影響です。
7 ansible  git  security 

2
ログファイルの機密データを保護するためにどのような戦略を採用できますか?
高度に規制された環境での作業データは、感度に応じてさまざまな方法で分類されます。場合によっては、これは法的に強制され、別の扱いが必要になります。 データ分類ポリシーの例は次のとおりです。 パスワード、秘密鍵、SAMLトークン、クレジットカード番号などの非常に制限されたデータ。 ユーザー名やお客様IDなどの制限されたデータ。 無制限のデータ、ほとんど何でも。 この分類には特定の義務が伴います。 厳しく制限されているデータは、いかなる状況でもログファイルで利用可能にしてはなりません。 特定の条件下では、制限されたデータがログファイルで利用可能になる可能性があります。たとえば、サービスでインシデントが発生した場合、オンコールエンジニアはBreak-Glass手順を実行して、このデータにアクセスして問題を診断できます。次に、Break-Glass手順により、レビュー、監査、および場合によってはそのエンジニアからの一時的な特権の取り消しがトリガーされます。 これを達成するためにどのような戦略を採用することができますか?特に、この問題に直接的な回答を提供しない、幅広いロギング、モニタリング、および計測ツールが市場に出回っていることを考えると? たとえば、SplunkとAppDynamicsのどちらにも、公開されているテレメトリの条件に応じて異なるアクセス制御を課すことができます。つまり、マスクするフィルターを作成できます<customerId>NNNNNNNNNNNN</customerId>。ただし、これらのツールはどちらも、クレジットカード番号を自動的に識別して自動的にマスクする機能を提供しません。 注:これはDevOpsに関連していると思います。これは、従来の階層型サポートモデルでは、比較的少数のグループがデータにアクセスして手動でフィルタリングできるため、オペレーティングチームの責任を開発チームに委譲することにより、このデータが遠くにさらされる可能性があるためです。より広い聴衆。

2
API GatewayリクエストのみがEC2インスタンスに到達できるようにする方法
マイクロサービスをホストする複数のEC2インスタンスがあります。サーバーの自動スケーリンググループにはELBがあります。すべてのトラフィックはAWS API Gateway経由でルーティングされます。問題は、ELBのHTTPSポートが世界中に公開されていることです。 サーバーを保護して、トラフィックがAPI Gatewayのみを通過できるようにする方法は?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.