AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1006237
Accepted
sunwarr10r
sunwarr10r
Asked: 2018-02-15 12:23:46 +0800 CST2018-02-15 12:23:46 +0800 CST 2018-02-15 12:23:46 +0800 CST

Clamav 检测木马

  • 772

我刚刚扫描了我的系统并clamav检测到了一些可疑文件:

File: .cahe/mozilla/firefox/jqxk4r44.default/cache2/entries/750B6E2F1286....
Status: PUA.Win.Exploit.CVE_2012_1461-1

File: .cahe/mozilla/firefox/jqxk4r44.default/cache2/entries/F099C33HJ45J....
Status: PUA.Win.Exploit.CVE_2012_1461-1

File: .config/libreoffice/4/user/basic/Standard/Module1.xba
Status: PUA.Doc.Tool.LibreOfficeMacro-2

File: Downloads/nodejs/node-v8.9.4-linux-x64/lib/node_modules/imurmurhash/imurmurhash.min.js
Status: PUA.Win.Trojan.Xored-1

这些文件是真正的威胁/木马的可能性有多大?

clamav 16.04 trojan
  • 3 3 个回答
  • 14745 Views

3 个回答

  • Voted
  1. Best Answer
    Rinzwind
    2018-02-15T13:12:35+08:002018-02-15T13:12:35+08:00

    PUA.Win.Exploit.CVE_2012_1461-1

    • PUA 的意思是“潜在的不需要的应用程序”。PUA 不是病毒,clamav 声称存在他们认为“不需要”的应用程序,因为该文件或扩展名已被证明在 Windows 中被滥用
    • Win as 2nd part 表示它是与 Windows 相关的通知。
    • clamav 可以选择不扫描 PUA。

    我的结论:没什么好担心的。

    那离开...

    PUA.Doc.Tool.LibreOfficeMacro-2

    .config/libreoffice/4/user/basic/Standard/Module1.xba有一个扩展 clamav 跳闸。他们认为xba,visual basic 宏被认为是“不需要的”。请参阅Clamtk 将这些 LibreOffice 文件报告为可能的威胁。他们安全吗?如需更完整的列表、答案和评论。

    ClamAV 是出了名的有缺陷的软件:基于 Windows 的扫描和警告,然后将它们应用到 Linux 不会也永远不会起作用。

    当您看到这样的通知,并且您确实相信 clamav 是要使用的工具时,下一步是检查第二个来源:例如将文件上传到virustotal之类的站点或与 clamav 一起使用第二个病毒扫描软件(当两者都声称相同的问题时,您会进行调查,否则会认为它们是误报)。

    但我会完全放弃 clamav 并遵循基于 Linux 的方法:使用debsum(链接到手册页)来检查包(链接到 howto)。

    当你真的很偏执时(这里看着你熊猫)使用上述所有;)

    • 9
  2. Louis Seifert
    2020-12-12T15:34:46+08:002020-12-12T15:34:46+08:00

    我不会这么轻易地忽略这个警告,它说 PUA

    Module1.xba:PUA.Doc.Tool.LibreOfficeMacro-2 找到
    dotjoshjohnson.xml-2.5.1:PUA.Win.Trojan.Xored-1 找到
    ms-azuretools.vscode-docker-1.8.1:PUA.Win.Trojan。 Xored-1 找到
    文件下载器-PUA.Win.Adware.Qjwmonkey-6892535-0 找到
    BouncyCastle.Crypto.dll:PUA.Win.Adware.Qjwmonkey-6892535-0 找到
    BouncyCastle.Crypto.dll:PUA.Win.Adware。 Qjwmonkey-6892535-0 发现
    jquery-ui.min.js: PUA.Win.Trojan.Generic-6888382-0 发现

    所以恕我直言,你可以关闭 LibreOffice 宏,因为它检测到是一个 libre office 宏,尽管我可能会删除它们,但我必须对其进行测试,看看它是否是我使用的东西。文件下载器和广告软件只是垃圾软件,但存在潜在风险。其他人担心我,因为他们检测为特洛伊木马。现在我在这里有些担心的原因是:

    : # ifconfig |grep inet
    inet 10.0.0.58 网络掩码 255.0.0.0 广播 10.255.255.255
    inet6 xxx prefixlen 64 scopeid 0x20
    inet 127.0.0.1 网络掩码 255.0.0.0
    inet6 ::1 prefixlen 128 scopeid 0x10

    现在我有 suricata 作为 IDS,并查看 fast.log

    12/11/2020-11:42:30.052835 [ ] [1:2025331:3] ET POLICY 在 SNI (ipinfo.io) 中观察到的可能的外部 IP 查找域 [ ] [分类:检测到网络木马] [优先级:1 ] {TCP} 10.0.0.58:56692 -> 216.239.36.21:443

    在 216.239.36.21 上进行 whois 显示它是一个谷歌服务器,但我们不知道它是谷歌服务还是云服务的客户或受损服务器。转到该站点,它似乎在内容服务器上,因为它 404,尝试转到 HTTPS 表明它无法提供安全连接。深入研究,该文件似乎不是由包提供的。

    dpkg -S /usr/share/javascript/jquery-ui/jquery-ui.min.js
    libjs-jquery-ui: /usr/share/javascript/jquery-ui/jquery-ui.min.js

    在这一点上这是一个临界案例,因为有一个提供它的包,查看它显示它是从 Ubuntu 档案安装的包

    apt-cache policy libjs-jquery-ui libjs-jquery-ui:已安装:1.12.1+dfsg-5 候选:1.12.1+dfsg-5 版本表:*** 1.12.1+dfsg-5 500 500 http: //us.archive.ubuntu.com/ubuntu focus /universe amd64 包 500 http://us.archive.ubuntu.com/ubuntu focus /universe i386 包 100 /var/lib/dpkg/status

    现在我可以卸载软件包并重新安装它并再次扫描它,看看它是否来自存储库。如果它来自存储库,那么我会更倾向于误报。否则,如果它不是来自存储库,我会更倾向于潜在威胁。

    在第一次查看我的防火墙时,更深入地了解它是如何进入系统的

    Chain OUTPUT (policy DROP)
    target     prot opt source               destination         
    KUBE-SERVICES  all  --  anywhere             anywhere             ctstate NEW /* kubernetes service portals */
    KUBE-FIREWALL  all  --  anywhere             anywhere            
    ACCEPT     all  --  anywhere             anywhere            
    ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
    ACCEPT     udp  --  anywhere             anywhere             udp dpt:443
    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:https
    ACCEPT     udp  --  anywhere             anywhere             udp dpt:80
    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:domain
    ACCEPT     udp  --  anywhere             anywhere             udp dpt:domain
    ACCEPT     udp  --  anywhere             anywhere             udp dpt:8080
    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http-alt
    ACCEPT     udp  --  anywhere             anywhere             udp dpt:8443
    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:8443
    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:67
    ACCEPT     udp  --  anywhere             anywhere             udp dpt:bootps
    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssh
    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:whois
    ACCEPT     udp  --  anywhere             anywhere             udp dpt:43
    ACCEPT     all  --  anywhere             anywhere            
    ACCEPT     icmp --  anywhere             anywhere  
    
    Chain INPUT (policy DROP)
    target     prot opt source               destination         
    KUBE-SERVICES  all  --  anywhere             anywhere             ctstate NEW /* kubernetes service portals */
    KUBE-EXTERNAL-SERVICES  all  --  anywhere             anywhere             ctstate NEW /* kubernetes externally-visible service portals */
    KUBE-FIREWALL  all  --  anywhere             anywhere            
    ACCEPT     all  --  anywhere             anywhere            
    ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
    ACCEPT     icmp --  anywhere             anywhere         
    

    经 Kali 扫描验证,显示所有端口均已过滤,因此我知道威胁不可能从任何来源进入我的系统,而是来自允许访问我系统的程序之一。现在 Chrome 和 firefox 在用户空间中运行,因此它们不应访问该文件位置。这让 apt 可以访问 HTTPS 端口。总而言之,我的第一个任务是将文件移动到另一个位置来存储它,通常制作一个副本来记录它,然后卸载/重新安装包并查看它是否再次被触发。

    在这里,我将记录关联 IP 地址的整个过程以及我做出决定的原因。这将是记录受损系统的标准程序。在 SOC 中,此时您可能想要拍摄整个磁盘的图像,因为我对我的其他安全措施相当有信心,我将继续并监控系统是否有进一步的被入侵迹象。

    现在我遇到了系统错误弹出的问题,所以我开始更倾向于擦除整个系统并在仔细备份后从头开始重新加载,并且意味着 Windows 和 Linux 端。

    现在,如果我有一个激活的 SIEM,我可能会将基线之外的各种安全日志警告关联起来,IE 按基线的共性排序,并将像这样的安全事件从 IDS 日志关联到服务器日志。如果我得到报酬来研究它,我会走得更远,但这是我的工作站,我可以不用一两个功能就不必处理不得不深入挖掘的问题。

    所以继续上面的陈述我然后

    apt remove libjs-jquery-ui
    

    然后

    clamscan -r --bell --infected --detect-pua=yes --scan-elf=yes --scan-mail=yes --algorithmic-detection=yes --scan-pe=yes --scan-ole2=yes --scan-pdf=yes --scan-html=yes --scan-archive=yes --max-filesize=20000000 --max-scansize=20000000 /usr/share/javascript/
    
    ----------- SCAN SUMMARY -----------
    Known viruses: 8964095
    Engine version: 0.102.4
    Scanned directories: 1619
    Scanned files: 2733
    Infected files: 0
    Data scanned: 140.98 MB
    Data read: 38.02 MB (ratio 3.71:1)
    Time: 53.914 sec (0 m 53 s)
    

    然后

    rm -rf /directoriesToOtherFilesListedAsTrojan/
    

    有其他 JS 文件的两个目录,所以我将重新运行整个扫描,看看扫描期间的警报是否停止。它们是插件,所以我只是删除了整个目录,但如果它们位于系统位置,我可能会像使用 jquery 一样删除它们。

    现在是时候再次安装并重新扫描:

    apt install  libjs-jquery-ui
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    The following packages were automatically installed and are no longer required:
      gir1.2-ges-1.0 libges-1.0-0 python-matplotlib-data python3-cycler python3-kiwisolver
    Use 'sudo apt autoremove' to remove them.
    Suggested packages:
      libjs-jquery-ui-docs
    The following NEW packages will be installed:
      libjs-jquery-ui
    0 upgraded, 1 newly installed, 0 to remove and 17 not upgraded
    
    
    clamscan -r --bell --infected --detect-pua=yes --scan-elf=yes --scan-mail=yes --algorithmic-detection=yes --scan-pe=yes --scan-ole2=yes --scan-pdf=yes --scan-html=yes --scan-archive=yes --max-filesize=20000000 --max-scansize=20000000 /usr/share/javascript/
    /usr/share/javascript/jquery-ui/jquery-ui.min.js: PUA.Win.Trojan.Generic-6888382-0 FOUND
    
    ----------- SCAN SUMMARY -----------
    Known viruses: 8964095
    Engine version: 0.102.4
    Scanned directories: 1628
    Scanned files: 3050
    Infected files: 1
    Data scanned: 146.57 MB
    Data read: 39.68 MB (ratio 3.69:1)
    Time: 55.278 sec (0 m 55 s)
    

    所以这清楚地表明这里列出的库来自 ubuntu 存储库,现在我可以获得一个静态代码分析工具,我将使用 linter 来查看是否有任何非常明显的结果是:

    eslint usr/share/javascript/jquery-ui/jquery-ui.min.js|grep -v "缺少分号"

    /usr/share/javascript/jquery-ui/jquery-ui.min.js
       1:47     error  'define' is not defined                                          no-undef
       1:58     error  'define' is not defined                                          no-undef
       1:93     error  'jQuery' is not defined                                          no-undef
       1:4240   error  Empty block statement                                            no-empty
       1:16358  error  Unnecessary escape character: \+                                 no-useless-escape
       1:16360  error  Unnecessary escape character: \-                                 no-useless-escape
       1:25753  error  'undefined' is defined but never used                            no-unused-vars
       1:26638  error  Unnecessary escape character: \-                                 no-useless-escape
       1:26888  error  Unnecessary escape character: \%                                 no-useless-escape
       1:26912  error  Unnecessary escape character: \%                                 no-useless-escape
       1:26936  error  Unnecessary escape character: \%                                 no-useless-escape
       1:27495  error  Unnecessary escape character: \%                                 no-useless-escape
       1:27519  error  Unnecessary escape character: \%                                 no-useless-escape
       2:1      error  Expected indentation of 1 tab but found 0                        indent
       2:1864   error  Empty block statement                                            no-empty
       2:2023   error  Empty block statement                                            no-empty
       3:1      error  Expected indentation of 1 tab but found 0                        indent
       3:36     error  Unnecessary escape character: \/                                 no-useless-escape
       3:22586  error  Unnecessary escape character: \-                                 no-useless-escape
       3:22588  error  Unnecessary escape character: \[                                 no-useless-escape
       3:22603  error  Unnecessary escape character: \^                                 no-useless-escape
       3:31806  error  Unnecessary escape character: \-                                 no-useless-escape
       3:31808  error  Unnecessary escape character: \[                                 no-useless-escape
       3:31823  error  Unnecessary escape character: \^                                 no-useless-escape
       4:1      error  Expected indentation of 1 tab but found 0                        indent
       4:16597  error  Unnecessary escape character: \-                                 no-useless-escape
       4:27742  error  Empty block statement                                            no-empty
       5:11073  error  Empty block statement                                            no-empty
       5:11243  error  Unnecessary escape character: \-                                 no-useless-escape
       5:22972  error  Unnecessary escape character: \-                                 no-useless-escape
       5:23036  error  Unnecessary escape character: \-                                 no-useless-escape
       5:25812  error  Unnecessary escape character: \-                                 no-useless-escape
       5:25866  error  Unnecessary escape character: \-                                 no-useless-escape
       6:1      error  Expected indentation of 1 tab but found 0                        indent
       7:1      error  Expected indentation of 1 tab but found 0                        indent
       9:7372   error  Unnecessary escape character: \-                                 no-useless-escape
      10:1      error  Expected indentation of 1 tab but found 0                        indent
      10:996    error  'Globalize' is not defined                                       no-undef
      10:1171   error  'Globalize' is not defined                                       no-undef
      10:3398   error  Empty block statement                                            no-empty
      10:3460   error  Empty block statement                                            no-empty
      10:7130   error  Unnecessary escape character: \/                                 no-useless-escape
      10:7139   error  Unnecessary escape character: \[                                 no-useless-escape
      10:7143   error  Unnecessary escape character: \^                                 no-useless-escape
      10:10481  error  Expected a conditional expression and instead saw an assignment  no-cond-assign
      10:20588  error  Expected a conditional expression and instead saw an assignment  no-cond-assign
    
    ✖ 1167 problems (1167 errors, 0 warnings)
      1127 errors, 0 warnings potentially fixable with the `--fix` option.
    

    我会运行修复选项,看看是否有帮助,但这不会修复检测。

    这显示了以下内容

    cat usr/share/javascript/jquery-ui/jquery-ui.min.js |tail -n1 -c100
    tooltipClass&&tooltipData.tooltip.addClass(this.options.tooltipClass),tooltipData}});$.ui.tooltip});root@master-node
    

    这里的问题是整个 js 文件已删除所有格式以尝试混淆代码,仅此一项就应该是删除文件而不使用它的原因。我将在这里为 Ubuntu 团队提供怀疑的好处,并假设这是一个误报,因为 linter 显示了常见和低优先级的问题。一个例子是 - 转义,这是非常常见的,因为它在正则表达式中用于暗示一个范围,例如 [a-zA-Z] 据我所知,它是正则表达式语句中的一个特殊字符,人们经常将其转义为确定。

    • 4
  3. Roel Van de Paar
    2021-05-28T19:30:18+08:002021-05-28T19:30:18+08:00

    一个文件已被标记为 PUA,只需将该文件上传到 virustotal.com 即可更好地了解可能发生的情况。Virustotal 将针对大量引擎进行扫描,因此如果文件有问题,它可能会清楚地显示出来。

    • 0

相关问题

  • 建立clamcour的问题

  • 如何查看上次 Clamscan 扫描的结果?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve