<dl id="opymh"></dl>

<div id="opymh"></div>
      <div id="opymh"><tr id="opymh"></tr></div>

        <em id="opymh"><ins id="opymh"><mark id="opymh"></mark></ins></em><sup id="opymh"><menu id="opymh"></menu></sup>

        <em id="opymh"></em>

        <em id="opymh"><ol id="opymh"></ol></em>

              频道栏目
              首页 > 安全 > 系统安全 > 正文

              如何快速找出Linux服务器上不该存在恶意或后门文件

              2018-05-22 16:36:53           
              收藏   我要投稿

              如何快速找出Linux服务器上不该存在恶意或后门文件。前段时间我在APT写作时注意到一个问题,我发现网上大多都是关于Windows恶意软件检测的文章以及教程,而关于如何寻找Linux系统上恶意软件的资料却少之又少。因此,这篇文章主要是向大家介绍一些有关检查Linux系统恶意软件的技巧和方法。话不多说,让我们进入正题。

              校验二进制文件

              有一件事需要检查确认即没有运行的二进制文件被修改。这种类型的恶意软件可以用sshd的版本来支持,以允许使用特定的密码连接到系统,甚至是一些二进制文件的修改版本,它以root?#27809;?#36523;份运?#26657;?#21482;需监听触发器数据包?#33041;?#22987;套接字即可。为此,我们将以Redhat和Debian为例。

              寻找不属于的二进制文件

              find /proc/*/exe -exec readlink {} + | xargs rpm -qf | grep “not owned”

              find /proc/*/exe -exec readlink {} + | xargs dpkg -S | grep “no path”

              校验运行的二进制文件是否与包中的文件匹配

              find /proc/*/exe -exec readlink {} + | xargs rpm -qf | xargs rpm -V

              find /proc/*/exe -exec readlink {} + | xargs dpkg -S | cut -d: -f1 | xargs dpkg -V

              \

              校验所有包文件

              另一件需要检查确?#31995;?#20107;是?#27492;?#26377;属于包的二进制文件都没有被修改。这个过程可能需要一段时间才能完成,但这是值得。我们可以设置一个cron jobs,以在指定时间来运行它。

              校验所有包文件

              rpm -Va

              dpkg -V

              \

              输出结果

              输出应该?#20801;?#23646;于包的任何二进制文件,计算二进制文件的哈希值,并将其与包安装或更新时保存的?#21040;?#34892;比较。以下是基于Redhat系统的输出。使用dpkg的Debian系统不校验其中的大部分,因此如果修改了二进制文件,只?#20801;?ldquo;5”。

              S 文件大小不同

              M 模式不同(包括权限和文件类型)

              5 摘要(以前的MD5 sum)不同

              D 设备主/?#25105;?#21495;不匹配

              L readLink(2)路径不匹配

              U ?#27809;?#25152;有权不同

              G 组的所有权不同

              T mTime不同

              P caPabilities不同

              检查RAW套接字

              我们经常能看到RAW socket后门。它们侦听传入的数据包并触发事件,例如最近发现的“Chaos”后门,以及一个在github上搜索raw socket后门时弹出的示例。对于这个检查,我们只会看看使用RAW套接字的过程。使?#30431;?#20204;的常用程序并不多,因此我们可以缩小要查看的进程的?#27573;А?/p>

              使用 raw sockets listening检查二进制文件

              netstat -lwp or ss -lwp

              lsof | grep RAW

              \

              检查可能的注入内存

              这里可能会存在各种误报的情况。RWX内存(读写执行)被许多程序使用,其?#20889;?#22810;数是解释型语言,所以像python和java之类的,或使用任何库解析脚本的都会有这种情况,这是非常正常的。如果你找到RWX内存的许多条目并且该进程不是python或java,那你就应该仔细的查看一下了。该命令将列出RWX内存的进程id。可以看到以下列出了cron,这显然是不正常的进程。

              命令查找pid

              grep -r “rwx” /proc/*/maps | cut -d/ -f 3|uniq -c | sort -nr

              \

              检查修改的PAM模块

              一个常见的后门是插入或替换PAM模块进行?#29616;ぁ?这可以允许远程访问,并?#19968;?#20801;许攻击者从任何?#27809;?#33719;取root权限。这个后门程序也不关心对/etc/passwd的修改,所以所有?#33041;?#22987;密码和修改后的密码仍然有效。由于它提供的访问类型,在我看来这是一种非常危险的后门类型。你可以使用合法登录条目的正常协议,因此看起来显然像是没有任何恶意网络活动一样。

              校验PAM模块

              find /lib64/security/ | xargs rpm -qf | grep “not owned”

              find /lib64/security/ | xargs rpm -qf | grep -v “not “| xargs rpm -V

              \
              \
              \

              SSH访问

              保持访问权限并不需要删除二进制文件的一种非常简单的方法是,只需将ssh密钥添加到特定?#27809;?#30340;authorized_keys文件?#26657;?#24182;允许攻击者像普通?#27809;?#37027;样进入ssh。这也是最难检测的方法之一,因为你需要确定ssh密钥是合法的还是恶意的,这要求?#27809;?#39564;证只有他们的密钥在该文件中。攻击者也可以窃取?#27809;?#30340;密钥,如果他们之前被盗用过的话。

              列出所有?#27809;?#30340;.ssh文件夹

              cat /etc/passwd |cut -d: -f 6 | xargs [email protected] /bin/sh -c “echo @; ls -al @/.ssh/ 2>/dev/null”

              \

              总结

              有许多不同的方式可以保持对Linux服务器的权限访问。以上查找列表并不完整,但都是一些较为常见的查找后门的方法,包括Meterpreter和github上发现的其他常见后门程序。

              上一篇:Linux 服务器惊现比特币勒索事件,做?#30431;?#28857;可免遭损失
              下一篇:最后一页
              相关文章
              图文推荐

              关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报?#34892;?/a>

              版权所有: 红黑联盟--致力于做实用的IT技术学习网站

              极速飞艇好假
              <dl id="opymh"></dl>

              <div id="opymh"></div>
                  <div id="opymh"><tr id="opymh"></tr></div>

                    <em id="opymh"><ins id="opymh"><mark id="opymh"></mark></ins></em><sup id="opymh"><menu id="opymh"></menu></sup>

                    <em id="opymh"></em>

                    <em id="opymh"><ol id="opymh"></ol></em>

                          <dl id="opymh"></dl>

                          <div id="opymh"></div>
                              <div id="opymh"><tr id="opymh"></tr></div>

                                <em id="opymh"><ins id="opymh"><mark id="opymh"></mark></ins></em><sup id="opymh"><menu id="opymh"></menu></sup>

                                <em id="opymh"></em>

                                <em id="opymh"><ol id="opymh"></ol></em>

                                      时时彩后2软件 北京快乐8漏洞 500彩票网数据分析 ag真人有规律可循吗 大乐透旋转矩阵法 第90期开奖结果 山西快乐十分走势图屏 中国福彩网快乐十二 广西快3推荐预测一定牛 网上五分彩可靠吗 香港透码二码中特 贵州快彩app下载安装 河北排列7走势图综合 彩票店转让 福彩选四开奖查询