認可とは、アクセス権の制御のことです。
安全に認可制御するポイントは、次の2つです。
- 職務分離
- 最小権限付与
OSにおけるアクセス制御
- 任意アクセス制御:所有者がアクセス権限を制御可能
- 強制アクセス制御:元ファイルアクセス権限が引き継がれるため、別で制御不能
OAuth2.0
アカウンティング
ログには、必要な情報が過不足なく記録されています。
過不足なく記録されるため、ログの改ざんを検知したり、防止する仕組みがあります。
HMACを利用し、改ざんを検知したり、一度書いたら、消せないWORM装置などが対策としてあります。
HMACは、共通鍵とともにハッシュ値を作るんでしたね
また、定期的にログの監査を行うことも大切です。
ログサーバは、各機器間で時刻を合わせる必要があるため、NTPを使って同期させることが多いです。
ログ改ざんを検知する方法として、HMACを使った検知があります。
システム管理者が作成した共有鍵と、ログをハッシュ関数にかけ、HMACを生成します。
不正アクセス
不正アクセスの流れは、次のとおりです。
- 事前調査で情報を確認する。
- 権限奪取する(一般ユーザの権限昇格により管理者権限を狙うことが多い)
- 不正行為
- 痕跡消去(ログの改ざん)
標的型攻撃を念頭に、攻撃の段階を分類したものをサイバーキルチェーンといいます。
事前調査の手法
pingコマンド
pingコマンドを利用することで、ICMPエコー要求します。
エコー応答が帰ってくることで、宛先のネットワークが通信通じるのか、OSが動いているのかが分かります。
有効なIPアドレスを調査できます。
ネットワーク層レベルの事前調査です。
ポートスキャン
TCPスキャンすることで、3ウェイハンドシェークして、コネクションが形成できることを確認します。
ブラウザからWebサーバにアクセスするためには、webサーバプロセスは443番ポートを使います。
3ウェイハンドシェークは次の流れで行います。
②で接続OKが返答されるということは、Webサーバが動いていることがわかりますね。
- ブラウザがWebサーバに接続要求をします。
- Webサーバが接続OKを返答します
- ブラウザが接続する
TCPスキャンのログを残さずにスキャンする方法をステルススキャンといいます。
上記③のブラウザ接続のときに、リセットビットを送ることで、コネクション強制切断をします。
これにより、ログに記録される心配がありません。
また、UDPスキャンの場合、UDP通信はコネクションを形成しないため、3ハンドシェークをしません。
ICMPのポート到達不能メッセージが戻ってこないことを確認します。
バナーチェック
バナーチェックにより、プログラムの種類、バージョン、OS,ライブラリなどの情報を得ることができます。
セキュリティの観点により、現在はバナーは非表示にすることが多いです。
スタックフィンガプリンティング
OSごとのパケットの作り方の違いを確認することで調査する
権限奪取の手法
一般ユーザの権限で権限昇格し、管理者権限を手に入れます。
権限昇格のために、攻撃用プログラムを使います。
- ID、パスワードを入手して、正面から侵入
- サーバプロセスなどのバグをつく(バッファオーバーフロー、ヒープオーバーフローなど)
不正行為
バックドア:次回以降入りやすい入り口
ルートキット:システム管理者が使うニセの管理用コマンドをまとめたもの。
攻撃者の種類
スクリプトキティ:すでに用意された攻撃コードをDLして実行
ハクティビズム:ハッカー集団
ボットハーダー:ボットに指示を出す人
ダークウェブ:ネット上で未使用のIPアドレスを使って、遺法性が高い情報や物品が取引されるWebサイト。
C&Cサーバ:ボットに指令を出すサーバ。応答パケットにボットへの指示を含む方法をコネクトバックという。