명령줄에서 이러한 여러 문자열을 찾으려면 어떻게 해야 합니까?

명령줄에서 이러한 여러 문자열을 찾으려면 어떻게 해야 합니까?

바이러스 파일이 제거될 때까지 브라우저에서 웹 사이트를 실행하기 위해 웹 호스트가 계정을 비활성화하고 몇 가지 문자열을 수집할 수 있었기 때문에 명령줄에서 이러한 문자열 중 하나를 grep하는 명령을 실행해야 합니다. 이러한 파일을 찾을 수 있습니다.

내가 이에 대한 명령을 실행할 수 있는지 아는 사람이 있다면 매우 감사하겠습니다.

찾을 텍스트:

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.*

일치하는 파일의 전체 경로만 알면 됩니다.

감사해요.

답변1

파일에 넣을 수 있는 경우 grep의 -f플래그를 사용하여 파일에서 패턴을 읽을 수 있으며 -l일치하는 파일만 표시하는 데 사용할 수 있습니다.

그것들을 합치면 다음과 같은 일을 할 수 있습니다

grep -R -l -f scanner.txt *

따라서 이것은 -R재귀적으로 검색하게 하고(당신이 원한다고 가정합니다), -l일치하는 파일의 이름만 인쇄하고, -fscanner.txt 파일에서 검색 패턴을 읽도록 합니다.

답변2

나는 이것이 당신에게 도움이 될 수 있다고 생각합니다:

#!/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

관련 정보