Linux

如何從命令行獲取這些多個字元串?

  • April 30, 2015

我需要執行一個命令從命令行 grep 這些字元串之一作為禁用 Web 主機的帳戶從瀏覽器執行網站,直到病毒文件被刪除,並且我設法收集了一些可以找到這些文件的字元串。

如果有人知道我是否可以為此執行命令,我將不勝感激。

要查找的文本:

bigdeal777
Goog1e_analist_certs.*
tevq\(ucyq\)
GR_HOST_ID.*
\['cmd'\]
ejppy.*
eval\(gzinflate.*
eval\(base64_decode.*
FilesMan.*
Web Shell by.*
Goog1e_analist_up.*
palcastle.*
shell_exec
google_analytics_obh.*
udb=1
createCSS.*
base64_decode\(str_replace
exit;move_uploaded_file
msgz.*
iskandar.*
\.sterling.*
CLaW.*
feoMEN.*
Hacke.*
into [a-z0-9\-_]{1,}orders
gagal
JSinj
linkonline
SUKS.*
\@system\(
\@passthru\(
\@popen\(
Mohajer22
\@extract\(
likecinema
mp3aim
mixmenow
lyricsoasis
PGlmcmFtZSBzcmM9Imh0dHA6Ly93d3cubC1jb3VudGVyLmNvbS9zdGF0cy5waHA\/aWQ9
\$_POST\[\'skip\'\]
u0058
urlencode\(strrev
viagra.*

我只需要知道匹配文件的完整路徑。

謝謝你。

如果您可以將它們放在文件中,則可以使用 grep 的-f標誌從文件中讀取模式,並且可以使用-l僅顯示匹配的文件

把它們放在一起你可以做類似的事情

grep -R -l -f scanner.txt *

所以這-R將導致它遞歸搜尋(我假設你想要那個),-l將只列印包含匹配項的文件的名稱,並-f說從文件scanner.txt中讀取搜尋模式

我認為它可以幫助你:

#!/bin/bash
declare arr=('bigdeal777',
   'Goog1e_analist_certs.*',
   'tevq\(ucyq\)',
   'GR_HOST_ID.*',
   "\['cmd'\]",
   'ejppy.*',
   'eval\(gzinflate.*',
   'eval\(base64_decode*.',
   'FilesMan*.',
   'Web Shell by.*',
   'Goog1e_analist_up.*',
   'palcastle.*',
   'shell_exec',
   'google_analytics_obh.*',
   '"udb=1"',
   'createCSS.*',
   'base64_decode\(str_replace',
   'exit;move_uploaded_file',
   'msgz.*',
   'iskandar.*',
   '\.sterling.*',
   'CLaW.*',
   'feoMEN.*',
   'Hacke.*',
   'into [a-z0-9\-_]{1,}orders',
   'gagal',
   'JSinj',
   'linkonline',
   'SUKS.*',
   '\@system\(',
   '\@passthru\(',
   '\@popen\(',
   'Mohajer22',
   '\@extract\(',
   'likecinema',
   'mp3aim',
   'mixmenow',
   'lyricsoasis',
   'PGlmcmFtZSBzcmM9Imh0dHA6Ly93d3cubC1jb3VudGVyLmNvbS9zdGF0cy5waHA\/aWQ9',
   "\$_POST\[\'skip\'\]",
   'u0058',
   'urlencode\(strrev',
   'viagra.*');
arr_size=${#arr[@]};
for i in `seq 1 $arr_size` ; do 
   echo ${arr[$i]}|egrep -i "$1" ;
done;

用法 :

./script.sh eval

引用自:https://unix.stackexchange.com/questions/199525