SharedIT | 묻고 답하기(AMP)

웹서버 해킹된 것 같은데, 어찌 해야할까요?

질문을 창피해 하지 마세요. 답변 해주시는 분들을 위해 많은 정보를 입력해 주세요.

지인회사 이야기인데 저도 답변 주다가 막히는 부분이 있어 질문 남겨요.

월 방문자 수가 백만단위인 대형 사이트인데 며칠 전 외부 공격을 받아 사이트 내 콘텐츠가 제대로 보이지 않고 회원들의 로그인에 문제가 생기는 장애가 발생 했습니다. 현재 가까스로 복구하였는데 다시 해커가 들어와 소스코드를 수정하고 구글 애드센스 코드를 심어놓았습니다.

현재는 코드를 수정하고 호스팅 업체에 해결 방안을 문의 하여 연계된 웹방화벽 회사를 통해 조치받아 해결 했으나 조금 전 또 코드가 수정된 흔적을 발견 했네요. 지금은 소스코드를 롤백하여 사이트가 정상작동하지만 완전히 해결 된 것이 아니라서 난감한 상황입니다.

웹서버는 국내 호스팅 서비스를 이용 중이고 웹방화벽 업체 역시 국내 업체 입니다만 호스팅 회사에 연계된 것이라 지인 회사에서 직접적으로 컨택은 어려운 상황입니다. 

제가보기엔 웹 방화벽이 뚫린것 같은데..... 질문 드립니다.

1. 해커가 소스코드를 수정했다면 루트 권한이 탈취된 것 아닌가요?
   사이트 최상위 경로인 sub.head.php에 구글 애드센스 코드를 심었는데 이를 발견하여 퍼미션 값을 수정해서 지금은
   괜찮은 상황입니다만 js 피싱팝업을 설치해 놨습니다. 회원 개인정보 탈취가 목적으로 보이네요.
   루트권한이 탈취됐다면 아예 사이트 운영 자체를 방해했을 것 같은데..... 소심한 해커일까요?

2. 호스팅 회사에서는 지인 회사에서 알아서 소스코드를 수정해서 막아야지 자기들이 할 수 있는건 없다고 하는데, 이게 정상인가요?
   애초에 호스팅 서버의 웹방화벽이 뚫린게 잘못이고, 호스팅회사가 그 웹방화벽회사와 협의해서 조치를 취해줘야 하는것 아닌가요?

3. 지인 회사에서 자체적으로 취할 수 있는 조치는 무엇이 있을까요?
 IP해외트래픽, 대역폭 차단, 루트 패스워드 변경, 호스팅서버를 단독서버로 바꾸고 별도의 전용 웹방화벽 서비스 적용, 호스팅 서비스 변경, 클라우드로 이관....
 가장 시급한 것은 전문 보안회사에 의뢰하여 전체적으로 점검받고 조치를 취하는 것이겠죠?

지인 회사라 뭔가 도움을 주고 싶은데 저도 아는게 많이 없어서 답답하네요. 사이트 규모 치고 너무 안일하게 대응해 온 것 같기도 하지만 뭐 별 수 있나요. 다 이렇죠 뭐....

답변 부탁 드립니다.
 

7개의 답변이 있습니다.

쿨가이
  0 추천 | 약 5년 전
서버는 내리시고 전체적으로 점검해야죠.

최대한 취약점 보강하구요. IP도 변경하는게 좋습니다.

보통 SQL이나 소스코드에 취약점이 있고요. DB접속에 대한 부분도 강력히 보안해야합니다.

JohnWick | 약 5년 전

워낙 트래픽이 많은 사이트인데 이중화는 생각도 못한 상태에서 성장해와서 서버 내리는 것은 타격이 너무 큽니다. 지금은 소스코드 롤백해서 운영 중이고요. IP변경은 했습니다. DB쪽 보안은 전혀 되어있지 않구요. 말씀하신 DB보안도 챙겨보겠습니다.
guest
  0 추천 | 약 5년 전
호스팅 서버 전체 보안(주로 네트워크 단계의 침입차단 및 방지 등)은 되어 있으나, 호스팅 내 업로드되어 있는 파일 중 취약점이 존재해 외부 공격자가 이를 악용하여 해킹을 시도한 것 같습니다.
특히나, 특정 파일의 코드를 변조하였다는 것은 호스팅 서버의 모든 권한을 획득한 상태로 크게 예상됩니다.

우선 문제가 되는 호스팅 서버는 삭제를 하시고, 웹 취약점 점검 서비스나 소스 코드 점검 도구를 이용하여 전수조사가 필요합니다.
단순히 소스 코드 수정 시 향후 동일 증상이 재발생할 수 있어, 반드시 전수조사가 필요합니다.

한국인터넷진흥원의 웹 취약점 무료 점검 서비스나 국내 유사 업체도 많으니 참고하세요~

JohnWick | 약 5년 전

네, 현재 보안업체 통해서 임시 조치는 한 상태인데 결과적으로 지인 및 임원진들이 너무 불안해 해서 특단의 조치를 취할 것 같긴 합니다만 비용이 계속 문제네요. 일단 KISA에 신고할 예정입니다. 소스코드 점검도 진행 할게요!
한그루
  0 추천 | 약 5년 전
KISA 에 신고 하시구요. 

소스코드가 수정 되었다면 웹쉘이 올라갔을 가능성이 클 것같습니다.
서버를 포맷하고 다시 구축해도 소스코드의 취약점 때문에 다시 웹쉘이 업로드될 가능성이 매우 큽니다.
주로 게시판등에 화일을 첨부 할 수 있는 기능으로 웹쉘이 업로드 됩니다. 웹쉘 업로드 이후에는 웹방화벽을 우회하여 권한을 탈취 할 수 있습니다. (루트 비번 변경, 특정 IP 차단, 서버 포맷 으로 해결이 안됩니다. 취약점을 잡아야합니다.)
PHP 는 취약점이 많은 언어로도 유명하죠. PHP를 사용하는 워드프레스가 구축이 편리하고, 저렴하긴 하지만 취약점이 많은편입니다.
웹쉘 탐지 툴을 사용해 보면 좋겠습니다.
시큐어 코딩 점검도 해보세요. 무료 시큐어 코딩 점검 툴도 있습니다.

호스팅 업체에서 해주는 방어는 네트워크단에서의 패턴에 의한 방어 입니다.
해커는 웹페이지에서 제공하는 적절한 권한, 기능의 취약점을 파고 들었기 때문에 호스팅 업체의 말이 틀렸다고 할 수 없습니다.
갖가지 종류의 보안 툴들이 많이 존재 하는 이유는 웹방화벽 하나로 모든 공격을 차단 할 수 없다는거죠.


 

한그루 | 약 5년 전

해커들의 주 목적은 서비스 마비가 아닙니다. 자신의 존재 과시, 탈취한 서버에 지속적인 권한 유지 이런것들 입니다. 아마도 그 해커는 지속적으로 권한을 유지한채로 본인이 조금씩 서비스를 조작하길 원할겁니다. 개인정보가 있다면 개인정보를 이미 탈취 했을가능성이 큽니다. (얼마나 쉽게 DB 접글 할 수 있게 개발이 되었는지에 따라 다릅니다.)

JohnWick | 약 5년 전

현재까지 확인된 결과를 가장 근접하게 맞춰 주셨네요. 오늘 추가로 확인 했는데 말씀하신 소스코드 취약점으로 인해 웹쉘 업로드 이후 소스코드를 변경 한 것으로 확인 됐습니다. 그런데 더 무서운건 최초 공격시점이 2017년이라는 거네요. 이때 심어둔 코드가 지금 작동한 것 같다는 보안업체의 의견이 있었습니다. PHP파일 공격당한 것도 정확하게 짚으셨어요. 조언해 주신 대로 대처 해 보겠습니다. 많은 도움 됐습니다. KISA 신고하고 추후 경과 공유 하겠습니다. 감사합니다.
양성환
  0 추천 | 약 5년 전
KISA에 의뢰하세요

JohnWick | 약 5년 전

네 KISA에 신고하는 절차 확인 했습니다. 월요일에 신고 예정입니다.
wansoo
  0 추천 | 약 5년 전
제 생각엔...
저 정도 상황이라면 일단 서버를 내려야 하는 게 아닐까요..?
코드를 수정할 정도라면 최소한 수정 권한을 가진 계정의 암호가 뚫린것 같은데...
어설프게 임시 조치만 하고 있다간 더 큰 공격이 들어올 것 같다는 생각이 드는데요.
외부에서 접속을 하지 못하게 완전히 차단 시킨 후에 원인 파악 및 조치를 취한 후에 다시 서비스를 오픈하는게 맞을 것 같다는 생각이 드네요.

wansoo | 약 5년 전

서버 내리고, 비밀 번호 모두 바꾸고... 로그 분석하고... 후속 조치를 취해 나가야 할 것으로 보이네요.

JohnWick | 약 5년 전

아쉽게도 트래픽이 워낙 많은 사이트라 서버 내리는 것은 타격이 너무 크네요. 일단 대략적인 원인은 파악해서 임시조치는 내렸고, 웹서버 문제보다는 내부적으로 보안이 너무 취약한 것과 초기 PHP언어 기반의 소스코드가 문제인 것으로 파악 됐습니다. 로그분석 중인데 시간이 너무 오래 걸려서... 일단 이번 기회에 사이트 새로 개발하려고 업체 미팅 중입니다.
빨간신발
  0 추천 | 약 5년 전
에드센스를 심고 간다면...
일단 에드센스만이라도 차단하시고..
구글쪽에 해당 계정을 신고하는 것도 고려해보세요..

JohnWick | 약 5년 전

애드센스는 차단했는데 구글에 신고하는 것은 생각 못했네요. 감사합니다!
미생
  0 추천 | 약 5년 전
해킹의 방법이 명확치 않은데 대응역시 어려운게 결론입니다.

보안취약점을 찾아보는 것이 맞고 파일수정이 발생한 사유가 뭔지를 로그를 통해 찾는게 우선이지 싶습니다. 어느 유저가 어느 아이피에서 어떤 명령어로 수정했는지 조차 알수가 없는데요.

해당 사이트 운영하는 프로그램 코드 작성부서에서 원인을 같이 찾아보는게 맞을듯 합니다. 인프라 담당자랑요

미생 | 약 5년 전

그리고 만약 방화벽이라고 하셨는데 80포트 등의 웹관련 포트를 막으라는건 말이 안되고 해봐야 접속했던 ip관련 대역정도 일시차단이 최선일텐데 그게 가능한 서비스일지 모르겠네요

JohnWick | 약 5년 전

네, 일단 말씀하신 IP대역폭 차단은 해 뒀는데 해외 접속자가 많아서 이 마저도 효과가 있을지 미지수 입니다. 해외는 차단 안했거든요.... 해외 IP가 가장 의심이 되긴 하는데.... 설상가상으로 소스코드 작성한 사람이 퇴사한 마당이라 다른 담당자들이 보고 있어서 분석에 시간이 더 걸리고 있습니다. 일단 KISA에 의뢰해 보려고 합니다.