diff --git a/malware-tech_ref_and_memo.md b/malware-tech_ref_and_memo.md index 96eaf37..7fad45c 100644 --- a/malware-tech_ref_and_memo.md +++ b/malware-tech_ref_and_memo.md @@ -273,10 +273,8 @@ New-Object System.IO.Compression.DeflateStream([iO.mEmoRySTream] [sysTEM.ConVert # rootkit ## LKM rootkit -- 動的にカーネルに組み込めるモジュールとして,LKM(Loadable Kernel Module)を利用 -- LKMを利用して,sys_call_tableの特定のカーネル関数のアドレスを任意のrootkitの機能を有した関数のアドレスへと書き換える -- システムコールが行われた際に本来とは異なるカーネル関数であるrootkitのカーネル関数が呼び出されることになる(システムコールフック) -- sys_call_tableへのアクセスは特権モードが必要であるためLKMを利用する +- 動的にカーネルに組み込めるモジュールであるLKM(Loadable Kernel Module)を利用して,sys_call_tableの特定のカーネル関数のアドレスを任意の関数のアドレスへと書き換えることで,本来とは異なるカーネル関数であるrootkitのカーネル関数等が呼び出せるようになる(システムコールフック) +- sys_call_tableへのアクセスは特権モードが必要であるためLKMを利用される - rootkitの関数内で本来呼び出されるはずの正規のカーネル関数をあえて呼び出すことで,正規の処理を行っているように見せかけることができる - /proc/modulesからの隠ぺいも可能 - LKMについて @@ -294,7 +292,11 @@ rmmod [lkm_name].ko **ref:**
- LKMのrootkitへの応用について
[侵入者の不利な情報を隠すLKM rootkitの仕組み,2003](https://www.atmarkit.co.jp/fsecurity/rensai/rootkit03/rootkit02.html)
-- サンプルLKM rootkit
+- サンプルLKM rootkit(work on Linux kernels 2.6.32-38 and 4.4.0-22 )
[Linux Rootkit](https://github.com/nurupo/rootkit) - サンプルLKM rootkitその2(developed using linux kernel version 4.4.13)
-[rootkit-kernel-module](https://github.com/croemheld/lkm-rootkit) \ No newline at end of file +[rootkit-kernel-module](https://github.com/croemheld/lkm-rootkit) +- サンプルLKM rootkitその3(runs on kernel 2.6.x/3.x/4.x)
+[Reptile](https://github.com/f0rb1dd3n/Reptile) +- サンプルLKM rootkitその4(Tested on Linux kernel [4.19.62] & [4.15.0])
+[Sutekh](https://github.com/PinkP4nther/Sutekh)