troushoo

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

  1. --/--/--(--) --:--:--|
  2. スポンサー広告

Linux で、何がファイルを変更したのかを調査する方法 - auditd -

概要

auditd を用いて、Linux で何がファイルを変更したのかを調査する方法を紹介します。

内容

/etc/hosts にアクセスしたモジュールが何であるかを調査する方法を例にとり、auditd の使用方法を紹介します。

auditd のインストール
Ubuntu では、以下のコマンドでauditd をインストールできます。

apt-get install auditd

auditd の設定
auditctl を用いて、auditd の設定が可能です。
auditctl -w /etc/hosts -p rwxa -k mykey


各々の引数の意味は以下です。
引数 意味
-w /etc/hosts /etc/hosts へのアクセスを監視します。
-p rwxa r(read)、w(write)、x(execute)、a(attribute) の変更を監視します。
-k mykey ログ結果を検索しやすいようにキーを設定します。

無事設定されたかは「auditctl –l」にて確認できます。


auditctl の設定は、auditd の再起動後になくなりますが、再起動することなく設定したルールを消すには、登録時に「-w」で指定したコマンドを「-W」にすればOKです。

auditd のログを確認
ausearch を用いて、auditd のログの確認が可能です。
ausearch -f /etc/hosts -i


各々の引数の意味は以下です。
引数 意味
-f /etc/hosts /etc/hosts に対するログを検索します。
-i ログの出力結果を、人にわかりやすいように変換します。

「sudo cat /etc/hosts」実行後に、上記ausearch を実行すると、以下のようなログが出力されます。

type=PROCTITLE msg=audit(2016年09月03日 21:37:46.193:148) : proctitle=sudo cat /etc/hosts 
type=PATH msg=audit(2016年09月03日 21:37:46.193:148) : item=0 name=/etc/hosts inode=1048735 dev=08:01 mode=file,644 ouid=root ogid=root rdev=00:00 nametype=NORMAL 
type=CWD msg=audit(2016年09月03日 21:37:46.193:148) :  cwd=/home/tr 
type=SYSCALL msg=audit(2016年09月03日 21:37:46.193:148) : arch=x86_64 syscall=open success=yes exit=6 a0=0x7fd3f7a572d1 a1=O_RDONLY|O_CLOEXEC a2=0x1b6 a3=0x80000 items=1 ppid=6549 pid=7696 auid=unset uid=root gid=tr euid=root suid=root fsuid=root egid=root sgid=tr fsgid=root tty=pts18 ses=unset comm=sudo exe=/usr/bin/sudo key=mykey 


各々の意味について説明します。

proctitle=sudo cat /etc/hosts
sudo cat /etc/hosts が実行されたことを意味します。

name=/etc/hosts
システムコールに渡されたパラメータです。type=PATH から始まる行は、システムコールに渡された引数の情報を格納します。

cwd=/home/tr
カレントディレクトリを意味します。CWD はCurrent Working Directory です。

syscall=open
システムコール open が実行されたことを意味します。

success=yes
システムコールが成功したことを意味します。

uid=root
実行プロセスのユーザーID です。

key=key
auditctl 実行時に指定したキーです。


情報元
How To Use the Linux Auditing System on CentOS 7 (英語)

関連記事
Linux 上の.NET アプリのCPU パフォーマンスをPerfView を用いて解析


  1. 2016/09/04(日) 21:55:13|
  2. Linux
  3. | トラックバック:0
  4. | コメント:0
<<Wireshark の tcptrace グラフを使用した、パフォーマンスのトラブルシューティング | ホーム | ダンプ採取時に実行中のタスク (プロセス) の状態を表示してくれる、mex のコマンドtasklist>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://troushoo.blog.fc2.com/tb.php/304-15a767f1
この記事にトラックバックする(FC2ブログユーザー)

スポンサーリンク

最新記事

月別アーカイブ

カテゴリ

ツール (92)
ネットワーク (76)
Visual Studio (56)
SOS・Psscor2/Psscor4 (25)
WinDbg (25)
Linux (23)
Azure (17)
Tips (20)
英語 (1)
About Me (1)
未分類 (0)

全記事表示リンク

全ての記事を表示する

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。