GNU/Linux >> Linux の 問題 >  >> Linux

このオープンソースツールを使用してLinuxメモリフォレンジックを実行します

コンピュータのオペレーティングシステムとアプリケーションは、プライマリメモリ(またはRAM)を使用してさまざまなタスクを実行します。この揮発性メモリには、実行中のアプリケーション、ネットワーク接続、カーネルモジュール、開いているファイルなど、コンピュータが再起動するたびにすべてが消去されます。

その他のLinuxリソース

  • Linuxコマンドのチートシート
  • 高度なLinuxコマンドのチートシート
  • 無料のオンラインコース:RHELの技術概要
  • Linuxネットワーキングのチートシート
  • SELinuxチートシート
  • Linuxの一般的なコマンドのチートシート
  • Linuxコンテナとは何ですか?
  • 最新のLinux記事

メモリフォレンジックは、この貴重な情報をメモリから見つけて抽出する方法です。 Volatilityは、プラグインを使用してこのタイプの情報を処理するオープンソースツールです。ただし、問題があります。この情報を処理する前に、物理メモリをファイルにダンプする必要があります。Volatilityにはこの機能がありません。

したがって、この記事には2つの部分があります。

  • 最初の部分では、物理メモリを取得してファイルにダンプします。
  • 2番目の部分では、Volatilityを使用して、このメモリダンプから情報を読み取って処理します。

このチュートリアルでは次のテストシステムを使用しましたが、どのLinuxディストリビューションでも機能します:

 $ cat / etc / redhat-release 
Red Hat Enterprise Linuxリリース8.3(Ootpa)
$
$ uname -r
4.18.0-240.el8.x86_64
$

注意事項: パート1には、カーネルモジュールのコンパイルとロードが含まれます。心配しないで;思ったほど難しくはありません。いくつかのガイドライン:

  • 手順に従ってください。
  • 本番システムまたはプライマリマシンでこれらの手順を試さないでください。
  • ツールの使用に慣れ、ツールの動作を理解するまで、常にテスト仮想マシン(VM)を使用して試してみてください。
必要なパッケージをインストールします

始める前に、必要なツールをインストールしてください。 Debianベースのディストリビューションを使用している場合は、同等のapt-getを使用してください コマンド。これらのパッケージのほとんどは、コードをコンパイルするために必要なカーネル情報とツールを提供します。

 $ yum install kernel-headers kernel-devel gcc elfutils-libelf-devel make git libdwarf-tools python2-devel.x86_64-y 

パート1:LiMEを使用してメモリを取得し、ファイルにダンプします

メモリの分析を開始する前に、自由に使用できるメモリダンプが必要です。実際のフォレンジックイベントでは、これは侵害されたシステムまたはハッキングされたシステムが原因である可能性があります。このような情報は、侵入がどのように発生し、その影響を分析するために収集および保存されることがよくあります。使用可能なメモリダンプがない可能性があるため、テストVMのメモリダンプを取得し、それを使用してメモリフォレンジックを実行できます。

Linux Memory Extractor(LiME)は、Linuxシステムでメモリを取得するための一般的なツールです。 LiMEを入手する:

 $ git clone https://github.com/504ensicsLabs/LiME.git 
$
$ cd LiME / src /
$
$ ls
deflate .c disk.c hash.c lime.h main.c Makefile Makefile.sample tcp.c
$

LiMEカーネルモジュールを構築する

makeを実行します src内のコマンド フォルダ。これにより、拡張子が.koのカーネルモジュールが作成されます。理想的には、lime.ko ファイルの名前は、lime-<your-kernel-version>.koの形式を使用して変更されます。 makeの最後に :

 $ make 
make -C /lib/modules/4.18.0-240.el8.x86_64/build M ="/ root / LiME/src"モジュール
make[1]:ディレクトリに入る'/usr/src/kernels/4.18.0-240.el8.x86_64'

< >

make [1]:ディレクトリを離れる' / usr / src / kernels / 4.18.0-240.el8.x86_64'
strip --strip-unneeded lime.ko
mv lime.ko lime-4.18.0-240.el8.x86_64.ko
$
$
$ ls -l lime-4.18.0-240.el8.x86_64.ko
-rw-r--r--。 1ルートルート256964月17日14:45lime-4.18.0-240.el8.x86_64.ko
$
$ファイルlime-4.18.0-240.el8.x86_64.ko
lime-4.18.0-240.el8.x86_64.ko:ELF 64ビットLSB再配置可能、x86-64、バージョン1(SYSV)、BuildID [sha1] =1d0b5cf932389000d960a7e6b57c428b8e46c9cf、削除されません
$

LiMEカーネルモジュールをロードします

次に、カーネルモジュールをロードしてシステムメモリを取得します。 insmod コマンドはカーネルモジュールのロードに役立ちます。ロードされると、モジュールはシステムのプライマリメモリ(RAM)を読み取り、メモリの内容をpathで提供されるファイルにダンプします。 コマンドラインのディレクトリ。もう1つの重要なパラメータはformatです; limeの形式を維持する 、以下に示すように。カーネルモジュールを挿入した後、lsmodを使用してロードされたことを確認します コマンド:

 $ lsmod | grep lime 
$
$ insmod ./lime-4.18.0-240.el8.x86_64.ko "path =../ RHEL8.3_64bit.mem format =lime"
$
$ lsmod | grep lime
lime 16384 0
$

pathにファイルが渡されていることがわかります。 コマンドが作成され、ファイルサイズは(当然のことながら)システムの物理メモリサイズ(RAM)と同じです。メモリダンプを取得したら、rmmodを使用してカーネルモジュールを削除できます。 コマンド:

 $ 
$ ls -l〜/ LiME / RHEL8.3_64bit.mem
-r--r--r--。 1ルートルート42945444804月17日14:47/root/LiME/RHEL8.3_64bit.mem
$
$ du -sh〜/ LiME / RHEL8.3_64bit.mem
4.0G /root/ LIME / RHEL8.3_64bit.mem

$ $無料-m
総使用されるフリー共有バフ/キャッシュ
Memの利用可能:3736 220 366 8 3149 3259
スワップ: 4059 8 4051
$
$ rmmod lime
$
$ lsmod | grep lime
$

メモリダンプには何が含まれていますか?

fileを使用して確認できるように、このダンプファイルは単なる生データです。 以下のコマンド。手動でそれを理解することはできません。はい、どこかにASCII文字列がありますが、エディタでファイルを開いて読み取ることはできません。 hexdumpの出力は、最初の数バイトがEmiLであることを示しています。;これは、上記のコマンドでリクエスト形式が「ライム」だったためです:

 $ファイル〜/ LiME / RHEL8.3_64bit.mem 
/root/LiME/RHEL8.3_64bit.mem:data
$


$ hexdump- C〜/ LiME / RHEL8.3_64bit.mem |ヘッド
0000000045 4d 69 4c 01 00 00 00 00 10 00 00 00 00 00 00 | EMiL ............ |
00000010 ff fb 09 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ |
00000020 b8 fe 4c cd 21 44 00 32 20 00 00 2a 2a 2a 2a 2a | .. L.!D.2 .. ***** |
00000030 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | ************** ** |
00000040 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 20 00 20|*************。 |
00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ |
*
00000080 00 00 00 00 00 00 00 00 00 00 00 00 70 78 65 6c | ............ pxel |
00000090 69 6e 75 78 2e 30 00 00 00 00 00 00 00 00 00 00 | inux.0 .......... |
000000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|..........。 ..... |
$

パート2:ボラティリティを取得し、それを使用してメモリダンプを分析します

分析するサンプルメモリダンプができたので、以下のコマンドを使用してVolatilityソフトウェアを入手します。 VolatilityはPython3で書き直されましたが、このチュートリアルでは、Python 2を使用する元のVolatilityパッケージを使用します。Volatility3を試す場合は、適切なGitリポジトリからダウンロードし、次のコマンドでPython2の代わりにPython3を使用します。 :

 $ git clone https://github.com/volatilityfoundation/volatility.git 
$
$ cd volatility /
$
$ ls
AUTHORS.txt contrib LEGAL.txt Makefile PKG-INFO pyinstaller.spec resources tools vol.py
CHANGELOG.txt CREDITS.txt LICENSE.txt MANIFEST.in pyinstaller /> $ /> $ Volatilityは一部の機能に2つのPythonライブラリを使用するため、次のコマンドを使用してそれらをインストールしてください。そうしないと、揮発性ツールを実行するときにインポートエラーが発生する可能性があります。これらのライブラリを必要とするプラグインを実行していない限り、それらを無視できます。その場合、ツールはエラーになります:

 $ pip2 install pycrypto 
$ pip2 install distorm3

VolatilityのLinuxプロファイルを一覧表示

実行する最初のVolatilityコマンドは、使用可能なLinuxプロファイルをリストします。 Volatilityコマンドを実行するための主なエントリポイントは、vol.pyです。 脚本。 Python 2インタープリターを使用して呼び出し、--infoを提供します オプション。出力を絞り込むには、Linuxで始まる文字列を探します。ご覧のとおり、リストされているLinuxプロファイルは多くありません:

 $ python2 vol.py --info | grep ^ Linux 
Volatility Foundation Volatility Framework 2.6.1
LinuxAMD64PagedMemory-Linux固有のAMD64ビットアドレス空間。
$
独自のLinuxプロファイルを作成する

Linuxディストリビューションはさまざまで、さまざまなアーキテクチャ向けに構築されています。これがプロファイルが不可欠である理由です。ボラティリティは、情報を抽出する前に、メモリダンプが取得されたシステムとアーキテクチャを認識している必要があります。この情報を見つけるためのボラティリティコマンドがあります。ただし、この方法には時間がかかります。処理を高速化するには、次のコマンドを使用してカスタムLinuxプロファイルを作成します。

tools/linuxに移動します Volatilityリポジトリ内のディレクトリで、makeを実行します コマンド:

 $ cd tools / linux / 
$
$ pwd
/ root / volatility / tools / linux
$
$ ls
kcore Makefile Makefile .enterprise module.c
$
$ make
make -C //lib/modules/4.18.0-240.el8.x86_64/build CONFIG_DEBUG_INFO =y M ="/ root / volatility / tools / linux "modules
make [1]:ディレクトリに入る'/usr/src/kernels/4.18.0-240.el8.x86_64'
< >
make [ 1]:ディレクトリを離れる'/usr/src/kernels/4.18.0-240.el8.x86_64'
$

新しいmodule.dwarfが表示されます。 ファイル。 System.mapも必要です /bootからのファイル 現在実行中のカーネルに関連するすべてのシンボルが含まれているディレクトリ:

 $ ls 
kcore Makefile Makefile.enterprise module.c module.dwarf
$
$ ls -l module.dwarf
-rw-r--r--。 1ルートルート39879044月17日15:17module.dwarf
$
$ ls -l /boot/System.map-4.18.0-240.el8.x86_64
-rw --- ----。 1ルートルート40328152020年9月23日/boot/System.map-4.18.0-240.el8.x86_64
$
$

カスタムプロファイルを作成するには、Volatilityディレクトリに戻り、以下のコマンドを実行します。最初の引数は、選択したファイル名でカスタム.zipを提供します。名前にはオペレーティングシステムとカーネルのバージョンを使用しました。次の引数はmodule.dwarfです 上で作成したファイルで、最後の引数はSystem.mapです。 /bootからのファイル ディレクトリ:

 $ 
$ cd volatility /
$
$ zip volatility / plugins / overlays / linux / Redhat8.3_4.18.0-240.zip tools / linux / module.dwarf / boot / System.map-4.18.0-240.el8.x86_64
追加:tools / linux / module.dwarf(収縮91%)
追加:boot / System.map-4.18.0-240.el8 .x86_64(79%収縮)
$

これでカスタムプロファイルの準備ができたので、上記の場所に.zipファイルが作成されていることを確認します。 Volatilityがこのカスタムプロファイルを検出したかどうかを知りたい場合は、--infoを実行してください もう一度コマンドします。今回は、以下の新しいプロファイルが表示されます。

 $ 
$ ls -l volatility / plugins / overlays / linux / Redhat8.3_4.18.0-240.zip
-rw-r--r--。 1ルートルート11903604月17日15:20volatility/ plugins / overlays / linux / Redhat8.3_4.18.0-240.zip
$
$
$ python2 vol.py --info | grep Redhat
Volatility Foundation Volatility Framework 2.6.1
LinuxRedhat8_3_4_18_0-240x64-LinuxRedhatのプロファイル8.3_4.18.0-240x64
$
$
ボラティリティの使用を開始

これで、実際のメモリフォレンジックを実行する準備が整いました。 Volatilityは、情報を取得するためにメモリダンプに対して実行できるカスタムプラグインで構成されていることを忘れないでください。コマンドの一般的な形式は次のとおりです。

 python2 vol.py -f <memory-dump-file-taken-by-Lime> <plugin-name> --profile=<name-of-our-custom-profile> 

この情報を用意して、 linux_bannerを実行します メモリーダンプから正しいディストリビューション情報を識別できるかどうかを確認するプラグイン:

 $ python2 vol.py -f〜/ LiME / RHEL8.3_64bit.mem linux_banner --profile =LinuxRedhat8_3_4_18_0-240x64 
Volatility Foundation Volatility Framework 2.6.1
Linuxバージョン4.18.0-240。 el8.x86_64([email protected])(gccバージョン8.3.1 20191121(Red Hat 8.3.1-5)(GCC))#1 SMP Wed Sep 23 05:13:10 EDT 2020
$

Linuxプラグインを検索

これはうまく機能したので、すべてのLinuxプラグインのすべての名前を見つける方法に興味があるかもしれません。簡単なトリックがあります:--infoを実行します コマンドとgrep linux_の場合 ストリング。さまざまな用途に利用できるさまざまなプラグインがあります。部分的なリストは次のとおりです:

 $ python2 vol.py --info | grep linux_ 
Volatility Foundation Volatility Framework 2.6.1
linux_apihooks-ユーザーランドのapihookをチェックします
linux_arpLinuxを自動的に検出します
linux_aslr_shift
linux_aslr_shift br /> < >

linux_banner-Linuxバナー情報を出力します
linux_vma_cache-vm_area_structキャッシュからVMAを収集します
linux_volshell linux_yarascan-Linuxメモリイメージのシェル
$

linux_psaux を使用してメモリダンプを取得したときに、システムで実行されていたプロセスを確認します プラグイン。リストの最後のコマンドに注意してください。これはinsmodです。 ダンプの前に実行したコマンド:

 $ python2 vol.py -f〜/ LiME / RHEL8.3_64bit.mem linux_psaux --profile =LinuxRedhat8_3_4_18_0-240x64 
Volatility Foundation Volatility Framework 2.6.1
PidUid引数1 0 0の/ usr / libに/にsystemd / systemdに--switchedルート--system --deserialize 18
2 0 0 [kthreadd]
3 0 0 [rcu_gp]
4 0 0 【rcu_par_gp]
861 0は/ usr / libexecに/プラットフォームのpython -Esの/ usr / sbinに/チューン-l -P
869 0の/ usr / binに/ rhsmcertd
875 0 0 / usr / libexec / sssd / sssd_be --domainimplicit_files --uid 0 --gid 0 --logger =files
878 0 0 / usr / libexec / sssd / sssd_nss --uid 0 --gid 0- logger =files

<<<スニップ>>>

11064 89 89 QMGR -l -t UNIX -u
227148 0 0 [kworker / 0:0]
227298 0 0 - bashの
227374 0 0 [kworker / U2:1]
227375 0 0 [kworker / 0:2]
227884 0 0 [kworker / 0:3]
228573 0 0 insmod ./lime-4.18.0-240.el8.x86_64.ko path =../ RHEL8.3_64bit.mem format =lime
228576 0 0 br />

システムのネットワーク統計について知りたいですか? linux_netstatを実行します メモリダンプ中のネットワーク接続の状態を見つけるプラグイン:

 $ python2 vol.py -f〜/ LiME / RHEL8.3_64bit.mem linux_netstat --profile =LinuxRedhat8_3_4_18_0-240x64 
Volatility Foundation Volatility Framework 2.6.1
UNIX 18113 systemd / 1 / run / systemd / private
UNIX 11411 systemd / 1 / run / systemd / notify
UNIX 11413 systemd / 1 / run / systemd / cgroups-agent
UNIX 11415 /> 16 systemd / 1
< >
$

次に、 linux_mountを使用します メモリダンプ中にマウントされたファイルシステムを確認するプラグイン:

 $ python2 vol.py -f〜/ LiME / RHEL8.3_64bit.mem linux_mount --profile =LinuxRedhat8_3_4_18_0-240x64 
Volatility Foundation Volatility Framework 2.6.1
tmpfs / sys / fs / cgroup RO、もしnosuid、NODEV、NOEXEC
のcgroup / SYS / FS / cgroup内/ PIDをcgroup内RW、がrelatime、もしnosuid、NODEV、NOEXEC
にsystemd-1 / PROC / SYS / FS / binfmt_miscのautofs RW、がrelatime
SUNRPCの/ var / libに/ NFS / rpc_pipefs rpc_pipefs RW、がrelatime
の/ dev /マッパー/ rhel_kvm - 03 - guest11ルート/ XFS RW、がrelatime
tmpfsのは/ dev / shmはtmpfsのRW 、nosuid、nodev
selinuxfs / sys / fs / selinux selinuxfs rw、rela time
< >

cgroup / sys / fs / cgroup / net_cls、net_prio cgroup rw、relatime、nosuid、nodev、noexec / c / c CPU、cpuacctのcgroup RW、がrelatime、もしnosuid、NODEV、NOEXEC
BPF / SYS / FS / BPF BPF RW、がrelatime、もしnosuid、NODEV、NOEXEC
のcgroup / SYS / FS / cgroup内/メモリのcgroupのRO、がrelatime、もしnosuid、NODEV、NOEXEC
のcgroup / SYS / FS / cgroup内/ cpusetのcgroup内RW、がrelatime、もしnosuid、NODEV、NOEXEC
mqueueをは/ dev / mqueueをmqueueをRW、がrelatime
$

どのカーネルモジュールがロードされたか知りたいですか? Volatilityにはそのためのプラグインもあり、適切な名前は linux_lsmod

 $ python2 vol.py -f〜/ LiME / RHEL8.3_64bit.mem linux_lsmod --profile =LinuxRedhat8_3_4_18_0-240x64 
Volatility Foundation Volatility Framework 2.6.1
ffffffffc0535040 lime 20480
ffffffffc0530540 binfmt_misc 20480
ffffffffc05e8040 sunrpc 479232
< >
ffffffffc04f9540 nfit 65536
ffffffffc0266280 dm_mirror 28672
ffffffffc025e040 dm_region_hash 20480
ffffffffc024bbc0 dm_mod 151552
$

Bash履歴に保存されている、ユーザーが実行したすべてのコマンドを検索したいですか? linux_bashを実行します プラグイン:

 $ python2 vol.py -f〜/ LiME / RHEL8.3_64bit.mem linux_bash --profile =LinuxRedhat8_3_4_18_0-240x64 -v 
Volatility Foundation Volatility Framework 2.6.1
Pid名前コマンド時間コマンド時間br /> -------- -------------------- ------------------- ----------- -------
227221 bash 2021-04-17 18:38:24 UTC + 0000 lsmod
227221 bash 2021-04-17 18 :38:24 UTC + 0000 rm -f .log
227221 bash 2021-04-17 18:38:24 UTC + 0000 ls -l / etc / zzz
227221 bash 2021-04-17 18 :38:24 UTC + 0000 cat〜/ .vimrc
227221 bash 2021-04-17 18:38:24 UTC + 0000 ls
227221 bash 2021-04-17 18:38:24 UTC + 0000 cat / proc / 817 / cwd
227221 bash 2021-04-17 18:38:24 UTC + 0000 ls -l / proc / 817 / cwd
227221 bash 2021-04-17 18:38 :24 UTC + 0000 ls / proc / 817 /
< >
227298 bash 2021-04-17 18 :40:30 UTC + 0000 gcc prt.c
227298 bash 2021-04-17 18:40:30 UTC + 0000 ls
227298 bash 2021-04-17 18:40:30 UTC + 0000 ./a.out
227298 bash 2021-04-17 18:40:30 UTC + 0000 vim prt.c
227298 bash 2021-04-17 18:40:30 UTC + 0000gccprt。 c
227298 bash 2021-04-17 18:40:30 UTC + 0000 ./a.out
227298 bash 2021-04-17 18:40:30 UTC + 0000 ls
$

どのファイルがどのプロセスによって開かれたか知りたいですか? linux_lsofを使用します その情報を一覧表示するプラグイン:

 $ python2 vol.py -f〜/ LiME / RHEL8.3_64bit.mem linux_lsof --profile =LinuxRedhat8_3_4_18_0-240x64 
Volatility Foundation Volatility Framework2.6.1
オフセットbrパスPid> ------------------ ------------------------------- ------- -------- ----
0xffff9c83fb1e9f40 rsyslogd 71194 0を/ dev / null
0xffff9c83fb1e9f40 rsyslogd 71194 1 / DEV /ヌル
0xffff9c83fb1e9f40 rsyslogd 71194 2は/ dev / nullを
0xffff9c83fb1e9f40 rsyslogd 71194 3の/ dev / urandomの
0xffff9c83fb1e9f40 rsyslogd 71194 4ソケット:[83565]
0xffff9c83fb1e9f40 rsyslogd 71194 5は/ var / log /メッセージ
0xffff9c83fb1e9f40 rsyslogd 71194 6 anon_inode:[9063]
0xffff9c83fb1e9f40 rsyslogd 71194 7 / var / log / sec URE

<<スニップ>>

0xffff9c8365761f40 insmodの228573 0の/ dev / PTS / 0
0xffff9c8365761f40 insmodの228573 1の/ dev / PTS / 0
0xffff9c8365761f40 insmodの228573 2は/ dev / pts / 0など
0xffff9c8365761f40 insmodの228573 3 /root/LiME/src/lime-4.18.0-240.el8.x86_64.ko
$

Linuxプラグインのスクリプトの場所にアクセスします

メモリダンプを読み取り、その情報を処理することで、より多くの情報を取得できます。 Pythonを知っていて、この情報がどのように処理されたかに興味がある場合は、すべてのプラグインが保存されているディレクトリに移動し、興味のあるプラグインを選択して、Volatilityがこの情報を取得する方法を確認してください。

$ lsのボラティリティー/プラグイン/ linuxの/
apihooks.py common.py kernel_opened_files.py malfind.py psaux.py
apihooks.pyc common.pyc kernel_opened_files.pyc malfind.pyc psaux.pyc <<前> BR />arp.py cpuinfo.py keyboard_notifiers.py mount_cache.py psenv.py
arp.pyc cpuinfo.pyc keyboard_notifiers.pyc mount_cache.pyc psenv.pyc
aslr_shift.py dentry_cache.py ld_env.py mount.py pslist_cache.py
aslr_shift.pyc dentry_cache.pyc ld_env.pyc mount.pyc pslist_cache.pyc
<<スニップ>>
check_syscall_arm.py __init__.py lsmod.py proc_maps.py tty_check.py
check_syscall_arm.pyc__init__。pyclsmod.pycproc_maps.pyc my aps_rb.py vma_cache.py
check_syscall.pyc iomem.pyc lsof.pyc proc_maps_rb.pyc /> $ vma_cache.pyc
Volatilityが好きな理由の1つは、多くのセキュリティプラグインを提供することです。この情報を手動で取得するのは困難です:

linux_hidden_​​modules-隠されたカーネルモジュールを見つけるためにメモリを切り分けます
linux_malfind-疑わしいプロセスマッピングを探します
linux_truecrypt_passphrase-キャッシュされたTruecryptパスフレーズを回復します

揮発性により、メモリダンプ内でシェルを開くこともできるため、上記のすべてのコマンドを実行する代わりに、代わりにシェルコマンドを実行して、同じ情報を取得できます。

 $ python2 vol.py -f〜/ LiME / RHEL8.3_64bit.mem linux_volshell --profile =LinuxRedhat8_3_4_18_0-240x64 -v 
Volatility Foundation Volatility Framework 2.6.1
現在のコンテキスト:process systemd、 pid =1 DTB =0x1042dc000
volshellへようこそ!現在のメモリイメージは次のとおりです。
file:///root/LiME/RHEL8.3_64bit.mem
ヘルプを表示するには、「hh()」と入力します
>>>
>>> sc()
現在のコンテキスト:プロセスsystemd、pid =1 DTB =0x1042dc000
>>>
次のステップ

メモリフォレンジックは、Linuxの内部についてさらに学ぶための良い方法です。 Volatilityのすべてのプラグインを試して、それらの出力を詳細に調べてください。次に、この情報が侵入やセキュリティの問題を特定するのにどのように役立つかを考えます。プラグインがどのように機能するかを詳しく調べ、プラグインを改善しようとすることもできます。また、やりたいプラグインが見つからなかった場合は、プラグインを作成してVolatilityに送信し、他の人も使用できるようにします。


Linux
  1. このオープンソースツールを使用してELFバイナリの機能を検査します

  2. 私のLinuxストーリー:オープンソースで言語の壁を打ち破る

  3. オープンソーススキルを持つITプロフェッショナルの採用を増やすための雇用主

  1. このLinuxツールとのオープンソースファイル共有

  2. Draw.ioを使用したオープンソースのマインドマッピング

  3. このオープンソースツールを使用して、携帯電話とLinux間でファイルを転送します

  1. このLinuxコマンドラインツールでメモリ使用統計を取得する

  2. このオープンソースツールを使用して、Linux上のiPhoneにアクセスします

  3. このオープンソースツールを使用して、USB上に複数のLinuxディストリビューションを保持します