1. Windows 緊急対応#
1.1 ファイル分析#
1.1.1 起動時の項目#
Windows のスタートメニューをチェックします
C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
1.1.2 一時ファイル#
実行ウィンドウで %tmp%
を入力して、一時フォルダを直接開きます
このフォルダに疑わしいファイル(exe、dll、sys)があるかどうかを確認します
1.1.3 ブラウザの履歴#
1.1.4 ファイルの属性#
ファイルの作成日時、変更日時、アクセス日時をチェックします(デフォルトでは無効になっています)。デフォルトでは、変更日時が表示されます。
1.1.5 最近開いたファイル#
実行ウィンドウで %UserProfile%\Recent
を入力して、最近使用したファイルを直接開きます
1.2 アカウントのセキュリティ#
1.2.1 疑わしいアカウント、新規アカウント#
cmd ウィンドウを開き、lusrmgr.msc コマンドを入力して、新規 / 疑わしいアカウントがあるかどうかを確認します。管理者グループ(Administrators)に新しいアカウントがある場合は、すぐに無効にするか削除してください。
1.2.2 隠しアカウント、クローンアカウント#
- レジストリを開き、管理者に対応するキーを確認します
- D 盾_web マルウェア検索ツールを使用して、クローンアカウントの検出機能を統合します
1.2.3 ログインログ#
Win+R を押して実行を開き、「eventvwr.msc」と入力して実行し、「イベントビューア」を開きます
- 4624:アカウントのログインに成功しました
- 4648:平文の資格情報を使用してログインを試みました
- 4778:Windows ホストへのセッションの再接続
- 4779:Windows ホストからのセッションの切断
1.3 ポートとプロセス#
1.3.1 ポート#
ポートの接続状況をチェックし、リモート接続や疑わしい接続があるかどうかを確認します
- netstat -ano を使用して現在のネットワーク接続を表示し、疑わしい ESTABLISHED を特定します
- netstat で特定された PID に基づいて、tasklist コマンドを使用してプロセスを特定します
1.3.2 プロセス#
Microsoft が提供する Process Explorer などのツールを使用して調査します
1.3.3 スケジュールタスク#
1.4 Web シェルの検出#
一般的なツール:D 盾
2. Linux 緊急対応#
2.1 ファイル分析#
/tmp は特別な一時ディレクトリファイルであり、すべてのユーザーが読み書き操作を行うことができます
2.2 アカウントのセキュリティ#
ユーザ情報ファイル /etc/passwd
-
root:0:0:root:/root:/bin/bash
account:password:UID:GID:GECOS:directory -
ユーザ名:パスワード:ユーザ ID:グループ ID:ユーザの説明:ホームディレクトリ:ログイン後のシェル
注意:パスワードがない場合、ローカルでのみログインが許可され、リモートログインは許可されません
シャドウファイル /etc/shadow
-
root:$6$oGs1PqhL2p3ZetrE$X7o7bzoouHQVSEmSgsYN5UD4.kMHx6qgbTqw
NVC5oOAouXvcjQSt.Ft7ql1WpkopY0UV9ajBwUt1DpYxTCVvI/:16809:0:99999:7::: -
ユーザ名:暗号化されたパスワード:パスワードの最終変更日:パスワードの変更間隔:
パスワードの有効期限:パスワードの期限切れの警告日数:パスワードの期限切れ後の猶予日数:アカウントの無効化日時:保持
よく使用されるコマンド
who 現在のログインユーザーを表示する(ttyはローカルログイン、ptsはリモートログイン)
w システム情報を表示する。特定の時点でのユーザーの行動を知りたい場合に使用します
uptime ログインしてからの経過時間、ユーザー数、負荷を表示する
侵害の調査
-
特権ユーザー(UID が 0)を検索する
awk -F: '$3==0{print $1}' /etc/passwd
-
リモートログインが許可されているアカウント情報を検索する
awk '/$1|$6/{print $1}' /etc/shadow
-
root アカウント以外のアカウントに sudo 権限があるかどうかを検索する。管理目的でない場合、一般的なアカウントには sudo 権限を削除する必要があります
more /etc/sudoers | grep -v "^#|^$" | grep "ALL=(ALL)"
-
余分なまたは疑わしいアカウントを無効化または削除する
usermod -L user アカウントを無効化します。アカウントはログインできなくなり、/etc/shadowの2番目のフィールドは「!」で始まります userdel user ユーザーを削除します userdel -r user ユーザーを削除し、/homeディレクトリ内のuserディレクトリも削除します
2.3 ポートとプロセス#
1、netstat ネットワーク接続コマンドを使用して、疑わしいポート、IP、PID を分析します
netstat - antlp | more
2、PID に対応するプロセスファイルパスを確認する
ls -l /proc/$PID/exe を実行するか、file /proc/$PID/exe を実行します($PIDは対応するPID番号です)
3、ps コマンドを使用してプロセスを分析します
p s aux | grep pid
2.4 履歴コマンド#
Linux システムでは、以前に実行したコマンドがデフォルトで /root/bash history ファイルに記録されます。
ユーザーは cat /root/.bash_history を使用して表示したり、history コマンドを使用して表示したりすることができます
2.5 環境変数#
環境変数は、シェルがコマンドやプログラムを検索するディレクトリを決定します。PATH の値は、一連のディレクトリです
2.6 バックドアの調査#
ツール - rkhunter