1. Windows の応急対応#
1.1 ファイルの分析#
1.1.1 起動時の項目#
Windows のスタートメニューを確認します
C:\Users\%username%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
1.1.2 一時ファイル(tmp)#
実行ウィンドウで %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:ユーザーの説明:ディレクトリ:ログイン後のシェル
注意:パスワードがない場合、ローカルログインのみが許可され、リモートログインは許可されません {{</admonition>}}
シャドウファイル /etc/shadow
root:$6$oGs1PqhL2p3ZetrE$X7o7bzoouHQVSEmSgsYN5UD4.kMHx6qgbTqw
NVC5oOAouXvcjQSt.Ft7ql1WpkopY0UV9ajBwUt1DpYxTCVvI/:16809:0:99999:7:::
ユーザー名:暗号化されたパスワード:パスワードの最終変更日:パスワードの変更間隔:
パスワードの有効期限:パスワードの期限切れの警告日数:パスワードの期限切れ後の猶予日数:アカウントの無効化日時:保持する {{</admonition>}}
よく使用されるコマンド
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