홈페이지 해킹 시도

도우리   
   조회 5671   추천 0    

안녕하세요.
오랜만에 nginx/access.log 를 봤더니 한 IP에서 저희 서버의 취약점을 찾으려고한 흔적을 발견했습니다.
매일 이런 시도가 있긴 한데 보통 주소 몇번 넣어보고 지나가는데 어떤 놈이 툴까지 써서 싹 훑고 갔더라구요
로그내역은 아래와 같습니다.

344 211.63.182.26 - - [07/Oct/2016:15:44:39 +0900] "GET /sql/phpMyAdmin-2.6.0-pl2/main.php HTTP/1.0" 404 162 "-" "-" "-"
345 211.63.182.26 - - [07/Oct/2016:15:44:39 +0900] "GET /sql/phpMyAdmin-2.6.0-pl3/main.php HTTP/1.0" 404 162 "-" "-" "-"
346 211.63.182.26 - - [07/Oct/2016:15:44:39 +0900] "GET /sql/phpMyAdmin-2.6.1-rc1/main.php HTTP/1.0" 404 162 "-" "-" "-"
347 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.1-rc2/main.php HTTP/1.0" 404 162 "-" "-" "-"
348 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.1/main.php HTTP/1.0" 404 162 "-" "-" "-"
349 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.1-pl1/main.php HTTP/1.0" 404 162 "-" "-" "-"
350 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.1-pl2/main.php HTTP/1.0" 404 162 "-" "-" "-"
351 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.1-pl3/main.php HTTP/1.0" 404 162 "-" "-" "-"
352 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.2-rc1/main.php HTTP/1.0" 404 162 "-" "-" "-"
353 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.2-beta1/main.php HTTP/1.0" 404 162 "-" "-" "-"
354 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.2-rc1/main.php HTTP/1.0" 404 162 "-" "-" "-"
355 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.2/main.php HTTP/1.0" 404 162 "-" "-" "-"
356 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.2-pl1/main.php HTTP/1.0" 404 162 "-" "-" "-"
357 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.3/main.php HTTP/1.0" 404 162 "-" "-" "-"
358 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.3-rc1/main.php HTTP/1.0" 404 162 "-" "-" "-"
359 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.3/main.php HTTP/1.0" 404 162 "-" "-" "-"
360 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.3-pl1/main.php HTTP/1.0" 404 162 "-" "-" "-"
361 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.4-rc1/main.php HTTP/1.0" 404 162 "-" "-" "-"
362 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.4-pl1/main.php HTTP/1.0" 404 162 "-" "-" "-"
363 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.4-pl2/main.php HTTP/1.0" 404 162 "-" "-" "-"
364 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.4-pl3/main.php HTTP/1.0" 404 162 "-" "-" "-"
365 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.4-pl4/main.php HTTP/1.0" 404 162 "-" "-" "-"
366 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.6.4/main.php HTTP/1.0" 404 162 "-" "-" "-"
367 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.7.0-beta1/main.php HTTP/1.0" 404 162 "-" "-" "-"
368 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.7.0-rc1/main.php HTTP/1.0" 404 162 "-" "-" "-"
369 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.7.0-pl1/main.php HTTP/1.0" 404 162 "-" "-" "-"
370 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.7.0-pl2/main.php HTTP/1.0" 404 162 "-" "-" "-"
371 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.7.0/main.php HTTP/1.0" 404 162 "-" "-" "-"
372 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.0-beta1/main.php HTTP/1.0" 404 162 "-" "-" "-"
373 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.0-rc1/main.php HTTP/1.0" 404 162 "-" "-" "-"
374 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.0-rc2/main.php HTTP/1.0" 404 162 "-" "-" "-"
375 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.0/main.php HTTP/1.0" 404 162 "-" "-" "-"
376 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.0.1/main.php HTTP/1.0" 404 162 "-" "-" "-"
377 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.0.2/main.php HTTP/1.0" 404 162 "-" "-" "-"
378 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.0.3/main.php HTTP/1.0" 404 162 "-" "-" "-"
379 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.0.4/main.php HTTP/1.0" 404 162 "-" "-" "-"
380 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.1-rc1/main.php HTTP/1.0" 404 162 "-" "-" "-"
381 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.1/main.php HTTP/1.0" 404 162 "-" "-" "-"
382 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /sql/phpMyAdmin-2.8.2/main.php HTTP/1.0" 404 162 "-" "-" "-"
383 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/phpmyadmin/main.php HTTP/1.0" 404 162 "-" "-" "-"
384 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/phpMyAdmin/main.php HTTP/1.0" 404 162 "-" "-" "-"
385 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/database/main.php HTTP/1.0" 404 162 "-" "-" "-"
386 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/web/main.php HTTP/1.0" 404 162 "-" "-" "-"
387 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/pMA/main.php HTTP/1.0" 404 162 "-" "-" "-"
388 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/admin/main.php HTTP/1.0" 404 162 "-" "-" "-"
389 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/main.php HTTP/1.0" 404 162 "-" "-" "-"
390 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/databaseadmin/main.php HTTP/1.0" 404 162 "-" "-" "-"
391 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/pMA2006/main.php HTTP/1.0" 404 162 "-" "-" "-"
392 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/pma2006/main.php HTTP/1.0" 404 162 "-" "-" "-"
393 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/databasemanager/main.php HTTP/1.0" 404 162 "-" "-" "-"
394 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/databasemanager/main.php HTTP/1.0" 404 162 "-" "-" "-"
395 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/p/m/a/main.php HTTP/1.0" 404 162 "-" "-" "-"
396 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/pMA2005/main.php HTTP/1.0" 404 162 "-" "-" "-"
397 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/pma2005/main.php HTTP/1.0" 404 162 "-" "-" "-"
398 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/phpmanager/main.php HTTP/1.0" 404 162 "-" "-" "-"
399 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/php-myadmin/main.php HTTP/1.0" 404 162 "-" "-" "-"
400 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/phpmy-admin/main.php HTTP/1.0" 404 162 "-" "-" "-"
401 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/database/main.php HTTP/1.0" 404 162 "-" "-" "-"
402 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/myadmin/main.php HTTP/1.0" 404 162 "-" "-" "-"
403 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/webadmin/main.php HTTP/1.0" 404 162 "-" "-" "-"
404 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/databaseweb/main.php HTTP/1.0" 404 162 "-" "-" "-"
405 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/websql/main.php HTTP/1.0" 404 162 "-" "-" "-"
406 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/webdb/main.php HTTP/1.0" 404 162 "-" "-" "-"
407 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/databaseadmin/main.php HTTP/1.0" 404 162 "-" "-" "-"
408 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/database-admin/main.php HTTP/1.0" 404 162 "-" "-" "-"
409 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/phpmyadmin2/main.php HTTP/1.0" 404 162 "-" "-" "-"
410 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/phpMyAdmin2/main.php HTTP/1.0" 404 162 "-" "-" "-"
411 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/phpMyAdmin-2/main.php HTTP/1.0" 404 162 "-" "-" "-"
412 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/php-my-admin/main.php HTTP/1.0" 404 162 "-" "-" "-"
413 211.63.182.26 - - [07/Oct/2016:15:44:40 +0900] "GET /database/phpMyAdmin-2.2.3/main.php HTTP/1.0" 404 162 "-" "-" "-"

이런식으로 phpmyadmin 페이지를 찾으려고 한 흔적이 있습니다.
로그를 보며 의아했던점은, 초당 수십번의 체크를 하고 갔다는 겁니다.
7초만에 650개의 주소를 훑고 갔습니다.
IDC에서 기본적으로 제공하는 IDS도 있고 따로 신청한 IPS도 있고 서버에선 firewalld도 켜져있는데
초당 수십회의 액세스를 시도하는 IP에 대해 어떠한 차단조치가 이루어지지 않은것이 충격적이었습니다.
제가 보안쪽엔 지식이 미천한 관계로 위와 같은 비정상적인 접근(초당 수회 액세스등)을 차단하기 위해선 어떠한 조치를 취할 수 있는지 조언좀 부탁드리겠습니다.

phpmyadmin의 설치경로는 절대 유추할 수 없도록 디렉토리 이름을 변경해두었기 때문에 털리지 않을 수 있었습니다만 등골이 오싹하네요.

짧은글 일수록 신중하게.
도우리 2016-10
아참 그리고 IP조회해보니 한국 IP였습니다... KT IP던데 단순히 저런 시도만으론 어떤 신고도 할 수 없겠죠? 잡으면 분명 나쁜놈일텐데 말입니다..
     
아마 헤킹당한 컴이나 써버일 확률이 큽니다... 거기에다가 툴을 심어놓고 쓰는거죠...

아래 에브리하루님 말씀처럼 안뚫리면 떙입니다... 시도야 무지막지하게 들어오죠... 자신만쓰는 용도로 열어놓은것이라면 기본포트를 안쓰고 다른포트를 쓰면 시도가 거의 없어집니다... 하지만 꼭열어놓아야하는것이라면 다른 여러가지 툴들을 써서 잘 보안해야죠...

설마 저런짓을 수동으로 할리는 없고 bot을 심어놓으면 그냥 자동으로 여기저기 ip를 훓고지나가는데 가다가 뚫린곳이 있으면 직싸게 찍어보는거죠... 그래서 ssh도 root계정을 열어놓으면 안되는거고... admin, administrator 등등의 아이디도 쓰지 않는게 좋지요...
Everyharu 2016-10
원래 어디던지 많이 들어옵니다 저기에 안털리는게 중요한겁니다
     
도우리 2016-10
네 사실 안털리기만 하면 장땡이죠 ㅎㅎ
근데 일반적인 경우라면 저렇게 초당 수십회 들어올 일이 없을거라 생각되니 이왕이면 차단까지 해주는게 더욱 안전할 것 같아서요..
다른 분들은 다 그런 설정 하시고 쓰실것 같아서 한번 여쭤봤어요^^;
izegtob 2016-10
그냥 apache 자체에서 저는 phpmyadmin의 접속 가능한 ip를 제한해뒀습니다

제 컴터 , 노트북, 폰 만 접속 가능하게.... (물론 내부에서만)

이외에도 다른 보안 어쩌구 등등 많이 해놨긴했는데 기억이 안나네요
여튼 저는 한번도 해킹 시도조차 당한적이 없습니다....
     
도우리 2016-10
넵 저도 일단 IP whitelist는 기본적으로 걸어놔야할것 같습니다 ㅎㅎ
도우리 2016-10
구글링해봐도 원래 인터넷이란 그런거다 404페이지 트래픽은 전혀 부담되지 않는다 신경쓰지 마란 말이 대부분인데 재미난 방법이 몇개 보여서 공유차원에서 적어봅니다.

1. 404 에러페이지 대신 간단한 페이지를 보여줘라. - 해커가 사용하는 스캐닝 툴이 찾은것으로 오인해서 해커가 일일히 확인할수 밖에 없도록 만든다.
2. 404 에러페이지 대신 phpmyadmin과 동일한 가짜 화면을 보여줘라 - 가짜페이지인걸 모르고 한참 삽질할 것이다.
3. fail2ban 이용 - ftp, ssh 보호를 위해 fail2ban 을 사용중이었는데 이게 웹서버도 작동하나봐요. 대신 정규식을 써서 조건설정해야하는듯.
4. 자신을 액세스한 IP를 차단하는 스크립트 파일을 phpmyadmin/index.php 또는 main.php 같은 이름으로 놔두는것. 장점: 매번 로그를 살펴보느라 리소스가 낭비되는 fail2ban와 다르게 리소스 낭비 없음. 단점: 해당 파일 피해갈경우 도움안됨. - 허나 phpmyadmin 디렉토리는 제일 기본적으로 뒤지는 곳이라 안걸릴수는 없을거라...

1,2번 사용시 해커가 열받을 수 있고 수동으로 확인하면서 더 자세히 들여다보기 때문에 역효과가 발생할 수 있으니 4번으로 적용하려합니다.
     
2번에서 크게 웃고갑니다. 하하


QnA
제목Page 3213/5715
2015-12   1729996   백메가
2014-05   5197140   정은준1
2016-04   5672   김승현1
2006-09   5672   김광진
2005-11   5672   양국형
2013-05   5672   김석환
2016-10   5672   도우리
2006-04   5672   김용언
2009-01   5672   한성확
2013-02   5672   하이엔드
2007-09   5672   손견권
2007-11   5672   선철
2012-11   5672   일반유저
2016-03   5672   행복하세
2006-10   5672   김건우
2013-11   5672   이재복2
2008-08   5672   신현균
2006-03   5672   허재원
2014-04   5672   오며가며
2006-01   5672   손재훈
2015-08   5672   가빠로구나
2006-03   5672   노하석