【问题标题】:Grep for specific php malware pattern特定 php 恶意软件模式的 Grep
【发布时间】:2019-02-18 18:23:01
【问题描述】:

我正在尝试找出难以与单一模式匹配的恶意软件的 grep。恶意文件中的一行如下所示:

$bhbwjhu[11].$bhbwjhu[15].$bhbwjhu[34].$bhbwjhu[23].$bhbwjhu[30].$bhbwjhu[6].$bhbwjhu[3].$bhbwjhu[34].$bhbwjhu[31]

试过这样的东西,但很明显,我的 grep 技能很差(这会导致无效范围结束错误):

find . -type f | xargs grep -s -l "\$[A-z]*\[[0-9]*\]\.\$[A-z]*\[[0-9]*\]\.\$[A-z]*\[[0-9]*\]"

有什么方法可以在文件中搜索那一堆数组元素?

Grep 版本是

grep (GNU grep) 2.20

Linux 版本 2.6.32-896.16.1.lve1.4.54.el6.x86_64

【问题讨论】:

  • 试过了,没有问题;也许添加您的 grep/platform 版本。
  • @l'l'l 是的,谢谢,我已经添加了该信息
  • 我猜 grep 是在抱怨您对 [A-z] 的使用,这确实 - 取决于语言环境 - 可能会引发不正确的范围。反正也没多大意义。将其替换为 [A-Za-z],或按照 JGK 发布的建议。

标签: shell debugging ssh command-line grep


【解决方案1】:

我建议使用以下内容:

find . -type f -print0 | xargs -0 grep -s -l '\$[[:alpha:]]*\[[[:digit:]]*\]\.\$[[:alpha:]]*\[[[:digit:]]*\]\.\$[[:alpha:]]*\[[[:digit:]]*\]'

使用字符类比使用范围更安全。我还建议使用-print0xargs -0,这样带有空格的文件名就不会弄乱你的命令。另请参阅explaination

【讨论】:

  • 成功了,我今天学到了新东西,谢谢!
猜你喜欢
  • 2014-05-19
  • 2018-07-04
  • 1970-01-01
  • 2019-01-10
  • 2014-03-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-17
相关资源
最近更新 更多