2013-01-17 2 views
1

공격 후 로그 파일을 분석하는 데 grep을 사용하고 있습니다. 이제여러 파일에 일치하는 패턴의 grep

grep -F "POST /xxxxx.php" ./access-log 

누군가가 내 웹 사이트의 일부를 공격하지만, 취약점, 또한하지가, 공격자의 IP 주소가 무엇인지 어디에서 모르는 보통처럼. 지금은 그런 내 웹 사이트 중 하나 이상에 요청을 발송에 실패하여 IP 주소, 찾으려면 :

abcde.com-log:123.123.123.123 - - [12/Jan/2013:08:41:08 +0100] "POST /xxxxx.php HTTP/1.1" 200 1234 "-" "-" 

wxyz.com-log:123.123.123.123 - - [12/Jan/2013:08:41:08 +0100] "POST /xxxxx.php HTTP/1.1" 200 1234 "-" "-" 

을하지만 난 그렙 또는 다른 유닉스 도구는 저를주고받을 방법을 모르는 일치하는 사람은 하나 이상의 로그 파일입니다. 원하는 IP 주소를 가정

+0

당신이 알고하지 않기 때문에, 어떤 특성 당신에게 제공 할 수있는 공격 요청을 식별 할 수 있습니까? 항상 POST 요청입니까? 항상 .php 파일에요? 이러한 데이터가 없으면 Google Bot과도 일치시킬 수 있습니다 (예 : 두 개의 사이트에서 robots.txt를 요청). – Perleone

답변

0

각 로그 파일의 첫 번째 필드로 표시 하나,이 시도 :이 취약점이 어디

awk ' 
    /POST \/xxxxx\.php/ { 
     ip=$1 
     if (!(ipFilePairs[ip,FILENAME]++)) { 
     ipFileCnt[ip]++ 
     ipFileList[ip] = ipFileList[ip] " " FILENAME 
     } 
    } 
    END { 
     for (ip in ipFileCnt) 
     if (ipFileCnt[ip] > 1) 
      print ip ":" ipFileList[ip] 
    } 
' *.log 
관련 문제