0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何安装 unhide 并搜索隐藏的进程和 TCP/UDP 端口

Linux爱好者 来源:未知 作者:伍文辉 2018-01-31 09:57 次阅读

unhide是一个小巧的网络取证工具,能够发现那些借助 rootkit、LKM 及其它技术隐藏的进程和 TCP/UDP 端口。这个工具在 Linux、UNIX 类、MS-Windows 等操作系统下都可以工作。根据其 man 页面的说明:

Unhide 通过下述三项技术来发现隐藏的进程。

进程相关的技术,包括将/proc目录与/bin/ps命令的输出进行比较。

系统相关的技术,包括将/bin/ps命令的输出结果同从系统调用方面得到的信息进行比较。

穷举法相关的技术,包括对所有的进程 ID 进行暴力求解,该技术仅限于在基于 Linux2.6 内核的系统中使用。

绝大多数的 Rootkit 工具或者恶意软件借助内核来实现进程隐藏,这些进程只在内核内部可见。你可以使用unhide或者诸如rkhunter 等工具,扫描 rootkit 程序 、后门程序以及一些可能存在的本地漏洞。

这篇文章描述了如何安装 unhide 并搜索隐藏的进程和 TCP/UDP 端口。

如何安装 unhide

首先建议你在只读介质上运行这个工具。如果使用的是 Ubuntu 或者 Debian 发行版,输入下述的apt-get/apt命令以安装 Unhide:

$sudo apt-get install unhide

一切顺利的话你的命令行会输出以下内容:

[sudo]password forvivek:

Reading packagelists...Done

Building dependency tree

Reading state information...Done

Suggested packages:

rkhunter

The following NEWpackages will be installed:

unhide

0upgraded,1newly installed,0toremove and0notupgraded.

Need toget46.6kB of archives.

After thisoperation,136kB of additional disk space will be used.

Get:1http://in.archive.ubuntu.com/ubuntu artful/universe amd64 unhide amd64 20130526-1 [46.6 kB]

Fetched46.6kB in0s(49.0kB/s)

Selecting previously unselected packageunhide.

(Reading database...205367files anddirectories currently installed.)

Preparing tounpack.../unhide_20130526-1_amd64.deb...

Unpacking unhide(20130526-1)...

Setting up unhide(20130526-1)...

Processing triggers forman-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 -Sunhide

如何在 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参数可以是以下测试列表中的一个或者多个标准测试:

brute

proc

procall

procfs

quick

reverse

sys

或基本测试:

checkbrute

checkchdir

checkgetaffinity

checkgetparam

checkgetpgid

checkgetprio

checkRRgetinterval

checkgetsched

checkgetsid

checkkill

checknoprocps

checkopendir

checkproc

checkquick

checkreaddir

checkreverse

checksysinfo

checksysinfo2

checksysinfo3

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

# unhide proc

# unhide sys

# unhide quick

示例输出:

Unhide20130526

Copyright©2013Yago Jesus & Patrick Gouin

License GPLv3+ : GNU GPL version3orlater

http://www.unhide-forensics.info

NOTE : Thisversion of unhide isforsystems using Linux >= 2.6

Used options:

[*]Searching forHidden processes throughcomparison of results of system calls,proc,dir andps

如何使用 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

示例输出:

Unhide20100201

http://www.security-projects.com/?Unhide

Starting TCP checking

Starting UDP checking

上述操作中,没有发现隐藏的端口。

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

# unhide-tcp

示例输出:

Unhide20100201

http://www.security-projects.com/?Unhide

Starting TCP checking

Found Hidden port that notappears innetstat: 1048

Found Hidden port that notappears innetstat: 1049

Found Hidden port that notappears innetstat: 1050

Starting UDP checking

可以看到 netstat -tulpn 和 ss 命令确实没有反映出这三个隐藏的端口:

# netstat -tulpn | grep 1048

# ss -lp

# ss -l | grep 1048

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

$man unhide

$man unhide-tcp

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11219

    浏览量

    208872
  • TCP
    TCP
    +关注

    关注

    8

    文章

    1348

    浏览量

    78978
  • UDP
    UDP
    +关注

    关注

    0

    文章

    322

    浏览量

    33870
  • Man
    Man
    +关注

    关注

    0

    文章

    6

    浏览量

    7545

原文标题:如何在 Linux/Unix/Windows 中发现隐藏的进程和端口

文章出处:【微信号:LinuxHub,微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    进程执法官

    ,包括系统核心进程、杀毒不需要进入安全模式。 2、可以查看普通进程(与任务管理器类似)、网络进程TCP-UDP端口关联
    发表于 09-04 23:12

    【我是电子发烧友】TCP & UDP 端口号分配

    本帖最后由 lee_st 于 2017-5-8 13:57 编辑 转一个常识TCP端口UDP端口。由于TCP
    发表于 05-08 11:29

    TCPUDP的区别分析

      传输层协议主要有TCPUDPUDP提供无连接的通信,不能保证数据包被发送到目标地址,典型的即时传输少量数据的应用程序通常使用UDPTCP
    发表于 09-18 10:29 2次下载

    udp端口怎么测试

    怎样测试远程UDP端口,我们一般情况下,应用服务都使用的TCP端口,但是某些情况下,我们也需要开启UDP
    发表于 12-08 08:48 12.5w次阅读
    <b class='flag-5'>udp</b><b class='flag-5'>端口</b>怎么测试

    tcpudp协议的异同

    UDP 协议 UDP 协议是无连接、不可靠的一个传输层协议。下图是 UDP 数据报格式。 端口号用来区分发送进程和接收
    的头像 发表于 11-12 14:45 4000次阅读
    <b class='flag-5'>tcp</b>和<b class='flag-5'>udp</b>协议的异同

    TCPUDP可以同时绑定相同的端口吗?

    TCPUDP可以同时绑定相同的端口吗? 解答这个问题之前,我们需要先来了解什么是TCPUDP,什么又是网络
    的头像 发表于 02-06 14:31 1234次阅读
    <b class='flag-5'>TCP</b>和<b class='flag-5'>UDP</b>可以同时绑定相同的<b class='flag-5'>端口</b>吗?

    基于Socket的UDPTCP编程解析 1

    TCP(传输控制协议)和UDP(用户数据报协议是网络体系结TCP/IP模型中传输层一层中的两个不同的通信协议。 TCP:传输控制协议,一种面向连接的协议,给用户
    的头像 发表于 05-18 17:22 933次阅读
    基于Socket的<b class='flag-5'>UDP</b>和<b class='flag-5'>TCP</b>编程解析 1

    基于Socket的UDPTCP编程解析 2

    TCP(传输控制协议)和UDP(用户数据报协议是网络体系结TCP/IP模型中传输层一层中的两个不同的通信协议。 TCP:传输控制协议,一种面向连接的协议,给用户
    的头像 发表于 05-18 17:22 633次阅读
    基于Socket的<b class='flag-5'>UDP</b>和<b class='flag-5'>TCP</b>编程解析 2

    TCPUDP可以同时绑定相同的端口吗?

    TCPUDP可以同时绑定相同的端口吗?TCPUDP可以同时绑定相同的端口吗?解答这个问题之前
    的头像 发表于 02-06 11:16 1768次阅读
    <b class='flag-5'>TCP</b>和<b class='flag-5'>UDP</b>可以同时绑定相同的<b class='flag-5'>端口</b>吗?

    UDP一定比TCP更快吗?什么情况下用UDP会更慢?

    UDP会比用TCP更慢呢?在本篇文章中,我们将深入探讨这个问题,解释UDPTCP之间的区别。UDP
    的头像 发表于 04-03 09:38 1531次阅读
    <b class='flag-5'>UDP</b>一定比<b class='flag-5'>TCP</b>更快吗?什么情况下用<b class='flag-5'>UDP</b>会更慢?

    udp是什么协议 TCPUDP的区别

    TCP协议提供可靠的数据传输,UDP协议提供尽量高效的数据传输。TCP协议通过使用序列号、确认应答等机制,保证数据传输的可靠性,而UDP协议不提供可靠性保证,它只是简单地把应用程序传给
    的头像 发表于 06-26 17:47 1.1w次阅读

    TCPUDP的区别

    1.TCPUDP的区别 TCP是面向连接的,UDP是面向无连接的; TCP只能一对一通信,UDP
    的头像 发表于 11-09 09:35 5483次阅读
    <b class='flag-5'>TCP</b>和<b class='flag-5'>UDP</b>的区别

    socket、端口进程的关系

    socket的引入是为了解决不同计算机间进程间通信的问题。 端口TCP/IP协议中的概念,描述的是TCP协议上的对应的应用,可以理解为基于TCP
    的头像 发表于 11-10 15:02 985次阅读
    socket、<b class='flag-5'>端口</b>、<b class='flag-5'>进程</b>的关系

    TCPUDP的基本区别

    TCPUDP基本区别 基于连接与无连接 TCP要求系统资源较多,UDP较少; UDP程序结构较简单 流模式(
    的头像 发表于 11-13 15:27 4541次阅读
    <b class='flag-5'>TCP</b>与<b class='flag-5'>UDP</b>的基本区别

    UDPTCP的主要区别 UDP能否像TCP一样实现可靠传输?

    据包的传输不进行确认和重传,而TCP是一种面向连接的协议,通过确认和重传来实现可靠的数据传输。 首先,UDP无连接的特点使得它在传输时的开销较小。UDP的数据包不需要建立和维护连接,仅包括源
    的头像 发表于 01-22 16:10 751次阅读