真正的win10隱藏進程「進程隱藏工具藍屏原因」

unhide是一個小巧的網絡取證工具,能夠發現那些藉助 rootkit、LKM 及其它技術隱藏的進程和 TCP/UDP 端口。這個工具在 Linux、UNIX 類、MS-Windows 等操作系統下都可以工作。根據其 man 頁面的說明:

Unhide 通過下述三項技術來發現隱藏的進程。

  1. 進程相關的技術,包括將 /proc 目錄與 /bin/ps 命令的輸出進行比較。
  2. 系統相關的技術,包括將 /bin/ps 命令的輸出結果同從系統調用方面得到的信息進行比較。
  3. 窮舉法相關的技術,包括對所有的進程 ID 進行暴力求解,該技術僅限於在基於 Linux2.6 內核的系統中使用。

絕大多數的 Rootkit 工具或者惡意軟件藉助內核來實現進程隱藏,這些進程只在內核內部可見。你可以使用 unhide 或者諸如 rkhunter 等工具,掃描 rootkit 程序 、後門程序以及一些可能存在的本地漏洞。

如何在 Linux/Unix/Windows 中發現隱藏的進程和端口

這篇文章描述了如何安裝 unhide 並搜索隱藏的進程和 TCP/UDP 端口。

如何安裝 unhide

首先建議你在只讀介質上運行這個工具。如果使用的是 Ubuntu 或者 Debian 發行版,輸入下述的 apt-get/apt 命令以安裝 Unhide:

$ sudo apt-get install unhide

一切順利的話你的命令行會輸出以下內容:

[sudo] password for vivek: 
Reading package lists...
DoneBuilding dependency tree 
Reading state information... 
DoneSuggested packages: rkhunterThe following NEW packages will be installed: 
 unhide
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 46.6 kB of archives.
After this operation, 136 kB of additional disk space will be used.
Get:1 http://in.archive.ubuntu.com/ubuntu artful/universe amd64 unhide amd64 20130526-1 [46.6 kB]
Fetched 46.6 kB in 0s (49.0 kB/s)
Selecting previously unselected package unhide.(Reading database ... 205367 files and directories currently installed.)
Preparing to unpack .../unhide_20130526-1_amd64.deb ...
Unpacking unhide (20130526-1) ...
Setting up unhide (20130526-1) ...
Processing triggers for man-db (2.7.6.1-2) ...

如何在
RHEL/CentOS/Oracle/Scientific/Fedora 上安裝 unhide

輸入下列 yum Type the following yum command (first turn on EPLE repo on a CentOS/RHEL version 6.x or version 7.x):

輸入以下的 yum 命令(CentOS/RHEL 6.x 或 7.x 上首先打開 EPEL 倉庫):

$ sudo yum install unhide

在 Fedora 上則使用以下 dnf 命令:

$ sudo dnf install unhide

如何在 Arch 上安裝 unhide

鍵入以下 pacman 命令安裝:

$ sudo pacman -S unhide

如何在 FreeBSD 上安裝 unhide

可以通過以下的命令使用 port 來安裝 unhide:

# cd /usr/ports/security/unhide/# make install clean

或者可以通過二進制文件安裝 hide,使用 pkg 命令安裝:

# pkg install unhide

如何使用 unhide 工具?

unhide 的語法是:

unhide [options] test_list

test_list 參數可以是以下測試列表中的一個或者多個標準測試:

  1. brute
  2. proc
  3. procall
  4. procfs
  5. quick
  6. reverse
  7. sys

或基本測試:

  1. checkbrute
  2. checkchdir
  3. checkgetaffinity
  4. checkgetparam
  5. checkgetpgid
  6. checkgetprio
  7. checkRRgetinterval
  8. checkgetsched
  9. checkgetsid
  10. checkkill
  11. checknoprocps
  12. checkopendir
  13. checkproc
  14. checkquick
  15. checkreaddir
  16. checkreverse
  17. checksysinfo
  18. checksysinfo2
  19. checksysinfo3

你可以通過以下示例命令使用 unhide

# unhide proc# unhide sys# unhide quick

示例輸出:

Unhide 20130526
Copyright © 2013 Yago Jesus & Patrick Gouin
License GPLv3+ : GNU GPL version 3 or later
http://www.unhide-forensics.info
NOTE : This version of unhide is for systems using Linux >= 2.6 
Used options: 
[*]Searching for Hidden processes through comparison of results of system calls, proc, dir and ps

如何使用 unhide-tcp 工具辨明 TCP/UDP 端口的身份

以下是來自 man 頁面的介紹:

unhide-tcp 取證工具通過對所有可用的 TCP/IP 端口進行暴力求解的方式,辨別所有正在監聽,卻沒有列入 /bin/netstat 或者 /bin/ss 命令輸出的 TCP/IP 端口身份。

注一:對於 FreeBSD、OpenBSD系統,一般使用 netstat 命令取代在這些操作系統上不存在的 iproute2,此外,sockstat 命令也用於替代 fuser。

注二:如果操作系統不支持 iproute2 命令,在使用 unhide 時需要在命令上加上 -n或者 -s 選項。

# unhide-tcp

示例輸出:

Unhide 20100201http://www.security-projects.com/?UnhideStarting TCP checkingStarting UDP checking

上述操作中,沒有發現隱藏的端口。

但在下述示例中,我展示了一些有趣的事。

# unhide-tcp

示例輸出:

Unhide 20100201http://www.security-projects.com/?UnhideStarting TCP checkingFound Hidden port that not appears in netstat: 1048Found Hidden port that not appears in netstat: 1049Found Hidden port that not appears in netstat: 1050Starting UDP checking

可以看到 netstat -tulpnss 命令確實沒有反映出這三個隱藏的端口:

# netstat -tulpn | grep 1048# ss -lp# ss -l | grep 1048

通過下述的 man 命令可以更多地了解 unhide

$ man unhide$ man unhide-tcp

Windows 用戶如何安裝使用 unhide

你可以通過這個頁面獲取 Windows 版本的 unhide。

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/210349.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-08 16:15
下一篇 2024-12-08 16:15

相關推薦

發表回復

登錄後才能評論