Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS CloudShell 禁止してみた #omoshiro_cloudshell

SAKON
December 29, 2020

AWS CloudShell 禁止してみた #omoshiro_cloudshell

とうとうAWSにもCloudShell(他と違ってスペースなし)がやってきました。ブラウザベースのシェル環境、とても便利で利用シーンも多そうですが、セキュリティ・統制面では懸念点もあります。結果的に現時点ではルールが満たせず禁止するに至ったのでその経緯を書き留めておきます。
2020/12/29 AWS CloudShellおもしろ選手権登壇資料

SAKON

December 29, 2020
Tweet

More Decks by SAKON

Other Decks in Technology

Transcript

  1. AWS CloudShell
    禁止してみた
    SAKON
    sakon310

    View Slide

  2. About Me
    • 某SIer所属、サイバーセキュリティ担当
    • インシデント対応、クラウドの安全な利用、ガイドライン化
    • ビルダー向けにガードレール設置する人
    • 好きなAWSサービス:Organizations、Security Hub

    View Slide

  3. CloudShell がやって来た 2020
    • ヤットデタ
    • スペース入らない Cloud Shell CloudShell
    • ブラウザベースShell、端末設定不要
    • 管理コンソールから1クリックで使える(要権限)
    New!

    View Slide

  4. CloudShell の嬉しさ
    • ブラウザ集約、端末毎のキッティング不要
    • LAN環境でのプロキシの穴あけが不要
    • 管理コンソールの資格情報で事前認証
    • Amazon Linux2 コンテナベース、無料で永続1GB

    View Slide

  5. CloudShell でいっぱい分割できる

    View Slide

  6. CloudShell でlol(なお画面幅
    lolbanner https://gist.github.com/guan840912/f48394a1e68dcebe99272889753a5d06

    View Slide

  7. CloudShell で PostgreSQL も動く
    • Pythonはデフォルト
    • NGINX等はExtrasライブラリに
    • PostgreSQLも動くぞ
    ➢ LT6: CloudShell内で動かしてるサービ
    スを公開してみた by しょーちゃん
    さん に期待

    View Slide

  8. CloudShell は親切
    • 改行を含むコマンドラインをペーストするとSafe
    Pasteがポップアップして、その場で修正できる

    View Slide

  9. CloudShell EC2にSSH接続
    https://dev.classmethod.jp/articles/aws-cloudshell-ssh-to-ec2-instance/
    プロキシ申請なしでイケた

    View Slide

  10. CloudShell EC2にSSH接続
    https://dev.classmethod.jp/articles/aws-cloudshell-ssh-to-ec2-instance/
    ちょっ待て

    View Slide

  11. CloudShell は統制要件を満たせるか?
    • 便利過ぎてガードレール必要な雰囲気
    • 何やってるか詳細がわからない、何が起こったか後からわ
    からないのは、統制側からは不安
    • PCI DSS や FISC などの金融業界のコンプライアンス
    はOS領域も対象であり、$HOME だけ永続化は厳しい

    View Slide

  12. CloudShell は踏み台になれるか?
    • 金融系だとBastion(踏み台)ホストも気を遣う
    https://iselegant.hatenablog.com/entry/2020/09/28/012409|

    View Slide

  13. CloudShell x CloudTrail
    • CreateEnvironment、CreateSession、
    PutCredentials、SendHeartBeat のみ
    • File upload / download は出ない?
    • 接続履歴は残る

    View Slide

  14. CloudShell x CloudWatch
    • 出力なし
    • 操作履歴は残らない
    • $HOME (historyとか)を外部転送して監視?
    ➢ LT1: CloudShell で SSM Agent を動かす
    by so さん にヒントが!?
    補足:AWS CLI呼ん
    だ場合はAPI側で出
    力する
    出力されないのは
    OSのコマンド

    View Slide

  15. SSMセッションマネージャー x Agent 接続
    出典:https://d1.awsstatic.com/webinars/jp/pdf/services/20200212_AWSBlackBelt_SystemsManager_0214.pdf

    View Slide

  16. CloudShell でも操作履歴取りたい
    出典:https://d1.awsstatic.com/webinars/jp/pdf/services/20200212_AWSBlackBelt_SystemsManager_0214.pdf
    操作履歴
    が欲しい

    View Slide

  17. CloudShell の嬉しさ
    • ブラウザ集約、端末毎のキッティング不要
    • LAN環境でのプロキシの穴あけが不要
    • 管理コンソールの資格情報で事前認証
    • Amazon Linux2 コンテナベース、無料で永続1GB

    View Slide

  18. CloudShell の危うさ(裏返し)
    • ブラウザ集約、端末毎のキッティング不要
    ➢ブラウザの操作をどう記録し、監査する?
    • LAN環境でのプロキシの穴あけが不要
    ➢プロキシでの監査をいろいろ迂回できちゃう
    • 管理コンソールの資格情報で事前認証
    ➢root や admin-group 、FullAccessにしてない?
    • Amazon Linux2 コンテナベース、無料で永続1GB
    ➢1GBもあればいろいろできちゃう(本番だと・・・)

    View Slide

  19. CloudShell 禁止してみた
    • (現時点では) 所属組織の本番ルールを満たせず禁止
    既存のSSMセッションマネージャー/Agentに寄せる
    • IAMポリシーから AWSCloudShellFullAccess 削除
    CloudShellのアイコンは消えないが、使えなくなる
    https://docs.aws.amazon.com/cloudshell/latest/userguide/sec-auth-with-identities.html

    View Slide

  20. CloudShell これがあったら禁止しなかった
    • 解禁にむけて欲しい機能
    – 操作履歴をCloudWatchに記録
    – 操作履歴をS3に記録
    – アカウント毎設定ではない一括設定(AMIかCFn)
    – 追加の永続化ストレージ、EFSマウント
    • Bastionのマネージドサービスになれるかも?

    View Slide

  21. CloudShell まとめ
    • コンソールと権限あれば使えるブラウザベースShell
    • 手軽で便利な反面、セキュリティ・統制面では注意点あり
    • まだまだこれから、今後に期待!(そのうちVPCリソースも)
    https://aws.amazon.com/jp/cloudshell/faqs/

    View Slide

  22. Thank you!
    SAKON
    sakon310

    View Slide